From 4f85e1cc9d4cea703c9482d19f8955aee2d56b05 Mon Sep 17 00:00:00 2001 From: Max Robinson Date: Sun, 28 Nov 2021 17:03:20 -0600 Subject: [PATCH] changed hotkeys, removed comments --- dist/index.html | 36 +++++------ src/Controllers/ControlPanel.js | 77 +++++++----------------- src/Controllers/EnvironmentController.js | 31 ++-------- 3 files changed, 47 insertions(+), 97 deletions(-) diff --git a/dist/index.html b/dist/index.html index 5b160ed..99f44d3 100644 --- a/dist/index.html +++ b/dist/index.html @@ -19,12 +19,12 @@
- - - - - - + + + + + +

Simulation Speed

@@ -62,7 +62,7 @@

Simulation Controls

Stats

Challenges

- +
@@ -98,9 +98,9 @@
- - - + + +
@@ -261,19 +261,19 @@
- - - - - - - + + + + + + +
- +
diff --git a/src/Controllers/ControlPanel.js b/src/Controllers/ControlPanel.js index f57da67..2da13ac 100644 --- a/src/Controllers/ControlPanel.js +++ b/src/Controllers/ControlPanel.js @@ -42,82 +42,52 @@ class ControlPanel { this.stats_panel.startAutoRender(); } }); - - // var self = this; - // $('#minimize').click ( function() { - // $('.control-panel').css('display', 'none'); - // $('.hot-controls').css('display', 'block'); - - // }.bind(this)); - // $('#maximize').click ( function() { - // $('.control-panel').css('display', 'grid'); - // $('.hot-controls').css('display', 'none'); - // if (self.tab_id == 'stats') { - // self.stats_panel.startAutoRender(); - // } - // }); } defineHotkeys() { - - $('body').keydown( (evt) => { - - //console.log(evt.which); - - switch (evt.which) { - + $('body').keydown( (e) => { + switch (e.key.toLowerCase()) { // hot bar controls - case 49: // 1 = Reset Camera + case 'a': $('.reset-view')[0].click(); break; - - case 50: // 2 = Drag View + case 's': $('#drag-view').click(); break; - - case 51: // 3 = Drop Wall + case 'd': $('#wall-drop').click(); break; - - case 52: // 4 = Drop Food + case 'f': $('#food-drop').click(); break; - - case 53: // 5 = Kill + case 'g': $('#click-kill').click(); break; - - case 54: // 6 = Play/Pause - case 32: // Space = Play/Pause - $('.pause-button')[0].click(); - break; - - case 55: // 7 = Toggle Rendering + case 'h': $('.headless')[0].click(); break; - + case 'j': + case ' ': + $('.pause-button')[0].click(); + break; // miscellaneous hotkeys - case 9: // tab = toggle control panel - evt.preventDefault(); + case 'q': // minimize/maximize control panel + e.preventDefault(); if (this.control_panel_active) $('#minimize').click(); else $('#maximize').click(); break; - - case 68: // d = drop organism - $('#drop-org').click(); - break; - - case 69: // e = edit organism - $('#edit').click(); - break; - - case 83: // s = select creature mode + case 'z': $('#select').click(); break; - - case 86: // v = Toggle HUD + case 'x': + $('#edit').click(); + break; + case 'c': + $('#drop-org').click(); + break; + case 'v': // toggle hud if (this.no_hud) { let control_panel_display = this.control_panel_active ? 'grid' : 'none'; let hot_control_display = !this.control_panel_active ? 'block' : 'none'; @@ -133,8 +103,7 @@ class ControlPanel { } this.no_hud = !this.no_hud; break; - - case 88: // x = clear all walls + case 'b': $('#clear-walls').click(); } }); diff --git a/src/Controllers/EnvironmentController.js b/src/Controllers/EnvironmentController.js index 3067ab3..73aa0fc 100644 --- a/src/Controllers/EnvironmentController.js +++ b/src/Controllers/EnvironmentController.js @@ -28,33 +28,14 @@ class EnvironmentController extends CanvasController{ // Restrict scale scale = Math.max(0.5, this.scale+(sign*zoom_speed)); - //if (scale != 0.5) { + var cur_top = parseInt($('#env-canvas').css('top')); + var cur_left = parseInt($('#env-canvas').css('left')); - var cur_top = parseInt($('#env-canvas').css('top')); - var cur_left = parseInt($('#env-canvas').css('left')); + var diff_x = (this.canvas.width/2 - this.mouse_x) * (scale - this.scale); + var diff_y = (this.canvas.height/2 - this.mouse_y) * (scale - this.scale); - var diff_x = (this.canvas.width/2 - this.mouse_x) * (scale - this.scale); - var diff_y = (this.canvas.height/2 - this.mouse_y) * (scale - this.scale); - - /* -- Original Zoom procedure - if (sign == 1) { - // If we're zooming in, zoom towards wherever the mouse is - var diff_x = ((this.canvas.width/2-cur_left/this.scale) - this.mouse_x)*scale/1.5; - var diff_y = ((this.canvas.height/2-cur_top/this.scale) - this.mouse_y)*scale/1.5; - - } - else { - // If we're zooming out, zoom out towards the center - var diff_x = -cur_left/scale; - var diff_y = -cur_top/scale; - var new_left = cur_left - cur_left / scale; - var new_top = cur_top - cur_top / scale; - } - */ - - $('#env-canvas').css('top', (cur_top+diff_y)+'px'); - $('#env-canvas').css('left', (cur_left+diff_x)+'px'); - //} + $('#env-canvas').css('top', (cur_top+diff_y)+'px'); + $('#env-canvas').css('left', (cur_left+diff_x)+'px'); // Apply scale transform el.style.transform = `scale(${scale})`;