User prompt
Добавь фоновую графику
User prompt
После 1 миллисекунды убийце отправляется фото того кого надо убить
User prompt
Если убить не того то то ты проиграешь
User prompt
На телефоне случайно появляется фото одного типа врага
User prompt
Создай типы врагов миллионер бомж человек в красном свитере женщина в розовом элегантный в костюме пиццы
User prompt
На телефоне фотка того кого надо убить
User prompt
Телефон надо двинуть с помощью сенсорного касания его достанешь на весь экран
User prompt
При нажатие на телефон игрок не стреляет а на экра не появляется телефон во весь рост с сообщениями
User prompt
Fix Bug: 'TypeError: phone.containsPoint is not a function' in this line: 'if (phone.containsPoint(touchPos)) {' Line Number: 138
User prompt
При нажатие на телефон открываются сообщения
User prompt
Сообщение про цели и их фото
User prompt
С боку есть телефон на который приходят сообщения о целях и их Артем
User prompt
Убийца может только поворачиваться в стороны
User prompt
Добавь сенсорное управление перемещение на одном месте
User prompt
Кружочек управления находиться в нижнем углу
User prompt
Джойстик находиться в нижнем углу стреляет при нажатие на экран
User prompt
Вращение происходит с помощью джойстика
User prompt
Мы можем крутиться на одном мес те
Initial prompt
2d killer
/**** * Classes ****/ // Define the Hitman class var Hitman = Container.expand(function () { var self = Container.call(this); var hitmanGraphics = self.createAsset('hitman', 'Hitman character', 0.5, 0.5); self.speed = 3; self.moveLeft = function () { self.x -= self.speed; }; self.moveRight = function () { self.x += self.speed; }; self.moveUp = function () { self.y -= self.speed; }; self.moveDown = function () { self.y += self.speed; }; self.rotate = function (angle) { self.rotation = angle; }; self.shoot = function () { var bullet = new Bullet(); bullet.x = self.x; bullet.y = self.y; bullets.push(bullet); game.addChild(bullet); }; self.on('down', function () { self.shoot(); }); }); // Define the Enemy class var Enemy = Container.expand(function () { var self = Container.call(this); var enemyGraphics = self.createAsset('enemy', 'Enemy character', 0.5, 0.5); self.speed = 2; self.patrol = function () { // Simple left-right patrol movement self.x += self.speed; if (self.x > 2048 - self.width / 2 || self.x < self.width / 2) { self.speed *= -1; } }; }); // Define the Bullet class for Hitman var Bullet = Container.expand(function () { var self = Container.call(this); var bulletGraphics = self.createAsset('bullet', 'Bullet fired by Hitman', 0.5, 0.5); self.speed = 10; self.move = function () { self.y -= self.speed; }; }); var Joystick = Container.expand(function () { var self = Container.call(this); var baseGraphics = self.createAsset('joystickBase', 'Joystick base', 0.5, 0.5); var stickGraphics = self.createAsset('joystickStick', 'Joystick stick', 0.5, 0.5); self.x = 150; self.y = 2732 - 150; var stickOrigin = { x: self.x, y: self.y }; var dragging = false; self.on('down', function (obj) { dragging = true; }); game.on('up', function (obj) { dragging = false; stickGraphics.x = 0; stickGraphics.y = 0; }); game.on('move', function (obj) { if (dragging) { var touchPos = obj.event.getLocalPosition(self); var dx = touchPos.x - stickOrigin.x; var dy = touchPos.y - stickOrigin.y; var distance = Math.sqrt(dx * dx + dy * dy); var angle = Math.atan2(dy, dx); if (distance > 60) { // Joystick movement threshold distance = 60; stickGraphics.x = distance * Math.cos(angle); stickGraphics.y = distance * Math.sin(angle); } else { stickGraphics.x = dx; stickGraphics.y = dy; } hitman.rotate(angle); } }); }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 // Init game with black background }); /**** * Game Code ****/ // Initialize important asset arrays var enemies = []; var bullets = []; var hitman; // Initialize the Hitman character function initHitman() { hitman = game.addChild(new Hitman()); hitman.x = 2048 / 2; hitman.y = 2732 - 100; } // Initialize enemies function initEnemies() { for (var i = 0; i < 5; i++) { var enemy = new Enemy(); enemy.x = 100 + i * 400; enemy.y = 100; enemies.push(enemy); game.addChild(enemy); } } // Check for bullet-enemy collisions function checkCollisions() { for (var b = bullets.length - 1; b >= 0; b--) { for (var e = enemies.length - 1; e >= 0; e--) { if (bullets[b].intersects(enemies[e])) { enemies[e].destroy(); enemies.splice(e, 1); bullets[b].destroy(); bullets.splice(b, 1); break; } } } } // Game tick update LK.on('tick', function () { // Move enemies for (var i = 0; i < enemies.length; i++) { enemies[i].patrol(); } // Move bullets for (var j = bullets.length - 1; j >= 0; j--) { bullets[j].move(); // Remove bullets that are off-screen if (bullets[j].y < -50) { bullets[j].destroy(); bullets.splice(j, 1); } } // Check for collisions checkCollisions(); }); // Initialize game elements initHitman(); initEnemies();
===================================================================
--- original.js
+++ change.js
@@ -20,8 +20,18 @@
};
self.rotate = function (angle) {
self.rotation = angle;
};
+ self.shoot = function () {
+ var bullet = new Bullet();
+ bullet.x = self.x;
+ bullet.y = self.y;
+ bullets.push(bullet);
+ game.addChild(bullet);
+ };
+ self.on('down', function () {
+ self.shoot();
+ });
});
// Define the Enemy class
var Enemy = Container.expand(function () {
var self = Container.call(this);
@@ -61,9 +71,8 @@
game.on('up', function (obj) {
dragging = false;
stickGraphics.x = 0;
stickGraphics.y = 0;
- hitman.rotate(0); // Stop rotation when joystick is released
});
game.on('move', function (obj) {
if (dragging) {
var touchPos = obj.event.getLocalPosition(self);
@@ -132,29 +141,8 @@
}
}
}
-// Handle touch events for movement and shooting
-function handleTouch(obj) {
- var touchPos = obj.event.getLocalPosition(game);
- if (touchPos.x < hitman.x) {
- hitman.moveLeft();
- } else if (touchPos.x > hitman.x) {
- hitman.moveRight();
- }
- if (touchPos.y < hitman.y) {
- hitman.moveUp();
- } else if (touchPos.y > hitman.y) {
- hitman.moveDown();
- }
- // Shoot a bullet
- var bullet = new Bullet();
- bullet.x = hitman.x;
- bullet.y = hitman.y;
- bullets.push(bullet);
- game.addChild(bullet);
-}
-
// Game tick update
LK.on('tick', function () {
// Move enemies
for (var i = 0; i < enemies.length; i++) {
Ниндзя с винтовкой лежит. 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.
Богатый человек идёт. 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.