User prompt
ama biz dolaba saklandığımızda bizi görmesin ama biz saklanmazsak bize saldırıp canımızı azaltsın ve yukarda can barımız olsun
User prompt
her 15 saniyede bir giriş kapısından hayalet gelsin, kapı açılıp geri kapansın ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
üst katta bir dolap olsun ve dolaba basınca karakter dolabın içine saklansın
User prompt
karakter sadece merdivenden yukarı çıkabilsin başka türlü çıkamasın
User prompt
karakterimiz merdiven hariç hiç bir şekilde üst kata çıkamasın ve üst kata iki oda olsun
User prompt
iki katın arasındaki boşluk olmasın ve merdiven üzerinde yürüyebiliceğimiz bir merdiven olsun
User prompt
şimdi öncelikle karakter evin duvarlarından dışarıya çıkamasın ve birinci kattan ikinci kata bir merdiven olsun
User prompt
ev ekranı kaplayacak büyüklükte olsun
User prompt
hava sisli olmasın ama ev daha büyük olsun
User prompt
öncelikle bir ev olsun ev bodrum katı hariç 2 katlı olsun bodrum katının kapısı kilitli olsun evin çıkış kapısı da kilitli olsun korku oyunu yapacağım için hava biraz sisli olsun
User prompt
Dark House Explorer
Initial prompt
bana bir ev yap ev iki katı olsun ha bide korku oyunu yapacağım için biraz karanlık olsun
/**** * Classes ****/ var House = Container.expand(function () { var self = Container.call(this); // Ground floor var groundFloorWall = self.attachAsset('houseWall', { x: 0, y: 1200 }); var groundFloor = self.attachAsset('houseFloor', { x: 0, y: 1800 }); // Second floor var secondFloorWall = self.attachAsset('houseWall', { x: 0, y: 600 }); var secondFloor = self.attachAsset('houseFloor', { x: 0, y: 1200 }); // Stairs connecting floors - make them walkable var stairway = self.attachAsset('stairs', { x: 974, y: 1200, width: 100, height: 600 }); // Second floor room dividers var roomWall1 = self.attachAsset('houseWall', { x: 1024, y: 600, width: 20, height: 600 }); var roomWall2 = self.attachAsset('houseWall', { x: 0, y: 900, width: 1024, height: 20 }); var roomWall3 = self.attachAsset('houseWall', { x: 1044, y: 900, width: 1004, height: 20 }); // Floor barriers to prevent jumping between floors (except stairs) var floorBarrierLeft = self.attachAsset('houseWall', { x: 0, y: 1200, width: 974, height: 20 }); var floorBarrierRight = self.attachAsset('houseWall', { x: 1074, y: 1200, width: 974, height: 20 }); // Store barrier references for collision detection self.roomWall1 = roomWall1; self.roomWall2 = roomWall2; self.roomWall3 = roomWall3; self.floorBarrierLeft = floorBarrierLeft; self.floorBarrierRight = floorBarrierRight; // Windows var window1 = self.attachAsset('window', { x: 300, y: 700 }); var window2 = self.attachAsset('window', { x: 800, y: 700 }); var window3 = self.attachAsset('window', { x: 1200, y: 700 }); var window4 = self.attachAsset('window', { x: 1600, y: 700 }); var window5 = self.attachAsset('window', { x: 300, y: 1300 }); var window6 = self.attachAsset('window', { x: 800, y: 1300 }); var window7 = self.attachAsset('window', { x: 1200, y: 1300 }); var window8 = self.attachAsset('window', { x: 1600, y: 1300 }); // Exit door (locked) var exitDoor = self.attachAsset('door', { x: 1900, y: 1620 }); var exitLock = self.attachAsset('lock', { x: 1970, y: 1660 }); // Basement door (locked) var basementDoor = self.attachAsset('door', { x: 100, y: 1620 }); var basementLock = self.attachAsset('lock', { x: 170, y: 1660 }); // Store door references for game logic self.exitDoor = exitDoor; self.basementDoor = basementDoor; self.exitLocked = true; self.basementLocked = true; return self; }); var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 3; return self; }); /**** * Initialize Game ****/ // Set dark atmospheric background var game = new LK.Game({ backgroundColor: 0x000000 }); /**** * Game Code ****/ // Set dark atmospheric background // House structure assets game.setBackgroundColor(0x0a0a0a); // Create the two-story house var house = game.addChild(new House()); // Position house to fill entire screen house.x = 0; house.y = 0; // Create player var player = game.addChild(new Player()); player.x = 2048 / 2; player.y = 1750; // Start on ground floor // Variables for player movement var dragNode = null; // Game state variables var gameStarted = false; // Touch controls for player movement game.down = function (x, y, obj) { dragNode = player; // Apply collision boundaries to keep player inside house walls var newX = x; var newY = y; // Horizontal boundaries (house walls at x=0 and x=2048) if (newX < 20) newX = 20; // Left wall boundary if (newX > 2028) newX = 2028; // Right wall boundary // Vertical boundaries if (newY < 620) newY = 620; // Top of second floor if (newY > 1800) newY = 1800; // Bottom of ground floor // Floor barrier collision - prevent jumping between floors except via stairs if (newY > 1200 && newY < 1220) { if (newX < 974 || newX > 1074) { // Block movement across floor barrier outside stairs area if (player.y <= 1200) { newY = 1200; // Keep on second floor } else { newY = 1220; // Keep on ground floor } } } // Second floor room wall collisions if (newY >= 600 && newY <= 1200) { // Vertical room divider at x=1024 if (newX > 1024 && newX < 1044 && newY >= 600 && newY <= 1200) { if (player.x <= 1024) { newX = 1024; } else { newX = 1044; } } // Horizontal room dividers at y=900 if (newY > 900 && newY < 920) { if (newX < 1024 || newX > 1044) { if (player.y <= 900) { newY = 900; } else { newY = 920; } } } } player.x = newX; player.y = newY; }; game.move = function (x, y, obj) { if (dragNode) { // Apply collision boundaries to keep player inside house walls var newX = x; var newY = y; // Horizontal boundaries (house walls at x=0 and x=2048) if (newX < 20) newX = 20; // Left wall boundary if (newX > 2028) newX = 2028; // Right wall boundary // Vertical boundaries if (newY < 620) newY = 620; // Top of second floor if (newY > 1800) newY = 1800; // Bottom of ground floor // Floor barrier collision - prevent jumping between floors except via stairs if (newY > 1200 && newY < 1220) { if (newX < 974 || newX > 1074) { // Block movement across floor barrier outside stairs area if (dragNode.y <= 1200) { newY = 1200; // Keep on second floor } else { newY = 1220; // Keep on ground floor } } } // Second floor room wall collisions if (newY >= 600 && newY <= 1200) { // Vertical room divider at x=1024 if (newX > 1024 && newX < 1044 && newY >= 600 && newY <= 1200) { if (dragNode.x <= 1024) { newX = 1024; } else { newX = 1044; } } // Horizontal room dividers at y=900 if (newY > 900 && newY < 920) { if (newX < 1024 || newX > 1044) { if (dragNode.y <= 900) { newY = 900; } else { newY = 920; } } } } dragNode.x = newX; dragNode.y = newY; } }; game.up = function (x, y, obj) { dragNode = null; }; // Player floor tracking var playerFloor = 1; // 1 = ground floor, 2 = second floor // Game update loop for stair interaction game.update = function () { // Check if player is on stairs area (walkable stairs) var stairLeft = 974; var stairRight = 974 + 100; var stairTop = 1200; var stairBottom = 1800; // Determine current floor based on Y position if (player.y <= 1200) { playerFloor = 2; // Second floor } else if (player.y >= 1200) { playerFloor = 1; // Ground floor } // Allow player to walk freely on stairs - no special collision needed // as stairs are now part of the walkable area between floors // Update collision boundaries - allow movement between floors via stairs if (player.y > 1800) player.y = 1800; // Bottom boundary if (player.y < 620) player.y = 620; // Top boundary }; // Display instructions var instructionText = new Text2('Explore the haunted house\nUse stairs to move between floors\nExit and basement doors are locked', { size: 50, fill: 0xCCCCCC }); instructionText.anchor.set(0.5, 0); LK.gui.top.addChild(instructionText); ;
===================================================================
--- original.js
+++ change.js
@@ -27,8 +27,46 @@
y: 1200,
width: 100,
height: 600
});
+ // Second floor room dividers
+ var roomWall1 = self.attachAsset('houseWall', {
+ x: 1024,
+ y: 600,
+ width: 20,
+ height: 600
+ });
+ var roomWall2 = self.attachAsset('houseWall', {
+ x: 0,
+ y: 900,
+ width: 1024,
+ height: 20
+ });
+ var roomWall3 = self.attachAsset('houseWall', {
+ x: 1044,
+ y: 900,
+ width: 1004,
+ height: 20
+ });
+ // Floor barriers to prevent jumping between floors (except stairs)
+ var floorBarrierLeft = self.attachAsset('houseWall', {
+ x: 0,
+ y: 1200,
+ width: 974,
+ height: 20
+ });
+ var floorBarrierRight = self.attachAsset('houseWall', {
+ x: 1074,
+ y: 1200,
+ width: 974,
+ height: 20
+ });
+ // Store barrier references for collision detection
+ self.roomWall1 = roomWall1;
+ self.roomWall2 = roomWall2;
+ self.roomWall3 = roomWall3;
+ self.floorBarrierLeft = floorBarrierLeft;
+ self.floorBarrierRight = floorBarrierRight;
// Windows
var window1 = self.attachAsset('window', {
x: 300,
y: 700
@@ -134,8 +172,40 @@
if (newX > 2028) newX = 2028; // Right wall boundary
// Vertical boundaries
if (newY < 620) newY = 620; // Top of second floor
if (newY > 1800) newY = 1800; // Bottom of ground floor
+ // Floor barrier collision - prevent jumping between floors except via stairs
+ if (newY > 1200 && newY < 1220) {
+ if (newX < 974 || newX > 1074) {
+ // Block movement across floor barrier outside stairs area
+ if (player.y <= 1200) {
+ newY = 1200; // Keep on second floor
+ } else {
+ newY = 1220; // Keep on ground floor
+ }
+ }
+ }
+ // Second floor room wall collisions
+ if (newY >= 600 && newY <= 1200) {
+ // Vertical room divider at x=1024
+ if (newX > 1024 && newX < 1044 && newY >= 600 && newY <= 1200) {
+ if (player.x <= 1024) {
+ newX = 1024;
+ } else {
+ newX = 1044;
+ }
+ }
+ // Horizontal room dividers at y=900
+ if (newY > 900 && newY < 920) {
+ if (newX < 1024 || newX > 1044) {
+ if (player.y <= 900) {
+ newY = 900;
+ } else {
+ newY = 920;
+ }
+ }
+ }
+ }
player.x = newX;
player.y = newY;
};
game.move = function (x, y, obj) {
@@ -148,8 +218,40 @@
if (newX > 2028) newX = 2028; // Right wall boundary
// Vertical boundaries
if (newY < 620) newY = 620; // Top of second floor
if (newY > 1800) newY = 1800; // Bottom of ground floor
+ // Floor barrier collision - prevent jumping between floors except via stairs
+ if (newY > 1200 && newY < 1220) {
+ if (newX < 974 || newX > 1074) {
+ // Block movement across floor barrier outside stairs area
+ if (dragNode.y <= 1200) {
+ newY = 1200; // Keep on second floor
+ } else {
+ newY = 1220; // Keep on ground floor
+ }
+ }
+ }
+ // Second floor room wall collisions
+ if (newY >= 600 && newY <= 1200) {
+ // Vertical room divider at x=1024
+ if (newX > 1024 && newX < 1044 && newY >= 600 && newY <= 1200) {
+ if (dragNode.x <= 1024) {
+ newX = 1024;
+ } else {
+ newX = 1044;
+ }
+ }
+ // Horizontal room dividers at y=900
+ if (newY > 900 && newY < 920) {
+ if (newX < 1024 || newX > 1044) {
+ if (dragNode.y <= 900) {
+ newY = 900;
+ } else {
+ newY = 920;
+ }
+ }
+ }
+ }
dragNode.x = newX;
dragNode.y = newY;
}
};
merdiven. In-Game asset. 2d. High contrast. No shadows
pencere. In-Game asset. 2d. High contrast. No shadows
pikselli bir karakter ama kız. In-Game asset. 2d. High contrast. No shadows
siyah sade uzun duvar. In-Game asset. 2d. High contrast. No shadows
hayalet. In-Game asset. 2d. High contrast. No shadows
kapı ama eskimiş. In-Game asset. 2d. High contrast. No shadows
silah gerçek. In-Game asset. 2d. High contrast. No shadows
anahtar. In-Game asset. 2d. High contrast. No shadows