start grab mode
parent
e5fea7e745
commit
129068691b
37
gulpfile.js
37
gulpfile.js
|
@ -2,20 +2,16 @@ var gulp = require('gulp');
|
|||
var concat = require('gulp-concat');
|
||||
var sort = require('gulp-sort');
|
||||
var minify = require('gulp-minify');
|
||||
var watch = require('gulp-watch');
|
||||
var replace = require('gulp-string-replace');
|
||||
|
||||
gulp.task(
|
||||
'build',
|
||||
function() {
|
||||
gulp.task('build', build);
|
||||
gulp.task('monitor', monitor);
|
||||
|
||||
function build() {
|
||||
return gulp.src('./src/r3-*.js')
|
||||
.pipe(sort())
|
||||
.pipe(concat('r3.js'))
|
||||
.pipe(
|
||||
replace(new RegExp('__DATE__', 'g'), function (replacement) {
|
||||
return JSON.stringify(new Date().toString());
|
||||
})
|
||||
)
|
||||
.pipe(replace('__DATE__', new Date().toString()))
|
||||
.pipe(minify({
|
||||
ext:{
|
||||
src:'.js',
|
||||
|
@ -23,20 +19,17 @@ gulp.task(
|
|||
}
|
||||
}))
|
||||
.pipe(gulp.dest('./build/'));
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
function monitor() {
|
||||
gulp.watch('src/*.js', build);
|
||||
}
|
||||
|
||||
gulp.task(
|
||||
'default',
|
||||
gulp.series('build'),
|
||||
function() {
|
||||
return watch([
|
||||
'src/*.js'
|
||||
],
|
||||
function() {
|
||||
gulp.start([
|
||||
'merge'
|
||||
]);
|
||||
})
|
||||
}
|
||||
gulp.series(
|
||||
build,
|
||||
monitor
|
||||
)
|
||||
);
|
|
@ -518,48 +518,6 @@
|
|||
"supports-color": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"chokidar": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz",
|
||||
"integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"anymatch": "^2.0.0",
|
||||
"async-each": "^1.0.0",
|
||||
"braces": "^2.3.0",
|
||||
"fsevents": "^1.2.2",
|
||||
"glob-parent": "^3.1.0",
|
||||
"inherits": "^2.0.1",
|
||||
"is-binary-path": "^1.0.0",
|
||||
"is-glob": "^4.0.0",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"normalize-path": "^2.1.1",
|
||||
"path-is-absolute": "^1.0.0",
|
||||
"readdirp": "^2.0.0",
|
||||
"upath": "^1.0.5"
|
||||
},
|
||||
"dependencies": {
|
||||
"anymatch": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
|
||||
"integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"micromatch": "^3.1.4",
|
||||
"normalize-path": "^2.1.1"
|
||||
}
|
||||
},
|
||||
"is-glob": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz",
|
||||
"integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-extglob": "^2.1.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"class-utils": {
|
||||
"version": "0.3.6",
|
||||
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
|
||||
|
@ -2592,108 +2550,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"gulp-watch": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/gulp-watch/-/gulp-watch-5.0.1.tgz",
|
||||
"integrity": "sha512-HnTSBdzAOFIT4wmXYPDUn783TaYAq9bpaN05vuZNP5eni3z3aRx0NAKbjhhMYtcq76x4R1wf4oORDGdlrEjuog==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-colors": "1.1.0",
|
||||
"anymatch": "^1.3.0",
|
||||
"chokidar": "^2.0.0",
|
||||
"fancy-log": "1.3.2",
|
||||
"glob-parent": "^3.0.1",
|
||||
"object-assign": "^4.1.0",
|
||||
"path-is-absolute": "^1.0.1",
|
||||
"plugin-error": "1.0.1",
|
||||
"readable-stream": "^2.2.2",
|
||||
"slash": "^1.0.0",
|
||||
"vinyl": "^2.1.0",
|
||||
"vinyl-file": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"clone": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
|
||||
"integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=",
|
||||
"dev": true
|
||||
},
|
||||
"clone-stats": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
|
||||
"integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=",
|
||||
"dev": true
|
||||
},
|
||||
"isarray": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
|
||||
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
|
||||
"dev": true
|
||||
},
|
||||
"object-assign": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
||||
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
|
||||
"dev": true
|
||||
},
|
||||
"plugin-error": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz",
|
||||
"integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-colors": "^1.0.1",
|
||||
"arr-diff": "^4.0.0",
|
||||
"arr-union": "^3.1.0",
|
||||
"extend-shallow": "^3.0.2"
|
||||
}
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"core-util-is": "~1.0.0",
|
||||
"inherits": "~2.0.3",
|
||||
"isarray": "~1.0.0",
|
||||
"process-nextick-args": "~2.0.0",
|
||||
"safe-buffer": "~5.1.1",
|
||||
"string_decoder": "~1.1.1",
|
||||
"util-deprecate": "~1.0.1"
|
||||
}
|
||||
},
|
||||
"replace-ext": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
|
||||
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=",
|
||||
"dev": true
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
},
|
||||
"vinyl": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz",
|
||||
"integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"clone": "^2.1.1",
|
||||
"clone-buffer": "^1.0.0",
|
||||
"clone-stats": "^1.0.0",
|
||||
"cloneable-readable": "^1.0.0",
|
||||
"remove-trailing-separator": "^1.0.1",
|
||||
"replace-ext": "^1.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"gulplog": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz",
|
||||
|
@ -7625,12 +7481,6 @@
|
|||
"integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
|
||||
"dev": true
|
||||
},
|
||||
"slash": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
|
||||
"integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
|
||||
"dev": true
|
||||
},
|
||||
"snapdragon": {
|
||||
"version": "0.8.1",
|
||||
"resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.1.tgz",
|
||||
|
@ -7987,66 +7837,6 @@
|
|||
"is-utf8": "^0.2.0"
|
||||
}
|
||||
},
|
||||
"strip-bom-stream": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz",
|
||||
"integrity": "sha1-+H217yYT9paKpUWr/h7HKLaoKco=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"first-chunk-stream": "^2.0.0",
|
||||
"strip-bom": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"first-chunk-stream": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz",
|
||||
"integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"readable-stream": "^2.0.2"
|
||||
}
|
||||
},
|
||||
"isarray": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
|
||||
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
|
||||
"dev": true
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"core-util-is": "~1.0.0",
|
||||
"inherits": "~2.0.3",
|
||||
"isarray": "~1.0.0",
|
||||
"process-nextick-args": "~2.0.0",
|
||||
"safe-buffer": "~5.1.1",
|
||||
"string_decoder": "~1.1.1",
|
||||
"util-deprecate": "~1.0.1"
|
||||
}
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
},
|
||||
"strip-bom": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
|
||||
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-utf8": "^0.2.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"strip-indent": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
|
||||
|
@ -8356,12 +8146,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"upath": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz",
|
||||
"integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==",
|
||||
"dev": true
|
||||
},
|
||||
"urix": {
|
||||
"version": "0.1.0",
|
||||
"resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
|
||||
|
@ -8495,48 +8279,6 @@
|
|||
"replace-ext": "0.0.1"
|
||||
}
|
||||
},
|
||||
"vinyl-file": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-2.0.0.tgz",
|
||||
"integrity": "sha1-p+v1/779obfRjRQPyweyI++2dRo=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "^4.1.2",
|
||||
"pify": "^2.3.0",
|
||||
"pinkie-promise": "^2.0.0",
|
||||
"strip-bom": "^2.0.0",
|
||||
"strip-bom-stream": "^2.0.0",
|
||||
"vinyl": "^1.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"graceful-fs": {
|
||||
"version": "4.1.15",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz",
|
||||
"integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==",
|
||||
"dev": true
|
||||
},
|
||||
"strip-bom": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
|
||||
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-utf8": "^0.2.0"
|
||||
}
|
||||
},
|
||||
"vinyl": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
|
||||
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"clone": "^1.0.0",
|
||||
"clone-stats": "^0.0.1",
|
||||
"replace-ext": "0.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vinyl-fs": {
|
||||
"version": "2.4.4",
|
||||
"resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz",
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
{
|
||||
"name": "r3",
|
||||
"description": "R3",
|
||||
"description": "R3 Library",
|
||||
"author": "-=<yb4f310",
|
||||
"version": "1.0.0",
|
||||
"repository": "https://bitbucket.org/cybafelo/r3/src/master/",
|
||||
"license": "UNLICENSED",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"cannon": "^0.6.2",
|
||||
"three": "*"
|
||||
|
@ -15,7 +16,6 @@
|
|||
"gulp-minify": "*",
|
||||
"gulp-sort": "*",
|
||||
"gulp-string-replace": "*",
|
||||
"gulp-watch": "^5.0.1",
|
||||
"lodash": "^4.17.2",
|
||||
"npm": "^6.4.1"
|
||||
}
|
||||
|
|
|
@ -38,4 +38,4 @@ if (typeof R3.D3.Runtime === 'undefined') {
|
|||
/**
|
||||
* This gets injected by gulp
|
||||
*/
|
||||
console.log("Loading R3 compiled at: " + __DATE__);
|
||||
console.log("Loading R3 compiled at: __DATE__");
|
||||
|
|
|
@ -17,6 +17,10 @@ R3.System.Input = function(
|
|||
|
||||
this.editMode = false;
|
||||
|
||||
this.grabMode = false;
|
||||
|
||||
this.grabModeDirection = 'x';
|
||||
|
||||
this.controlLeft = false;
|
||||
|
||||
this.sensitivityCounter = 0;
|
||||
|
@ -1194,7 +1198,7 @@ R3.System.Input.prototype.onKeyDownEdit = function(event) {
|
|||
|
||||
var meshes = null;
|
||||
|
||||
if (event.code === 'Delete') {
|
||||
if (event.keyCode === R3.System.Input.KEY_DELETE) {
|
||||
|
||||
meshes = R3.EntityManager.Instance.queryComponentsByConstructor(R3.D3.Mesh);
|
||||
|
||||
|
@ -1224,11 +1228,11 @@ R3.System.Input.prototype.onKeyDownEdit = function(event) {
|
|||
|
||||
}
|
||||
|
||||
if (event.code === 'ControlLeft') {
|
||||
if (event.keyCode === R3.System.Input.KEY_CONTROL) {
|
||||
this.controlLeft = true;
|
||||
}
|
||||
|
||||
if (event.code === 'KeyA') {
|
||||
if (event.keyCode === R3.System.Input.KEY_A) {
|
||||
|
||||
this.selectAll = !this.selectAll;
|
||||
|
||||
|
@ -1254,9 +1258,21 @@ R3.System.Input.prototype.onKeyDownEdit = function(event) {
|
|||
|
||||
}
|
||||
|
||||
if (event.code === 'KeyP') {
|
||||
if (event.keyCode === R3.System.Input.KEY_P) {
|
||||
R3.Event.Emit(R3.Event.GAME_PAUSE);
|
||||
}
|
||||
|
||||
if (event.keyCode === R3.System.Input.KEY_G) {
|
||||
|
||||
this.grabMode = !this.grabMode;
|
||||
|
||||
if (this.grabMode) {
|
||||
console.log('grab mode active, translating on ' + this.grabModeDirection + ' axis');
|
||||
} else {
|
||||
console.log('grab mode de-activated');
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
R3.System.Input.prototype.onKeyUpEdit = function(event) {
|
||||
|
|
Loading…
Reference in New Issue