User prompt
Fix Bug: 'Uncaught TypeError: window.addEventListener is not a function' in this line: 'window.addEventListener('keydown', handleKeyDown);' Line Number: 108
User prompt
The player isn't moving with the WASD keys
User prompt
Fix Bug: 'Uncaught TypeError: window.addEventListener is not a function' in this line: 'window.addEventListener('keydown', handleKeyDown);' Line Number: 108
User prompt
Add a player object that can be moved with WASD, arrow keys or touch enabled virtual joystick
Initial prompt
Minion Control
var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.createAsset('player', 'Player Graphics', .5, .5); self.speed = 5; self.move = function (direction) { switch (direction) { case 'left': self.x -= self.speed; break; case 'right': self.x += self.speed; break; case 'up': self.y -= self.speed; break; case 'down': self.y += self.speed; break; } }; }); var Minion = Container.expand(function () { var self = Container.call(this); var minionGraphics = self.createAsset('minion', 'Minion Graphics', .5, .5); self.speed = 5; self.move = function () {}; self.attack = function () {}; }); var Enemy = Container.expand(function () { var self = Container.call(this); var enemyGraphics = self.createAsset('enemy', 'Enemy Graphics', .5, .5); self.speed = -5; self.move = function () {}; self.attack = function () {}; }); var HeroBullet = Container.expand(function () { var self = Container.call(this); var bulletGraphics = self.createAsset('heroBullet', 'Hero Bullet Graphics', .5, .5); self.speed = 10; self.move = function () {}; }); var EnemyBullet = Container.expand(function () { var self = Container.call(this); var bulletGraphics = self.createAsset('enemyBullet', 'Enemy Bullet Graphics', .5, .5); self.speed = -10; self.move = function () {}; }); var Game = Container.expand(function () { var self = Container.call(this); var player = self.addChild(new Player()); player.x = 2048 / 2; player.y = 2732 - 200; var keys = { left: false, right: false, up: false, down: false }; function updatePlayerMovement() { if (keys.left) player.move('left'); if (keys.right) player.move('right'); if (keys.up) player.move('up'); if (keys.down) player.move('down'); } LK.on('tick', function () { updatePlayerMovement(); }); function handleKeyDown(event) { switch (event.key) { case 'ArrowLeft': case 'a': keys.left = true; break; case 'ArrowRight': case 'd': keys.right = true; break; case 'ArrowUp': case 'w': keys.up = true; break; case 'ArrowDown': case 's': keys.down = true; break; } } function handleKeyUp(event) { switch (event.key) { case 'ArrowLeft': case 'a': keys.left = false; break; case 'ArrowRight': case 'd': keys.right = false; break; case 'ArrowUp': case 'w': keys.up = false; break; case 'ArrowDown': case 's': keys.down = false; break; } } LK.on('keydown', handleKeyDown); LK.on('keyup', handleKeyUp); var minions = []; var enemies = []; var heroBullets = []; var enemyBullets = []; for (var i = 0; i < 5; i++) { var minion = new Minion(); minion.x = 2048 / 2; minion.y = 2732 / 2 + i * 100; minions.push(minion); self.addChild(minion); } LK.on('tick', function () { for (var i = 0; i < minions.length; i++) { minions[i].move(); } for (var i = 0; i < enemies.length; i++) { enemies[i].move(); } for (var i = 0; i < heroBullets.length; i++) { heroBullets[i].move(); } for (var i = 0; i < enemyBullets.length; i++) { enemyBullets[i].move(); } }); self.on('down', function (obj) { var pos = obj.event.getLocalPosition(self); }); });
===================================================================
--- original.js
+++ change.js
@@ -104,10 +104,10 @@
keys.down = false;
break;
}
}
- window.addEventListener('keydown', handleKeyDown);
- window.addEventListener('keyup', handleKeyUp);
+ LK.on('keydown', handleKeyDown);
+ LK.on('keyup', handleKeyUp);
var minions = [];
var enemies = [];
var heroBullets = [];
var enemyBullets = [];
A pixel art sprite in a Super Nintendo, Super Castlevania style where it looks a little gothic/vampire hunter like Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A pixel art large background in a Super Nintendo, Super Castlevania style with an open world like cemetery, 3/4 viewpoint Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows. A pixel art sprite in a Super Nintendo, Super Castlevania style that looks like a small pile of bones
Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows. A pixel art sprite in a Super Nintendo, Super Castlevania style that looks like a skeleton zombie that is haunched over
Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows. Pixel art in a SNES style that looks like something from castlevania. A ground explosion effect like something is coming out of the ground
Pixel art in SNES Castlevania style. Red goblin Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows. Pixel art in SNES Castlevania style. Red goblin