fix: update module imports to latest versions for improved functionality and consistency

This commit is contained in:
Z. Cliffe Schreuders
2026-02-20 01:02:33 +00:00
parent 416c0b9d11
commit ad544d42ce
7 changed files with 40 additions and 8 deletions

View File

@@ -1,8 +1,8 @@
import { initializeRooms, calculateWorldBounds, calculateRoomPositions, createRoom, revealRoom, updatePlayerRoom, rooms } from './rooms.js?v=16';
import { initializeRooms, calculateWorldBounds, calculateRoomPositions, createRoom, revealRoom, updatePlayerRoom, rooms } from './rooms.js?v=17';
import { createPlayer, updatePlayerMovement, movePlayerToPoint, facePlayerToward, player } from './player.js?v=8';
import { initializePathfinder } from './pathfinding.js?v=7';
import { initializeInventory, processInitialInventoryItems } from '../systems/inventory.js?v=9';
import { checkObjectInteractions, setGameInstance, isObjectInInteractionRange } from '../systems/interactions.js?v=30';
import { checkObjectInteractions, setGameInstance, isObjectInInteractionRange } from '../systems/interactions.js?v=31';
import { introduceScenario } from '../utils/helpers.js?v=19';
import '../minigames/index.js?v=2';
import SoundManager from '../systems/sound-manager.js?v=1';

View File

@@ -3,7 +3,7 @@
// Pathfinding system using EasyStar.js
import { GRID_SIZE, TILE_SIZE } from '../utils/constants.js?v=8';
import { rooms } from './rooms.js?v=16';
import { rooms } from './rooms.js?v=17';
let pathfinder = null;
let gameRef = null;

View File

@@ -56,7 +56,7 @@ import {
} from '../utils/constants.js?v=8';
// Import the new system modules
import { initializeDoors, createDoorSpritesForRoom, checkDoorTransitions, updateDoorSpritesVisibility } from '../systems/doors.js';
import { initializeDoors, createDoorSpritesForRoom, checkDoorTransitions, updateDoorSpritesVisibility } from '../systems/doors.js?v=2';
import { initializeObjectPhysics, setupChairCollisions, setupExistingChairsWithNewRoom, calculateChairSpinDirection, updateSwivelChairRotation, updateSpriteDepth } from '../systems/object-physics.js';
import { initializePlayerEffects, createPlayerBumpEffect, createPlantBumpEffect } from '../systems/player-effects.js';
import { initializeCollision, createWallCollisionBoxes, removeTilesUnderDoor, removeWallTilesForDoorInRoom, removeWallTilesAtWorldPosition } from '../systems/collision.js';

View File

@@ -7,7 +7,7 @@
*/
import { TILE_SIZE } from '../utils/constants.js';
import { getOppositeDirection, calculateDoorPositionsForRoom } from './doors.js';
import { getOppositeDirection, calculateDoorPositionsForRoom } from './doors.js?v=2';
let gameRef = null;
let rooms = null;

View File

@@ -688,6 +688,15 @@ function openDoor(doorSprite) {
delete doorSprite.interactionIndicator;
}
// Clean up proximity ghost (created by interaction system when door was in range)
if (doorSprite.proximityGhost) {
if (doorSprite.scene && doorSprite.scene.tweens) {
doorSprite.scene.tweens.killTweensOf(doorSprite.proximityGhost);
}
doorSprite.proximityGhost.destroy();
delete doorSprite.proximityGhost;
}
// Remove the door sprite
doorSprite.destroy();
if (doorSprite.interactionZone) {
@@ -800,6 +809,28 @@ function removeMatchingDoorSprite(roomId, fromRoomId, direction, doorWorldX, doo
if (matchingDoorSprite) {
console.log(`Found matching door sprite in room ${roomId} at (${matchingDoorSprite.x}, ${matchingDoorSprite.y}), removing it`);
// Clean up lock icon indicator before destroying
if (matchingDoorSprite.interactionIndicator) {
if (matchingDoorSprite.interactionIndicator.anims?.isPlaying) {
matchingDoorSprite.interactionIndicator.anims.stop();
}
if (matchingDoorSprite.scene?.tweens) {
matchingDoorSprite.scene.tweens.killTweensOf(matchingDoorSprite.interactionIndicator);
}
matchingDoorSprite.interactionIndicator.destroy();
delete matchingDoorSprite.interactionIndicator;
}
// Clean up proximity ghost if present
if (matchingDoorSprite.proximityGhost) {
if (matchingDoorSprite.scene?.tweens) {
matchingDoorSprite.scene.tweens.killTweensOf(matchingDoorSprite.proximityGhost);
}
matchingDoorSprite.proximityGhost.destroy();
delete matchingDoorSprite.proximityGhost;
}
matchingDoorSprite.destroy();
if (matchingDoorSprite.interactionZone) {
matchingDoorSprite.interactionZone.destroy();

View File

@@ -1,8 +1,8 @@
// Object interaction system
import { INTERACTION_RANGE, INTERACTION_RANGE_SQ, INTERACTION_CHECK_INTERVAL } from '../utils/constants.js?v=8';
import { rooms } from '../core/rooms.js?v=16';
import { rooms } from '../core/rooms.js?v=17';
import { handleUnlock } from './unlock-system.js';
import { handleDoorInteraction } from './doors.js';
import { handleDoorInteraction } from './doors.js?v=2';
import { collectFingerprint, handleBiometricScan } from './biometrics.js';
import { addToInventory, removeFromInventory, createItemIdentifier } from './inventory.js?v=9';
import { playUISound, playGameSound } from './ui-sounds.js?v=1';
@@ -413,6 +413,7 @@ function addProximityGhost(obj) {
if (!obj.scene || !obj.scene.add) return;
if (obj.proximityGhost) return; // Already exists
if (obj._isNPC) return; // NPCs use the talk-icon system instead
if (obj.doorProperties) return; // Doors are always visible; their lock icon is the interactionIndicator
try {
const textureKey = obj.texture && obj.texture.key;

View File

@@ -9,7 +9,7 @@
import { DOOR_ALIGN_OVERLAP } from '../utils/constants.js';
import { rooms } from '../core/rooms.js';
import { unlockDoor } from './doors.js';
import { unlockDoor } from './doors.js?v=2';
import { startLockpickingMinigame, startKeySelectionMinigame, startPinMinigame, startPasswordMinigame } from './minigame-starters.js';
import { playUISound } from './ui-sounds.js?v=1';