diff --git a/cli/test/jest.config.ts b/cli/test/jest.config.ts index 84a8fc540..2d35be2de 100644 --- a/cli/test/jest.config.ts +++ b/cli/test/jest.config.ts @@ -19,6 +19,7 @@ module.exports = { testEnvironment: "node", rootDir: ROOT_DIR, setupFiles: [path.resolve(__dirname, "./jest_global.ts")], + setupFilesAfterEnv: [path.resolve(__dirname, "./jest_after_env.ts")], roots: [""], collectCoverage: true, coverageReporters: ["json", "html"], diff --git a/cli/test/jest_after_env.ts b/cli/test/jest_after_env.ts new file mode 100644 index 000000000..3a4ba624d --- /dev/null +++ b/cli/test/jest_after_env.ts @@ -0,0 +1,3 @@ +import { extendJest } from "@/fixtures/jest/extendJest"; + +extendJest(); diff --git a/src/engine/configs/scripts/labx8/lx8_toilet_door.ltx b/src/engine/configs/scripts/labx8/lx8_toilet_door.ltx index ccbe95423..4f1af9ea6 100644 --- a/src/engine/configs/scripts/labx8/lx8_toilet_door.ltx +++ b/src/engine/configs/scripts/labx8/lx8_toilet_door.ltx @@ -29,7 +29,7 @@ snd_open_start = metal_small_open snd_close_start = metal_small_close_start snd_close_stop = metal_small_close_stop ;on_use = ph_door@open -hit_on_bone = 4 | ph_door@open_2 %+lx8_toilet_door_open_again% | 2 | ph_door@open_2 %+lx8_toilet_door_open_again% +hit_on_bone = 4|ph_door@open_2 %+lx8_toilet_door_open_again%|2|ph_door@open_2 %+lx8_toilet_door_open_again% on_info = {+lx8_toilet_burer_dead} ph_door@free on_info2 = {+pri_a19_lab_x16_info} ph_door@open_2 diff --git a/src/engine/core/database/logic.ts b/src/engine/core/database/logic.ts index 0154f1409..3f84a227a 100644 --- a/src/engine/core/database/logic.ts +++ b/src/engine/core/database/logic.ts @@ -5,8 +5,8 @@ import { registry } from "@/engine/core/database/registry"; import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker } from "@/engine/core/database/save_markers"; import { IRegistryObjectState } from "@/engine/core/database/types"; import { ESchemeEvent, IBaseSchemeState } from "@/engine/core/schemes/base/types"; -import { emitSchemeEvent } from "@/engine/core/utils/scheme/event"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; +import { emitSchemeEvent } from "@/engine/core/utils/scheme/scheme_event"; import { NIL } from "@/engine/lib/constants/words"; import { ClientObject, diff --git a/src/engine/core/database/monster.ts b/src/engine/core/database/monster.ts index b90e7f3ac..134511ae1 100644 --- a/src/engine/core/database/monster.ts +++ b/src/engine/core/database/monster.ts @@ -1,7 +1,7 @@ import { clsid } from "xray16"; import { abort } from "@/engine/core/utils/assertion"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { EMonsterState } from "@/engine/lib/constants/monsters"; import { ClientObject, IniFile, Optional, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/database/registry.test.ts b/src/engine/core/database/registry.test.ts index 05f3f22f8..88d656ef7 100644 --- a/src/engine/core/database/registry.test.ts +++ b/src/engine/core/database/registry.test.ts @@ -4,7 +4,7 @@ import { registry } from "@/engine/core/database/registry"; describe("registry storage", () => { it("storage to contain all fields", () => { - expect(Object.keys(registry)).toHaveLength(36); + expect(Object.keys(registry)).toHaveLength(37); }); it("storage to initialize with correct data", () => { @@ -13,6 +13,7 @@ describe("registry storage", () => { expect(registry.activeSmartTerrainId).toBeNull(); expect(registry.managers instanceof LuaTable).toBeTruthy(); expect(registry.schemes instanceof LuaTable).toBeTruthy(); + expect(registry.conditionLists instanceof LuaTable).toBeTruthy(); expect(registry.actorCombat instanceof LuaTable).toBeTruthy(); expect(registry.objects instanceof LuaTable).toBeTruthy(); expect(registry.offlineObjects instanceof LuaTable).toBeTruthy(); diff --git a/src/engine/core/database/registry.ts b/src/engine/core/database/registry.ts index 7438df087..e4f971dc9 100644 --- a/src/engine/core/database/registry.ts +++ b/src/engine/core/database/registry.ts @@ -20,6 +20,7 @@ import type { CampStoryManager } from "@/engine/core/schemes/camper"; import type { PatrolManager } from "@/engine/core/schemes/patrol"; import type { ReachTaskPatrolManager } from "@/engine/core/schemes/reach_task"; import type { LightManager } from "@/engine/core/schemes/sr_light"; +import type { TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { ERelation } from "@/engine/core/utils/relation"; import { storyNames, TStoryName } from "@/engine/lib/constants/story_names"; import type { @@ -59,6 +60,10 @@ export const registry = { * List of activated schemes in game. */ schemes: new LuaTable(), + /** + * Memoized condlist for parsing simplification, where key is string data and value is parsed descriptor. + */ + conditionLists: new LuaTable(), /** * Set of objects in combat with actor. */ diff --git a/src/engine/core/database/simulation.ts b/src/engine/core/database/simulation.ts index 7122fe466..b1d241614 100644 --- a/src/engine/core/database/simulation.ts +++ b/src/engine/core/database/simulation.ts @@ -3,7 +3,7 @@ import { clsid } from "xray16"; import { SIMULATION_OBJECTS_PROPS_LTX } from "@/engine/core/database/ini_registry"; import { registry } from "@/engine/core/database/registry"; import { TSimulationObject } from "@/engine/core/objects/server/types"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; import { ACTOR, DEFAULT } from "@/engine/lib/constants/words"; import { TCount, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/database/story_objects.ts b/src/engine/core/database/story_objects.ts index c33ee37f2..c088ffa26 100644 --- a/src/engine/core/database/story_objects.ts +++ b/src/engine/core/database/story_objects.ts @@ -3,7 +3,7 @@ import { alife, level } from "xray16"; import { SYSTEM_INI } from "@/engine/core/database/ini_registry"; import { registry } from "@/engine/core/database/registry"; import { abort, assert } from "@/engine/core/utils/assertion"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { ClientObject, IniFile, Optional, ServerObject, TName, TNumberId, TStringId } from "@/engine/lib/types"; /** diff --git a/src/engine/core/managers/debug/DebugManager.ts b/src/engine/core/managers/debug/DebugManager.ts index 474a99772..4b2325678 100644 --- a/src/engine/core/managers/debug/DebugManager.ts +++ b/src/engine/core/managers/debug/DebugManager.ts @@ -5,9 +5,9 @@ import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreMan import { EStateActionId } from "@/engine/core/objects/state"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { EActionId } from "@/engine/core/schemes"; +import { gameTimeToString } from "@/engine/core/utils/game/game_time"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getNumberRelationBetweenCommunities } from "@/engine/core/utils/relation/get"; -import { gameTimeToString } from "@/engine/core/utils/time"; +import { getNumberRelationBetweenCommunities } from "@/engine/core/utils/relation"; import { toJSON } from "@/engine/core/utils/transform/json"; import { stalkerCommunities, TCommunity } from "@/engine/lib/constants/communities"; import { NIL } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/managers/debug/ProfilingManager.ts b/src/engine/core/managers/debug/ProfilingManager.ts index b333355ce..a78c22e46 100644 --- a/src/engine/core/managers/debug/ProfilingManager.ts +++ b/src/engine/core/managers/debug/ProfilingManager.ts @@ -2,7 +2,7 @@ import { profile_timer } from "xray16"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { abort } from "@/engine/core/utils/assertion"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; diff --git a/src/engine/core/managers/interaction/SimulationBoardManager.ts b/src/engine/core/managers/interaction/SimulationBoardManager.ts index c5cbd17e9..3eba141ae 100644 --- a/src/engine/core/managers/interaction/SimulationBoardManager.ts +++ b/src/engine/core/managers/interaction/SimulationBoardManager.ts @@ -8,11 +8,11 @@ import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain/SmartTe import { SquadReachTargetAction } from "@/engine/core/objects/server/squad/action"; import { Squad } from "@/engine/core/objects/server/squad/Squad"; import { TSimulationObject } from "@/engine/core/objects/server/types"; -import { evaluateSimulationPriority } from "@/engine/core/utils/alife"; import { abort } from "@/engine/core/utils/assertion"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; +import { parseStringsList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { changeTeamSquadGroup } from "@/engine/core/utils/object/object_general"; +import { evaluateSimulationPriority } from "@/engine/core/utils/object/object_alife"; +import { changeTeamSquadGroup } from "@/engine/core/utils/object/object_set"; import { setSquadRelationToActor } from "@/engine/core/utils/relation"; import { TCommunity } from "@/engine/lib/constants/communities"; import { levels, TLevel } from "@/engine/lib/constants/levels"; diff --git a/src/engine/core/managers/interaction/SleepManager.ts b/src/engine/core/managers/interaction/SleepManager.ts index a1e1b5a0b..3c6831509 100644 --- a/src/engine/core/managers/interaction/SleepManager.ts +++ b/src/engine/core/managers/interaction/SleepManager.ts @@ -7,9 +7,9 @@ import { ActorInputManager } from "@/engine/core/managers/interface"; import { SurgeManager } from "@/engine/core/managers/world/SurgeManager"; import { WeatherManager } from "@/engine/core/managers/world/WeatherManager"; import { SleepDialog } from "@/engine/core/ui/interaction/SleepDialog"; -import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/console"; -import { disableInfo, giveInfo } from "@/engine/core/utils/info_portion"; +import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { disableInfo, giveInfo } from "@/engine/core/utils/object/object_info_portion"; import { animations } from "@/engine/lib/constants/animation/animations"; import { postProcessors } from "@/engine/lib/constants/animation/post_processors"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; diff --git a/src/engine/core/managers/interaction/TradeManager.ts b/src/engine/core/managers/interaction/TradeManager.ts index 498663fb2..6015d2b73 100644 --- a/src/engine/core/managers/interaction/TradeManager.ts +++ b/src/engine/core/managers/interaction/TradeManager.ts @@ -1,12 +1,9 @@ import { ini_file, time_global } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker, registry } from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { abort, assert } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { parseConditionsList, pickSectionFromCondList, readIniNumber, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, diff --git a/src/engine/core/managers/interaction/TravelManager.ts b/src/engine/core/managers/interaction/TravelManager.ts index 329f03e40..7b39429bc 100644 --- a/src/engine/core/managers/interaction/TravelManager.ts +++ b/src/engine/core/managers/interaction/TravelManager.ts @@ -12,7 +12,7 @@ import { SquadStayOnTargetAction } from "@/engine/core/objects/server/squad/acti import { Squad } from "@/engine/core/objects/server/squad/Squad"; import { TSimulationObject } from "@/engine/core/objects/server/types"; import { abort } from "@/engine/core/utils/assertion"; -import { createAutoSave } from "@/engine/core/utils/game_save"; +import { createAutoSave } from "@/engine/core/utils/game/game_save"; import { parseConditionsList, pickSectionFromCondList, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { @@ -20,7 +20,7 @@ import { getObjectSmartTerrain, getObjectSquad, getServerDistanceBetween, -} from "@/engine/core/utils/object/object_general"; +} from "@/engine/core/utils/object"; import { isAnySquadMemberEnemyToActor } from "@/engine/core/utils/relation"; import { postProcessors } from "@/engine/lib/constants/animation/post_processors"; import { captions } from "@/engine/lib/constants/captions/captions"; diff --git a/src/engine/core/managers/interaction/achievements/AchievementManager.test.ts b/src/engine/core/managers/interaction/achievements/AchievementManager.test.ts index 6b0b28ee0..d4becb052 100644 --- a/src/engine/core/managers/interaction/achievements/AchievementManager.test.ts +++ b/src/engine/core/managers/interaction/achievements/AchievementManager.test.ts @@ -9,7 +9,7 @@ import { EAchievement } from "@/engine/core/managers/interaction/achievements/ty import { ENotificationType, ITipNotification } from "@/engine/core/managers/interface"; import { StatisticsManager } from "@/engine/core/managers/interface/StatisticsManager"; import { WeatherManager } from "@/engine/core/managers/world/WeatherManager"; -import { disableInfo, giveInfo, hasAlifeInfo } from "@/engine/core/utils/info_portion"; +import { disableInfo, giveInfo, hasAlifeInfo } from "@/engine/core/utils/object/object_info_portion"; import { captions } from "@/engine/lib/constants/captions"; import { communities } from "@/engine/lib/constants/communities"; import { infoPortions, TInfoPortion } from "@/engine/lib/constants/info_portions"; diff --git a/src/engine/core/managers/interaction/achievements/AchievementsManager.ts b/src/engine/core/managers/interaction/achievements/AchievementsManager.ts index 984e6ed88..c51808ab3 100644 --- a/src/engine/core/managers/interaction/achievements/AchievementsManager.ts +++ b/src/engine/core/managers/interaction/achievements/AchievementsManager.ts @@ -12,11 +12,16 @@ import { notificationManagerIcons, } from "@/engine/core/managers/interface/notifications"; import { StatisticsManager } from "@/engine/core/managers/interface/StatisticsManager"; -import { giveInfo, hasAlifeInfo, hasAlifeInfos, hasFewAlifeInfos } from "@/engine/core/utils/info_portion"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { + giveInfo, + hasAlifeInfo, + hasAlifeInfos, + hasFewAlifeInfos, +} from "@/engine/core/utils/object/object_info_portion"; +import { spawnItemsForObjectFromList } from "@/engine/core/utils/object/object_spawn"; import { increaseCommunityGoodwillToId } from "@/engine/core/utils/relation"; -import { spawnItemsForObjectFromList } from "@/engine/core/utils/spawn"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; import { captions } from "@/engine/lib/constants/captions/captions"; import { communities } from "@/engine/lib/constants/communities"; import { infoPortions } from "@/engine/lib/constants/info_portions/info_portions"; diff --git a/src/engine/core/managers/interaction/dialog/DialogManager.ts b/src/engine/core/managers/interaction/dialog/DialogManager.ts index 9d80e75a3..a4b3015f3 100644 --- a/src/engine/core/managers/interaction/dialog/DialogManager.ts +++ b/src/engine/core/managers/interaction/dialog/DialogManager.ts @@ -1,7 +1,13 @@ import { CPhraseScript, level } from "xray16"; -import { closeLoadMarker, closeSaveMarker, DIALOG_MANAGER_LTX, openSaveMarker, registry } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { + closeLoadMarker, + closeSaveMarker, + DIALOG_MANAGER_LTX, + openLoadMarker, + openSaveMarker, + registry, +} from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { @@ -11,11 +17,10 @@ import { TPRTTable, } from "@/engine/core/managers/interaction/dialog/types"; import { assert } from "@/engine/core/utils/assertion"; -import { isObjectWounded } from "@/engine/core/utils/check/check"; -import { hasAlifeInfo } from "@/engine/core/utils/info_portion"; -import { parseInfoPortions, parseStringsList } from "@/engine/core/utils/ini/parse"; +import { parseInfoPortions, parseStringsList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity, isObjectWounded } from "@/engine/core/utils/object"; +import { hasAlifeInfo } from "@/engine/core/utils/object/object_info_portion"; import { FALSE, TRUE } from "@/engine/lib/constants/words"; import { ClientObject, @@ -343,10 +348,10 @@ export class DialogManager extends AbstractCoreManager { if (PTIDSubtable.wounded === TRUE) { // --if (!(ActionWoundManager.is_heavy_wounded_by_id(npc.id())) { - priority = isObjectWounded(object) ? priority + 1 : -1; + priority = isObjectWounded(object.id()) ? priority + 1 : -1; } else { // --if(ActionWoundManager.is_heavy_wounded_by_id(npc.id())) { - priority = isObjectWounded(object) ? -1 : priority + 1; + priority = isObjectWounded(object.id()) ? -1 : priority + 1; } if (fComm === false || fLevel === false) { diff --git a/src/engine/core/managers/interaction/dialog/types.ts b/src/engine/core/managers/interaction/dialog/types.ts index bb224bb0a..62e2263d9 100644 --- a/src/engine/core/managers/interaction/dialog/types.ts +++ b/src/engine/core/managers/interaction/dialog/types.ts @@ -1,4 +1,4 @@ -import { IConfigCondition } from "@/engine/core/utils/ini/types"; +import type { IConfigCondition } from "@/engine/core/utils/ini"; import { LuaArray, Optional, TName, TStringId } from "@/engine/lib/types"; /** diff --git a/src/engine/core/managers/interaction/tasks/TaskObject.test.ts b/src/engine/core/managers/interaction/tasks/TaskObject.test.ts index d997de464..0b215263c 100644 --- a/src/engine/core/managers/interaction/tasks/TaskObject.test.ts +++ b/src/engine/core/managers/interaction/tasks/TaskObject.test.ts @@ -5,7 +5,7 @@ import { disposeManager, registerActor, registry, TASK_MANAGER_LTX } from "@/eng import { TaskManager } from "@/engine/core/managers/interaction/tasks/TaskManager"; import { TaskObject } from "@/engine/core/managers/interaction/tasks/TaskObject"; import { ETaskStatus } from "@/engine/core/managers/interaction/tasks/types"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; import { NIL } from "@/engine/lib/constants/words"; import { MockLuaTable } from "@/fixtures/lua/mocks/LuaTable.mock"; import { mockClientGameObject } from "@/fixtures/xray"; diff --git a/src/engine/core/managers/interaction/tasks/TaskObject.ts b/src/engine/core/managers/interaction/tasks/TaskObject.ts index 01b900b26..1cffa5c3e 100644 --- a/src/engine/core/managers/interaction/tasks/TaskObject.ts +++ b/src/engine/core/managers/interaction/tasks/TaskObject.ts @@ -4,21 +4,26 @@ import { closeLoadMarker, closeSaveMarker, getObjectIdByStoryId, + openLoadMarker, openSaveMarker, registry, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { ETaskState, ETaskStatus, POSSIBLE_STATES } from "@/engine/core/managers/interaction/tasks/types"; import { NotificationManager } from "@/engine/core/managers/interface/notifications"; import { assertDefined } from "@/engine/core/utils/assertion"; import { getExtern } from "@/engine/core/utils/binding"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList, parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; +import { + parseConditionsList, + parseStringsList, + pickSectionFromCondList, + readIniBoolean, + readIniNumber, + readIniString, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { giveMoneyToActor, transferItemsToActor } from "@/engine/core/utils/task_reward"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; +import { giveMoneyToActor, transferItemsToActor } from "@/engine/core/utils/object/object_task_reward"; import { levels, TLevel } from "@/engine/lib/constants/levels"; import { storyNames } from "@/engine/lib/constants/story_names"; import { NIL } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/managers/interface/ActorInputManager.ts b/src/engine/core/managers/interface/ActorInputManager.ts index 431c8d754..4bd11e513 100644 --- a/src/engine/core/managers/interface/ActorInputManager.ts +++ b/src/engine/core/managers/interface/ActorInputManager.ts @@ -3,8 +3,8 @@ import { game, get_hud, level } from "xray16"; import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker, registry } from "@/engine/core/database"; import { AbstractCoreManager, EGameEvent, EventsManager } from "@/engine/core/managers"; import { SchemeNoWeapon } from "@/engine/core/schemes/sr_no_weapon"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; import { misc } from "@/engine/lib/constants/items/misc"; import { ClientObject, GameHud, NetPacket, NetProcessor, Optional, TDuration, Time, TIndex } from "@/engine/lib/types"; diff --git a/src/engine/core/managers/interface/ActorInventoryMenuManager.ts b/src/engine/core/managers/interface/ActorInventoryMenuManager.ts index 023cba080..a3e923f08 100644 --- a/src/engine/core/managers/interface/ActorInventoryMenuManager.ts +++ b/src/engine/core/managers/interface/ActorInventoryMenuManager.ts @@ -1,8 +1,8 @@ import { system_ini } from "xray16"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; +import { readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; import { ACTOR } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/managers/interface/GameSettingsManager.ts b/src/engine/core/managers/interface/GameSettingsManager.ts index bdadd98d7..bbd907b9c 100644 --- a/src/engine/core/managers/interface/GameSettingsManager.ts +++ b/src/engine/core/managers/interface/GameSettingsManager.ts @@ -2,7 +2,7 @@ import { level } from "xray16"; import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker } from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; import { EGameDifficulty, gameDifficultiesByNumber } from "@/engine/lib/constants/game_difficulties"; import { NetPacket, NetProcessor } from "@/engine/lib/types"; diff --git a/src/engine/core/managers/interface/ItemUpgradesManager.ts b/src/engine/core/managers/interface/ItemUpgradesManager.ts index 9797167d8..ee54c2b66 100644 --- a/src/engine/core/managers/interface/ItemUpgradesManager.ts +++ b/src/engine/core/managers/interface/ItemUpgradesManager.ts @@ -2,9 +2,12 @@ import { game } from "xray16"; import { ITEM_UPGRADES, registry, STALKER_UPGRADE_INFO, SYSTEM_INI } from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList, parseStringsList } from "@/engine/core/utils/ini/parse"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { + parseConditionsList, + parseStringsList, + pickSectionFromCondList, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { gameSettingConfig } from "@/engine/lib/configs/GameSettingConfig"; import { captions, TCaption } from "@/engine/lib/constants/captions/captions"; diff --git a/src/engine/core/managers/interface/MapDisplayManager.ts b/src/engine/core/managers/interface/MapDisplayManager.ts index 274d34399..04431fb28 100644 --- a/src/engine/core/managers/interface/MapDisplayManager.ts +++ b/src/engine/core/managers/interface/MapDisplayManager.ts @@ -9,13 +9,10 @@ import { primaryMapSpotObjects, sleepZones, } from "@/engine/core/managers/interface/MapDisplayManagerObjects"; -import { hasAlifeInfo } from "@/engine/core/utils/info_portion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { parseConditionsList, pickSectionFromCondList, readIniString, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { anomalyHasArtefact } from "@/engine/core/utils/object/object_general"; +import { anomalyHasArtefact } from "@/engine/core/utils/object/object_anomaly"; +import { hasAlifeInfo } from "@/engine/core/utils/object/object_info_portion"; import { captions } from "@/engine/lib/constants/captions/captions"; import { infoPortions } from "@/engine/lib/constants/info_portions/info_portions"; import { levels } from "@/engine/lib/constants/levels"; @@ -239,7 +236,7 @@ export class MapDisplayManager extends AbstractCoreManager { let hint: TLabel = game.translate_string(scanner.hint) + "\\n" + " \\n"; const actor: ClientObject = registry.actor; - const [hasArtefact, artefactTable] = anomalyHasArtefact(actor, null, [scanner.zone, null]); + const [hasArtefact, artefactTable] = anomalyHasArtefact(actor, null, scanner.zone, null); if (hasArtefact) { hint = hint + game.translate_string(captions.st_jup_b32_has_af); diff --git a/src/engine/core/managers/interface/StatisticsManager.ts b/src/engine/core/managers/interface/StatisticsManager.ts index 7f241c79e..d3a1adfac 100644 --- a/src/engine/core/managers/interface/StatisticsManager.ts +++ b/src/engine/core/managers/interface/StatisticsManager.ts @@ -3,8 +3,8 @@ import { alife, clsid } from "xray16"; import { getPortableStoreValue, registry, setPortableStoreValue } from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { abort } from "@/engine/core/utils/assertion"; -import { isStalker } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isStalker } from "@/engine/core/utils/object"; import { getTableSize } from "@/engine/core/utils/table"; import { TInventoryItem } from "@/engine/lib/constants/items"; import { TArtefact } from "@/engine/lib/constants/items/artefacts"; diff --git a/src/engine/core/managers/interface/notifications/NotificationManager.ts b/src/engine/core/managers/interface/notifications/NotificationManager.ts index 837676064..08a60fca1 100644 --- a/src/engine/core/managers/interface/notifications/NotificationManager.ts +++ b/src/engine/core/managers/interface/notifications/NotificationManager.ts @@ -28,10 +28,9 @@ import { import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { Stalker } from "@/engine/core/objects"; import { abort, assert } from "@/engine/core/utils/assertion"; -import { isHeavilyWounded } from "@/engine/core/utils/check/check"; -import { isStalkerClassId } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getInventoryNameForItemSection } from "@/engine/core/utils/spawn"; +import { isObjectWounded, isStalkerClassId } from "@/engine/core/utils/object"; +import { getInventoryNameForItemSection } from "@/engine/core/utils/object/object_spawn"; import { captions, TCaption } from "@/engine/lib/constants/captions/captions"; import { scriptSounds } from "@/engine/lib/constants/sound/script_sounds"; import { textures, TTexture } from "@/engine/lib/constants/textures"; @@ -262,7 +261,7 @@ export class NotificationManager extends AbstractCoreManager { if (serverObject !== null) { // Check if sender is not wounded. - if (serverObject.online && isHeavilyWounded(serverObject.id)) { + if (serverObject.online && isObjectWounded(serverObject.id)) { return logger.info("Cannot send tip, npc is wounded"); } diff --git a/src/engine/core/managers/sounds/DynamicMusicManager.ts b/src/engine/core/managers/sounds/DynamicMusicManager.ts index 6a6c1929e..1ff7604f6 100644 --- a/src/engine/core/managers/sounds/DynamicMusicManager.ts +++ b/src/engine/core/managers/sounds/DynamicMusicManager.ts @@ -8,7 +8,7 @@ import { dynamicMusicThemes } from "@/engine/core/managers/sounds/dynamic_music" import { SurgeManager } from "@/engine/core/managers/world/SurgeManager"; import { StereoSound } from "@/engine/core/objects/sounds/StereoSound"; import { abort } from "@/engine/core/utils/assertion"; -import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { clampNumber } from "@/engine/core/utils/number"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; diff --git a/src/engine/core/managers/sounds/GlobalSoundManager.ts b/src/engine/core/managers/sounds/GlobalSoundManager.ts index e4e7be4b5..87c83ab1d 100644 --- a/src/engine/core/managers/sounds/GlobalSoundManager.ts +++ b/src/engine/core/managers/sounds/GlobalSoundManager.ts @@ -1,5 +1,11 @@ -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry, SCRIPT_SOUND_LTX } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { + closeLoadMarker, + closeSaveMarker, + openLoadMarker, + openSaveMarker, + registry, + SCRIPT_SOUND_LTX, +} from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { AbstractPlayableSound } from "@/engine/core/objects/sounds/playable_sounds/AbstractPlayableSound"; @@ -9,9 +15,9 @@ import { NpcSound } from "@/engine/core/objects/sounds/playable_sounds/NpcSound" import { ObjectSound } from "@/engine/core/objects/sounds/playable_sounds/ObjectSound"; import { EPlayableSound } from "@/engine/core/objects/sounds/types"; import { abort, assert, assertDefined } from "@/engine/core/utils/assertion"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity } from "@/engine/core/utils/object/object_get"; import { getTableSize, resetTable } from "@/engine/core/utils/table"; import { ClientObject, diff --git a/src/engine/core/managers/world/DropManager.ts b/src/engine/core/managers/world/DropManager.ts index dcb4046d8..92a75cc0c 100644 --- a/src/engine/core/managers/world/DropManager.ts +++ b/src/engine/core/managers/world/DropManager.ts @@ -4,12 +4,19 @@ import { DEATH_GENERIC_LTX, IRegistryObjectState, registry } from "@/engine/core import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { Stalker } from "@/engine/core/objects/server/creature/Stalker"; import { abort } from "@/engine/core/utils/assertion"; -import { isExcludedFromLootDropItem } from "@/engine/core/utils/check/check"; -import { isAmmoItem, isArtefact, isGrenade, isLootableItem, isWeapon } from "@/engine/core/utils/check/is"; -import { parseNumbersList, parseStringsList } from "@/engine/core/utils/ini/parse"; +import { parseNumbersList, parseStringsList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity, setItemCondition } from "@/engine/core/utils/object/object_general"; -import { spawnItemsForObject } from "@/engine/core/utils/spawn"; +import { + getCharacterCommunity, + isAmmoItem, + isArtefact, + isExcludedFromLootDropItem, + isGrenade, + isLootableItem, + isWeapon, + setItemCondition, + spawnItemsForObject, +} from "@/engine/core/utils/object"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { communities, TCommunity } from "@/engine/lib/constants/communities"; import { TInventoryItem } from "@/engine/lib/constants/items"; @@ -129,24 +136,24 @@ export class DropManager extends AbstractCoreManager { const itemsDropCountByDifficulty: TCount = DEATH_GENERIC_LTX.line_count(itemsDropSectionByDifficulty); for (const it of $range(0, itemsDropCountByDifficulty - 1)) { - const [result, id, value] = DEATH_GENERIC_LTX.r_line(itemsDropSectionByDifficulty, it, "", ""); - const sectionDropCount: [Optional, Optional] = parseNumbersList(value); + const [, key, value] = DEATH_GENERIC_LTX.r_line(itemsDropSectionByDifficulty, it, "", ""); + const sectionDropCount: LuaArray = parseNumbersList(value); - if (sectionDropCount[0] === null) { - abort("Error on [death_ini] declaration. Section [%s], line [%s]", itemsDropSectionByDifficulty, tostring(id)); + if (!sectionDropCount.has(1)) { + abort("Error on [death_ini] declaration. Section [%s], line [%s]", itemsDropSectionByDifficulty, tostring(key)); } // Do not drop in level if not registered, declare as 0. - if (!this.itemsLevelDropMultiplayer.has(id)) { - this.itemsLevelDropMultiplayer.set(id, 0); + if (!this.itemsLevelDropMultiplayer.has(key)) { + this.itemsLevelDropMultiplayer.set(key, 0); } - const min: TCount = sectionDropCount[0]; - const max: TCount = sectionDropCount[1] === null ? min : sectionDropCount[1]; + const min: TCount = sectionDropCount.get(1); + const max: TCount = sectionDropCount.has(2) ? sectionDropCount.get(2) : min; - this.itemsDropCountByLevel.set(id, { - min: tonumber(min)! * this.itemsLevelDropMultiplayer.get(id), - max: tonumber(max)! * this.itemsLevelDropMultiplayer.get(id), + this.itemsDropCountByLevel.set(key, { + min: tonumber(min)! * this.itemsLevelDropMultiplayer.get(key), + max: tonumber(max)! * this.itemsLevelDropMultiplayer.get(key), }); } diff --git a/src/engine/core/managers/world/PsyAntennaManager.ts b/src/engine/core/managers/world/PsyAntennaManager.ts index 075876284..f901bf738 100644 --- a/src/engine/core/managers/world/PsyAntennaManager.ts +++ b/src/engine/core/managers/world/PsyAntennaManager.ts @@ -7,7 +7,7 @@ import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreMan import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { PhantomManager } from "@/engine/core/managers/world/PhantomManager"; import { abort } from "@/engine/core/utils/assertion"; -import { isLevelChanging } from "@/engine/core/utils/check/check"; +import { isGameLevelChanging } from "@/engine/core/utils/game"; import { clampNumber } from "@/engine/core/utils/number"; import { createEmptyVector, createVector, vectorRotateY } from "@/engine/core/utils/vector"; import { sounds } from "@/engine/lib/constants/sound/sounds"; @@ -67,7 +67,7 @@ export class PsyAntennaManager extends AbstractCoreManager { const manager: Optional = getWeakManagerInstance(PsyAntennaManager); - if (manager && !isLevelChanging()) { + if (manager && !isGameLevelChanging()) { packet.w_bool(true); manager.save(packet); diff --git a/src/engine/core/managers/world/ReleaseBodyManager.ts b/src/engine/core/managers/world/ReleaseBodyManager.ts index 834e09298..fdfed040d 100644 --- a/src/engine/core/managers/world/ReleaseBodyManager.ts +++ b/src/engine/core/managers/world/ReleaseBodyManager.ts @@ -7,15 +7,15 @@ import { DUMMY_LTX, getStoryIdByObjectId, IRegistryObjectState, + openLoadMarker, openSaveMarker, registry, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { abort } from "@/engine/core/utils/assertion"; -import { isMonster, isStalker } from "@/engine/core/utils/check/is"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isMonster, isStalker } from "@/engine/core/utils/object"; import { roots } from "@/engine/lib/constants/roots"; import { ClientObject, diff --git a/src/engine/core/managers/world/SurgeManager.ts b/src/engine/core/managers/world/SurgeManager.ts index 80b679d86..094ee0cfa 100644 --- a/src/engine/core/managers/world/SurgeManager.ts +++ b/src/engine/core/managers/world/SurgeManager.ts @@ -1,7 +1,13 @@ import { alife, game, hit, level } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry, SURGE_MANAGER_LTX } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { + closeLoadMarker, + closeSaveMarker, + openLoadMarker, + openSaveMarker, + registry, + SURGE_MANAGER_LTX, +} from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { SimulationBoardManager } from "@/engine/core/managers/interaction/SimulationBoardManager"; @@ -13,21 +19,20 @@ import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundMan import { WeatherManager } from "@/engine/core/managers/world/WeatherManager"; import { AnomalyZoneBinder, SmartTerrain } from "@/engine/core/objects"; import { Squad } from "@/engine/core/objects/server/squad/Squad"; +import { isBlackScreen } from "@/engine/core/utils/game"; +import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/game/game_console"; +import { createAutoSave } from "@/engine/core/utils/game/game_save"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; +import { parseConditionsList, pickSectionFromCondList, TConditionList } from "@/engine/core/utils/ini"; +import { LuaLogger } from "@/engine/core/utils/logging"; import { - isBlackScreen, + isArtefact, isImmuneToSurge, isObjectOnLevel, + isStoryObject, isSurgeEnabledOnLevel, -} from "@/engine/core/utils/check/check"; -import { isArtefact, isStoryObject } from "@/engine/core/utils/check/is"; -import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/console"; -import { createAutoSave } from "@/engine/core/utils/game_save"; -import { disableInfo, giveInfo, hasAlifeInfo } from "@/engine/core/utils/info_portion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { TConditionList } from "@/engine/core/utils/ini/types"; -import { LuaLogger } from "@/engine/core/utils/logging"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; +} from "@/engine/core/utils/object"; +import { disableInfo, giveInfo, hasAlifeInfo } from "@/engine/core/utils/object/object_info_portion"; import { createVector } from "@/engine/core/utils/vector"; import { surgeConfig } from "@/engine/lib/configs/SurgeConfig"; import { animations } from "@/engine/lib/constants/animation/animations"; diff --git a/src/engine/core/managers/world/TreasureManager.ts b/src/engine/core/managers/world/TreasureManager.ts index cc05608f7..723f1904c 100644 --- a/src/engine/core/managers/world/TreasureManager.ts +++ b/src/engine/core/managers/world/TreasureManager.ts @@ -1,15 +1,25 @@ import { alife, level, time_global } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry, SECRETS_LTX } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { + closeLoadMarker, + closeSaveMarker, + openLoadMarker, + openSaveMarker, + registry, + SECRETS_LTX, +} from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { ETreasureState, NotificationManager } from "@/engine/core/managers/interface/notifications"; import { StatisticsManager } from "@/engine/core/managers/interface/StatisticsManager"; import { assert, assertDefined } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList, parseSpawnDetails } from "@/engine/core/utils/ini/parse"; -import { ISpawnDescriptor, TConditionList } from "@/engine/core/utils/ini/types"; +import { + ISpawnDescriptor, + parseConditionsList, + parseSpawnDetails, + pickSectionFromCondList, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { getTableSize } from "@/engine/core/utils/table"; import { MAX_U16 } from "@/engine/lib/constants/memory"; diff --git a/src/engine/core/managers/world/WeatherManager.ts b/src/engine/core/managers/world/WeatherManager.ts index 82f01e326..28f9ace14 100644 --- a/src/engine/core/managers/world/WeatherManager.ts +++ b/src/engine/core/managers/world/WeatherManager.ts @@ -5,17 +5,20 @@ import { closeSaveMarker, DYNAMIC_WEATHER_GRAPHS, GAME_LTX, + openLoadMarker, openSaveMarker, registry, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { assert } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseAllSectionToTable, parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { + parseAllSectionToTable, + parseConditionsList, + pickSectionFromCondList, + readIniString, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NIL } from "@/engine/lib/constants/words"; import { diff --git a/src/engine/core/objects/binders/HelicopterBinder.ts b/src/engine/core/objects/binders/HelicopterBinder.ts index bd9e21360..ef3cfc837 100644 --- a/src/engine/core/objects/binders/HelicopterBinder.ts +++ b/src/engine/core/objects/binders/HelicopterBinder.ts @@ -4,6 +4,7 @@ import { closeLoadMarker, closeSaveMarker, IRegistryObjectState, + openLoadMarker, openSaveMarker, registerHelicopter, registry, @@ -11,13 +12,12 @@ import { unregisterHelicopter, } from "@/engine/core/database"; import { loadObjectLogic, saveObjectLogic } from "@/engine/core/database/logic"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { ESchemeEvent, IBaseSchemeState } from "@/engine/core/schemes"; import { getHeliHealth } from "@/engine/core/schemes/heli_move/heli_utils"; import { HeliCombat } from "@/engine/core/schemes/heli_move/HeliCombat"; import { getHeliFirer, HeliFire } from "@/engine/core/schemes/heli_move/HeliFire"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { emitSchemeEvent, initializeObjectSchemeLogic } from "@/engine/core/utils/scheme"; import { diff --git a/src/engine/core/objects/binders/creature/ActorBinder.ts b/src/engine/core/objects/binders/creature/ActorBinder.ts index 29b3d9401..441891f4f 100644 --- a/src/engine/core/objects/binders/creature/ActorBinder.ts +++ b/src/engine/core/objects/binders/creature/ActorBinder.ts @@ -18,8 +18,8 @@ import { EGameEvent } from "@/engine/core/managers/events/types"; import { Actor } from "@/engine/core/objects/server/creature/Actor"; import { ISchemeDeimosState } from "@/engine/core/schemes/sr_deimos"; import { SchemeDeimos } from "@/engine/core/schemes/sr_deimos/SchemeDeimos"; -import { setStableAlifeObjectsUpdate, setUnlimitedAlifeObjectsUpdate } from "@/engine/core/utils/alife"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { setStableAlifeObjectsUpdate, setUnlimitedAlifeObjectsUpdate } from "@/engine/core/utils/object/object_alife"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { ClientObject, diff --git a/src/engine/core/objects/binders/creature/MonsterBinder.ts b/src/engine/core/objects/binders/creature/MonsterBinder.ts index c860b1520..19b30da71 100644 --- a/src/engine/core/objects/binders/creature/MonsterBinder.ts +++ b/src/engine/core/objects/binders/creature/MonsterBinder.ts @@ -23,10 +23,9 @@ import { Squad } from "@/engine/core/objects/server/squad/Squad"; import { TSimulationObject } from "@/engine/core/objects/server/types"; import { ESchemeEvent, IBaseSchemeState } from "@/engine/core/schemes"; import { SchemeHear } from "@/engine/core/schemes/hear/SchemeHear"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { action, getObjectSquad } from "@/engine/core/utils/object/object_general"; +import { action, getObjectSquad } from "@/engine/core/utils/object"; import { emitSchemeEvent, isMonsterScriptCaptured, diff --git a/src/engine/core/objects/binders/creature/StalkerBinder.ts b/src/engine/core/objects/binders/creature/StalkerBinder.ts index b5af4ce9e..164edf797 100644 --- a/src/engine/core/objects/binders/creature/StalkerBinder.ts +++ b/src/engine/core/objects/binders/creature/StalkerBinder.ts @@ -20,6 +20,7 @@ import { DUMMY_LTX, getStoryIdByObjectId, IRegistryObjectState, + openLoadMarker, openSaveMarker, registerHelicopterEnemy, registry, @@ -27,7 +28,6 @@ import { unregisterHelicopterEnemy, } from "@/engine/core/database"; import { loadObjectLogic, saveObjectLogic } from "@/engine/core/database/logic"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { registerStalker, unregisterStalker } from "@/engine/core/database/stalker"; import { EGameEvent, EventsManager } from "@/engine/core/managers/events"; import { DialogManager } from "@/engine/core/managers/interaction/dialog/DialogManager"; @@ -50,15 +50,10 @@ import { SchemeMeet } from "@/engine/core/schemes/meet/SchemeMeet"; import { SchemeReachTask } from "@/engine/core/schemes/reach_task/SchemeReachTask"; import { SchemeLight } from "@/engine/core/schemes/sr_light/SchemeLight"; import { SchemeWounded } from "@/engine/core/schemes/wounded/SchemeWounded"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList, readIniString, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { - getCharacterCommunity, - getObjectSquad, - updateObjectInvulnerability, -} from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity, getObjectSquad } from "@/engine/core/utils/object/object_get"; +import { updateObjectInvulnerability } from "@/engine/core/utils/object/object_set"; import { ERelation, setClientObjectRelation, setObjectSympathy } from "@/engine/core/utils/relation"; import { emitSchemeEvent, trySwitchToAnotherSection } from "@/engine/core/utils/scheme"; import { createEmptyVector } from "@/engine/core/utils/vector"; diff --git a/src/engine/core/objects/binders/physic/LabX8DoorBinder.ts b/src/engine/core/objects/binders/physic/LabX8DoorBinder.ts index 09dd96eba..911cf2356 100644 --- a/src/engine/core/objects/binders/physic/LabX8DoorBinder.ts +++ b/src/engine/core/objects/binders/physic/LabX8DoorBinder.ts @@ -1,13 +1,22 @@ import { callback, ini_file, LuabindClass, object_binder, sound_object } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry, resetObject } from "@/engine/core/database"; +import { + closeLoadMarker, + closeSaveMarker, + openLoadMarker, + openSaveMarker, + registry, + resetObject, +} from "@/engine/core/database"; import { registerDoor, unregisterDoor } from "@/engine/core/database/doors"; import { loadObjectLogic, saveObjectLogic } from "@/engine/core/database/logic"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { + parseConditionsList, + pickSectionFromCondList, + readIniNumber, + readIniString, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NIL, TRUE } from "@/engine/lib/constants/words"; import { diff --git a/src/engine/core/objects/binders/physic/PhysicObjectBinder.ts b/src/engine/core/objects/binders/physic/PhysicObjectBinder.ts index 2be85bece..09f89a2f4 100644 --- a/src/engine/core/objects/binders/physic/PhysicObjectBinder.ts +++ b/src/engine/core/objects/binders/physic/PhysicObjectBinder.ts @@ -15,8 +15,7 @@ import { loadObjectLogic, saveObjectLogic } from "@/engine/core/database/logic"; import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { PhysicObjectItemBox } from "@/engine/core/objects/binders/physic/PhysicObjectItemBox"; import { ESchemeEvent } from "@/engine/core/schemes"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { emitSchemeEvent, initializeObjectSchemeLogic } from "@/engine/core/utils/scheme"; import { diff --git a/src/engine/core/objects/binders/physic/PhysicObjectItemBox.ts b/src/engine/core/objects/binders/physic/PhysicObjectItemBox.ts index 060dbbfc3..111fd1b29 100644 --- a/src/engine/core/objects/binders/physic/PhysicObjectItemBox.ts +++ b/src/engine/core/objects/binders/physic/PhysicObjectItemBox.ts @@ -2,10 +2,9 @@ import { level } from "xray16"; import { PH_BOX_GENERIC_LTX } from "@/engine/core/database"; import { abort } from "@/engine/core/utils/assertion"; -import { parseNumbersList, parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseNumbersList, parseStringsList, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { spawnItemsForObject } from "@/engine/core/utils/spawn"; +import { spawnItemsForObject } from "@/engine/core/utils/object/object_spawn"; import { TInventoryItem } from "@/engine/lib/constants/items"; import { ClientObject, IniFile, LuaArray, Optional, TCount, TName, TProbability, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/binders/physic/SignalLightBinder.ts b/src/engine/core/objects/binders/physic/SignalLightBinder.ts index fc9849000..193bdf73f 100644 --- a/src/engine/core/objects/binders/physic/SignalLightBinder.ts +++ b/src/engine/core/objects/binders/physic/SignalLightBinder.ts @@ -3,12 +3,12 @@ import { LuabindClass, object_binder, time_global } from "xray16"; import { closeLoadMarker, closeSaveMarker, + openLoadMarker, openSaveMarker, registry, resetObject, unregisterObject, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { LuaLogger } from "@/engine/core/utils/logging"; import { createVector } from "@/engine/core/utils/vector"; import { MAX_U32 } from "@/engine/lib/constants/memory"; diff --git a/src/engine/core/objects/binders/zones/AnomalyZoneBinder.ts b/src/engine/core/objects/binders/zones/AnomalyZoneBinder.ts index 75d62c257..a530ee020 100644 --- a/src/engine/core/objects/binders/zones/AnomalyZoneBinder.ts +++ b/src/engine/core/objects/binders/zones/AnomalyZoneBinder.ts @@ -3,20 +3,25 @@ import { alife, ini_file, LuabindClass, object_binder, patrol } from "xray16"; import { closeLoadMarker, closeSaveMarker, + openLoadMarker, openSaveMarker, registerAnomalyZone, registry, resetObject, unregisterAnomalyZone, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { MapDisplayManager } from "@/engine/core/managers/interface/MapDisplayManager"; import { AnomalyFieldBinder } from "@/engine/core/objects/binders/zones/AnomalyFieldBinder"; import { abort, assertDefined } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList, parseNumbersList, parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { + parseConditionsList, + parseNumbersList, + parseStringsList, + pickSectionFromCondList, + readIniNumber, + readIniString, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { MAX_U8 } from "@/engine/lib/constants/memory"; import { diff --git a/src/engine/core/objects/binders/zones/ArenaZoneBinder.ts b/src/engine/core/objects/binders/zones/ArenaZoneBinder.ts index de86263dc..b38bdc8c1 100644 --- a/src/engine/core/objects/binders/zones/ArenaZoneBinder.ts +++ b/src/engine/core/objects/binders/zones/ArenaZoneBinder.ts @@ -1,7 +1,6 @@ import { alife, callback, clsid, LuabindClass, object_binder } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker, registry } from "@/engine/core/database"; import { LuaLogger } from "@/engine/core/utils/logging"; import { getTableSize } from "@/engine/core/utils/table"; import { AlifeSimulator, ClientObject, NetPacket, Reader, ServerObject, TNumberId } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/binders/zones/CampBinder.ts b/src/engine/core/objects/binders/zones/CampBinder.ts index cc63427db..3ffd405ef 100644 --- a/src/engine/core/objects/binders/zones/CampBinder.ts +++ b/src/engine/core/objects/binders/zones/CampBinder.ts @@ -1,9 +1,8 @@ import { ini_file, LuabindClass, object_binder } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker, registry } from "@/engine/core/database"; import { CampStoryManager } from "@/engine/core/schemes/camper/CampStoryManager"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { IniFile, NetPacket, Optional, Reader, ServerObject, TDuration, TName } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/binders/zones/LevelChangerBinder.ts b/src/engine/core/objects/binders/zones/LevelChangerBinder.ts index aeec0e89c..50ef7f4c5 100644 --- a/src/engine/core/objects/binders/zones/LevelChangerBinder.ts +++ b/src/engine/core/objects/binders/zones/LevelChangerBinder.ts @@ -3,13 +3,13 @@ import { alife, command_line, LuabindClass, object_binder } from "xray16"; import { closeLoadMarker, closeSaveMarker, + openLoadMarker, openSaveMarker, registerObject, resetObject, unregisterObject, } from "@/engine/core/database"; import { loadObjectLogic, saveObjectLogic } from "@/engine/core/database/logic"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { LevelChanger } from "@/engine/core/objects/server/LevelChanger"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NetPacket, Reader, ServerObject } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/binders/zones/RestrictorBinder.ts b/src/engine/core/objects/binders/zones/RestrictorBinder.ts index 6ba857634..0b1a2a97a 100644 --- a/src/engine/core/objects/binders/zones/RestrictorBinder.ts +++ b/src/engine/core/objects/binders/zones/RestrictorBinder.ts @@ -4,6 +4,7 @@ import { closeLoadMarker, closeSaveMarker, IRegistryObjectState, + openLoadMarker, openSaveMarker, registerZone, registry, @@ -11,7 +12,6 @@ import { unregisterZone, } from "@/engine/core/database"; import { loadObjectLogic, saveObjectLogic } from "@/engine/core/database/logic"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { ESchemeEvent } from "@/engine/core/schemes"; import { LuaLogger } from "@/engine/core/utils/logging"; diff --git a/src/engine/core/objects/server/creature/Actor.ts b/src/engine/core/objects/server/creature/Actor.ts index 5a792bca7..bea066c30 100644 --- a/src/engine/core/objects/server/creature/Actor.ts +++ b/src/engine/core/objects/server/creature/Actor.ts @@ -19,9 +19,9 @@ import { ESmartTerrainStatus } from "@/engine/core/objects/server/smart_terrain/ import { simulationActivities } from "@/engine/core/objects/server/squad/simulation_activities"; import { Squad } from "@/engine/core/objects/server/squad/Squad"; import { ISimulationTarget } from "@/engine/core/objects/server/types"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { TConditionList } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ACTOR, TRUE } from "@/engine/lib/constants/words"; import { diff --git a/src/engine/core/objects/server/creature/Monster.ts b/src/engine/core/objects/server/creature/Monster.ts index d3a4665ff..f28745b10 100644 --- a/src/engine/core/objects/server/creature/Monster.ts +++ b/src/engine/core/objects/server/creature/Monster.ts @@ -13,8 +13,8 @@ import { SimulationBoardManager } from "@/engine/core/managers/interaction/Simul import { Squad } from "@/engine/core/objects"; import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain"; import { assert } from "@/engine/core/utils/assertion"; -import { parseNumberOptional, parseStringOptional } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseNumberOptional, parseStringOptional } from "@/engine/core/utils/ini/ini_parse"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { MAX_U16 } from "@/engine/lib/constants/memory"; import { IniFile, NetPacket, Optional, ServerCreatureObject, TName, TNumberId, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/server/creature/Stalker.ts b/src/engine/core/objects/server/creature/Stalker.ts index a01517c52..283c7a0ab 100644 --- a/src/engine/core/objects/server/creature/Stalker.ts +++ b/src/engine/core/objects/server/creature/Stalker.ts @@ -12,8 +12,8 @@ import { SimulationBoardManager } from "@/engine/core/managers/interaction/Simul import { Squad } from "@/engine/core/objects"; import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain"; import { assert } from "@/engine/core/utils/assertion"; -import { parseNumberOptional, parseStringOptional } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseNumberOptional, parseStringOptional } from "@/engine/core/utils/ini/ini_parse"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { MAX_U16 } from "@/engine/lib/constants/memory"; import { IniFile, NetPacket, Optional, ServerCreatureObject, TName, TNumberId, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/server/smart_terrain/SmartTerrain.ts b/src/engine/core/objects/server/smart_terrain/SmartTerrain.ts index 7430f77ee..54770b0e8 100644 --- a/src/engine/core/objects/server/smart_terrain/SmartTerrain.ts +++ b/src/engine/core/objects/server/smart_terrain/SmartTerrain.ts @@ -55,7 +55,7 @@ import { TSimulationObject, } from "@/engine/core/objects/server/types"; import { abort, assert, assertDefined } from "@/engine/core/utils/assertion"; -import { isMonster, isStalker } from "@/engine/core/utils/check/is"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; import { getSchemeFromSection, IConfigSwitchCondition, @@ -68,7 +68,7 @@ import { TConditionList, } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { areObjectsOnSameLevel } from "@/engine/core/utils/object/object_general"; +import { areObjectsOnSameLevel, isMonster, isStalker } from "@/engine/core/utils/object"; import { ERelation } from "@/engine/core/utils/relation"; import { activateSchemeBySection, @@ -78,7 +78,6 @@ import { switchObjectSchemeToSection, } from "@/engine/core/utils/scheme"; import { getTableSize, isEmpty } from "@/engine/core/utils/table"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; import { toJSON } from "@/engine/core/utils/transform/json"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; diff --git a/src/engine/core/objects/server/smart_terrain/SmartTerrainControl.ts b/src/engine/core/objects/server/smart_terrain/SmartTerrainControl.ts index 0b9dd232f..3a9f3cc50 100644 --- a/src/engine/core/objects/server/smart_terrain/SmartTerrainControl.ts +++ b/src/engine/core/objects/server/smart_terrain/SmartTerrainControl.ts @@ -1,16 +1,15 @@ import { game } from "xray16"; -import { closeLoadMarker, closeSaveMarker, openSaveMarker, registry } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; +import { closeLoadMarker, closeSaveMarker, openLoadMarker, openSaveMarker, registry } from "@/engine/core/database"; import { SimulationBoardManager } from "@/engine/core/managers/interaction/SimulationBoardManager"; import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain/SmartTerrain"; import { ESmartTerrainStatus } from "@/engine/core/objects/server/smart_terrain/types"; -import { isWeapon } from "@/engine/core/utils/check/is"; +import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; import { parseConditionsList, pickSectionFromCondList, readIniString, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isWeapon } from "@/engine/core/utils/object"; import { ERelation, updateSquadIdRelationToActor } from "@/engine/core/utils/relation"; -import { readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { ClientObject, diff --git a/src/engine/core/objects/server/smart_terrain/jobs_general.ts b/src/engine/core/objects/server/smart_terrain/jobs_general.ts index e2e7a1554..2ee8202bb 100644 --- a/src/engine/core/objects/server/smart_terrain/jobs_general.ts +++ b/src/engine/core/objects/server/smart_terrain/jobs_general.ts @@ -4,13 +4,13 @@ import { IRegistryObjectState, registry } from "@/engine/core/database"; import { SurgeManager } from "@/engine/core/managers/world/SurgeManager"; import type { SmartTerrain } from "@/engine/core/objects/server/smart_terrain/SmartTerrain"; import { IJobDescriptor, IObjectJobDescriptor, TJobDescriptor } from "@/engine/core/objects/server/smart_terrain/types"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { getSchemeFromSection, parseConditionsList, parseWaypointData } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { isInTimeInterval } from "@/engine/core/utils/game/game_time"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { getSchemeFromSection, parseConditionsList, parseWaypointData } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; +import { TConditionList } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; import { initializeObjectSchemeLogic } from "@/engine/core/utils/scheme"; -import { isInTimeInterval } from "@/engine/core/utils/time"; import { communities } from "@/engine/lib/constants/communities"; import { MAX_U16 } from "@/engine/lib/constants/memory"; import { roots } from "@/engine/lib/constants/roots"; diff --git a/src/engine/core/objects/server/squad/Squad.ts b/src/engine/core/objects/server/squad/Squad.ts index 607b09614..c1936029f 100644 --- a/src/engine/core/objects/server/squad/Squad.ts +++ b/src/engine/core/objects/server/squad/Squad.ts @@ -12,6 +12,7 @@ import { import { closeLoadMarker, closeSaveMarker, + openLoadMarker, openSaveMarker, registerObjectStoryLinks, registry, @@ -21,7 +22,6 @@ import { SQUAD_BEHAVIOURS_LTX, SYSTEM_INI, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { registerSimulationObject, unregisterSimulationObject, @@ -42,8 +42,6 @@ import { } from "@/engine/core/objects/server/types"; import { StoryManager } from "@/engine/core/objects/sounds/stories"; import { abort, assertDefined } from "@/engine/core/utils/assertion"; -import { isSquadMonsterCommunity } from "@/engine/core/utils/check/is"; -import { hasAlifeInfo } from "@/engine/core/utils/info_portion"; import { parseConditionsList, parseStringsList, @@ -55,15 +53,13 @@ import { TConditionList, } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { areObjectsOnSameLevel } from "@/engine/core/utils/object/object_general"; +import { areObjectsOnSameLevel, hasAlifeInfo, isSquadMonsterCommunity } from "@/engine/core/utils/object"; import { areCommunitiesEnemies, ERelation, getSquadMembersRelationToActor, getSquadMembersRelationToActorSafe, - setClientObjectRelation, setObjectSympathy, - setServerObjectRelation, } from "@/engine/core/utils/relation"; import { isEmpty } from "@/engine/core/utils/table"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; @@ -730,7 +726,7 @@ export class Squad extends cse_alife_online_offline_group implements ISimulation areObjectsOnSameLevel(serverObject, alife().actor()) && spawnPosition.distance_to_sqr(alife().actor().position) <= alife().switch_distance() * alife().switch_distance() ) { - // todo: Delete also, same as with stalkers and monsters??? Memory leak probable + // todo: Delete also, same as with stalkers and monsters? registry.spawnedVertexes.set(serverObject.id, lvi); } diff --git a/src/engine/core/objects/server/squad/simulation_activities.ts b/src/engine/core/objects/server/squad/simulation_activities.ts index 3f0e9b934..6fa88ebd5 100644 --- a/src/engine/core/objects/server/squad/simulation_activities.ts +++ b/src/engine/core/objects/server/squad/simulation_activities.ts @@ -1,11 +1,11 @@ import { SurgeManager } from "@/engine/core/managers/world/SurgeManager"; import { ISimulationActivityDescriptor, SmartTerrain } from "@/engine/core/objects"; import { Squad } from "@/engine/core/objects/server/squad/Squad"; -import { hasAlifeInfo } from "@/engine/core/utils/info_portion"; +import { isInTimeInterval } from "@/engine/core/utils/game/game_time"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getServerDistanceBetween } from "@/engine/core/utils/object/object_general"; +import { getServerDistanceBetween } from "@/engine/core/utils/object"; +import { hasAlifeInfo } from "@/engine/core/utils/object/object_info_portion"; import { isAnySquadMemberEnemyToActor } from "@/engine/core/utils/relation"; -import { isInTimeInterval } from "@/engine/core/utils/time"; import { communities, TCommunity } from "@/engine/lib/constants/communities"; import { infoPortions } from "@/engine/lib/constants/info_portions"; import { storyNames } from "@/engine/lib/constants/story_names"; diff --git a/src/engine/core/objects/server/types.ts b/src/engine/core/objects/server/types.ts index fa3e6486c..87a6e4c2e 100644 --- a/src/engine/core/objects/server/types.ts +++ b/src/engine/core/objects/server/types.ts @@ -1,7 +1,7 @@ import type { Actor } from "@/engine/core/objects"; import type { SmartTerrain } from "@/engine/core/objects/server/smart_terrain/SmartTerrain"; import type { Squad } from "@/engine/core/objects/server/squad/Squad"; -import type { TConditionList } from "@/engine/core/utils/ini/types"; +import type { TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { TCommunity } from "@/engine/lib/constants/communities"; import type { ALifeSmartTerrainTask, diff --git a/src/engine/core/objects/sounds/playable_sounds/AbstractPlayableSound.ts b/src/engine/core/objects/sounds/playable_sounds/AbstractPlayableSound.ts index 84b4976c1..26cf6f25d 100644 --- a/src/engine/core/objects/sounds/playable_sounds/AbstractPlayableSound.ts +++ b/src/engine/core/objects/sounds/playable_sounds/AbstractPlayableSound.ts @@ -1,5 +1,5 @@ import { EPlayableSound } from "@/engine/core/objects/sounds/types"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { AnyArgs, ClientObject, diff --git a/src/engine/core/objects/sounds/playable_sounds/ActorSound.ts b/src/engine/core/objects/sounds/playable_sounds/ActorSound.ts index e63e6024c..af965c1f3 100644 --- a/src/engine/core/objects/sounds/playable_sounds/ActorSound.ts +++ b/src/engine/core/objects/sounds/playable_sounds/ActorSound.ts @@ -7,8 +7,8 @@ import { AbstractPlayableSound } from "@/engine/core/objects/sounds/playable_sou import { EPlayableSound, ESoundPlaylistType } from "@/engine/core/objects/sounds/types"; import { IBaseSchemeState } from "@/engine/core/schemes/base"; import { assert } from "@/engine/core/utils/assertion"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { createEmptyVector } from "@/engine/core/utils/vector"; import { roots } from "@/engine/lib/constants/roots"; diff --git a/src/engine/core/objects/sounds/playable_sounds/NpcSound.ts b/src/engine/core/objects/sounds/playable_sounds/NpcSound.ts index a0cb56b66..5a500c559 100644 --- a/src/engine/core/objects/sounds/playable_sounds/NpcSound.ts +++ b/src/engine/core/objects/sounds/playable_sounds/NpcSound.ts @@ -6,10 +6,9 @@ import { ENotificationType, ISoundNotification } from "@/engine/core/managers/in import { AbstractPlayableSound } from "@/engine/core/objects/sounds/playable_sounds/AbstractPlayableSound"; import { EPlayableSound, ESoundPlaylistType } from "@/engine/core/objects/sounds/types"; import { abort } from "@/engine/core/utils/assertion"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { parseStringsList, readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity } from "@/engine/core/utils/object/object_get"; import { createEmptyVector } from "@/engine/core/utils/vector"; import { communities, TCommunity } from "@/engine/lib/constants/communities"; import { roots } from "@/engine/lib/constants/roots"; diff --git a/src/engine/core/objects/sounds/playable_sounds/ObjectSound.ts b/src/engine/core/objects/sounds/playable_sounds/ObjectSound.ts index 6df24a5e3..941dc1e87 100644 --- a/src/engine/core/objects/sounds/playable_sounds/ObjectSound.ts +++ b/src/engine/core/objects/sounds/playable_sounds/ObjectSound.ts @@ -7,8 +7,8 @@ import { AbstractPlayableSound } from "@/engine/core/objects/sounds/playable_sou import { EPlayableSound, ESoundPlaylistType } from "@/engine/core/objects/sounds/types"; import { IBaseSchemeState } from "@/engine/core/schemes"; import { assert } from "@/engine/core/utils/assertion"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { createEmptyVector } from "@/engine/core/utils/vector"; import { roots } from "@/engine/lib/constants/roots"; diff --git a/src/engine/core/objects/sounds/stories/SoundStory.ts b/src/engine/core/objects/sounds/stories/SoundStory.ts index 6c629c919..7c67e2495 100644 --- a/src/engine/core/objects/sounds/stories/SoundStory.ts +++ b/src/engine/core/objects/sounds/stories/SoundStory.ts @@ -1,7 +1,7 @@ import { SOUND_STORIES_LTX } from "@/engine/core/database"; import { ESoundStoryParticipant, IReplicDescriptor } from "@/engine/core/objects/sounds/types"; import { abort } from "@/engine/core/utils/assertion"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; import { LuaLogger } from "@/engine/core/utils/logging"; import { LuaArray, TCount, TIndex, TStringId } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/state/StalkerMoveManager.ts b/src/engine/core/objects/state/StalkerMoveManager.ts index e943a0465..a5eb0ee96 100644 --- a/src/engine/core/objects/state/StalkerMoveManager.ts +++ b/src/engine/core/objects/state/StalkerMoveManager.ts @@ -3,11 +3,11 @@ import { callback, level, move, patrol, time_global } from "xray16"; import { IRegistryObjectState, registry, setStalkerState } from "@/engine/core/database"; import { EStalkerState } from "@/engine/core/objects/state/types"; import { abort } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { IWaypointData, TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { IWaypointData, TConditionList } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { isStalkerAtWaypoint } from "@/engine/core/utils/position"; +import { isStalkerAtWaypoint } from "@/engine/core/utils/object"; import { TRUE } from "@/engine/lib/constants/words"; import { AnyCallable, diff --git a/src/engine/core/objects/state/state/ActionStateEnd.ts b/src/engine/core/objects/state/state/ActionStateEnd.ts index ed5a6814a..37e876927 100644 --- a/src/engine/core/objects/state/state/ActionStateEnd.ts +++ b/src/engine/core/objects/state/state/ActionStateEnd.ts @@ -4,8 +4,8 @@ import { EWeaponAnimation } from "@/engine/core/objects/state"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { getObjectIdleState, getStateQueueParams } from "@/engine/core/objects/state/weapon/StateManagerWeapon"; import { states } from "@/engine/core/objects/state_lib/state_lib"; -import { isStalker, isWeapon } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isStalker, isWeapon } from "@/engine/core/utils/object"; import { ClientObject, EClientObjectRelation, Optional, TDuration, TRate, TTimestamp } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/objects/state/state/ActionStateToIdle.ts b/src/engine/core/objects/state/state/ActionStateToIdle.ts index bb227eda2..a108857cc 100644 --- a/src/engine/core/objects/state/state/ActionStateToIdle.ts +++ b/src/engine/core/objects/state/state/ActionStateToIdle.ts @@ -3,7 +3,7 @@ import { action_base, LuabindClass } from "xray16"; import { EStalkerState } from "@/engine/core/objects/state"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_general"; +import { sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_location"; import { EClientObjectPath, TName } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); @@ -15,9 +15,6 @@ const logger: LuaLogger = new LuaLogger($filename); export class ActionStateToIdle extends action_base { private readonly stateManager: StalkerStateManager; - /** - * todo: Description. - */ public constructor(stateManager: StalkerStateManager, name?: TName) { super(null, name || ActionStateToIdle.__name); this.stateManager = stateManager; diff --git a/src/engine/core/objects/state/state/EvaluatorStateIdleAlife.ts b/src/engine/core/objects/state/state/EvaluatorStateIdleAlife.ts index 37e6e8244..ac54f2913 100644 --- a/src/engine/core/objects/state/state/EvaluatorStateIdleAlife.ts +++ b/src/engine/core/objects/state/state/EvaluatorStateIdleAlife.ts @@ -2,9 +2,9 @@ import { action_planner, LuabindClass, property_evaluator } from "xray16"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { EStalkerState, EStateEvaluatorId } from "@/engine/core/objects/state/types"; -import { EActionId } from "@/engine/core/schemes"; -import { isObjectMeeting } from "@/engine/core/utils/check/check"; +import { EActionId } from "@/engine/core/schemes/base"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectMeeting } from "@/engine/core/utils/object"; import { Optional } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/objects/state/state/EvaluatorStateIdleItems.ts b/src/engine/core/objects/state/state/EvaluatorStateIdleItems.ts index afbc44589..ec05b5cb5 100644 --- a/src/engine/core/objects/state/state/EvaluatorStateIdleItems.ts +++ b/src/engine/core/objects/state/state/EvaluatorStateIdleItems.ts @@ -2,8 +2,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { EStalkerState, EStateEvaluatorId } from "@/engine/core/objects/state/types"; -import { isObjectMeeting } from "@/engine/core/utils/check/check"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectMeeting } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/objects/state/weapon/ActionWeaponDrop.ts b/src/engine/core/objects/state/weapon/ActionWeaponDrop.ts index b26697e96..25392eb0c 100644 --- a/src/engine/core/objects/state/weapon/ActionWeaponDrop.ts +++ b/src/engine/core/objects/state/weapon/ActionWeaponDrop.ts @@ -2,9 +2,8 @@ import { action_base, LuabindClass, object } from "xray16"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { getObjectAnimationWeapon } from "@/engine/core/objects/state/weapon/StateManagerWeapon"; -import { isStrappableWeapon } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { setItemCondition } from "@/engine/core/utils/object/object_general"; +import { isStrappableWeapon, setItemCondition } from "@/engine/core/utils/object"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { ClientObject, Optional } from "@/engine/lib/types"; diff --git a/src/engine/core/objects/state/weapon/ActionWeaponStrap.ts b/src/engine/core/objects/state/weapon/ActionWeaponStrap.ts index 8dd1f08d0..1a5e985a5 100644 --- a/src/engine/core/objects/state/weapon/ActionWeaponStrap.ts +++ b/src/engine/core/objects/state/weapon/ActionWeaponStrap.ts @@ -2,8 +2,8 @@ import { action_base, LuabindClass, object } from "xray16"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { getObjectAnimationWeapon } from "@/engine/core/objects/state/weapon/StateManagerWeapon"; -import { isStrappableWeapon } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isStrappableWeapon } from "@/engine/core/utils/object"; import { ClientObject, Optional } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/objects/state/weapon/EvaluatorWeapon.ts b/src/engine/core/objects/state/weapon/EvaluatorWeapon.ts index 940c7d0db..ef469358b 100644 --- a/src/engine/core/objects/state/weapon/EvaluatorWeapon.ts +++ b/src/engine/core/objects/state/weapon/EvaluatorWeapon.ts @@ -3,8 +3,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { EWeaponAnimation } from "@/engine/core/objects/state"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; import { states } from "@/engine/core/objects/state_lib/state_lib"; -import { isStrappableWeapon, isWeapon } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isStrappableWeapon, isWeapon } from "@/engine/core/utils/object"; import { ClientObject, Optional } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/objects/state/weapon/EvaluatorWeaponStrappedNow.ts b/src/engine/core/objects/state/weapon/EvaluatorWeaponStrappedNow.ts index df7a3d416..b5b8cda88 100644 --- a/src/engine/core/objects/state/weapon/EvaluatorWeaponStrappedNow.ts +++ b/src/engine/core/objects/state/weapon/EvaluatorWeaponStrappedNow.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { StalkerStateManager } from "@/engine/core/objects/state/StalkerStateManager"; -import { isStrappableWeapon, isWeapon } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isStrappableWeapon, isWeapon } from "@/engine/core/utils/object"; import { ClientObject, Optional } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/objects/state_lib/state_mgr_pri_a15.ts b/src/engine/core/objects/state_lib/state_mgr_pri_a15.ts index 0a9e59678..bc8c2ee38 100644 --- a/src/engine/core/objects/state_lib/state_mgr_pri_a15.ts +++ b/src/engine/core/objects/state_lib/state_mgr_pri_a15.ts @@ -3,7 +3,7 @@ import { anim, CSightParams, move } from "xray16"; import { registry } from "@/engine/core/database"; import { IStateDescriptor } from "@/engine/core/objects/state/types"; import { abort } from "@/engine/core/utils/assertion"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; import { getTableSize } from "@/engine/core/utils/table"; import { infoPortions } from "@/engine/lib/constants/info_portions"; import { storyNames } from "@/engine/lib/constants/story_names"; diff --git a/src/engine/core/schemes/animpoint/SchemeAnimpoint.ts b/src/engine/core/schemes/animpoint/SchemeAnimpoint.ts index ab66b211d..133ab7241 100644 --- a/src/engine/core/schemes/animpoint/SchemeAnimpoint.ts +++ b/src/engine/core/schemes/animpoint/SchemeAnimpoint.ts @@ -6,11 +6,11 @@ import { ActionAnimpoint, ActionReachAnimpoint } from "@/engine/core/schemes/ani import { AnimpointManager } from "@/engine/core/schemes/animpoint/AnimpointManager"; import { EvaluatorNeedAnimpoint, EvaluatorReachAnimpoint } from "@/engine/core/schemes/animpoint/evaluators"; import { ISchemeAnimpointState } from "@/engine/core/schemes/animpoint/ISchemeAnimpointState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/setup"; +import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/scheme_setup"; import { ActionPlanner, ClientObject, IniFile, Optional } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/animpoint/animpoint_predicates.ts b/src/engine/core/schemes/animpoint/animpoint_predicates.ts index c002f6b07..5f7b50c36 100644 --- a/src/engine/core/schemes/animpoint/animpoint_predicates.ts +++ b/src/engine/core/schemes/animpoint/animpoint_predicates.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { EStalkerState } from "@/engine/core/objects/state"; import { IAnimpointAction, IStoryAnimationDescriptor } from "@/engine/core/schemes/animpoint/types"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getObjectSmartTerrain } from "@/engine/core/utils/object/object_general"; +import { getObjectSmartTerrain } from "@/engine/core/utils/object/object_get"; import { food } from "@/engine/lib/constants/items/food"; import { misc } from "@/engine/lib/constants/items/misc"; import { ClientObject, LuaArray, Optional, TName, TNumberId } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/animpoint/evaluators/EvaluatorNeedAnimpoint.ts b/src/engine/core/schemes/animpoint/evaluators/EvaluatorNeedAnimpoint.ts index 124197216..6452f200f 100644 --- a/src/engine/core/schemes/animpoint/evaluators/EvaluatorNeedAnimpoint.ts +++ b/src/engine/core/schemes/animpoint/evaluators/EvaluatorNeedAnimpoint.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeAnimpointState } from "@/engine/core/schemes/animpoint/ISchemeAnimpointState"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/base/ObjectRestrictionsManager.ts b/src/engine/core/schemes/base/ObjectRestrictionsManager.ts index d7ce9d367..465762a8a 100644 --- a/src/engine/core/schemes/base/ObjectRestrictionsManager.ts +++ b/src/engine/core/schemes/base/ObjectRestrictionsManager.ts @@ -1,7 +1,6 @@ import { IRegistryObjectState, registry } from "@/engine/core/database"; -import { getParametersString } from "@/engine/core/utils/ini/config"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NIL } from "@/engine/lib/constants/words"; import { ClientObject, IniFile, LuaArray, Optional, TName, TSection } from "@/engine/lib/types"; @@ -64,7 +63,7 @@ export class ObjectRestrictionsManager { logger.info("Activate restrictions:", objectName, section); // Update OUT restrictors based on active / ini restrictors. - const [outRestrictorString] = getParametersString(readIniString(ini, section, "out_restr", false, "", "")); + const outRestrictorString: string = readIniString(ini, section, "out_restr", false, "", ""); const newOutRestrictors: LuaArray = parseStringsList(outRestrictorString); const oldOutRestrictors: LuaArray = parseStringsList(this.object.out_restrictions()); @@ -115,7 +114,7 @@ export class ObjectRestrictionsManager { } // Update IN restrictors based on active / ini restrictors. - const [inRestrictorString] = getParametersString(readIniString(ini, section, "in_restr", false, "", "")); + const inRestrictorString: string = readIniString(ini, section, "in_restr", false, "", ""); const newInRestrictor: LuaArray = parseStringsList(inRestrictorString); const oldInRestrictor: LuaArray = parseStringsList(this.object.in_restrictions()); diff --git a/src/engine/core/schemes/base/evaluators/EvaluatorEnd.ts b/src/engine/core/schemes/base/evaluators/EvaluatorEnd.ts index 1afac4da4..ded061504 100644 --- a/src/engine/core/schemes/base/evaluators/EvaluatorEnd.ts +++ b/src/engine/core/schemes/base/evaluators/EvaluatorEnd.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { IBaseSchemeState } from "@/engine/core/schemes/base"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/base/types.ts b/src/engine/core/schemes/base/types.ts index adbecd114..22f558853 100644 --- a/src/engine/core/schemes/base/types.ts +++ b/src/engine/core/schemes/base/types.ts @@ -1,5 +1,5 @@ import type { AbstractScheme } from "@/engine/core/schemes"; -import type { TConditionList } from "@/engine/core/utils/ini/types"; +import type { TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { AnyObject, ClientObject, diff --git a/src/engine/core/schemes/camper/CampStoryManager.ts b/src/engine/core/schemes/camper/CampStoryManager.ts index 545e18cc9..4af33a825 100644 --- a/src/engine/core/schemes/camper/CampStoryManager.ts +++ b/src/engine/core/schemes/camper/CampStoryManager.ts @@ -2,17 +2,16 @@ import { time_global } from "xray16"; import { IRegistryObjectState, registry } from "@/engine/core/database"; import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; -import { StoryManager } from "@/engine/core/objects/sounds/stories/StoryManager"; -import { ESchemeEvent } from "@/engine/core/schemes"; +import { StoryManager } from "@/engine/core/objects/sounds/stories"; import { ISchemeAnimpointState } from "@/engine/core/schemes/animpoint/ISchemeAnimpointState"; import { IAnimpointAction } from "@/engine/core/schemes/animpoint/types"; +import { ESchemeEvent } from "@/engine/core/schemes/base"; import { ISchemeMeetState } from "@/engine/core/schemes/meet"; import { MeetManager } from "@/engine/core/schemes/meet/MeetManager"; import { abort } from "@/engine/core/utils/assertion"; -import { isObjectMeeting } from "@/engine/core/utils/check/check"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseStringsList, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectMeeting } from "@/engine/core/utils/object"; import { emitSchemeEvent } from "@/engine/core/utils/scheme"; import { ClientObject, diff --git a/src/engine/core/schemes/camper/SchemeCamper.ts b/src/engine/core/schemes/camper/SchemeCamper.ts index 40aef0782..478984423 100644 --- a/src/engine/core/schemes/camper/SchemeCamper.ts +++ b/src/engine/core/schemes/camper/SchemeCamper.ts @@ -6,8 +6,8 @@ import { ActionCamperPatrol } from "@/engine/core/schemes/camper/actions"; import { EvaluatorCloseCombat, EvaluatorEnd } from "@/engine/core/schemes/camper/evaluators"; import { ISchemeCamperState } from "@/engine/core/schemes/camper/ISchemeCamperState"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { RADIAN } from "@/engine/lib/constants/math"; import { FALSE } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/schemes/camper/actions/ActionCamperPatrol.ts b/src/engine/core/schemes/camper/actions/ActionCamperPatrol.ts index 4616ef483..89845c268 100644 --- a/src/engine/core/schemes/camper/actions/ActionCamperPatrol.ts +++ b/src/engine/core/schemes/camper/actions/ActionCamperPatrol.ts @@ -6,9 +6,8 @@ import { EStalkerState, ILookTargetDescriptor } from "@/engine/core/objects/stat import { StalkerMoveManager } from "@/engine/core/objects/state/StalkerMoveManager"; import { ICampPoint, ISchemeCamperState } from "@/engine/core/schemes/camper/ISchemeCamperState"; import { abort } from "@/engine/core/utils/assertion"; -import { isObjectFacingDanger } from "@/engine/core/utils/check/check"; -import { parseWaypointsData } from "@/engine/core/utils/ini/parse"; -import { isStalkerAtWaypoint } from "@/engine/core/utils/position"; +import { parseWaypointsData } from "@/engine/core/utils/ini"; +import { isObjectFacingDanger, isStalkerAtWaypoint } from "@/engine/core/utils/object"; import { createVector } from "@/engine/core/utils/vector"; import { ClientObject, DangerObject, Optional, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/camper/evaluators/EvaluatorCloseCombat.ts b/src/engine/core/schemes/camper/evaluators/EvaluatorCloseCombat.ts index f48e45580..51ce0ad09 100644 --- a/src/engine/core/schemes/camper/evaluators/EvaluatorCloseCombat.ts +++ b/src/engine/core/schemes/camper/evaluators/EvaluatorCloseCombat.ts @@ -1,9 +1,9 @@ import { LuabindClass, property_evaluator, stalker_ids, time_global } from "xray16"; -import { EEvaluatorId } from "@/engine/core/schemes"; +import { EEvaluatorId } from "@/engine/core/schemes/base"; import { ISchemeCamperState } from "@/engine/core/schemes/camper/ISchemeCamperState"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; import { ActionPlanner, Optional } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); @@ -17,9 +17,6 @@ export class EvaluatorCloseCombat extends property_evaluator { public actionPlanner: Optional = null; public isCloseCombat: boolean = false; - /** - * todo: Description. - */ public constructor(state: ISchemeCamperState) { super(null, EvaluatorCloseCombat.__name); this.state = state; diff --git a/src/engine/core/schemes/combat/SchemeCombat.ts b/src/engine/core/schemes/combat/SchemeCombat.ts index 13f79df66..56325342f 100644 --- a/src/engine/core/schemes/combat/SchemeCombat.ts +++ b/src/engine/core/schemes/combat/SchemeCombat.ts @@ -6,11 +6,11 @@ import { EvaluatorCheckCombat } from "@/engine/core/schemes/combat/evaluators/Ev import { ISchemeCombatState } from "@/engine/core/schemes/combat/ISchemeCombatState"; import { SchemeCombatCamper } from "@/engine/core/schemes/combat_camper/SchemeCombatCamper"; import { SchemeCombatZombied } from "@/engine/core/schemes/combat_zombied/SchemeCombatZombied"; -import { getConfigSwitchConditions, pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniConditionList } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions, pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniConditionList } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity } from "@/engine/core/utils/object"; import { communities } from "@/engine/lib/constants/communities"; import { NIL } from "@/engine/lib/constants/words"; import { ActionBase, ActionPlanner, AnyObject, ClientObject, IniFile, Optional, TName } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/combat_idle/evaluators/EvaluatorPostCombatIdleEnemy.ts b/src/engine/core/schemes/combat_idle/evaluators/EvaluatorPostCombatIdleEnemy.ts index c53f089d5..f3532e201 100644 --- a/src/engine/core/schemes/combat_idle/evaluators/EvaluatorPostCombatIdleEnemy.ts +++ b/src/engine/core/schemes/combat_idle/evaluators/EvaluatorPostCombatIdleEnemy.ts @@ -3,8 +3,8 @@ import { LuabindClass, property_evaluator, time_global } from "xray16"; import { registry } from "@/engine/core/database"; import { ISchemePostCombatIdleState } from "@/engine/core/schemes/combat_idle/ISchemePostCombatIdleState"; import { ISchemeCombatIgnoreState } from "@/engine/core/schemes/combat_ignore"; -import { isObjectEnemy } from "@/engine/core/utils/check/check"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectEnemy } from "@/engine/core/utils/object"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { ClientObject, EScheme, Optional, TDistance, TTimestamp } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/combat_ignore/CombatProcessEnemyManager.ts b/src/engine/core/schemes/combat_ignore/CombatProcessEnemyManager.ts index e90a3c0c1..7c2f1c871 100644 --- a/src/engine/core/schemes/combat_ignore/CombatProcessEnemyManager.ts +++ b/src/engine/core/schemes/combat_ignore/CombatProcessEnemyManager.ts @@ -4,8 +4,8 @@ import { registry } from "@/engine/core/database"; import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain/SmartTerrain"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeCombatIgnoreState } from "@/engine/core/schemes/combat_ignore/index"; -import { isObjectEnemy } from "@/engine/core/utils/check/check"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectEnemy } from "@/engine/core/utils/object"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { ACTOR_ID } from "@/engine/lib/constants/ids"; import { MAX_U16 } from "@/engine/lib/constants/memory"; diff --git a/src/engine/core/schemes/combat_zombied/actions/ActionZombieGoToDanger.ts b/src/engine/core/schemes/combat_zombied/actions/ActionZombieGoToDanger.ts index 8f3051eda..70faa3e89 100644 --- a/src/engine/core/schemes/combat_zombied/actions/ActionZombieGoToDanger.ts +++ b/src/engine/core/schemes/combat_zombied/actions/ActionZombieGoToDanger.ts @@ -4,7 +4,7 @@ import { setStalkerState } from "@/engine/core/database"; import { EStalkerState, ILookTargetDescriptor } from "@/engine/core/objects/state"; import { EZombieCombatAction, ISchemeCombatState } from "@/engine/core/schemes/combat/ISchemeCombatState"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_general"; +import { sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_location"; import { ClientObject, DangerObject, diff --git a/src/engine/core/schemes/combat_zombied/evaluators/EvaluatorCombatZombied.ts b/src/engine/core/schemes/combat_zombied/evaluators/EvaluatorCombatZombied.ts index 5ca6b898c..41af7056e 100644 --- a/src/engine/core/schemes/combat_zombied/evaluators/EvaluatorCombatZombied.ts +++ b/src/engine/core/schemes/combat_zombied/evaluators/EvaluatorCombatZombied.ts @@ -2,7 +2,7 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeCombatState } from "@/engine/core/schemes/combat"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity } from "@/engine/core/utils/object"; import { communities } from "@/engine/lib/constants/communities"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/companion/SchemeCompanion.ts b/src/engine/core/schemes/companion/SchemeCompanion.ts index 8037e8b74..8fc4c6f3e 100644 --- a/src/engine/core/schemes/companion/SchemeCompanion.ts +++ b/src/engine/core/schemes/companion/SchemeCompanion.ts @@ -4,9 +4,9 @@ import { AbstractScheme, EActionId, EEvaluatorId } from "@/engine/core/schemes"; import { ActionCompanionActivity } from "@/engine/core/schemes/companion/actions"; import { EvaluatorNeedCompanion } from "@/engine/core/schemes/companion/evaluators"; import { ISchemeCompanionState } from "@/engine/core/schemes/companion/ISchemeCompanionState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/setup"; +import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/scheme_setup"; import { ActionPlanner, ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/companion/evaluators/EvaluatorNeedCompanion.ts b/src/engine/core/schemes/companion/evaluators/EvaluatorNeedCompanion.ts index ba130cb31..a82ed7a8e 100644 --- a/src/engine/core/schemes/companion/evaluators/EvaluatorNeedCompanion.ts +++ b/src/engine/core/schemes/companion/evaluators/EvaluatorNeedCompanion.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeCompanionState } from "@/engine/core/schemes/companion"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/corpse_detection/SchemeCorpseDetection.ts b/src/engine/core/schemes/corpse_detection/SchemeCorpseDetection.ts index eca65b9c3..d2bb6b9fa 100644 --- a/src/engine/core/schemes/corpse_detection/SchemeCorpseDetection.ts +++ b/src/engine/core/schemes/corpse_detection/SchemeCorpseDetection.ts @@ -6,9 +6,9 @@ import { AbstractScheme, EActionId, EEvaluatorId } from "@/engine/core/schemes"; import { ActionSearchCorpse } from "@/engine/core/schemes/corpse_detection/actions"; import { EvaluatorCorpseDetect } from "@/engine/core/schemes/corpse_detection/evaluators"; import { ISchemeCorpseDetectionState } from "@/engine/core/schemes/corpse_detection/ISchemeCorpseDetectionState"; -import { isLootableItem } from "@/engine/core/utils/check/is"; -import { readIniBoolean } from "@/engine/core/utils/ini/read"; +import { readIniBoolean } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isLootableItem } from "@/engine/core/utils/object"; import { ActionPlanner, ClientObject, IniFile, Optional, TNumberId } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/corpse_detection/evaluators/EvaluatorCorpseDetect.ts b/src/engine/core/schemes/corpse_detection/evaluators/EvaluatorCorpseDetect.ts index 2f1fd36aa..b73c46485 100644 --- a/src/engine/core/schemes/corpse_detection/evaluators/EvaluatorCorpseDetect.ts +++ b/src/engine/core/schemes/corpse_detection/evaluators/EvaluatorCorpseDetect.ts @@ -3,8 +3,7 @@ import { level, LuabindClass, property_evaluator } from "xray16"; import { IRegistryObjectState, registry } from "@/engine/core/database"; import { IReleaseDescriptor, ReleaseBodyManager } from "@/engine/core/managers/world/ReleaseBodyManager"; import { ISchemeCorpseDetectionState } from "@/engine/core/schemes/corpse_detection"; -import { isObjectWounded } from "@/engine/core/utils/check/check"; -import { isLootableItem } from "@/engine/core/utils/check/is"; +import { isLootableItem, isObjectWounded } from "@/engine/core/utils/object"; import { communities } from "@/engine/lib/constants/communities"; import { ClientObject, Optional, TDistance, TNumberId, Vector } from "@/engine/lib/types"; @@ -32,7 +31,7 @@ export class EvaluatorCorpseDetect extends property_evaluator { return false; } else if (this.state.corpse_detection_enabled === false) { return false; - } else if (isObjectWounded(this.object)) { + } else if (isObjectWounded(this.object.id())) { return false; } else if (this.object.section() === "actor_visual_stalker") { return false; diff --git a/src/engine/core/schemes/cover/ISchemeCoverState.ts b/src/engine/core/schemes/cover/ISchemeCoverState.ts index 0fb0fc66a..bebbe4574 100644 --- a/src/engine/core/schemes/cover/ISchemeCoverState.ts +++ b/src/engine/core/schemes/cover/ISchemeCoverState.ts @@ -1,5 +1,5 @@ import { IBaseSchemeState } from "@/engine/core/schemes/base"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { TConditionList } from "@/engine/core/utils/ini/ini_types"; import { TDistance, TName } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/cover/SchemeCover.ts b/src/engine/core/schemes/cover/SchemeCover.ts index 0a49b0de5..e9d6f8e1b 100644 --- a/src/engine/core/schemes/cover/SchemeCover.ts +++ b/src/engine/core/schemes/cover/SchemeCover.ts @@ -5,9 +5,9 @@ import { ActionCover } from "@/engine/core/schemes/cover/actions"; import { EvaluatorNeedCover } from "@/engine/core/schemes/cover/evaluators"; import { ISchemeCoverState } from "@/engine/core/schemes/cover/ISchemeCoverState"; import { assertDefined } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ActionPlanner, ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/cover/actions/ActionCover.ts b/src/engine/core/schemes/cover/actions/ActionCover.ts index cea63470c..3896a67f7 100644 --- a/src/engine/core/schemes/cover/actions/ActionCover.ts +++ b/src/engine/core/schemes/cover/actions/ActionCover.ts @@ -5,7 +5,7 @@ import { SimulationBoardManager } from "@/engine/core/managers/interaction/Simul import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { EStalkerState } from "@/engine/core/objects/state"; import { ISchemeCoverState } from "@/engine/core/schemes/cover"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; import { areSameVectors, createEmptyVector, createVector, subVectors } from "@/engine/core/utils/vector"; import { CoverPoint, EClientObjectPath, Optional, TDistance, TNumberId, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/cover/evaluators/EvaluatorNeedCover.ts b/src/engine/core/schemes/cover/evaluators/EvaluatorNeedCover.ts index b97e67d62..512cfdbb1 100644 --- a/src/engine/core/schemes/cover/evaluators/EvaluatorNeedCover.ts +++ b/src/engine/core/schemes/cover/evaluators/EvaluatorNeedCover.ts @@ -2,7 +2,7 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeCoverState } from "@/engine/core/schemes/cover"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { isSectionActive } from "@/engine/core/utils/scheme/logic"; +import { isSectionActive } from "@/engine/core/utils/scheme/scheme_logic"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/danger/evaluators/EvaluatorDanger.ts b/src/engine/core/schemes/danger/evaluators/EvaluatorDanger.ts index 24ee4591d..c7e5fc05c 100644 --- a/src/engine/core/schemes/danger/evaluators/EvaluatorDanger.ts +++ b/src/engine/core/schemes/danger/evaluators/EvaluatorDanger.ts @@ -1,8 +1,8 @@ import { alife, danger_object, LuabindClass, property_evaluator, stalker_ids, time_global } from "xray16"; -import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain/SmartTerrain"; +import { SmartTerrain } from "@/engine/core/objects/server/smart_terrain"; import { ISchemeDangerState } from "@/engine/core/schemes/danger"; -import { isObjectFacingDanger } from "@/engine/core/utils/check/check"; +import { isObjectFacingDanger } from "@/engine/core/utils/object"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { MAX_U16 } from "@/engine/lib/constants/memory"; import { ActionPlanner, DangerObject, Optional, ServerCreatureObject, TTimestamp } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/death/DeathManager.ts b/src/engine/core/schemes/death/DeathManager.ts index d12c4f9fa..498b66b6a 100644 --- a/src/engine/core/schemes/death/DeathManager.ts +++ b/src/engine/core/schemes/death/DeathManager.ts @@ -1,7 +1,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeDeathState } from "@/engine/core/schemes/death/ISchemeDeathState"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; import { ClientObject, EScheme, Optional } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/death/ISchemeDeathState.ts b/src/engine/core/schemes/death/ISchemeDeathState.ts index fc6d23c26..c154fdfc8 100644 --- a/src/engine/core/schemes/death/ISchemeDeathState.ts +++ b/src/engine/core/schemes/death/ISchemeDeathState.ts @@ -1,5 +1,5 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { TConditionList } from "@/engine/core/utils/ini/types"; +import type { TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { Optional, TName, TNumberId } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/death/SchemeDeath.ts b/src/engine/core/schemes/death/SchemeDeath.ts index 9f9423cac..211659821 100644 --- a/src/engine/core/schemes/death/SchemeDeath.ts +++ b/src/engine/core/schemes/death/SchemeDeath.ts @@ -3,8 +3,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { DeathManager } from "@/engine/core/schemes/death/DeathManager"; import { ISchemeDeathState } from "@/engine/core/schemes/death/ISchemeDeathState"; import { abort } from "@/engine/core/utils/assertion"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/gather_items/SchemeGatherItems.ts b/src/engine/core/schemes/gather_items/SchemeGatherItems.ts index cb742646e..7dd72fa7d 100644 --- a/src/engine/core/schemes/gather_items/SchemeGatherItems.ts +++ b/src/engine/core/schemes/gather_items/SchemeGatherItems.ts @@ -4,7 +4,7 @@ import { IRegistryObjectState } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base"; import { EvaluatorGatherItems } from "@/engine/core/schemes/gather_items/evaluators"; import { ISchemeGatherItemsState } from "@/engine/core/schemes/gather_items/ISchemeGatherItemsState"; -import { readIniBoolean } from "@/engine/core/utils/ini/read"; +import { readIniBoolean } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ActionPlanner, ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/hear/IActionSchemeHearState.ts b/src/engine/core/schemes/hear/IActionSchemeHearState.ts index 3ff65e026..8b2eee99d 100644 --- a/src/engine/core/schemes/hear/IActionSchemeHearState.ts +++ b/src/engine/core/schemes/hear/IActionSchemeHearState.ts @@ -1,4 +1,4 @@ -import type { TConditionList } from "@/engine/core/utils/ini/types"; +import type { TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { Optional, TDistance, TName, TRate } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/hear/SchemeHear.ts b/src/engine/core/schemes/hear/SchemeHear.ts index 703ea6828..ff058883a 100644 --- a/src/engine/core/schemes/hear/SchemeHear.ts +++ b/src/engine/core/schemes/hear/SchemeHear.ts @@ -2,10 +2,10 @@ import { getStoryIdByObjectId, IRegistryObjectState, registry } from "@/engine/c import { AbstractScheme } from "@/engine/core/schemes"; import { ISchemeDangerState } from "@/engine/core/schemes/danger"; import { IActionSchemeHearState } from "@/engine/core/schemes/hear/IActionSchemeHearState"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList, parseParameters } from "@/engine/core/utils/ini/parse"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList, parseParameters } from "@/engine/core/utils/ini/ini_parse"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { switchObjectSchemeToSection } from "@/engine/core/utils/scheme/switch"; +import { switchObjectSchemeToSection } from "@/engine/core/utils/scheme/scheme_switch"; import { mapSoundMaskToSoundType } from "@/engine/core/utils/sound"; import { ESoundType } from "@/engine/lib/constants/sound/sound_type"; import { diff --git a/src/engine/core/schemes/heli_move/HeliCombat.ts b/src/engine/core/schemes/heli_move/HeliCombat.ts index 87587bf92..77b7b32a2 100644 --- a/src/engine/core/schemes/heli_move/HeliCombat.ts +++ b/src/engine/core/schemes/heli_move/HeliCombat.ts @@ -5,18 +5,22 @@ import { closeSaveMarker, getIdBySid, IRegistryObjectState, + openLoadMarker, openSaveMarker, registry, } from "@/engine/core/database"; -import { openLoadMarker } from "@/engine/core/database/save_markers"; import { getHeliHealth } from "@/engine/core/schemes/heli_move/heli_utils"; -import { isLevelChanging } from "@/engine/core/utils/check/check"; -import { randomChoice } from "@/engine/core/utils/general"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { isGameLevelChanging } from "@/engine/core/utils/game"; +import { + parseConditionsList, + pickSectionFromCondList, + readIniBoolean, + readIniNumber, + readIniString, + TConditionList, +} from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { pickRandom } from "@/engine/core/utils/number"; import { copyVector, createEmptyVector, createVector, distanceBetween2d } from "@/engine/core/utils/vector"; import { ACTOR, NIL } from "@/engine/lib/constants/words"; import { ClientObject, IniFile, NetPacket, Optional, Reader, TNumberId, TRate, Vector } from "@/engine/lib/types"; @@ -220,7 +224,7 @@ export class HeliCombat { public save(packet: NetPacket): void { openSaveMarker(packet, HeliCombat.name); - if (isLevelChanging()) { + if (isGameLevelChanging()) { packet.w_bool(false); closeSaveMarker(packet, HeliCombat.name); @@ -484,7 +488,7 @@ export class HeliCombat { this.changeDirTime = 0; this.changePosTime = 0; this.centerPos = this.enemyLastSeenPos!; - this.flightDirection = randomChoice(true, false); + this.flightDirection = pickRandom(true, false); this.changeCombatTypeAllowed = true; this.roundBeginShootTime = 0; @@ -577,7 +581,7 @@ export class HeliCombat { this.changePosTime = 0; this.centerPos = this.enemyLastSeenPos!; - this.flightDirection = randomChoice(true, false); + this.flightDirection = pickRandom(true, false); this.changeCombatTypeAllowed = true; this.searchBeginShootTime = 0; diff --git a/src/engine/core/schemes/heli_move/HeliFire.ts b/src/engine/core/schemes/heli_move/HeliFire.ts index ccf8f82e1..3888c5132 100644 --- a/src/engine/core/schemes/heli_move/HeliFire.ts +++ b/src/engine/core/schemes/heli_move/HeliFire.ts @@ -11,18 +11,18 @@ import { } from "xray16"; import { getIdBySid, registry } from "@/engine/core/database"; -import { randomChoice } from "@/engine/core/utils/general"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { pickRandom } from "@/engine/core/utils/number"; import { distanceBetween2d } from "@/engine/core/utils/vector"; import { MAX_U16 } from "@/engine/lib/constants/memory"; import { ACTOR, NIL } from "@/engine/lib/constants/words"; -import { ClientObject, Optional, TDistance, TIndex, TRate, Vector, XmlInit } from "@/engine/lib/types"; +import { ClientObject, Optional, TDistance, TIndex, TPath, TRate, Vector, XmlInit } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); const heliFirer: LuaTable = new LuaTable(); export class HeliFire { - public static readonly HELI_STATIC_UI_XML_PATH: string = "game\\heli\\heli_progress.xml"; + public static readonly HELI_STATIC_UI_XML_PATH: TPath = "game\\heli\\heli_progress.xml"; public object: ClientObject; public enemy_: Optional; @@ -233,7 +233,7 @@ export class HeliFire { const actor: ClientObject = registry.actor; - if ((heli.isVisible(actor) && randomChoice(false, true)) || registry.helicopter.enemyIndex === 0) { + if ((heli.isVisible(actor) && pickRandom(false, true)) || registry.helicopter.enemyIndex === 0) { if (distanceBetween2d(this.object.position(), actor.position()) <= minDist2D * 2) { this.enemy = actor; } diff --git a/src/engine/core/schemes/heli_move/HelicopterMoveManager.ts b/src/engine/core/schemes/heli_move/HelicopterMoveManager.ts index f0b2258c5..d2a42e451 100644 --- a/src/engine/core/schemes/heli_move/HelicopterMoveManager.ts +++ b/src/engine/core/schemes/heli_move/HelicopterMoveManager.ts @@ -7,8 +7,8 @@ import { getHeliFlyer, HeliFly } from "@/engine/core/schemes/heli_move/HeliFly"; import { getHeliLooker, HeliLook } from "@/engine/core/schemes/heli_move/HeliLook"; import { ISchemeHelicopterMoveState } from "@/engine/core/schemes/heli_move/ISchemeHelicopterMoveState"; import { abort } from "@/engine/core/utils/assertion"; -import { parseWaypointsData } from "@/engine/core/utils/ini/parse"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { parseWaypointsData } from "@/engine/core/utils/ini/ini_parse"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ACTOR } from "@/engine/lib/constants/words"; import { ClientObject, Optional, Patrol, TIndex, TName, TRate, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/heli_move/SchemeHelicopterMove.ts b/src/engine/core/schemes/heli_move/SchemeHelicopterMove.ts index ba95cb198..c07a70aed 100644 --- a/src/engine/core/schemes/heli_move/SchemeHelicopterMove.ts +++ b/src/engine/core/schemes/heli_move/SchemeHelicopterMove.ts @@ -2,8 +2,8 @@ import { IRegistryObjectState, registry } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { HelicopterMoveManager } from "@/engine/core/schemes/heli_move/HelicopterMoveManager"; import { ISchemeHelicopterMoveState } from "@/engine/core/schemes/heli_move/ISchemeHelicopterMoveState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/help_wounded/SchemeHelpWounded.ts b/src/engine/core/schemes/help_wounded/SchemeHelpWounded.ts index f51a09b87..d5d3ff680 100644 --- a/src/engine/core/schemes/help_wounded/SchemeHelpWounded.ts +++ b/src/engine/core/schemes/help_wounded/SchemeHelpWounded.ts @@ -7,7 +7,7 @@ import { ActionHelpWounded } from "@/engine/core/schemes/help_wounded/actions"; import { EvaluatorWoundedExist } from "@/engine/core/schemes/help_wounded/evaluators"; import { ISchemeHelpWoundedState } from "@/engine/core/schemes/help_wounded/ISchemeHelpWoundedState"; import { SchemeWounded } from "@/engine/core/schemes/wounded/SchemeWounded"; -import { readIniBoolean } from "@/engine/core/utils/ini/read"; +import { readIniBoolean } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { scriptSounds } from "@/engine/lib/constants/sound/script_sounds"; import { ActionPlanner, ClientObject, IniFile, Optional, TNumberId } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/help_wounded/evaluators/EvaluatorWoundedExist.ts b/src/engine/core/schemes/help_wounded/evaluators/EvaluatorWoundedExist.ts index 48484a0c2..8dd211246 100644 --- a/src/engine/core/schemes/help_wounded/evaluators/EvaluatorWoundedExist.ts +++ b/src/engine/core/schemes/help_wounded/evaluators/EvaluatorWoundedExist.ts @@ -3,8 +3,8 @@ import { level, LuabindClass, property_evaluator } from "xray16"; import { IRegistryObjectState, registry } from "@/engine/core/database"; import { ISchemeHelpWoundedState } from "@/engine/core/schemes/help_wounded"; import { ISchemeWoundedState } from "@/engine/core/schemes/wounded"; -import { isObjectWounded } from "@/engine/core/utils/check/check"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectWounded } from "@/engine/core/utils/object"; import { communities } from "@/engine/lib/constants/communities"; import { ClientObject, EScheme, TDistance, TNumberId, Vector } from "@/engine/lib/types"; @@ -43,7 +43,7 @@ export class EvaluatorWoundedExist extends property_evaluator { return false; } - if (isObjectWounded(object)) { + if (isObjectWounded(object.id())) { return false; } else if (object.section() === "actor_visual_stalker") { return false; @@ -61,7 +61,7 @@ export class EvaluatorWoundedExist extends property_evaluator { if ( object.see(visibleObject) && - isObjectWounded(visibleObject) && + isObjectWounded(visibleObject.id()) && (visibleObjectState.wounded_already_selected === null || visibleObjectState.wounded_already_selected === objectId) && visibleObject.alive() diff --git a/src/engine/core/schemes/hit/HitManager.ts b/src/engine/core/schemes/hit/HitManager.ts index 4229cc882..f3085bded 100644 --- a/src/engine/core/schemes/hit/HitManager.ts +++ b/src/engine/core/schemes/hit/HitManager.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeHitState } from "@/engine/core/schemes/hit/ISchemeHitState"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, EScheme, Optional, TCount, TIndex, Vector } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/hit/SchemeHit.ts b/src/engine/core/schemes/hit/SchemeHit.ts index e22f924df..79b18b00d 100644 --- a/src/engine/core/schemes/hit/SchemeHit.ts +++ b/src/engine/core/schemes/hit/SchemeHit.ts @@ -3,7 +3,7 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { HitManager } from "@/engine/core/schemes/hit/HitManager"; import { ISchemeHitState } from "@/engine/core/schemes/hit/ISchemeHitState"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/meet/ISchemeMeetState.ts b/src/engine/core/schemes/meet/ISchemeMeetState.ts index 2d8db9d4c..983f1991a 100644 --- a/src/engine/core/schemes/meet/ISchemeMeetState.ts +++ b/src/engine/core/schemes/meet/ISchemeMeetState.ts @@ -1,6 +1,6 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; import type { MeetManager } from "@/engine/core/schemes/meet/MeetManager"; -import type { TConditionList } from "@/engine/core/utils/ini/types"; +import type { TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { Optional, TDistance, TSection } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/meet/MeetManager.ts b/src/engine/core/schemes/meet/MeetManager.ts index f09af5bf7..921523b2e 100644 --- a/src/engine/core/schemes/meet/MeetManager.ts +++ b/src/engine/core/schemes/meet/MeetManager.ts @@ -6,10 +6,10 @@ import { EStalkerState } from "@/engine/core/objects/state"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { SchemeAbuse } from "@/engine/core/schemes/abuse"; import { ISchemeMeetState } from "@/engine/core/schemes/meet/ISchemeMeetState"; -import { isBlackScreen, isObjectWounded } from "@/engine/core/utils/check/check"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { isBlackScreen } from "@/engine/core/utils/game"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { isObjectInCombat } from "@/engine/core/utils/object/object_general"; +import { isObjectInCombat, isObjectWounded } from "@/engine/core/utils/object"; import { captions } from "@/engine/lib/constants/captions"; import { FALSE, NIL, TRUE } from "@/engine/lib/constants/words"; import { ClientObject, Optional, StringOptional, TDistance, TName, TSection, TStringId } from "@/engine/lib/types"; @@ -252,7 +252,7 @@ export class MeetManager extends AbstractSchemeManager { } // Handle possibility of trading - if (isObjectWounded(this.object)) { + if (isObjectWounded(this.object.id())) { this.isTradingEnabled = false; } else { const isTradingEnabled: boolean = pickSectionFromCondList(actor, this.object, this.state.trade_enable) === TRUE; diff --git a/src/engine/core/schemes/meet/SchemeMeet.ts b/src/engine/core/schemes/meet/SchemeMeet.ts index ca569617d..965b2b565 100644 --- a/src/engine/core/schemes/meet/SchemeMeet.ts +++ b/src/engine/core/schemes/meet/SchemeMeet.ts @@ -11,12 +11,10 @@ import { EvaluatorContact } from "@/engine/core/schemes/meet/evaluators"; import { ISchemeMeetState } from "@/engine/core/schemes/meet/ISchemeMeetState"; import { MeetManager } from "@/engine/core/schemes/meet/MeetManager"; import { ISchemeWoundedState } from "@/engine/core/schemes/wounded"; -import { isObjectWounded } from "@/engine/core/utils/check/check"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniString } from "@/engine/core/utils/ini/read"; +import { parseConditionsList, pickSectionFromCondList, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getObjectsRelationSafe } from "@/engine/core/utils/relation/get"; +import { isObjectWounded } from "@/engine/core/utils/object"; +import { getObjectsRelationSafe } from "@/engine/core/utils/relation"; import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; import { FALSE, NIL, TRUE } from "@/engine/lib/constants/words"; import { @@ -264,7 +262,7 @@ export class SchemeMeet extends AbstractScheme { * todo: Description. */ public static updateObjectInteractionAvailability(object: ClientObject): void { - if (isObjectWounded(object)) { + if (isObjectWounded(object.id())) { if (object.relation(registry.actor) === EClientObjectRelation.ENEMY) { object.disable_talk(); } else { diff --git a/src/engine/core/schemes/meet/evaluators/EvaluatorContact.ts b/src/engine/core/schemes/meet/evaluators/EvaluatorContact.ts index c6487474b..12b79cfc5 100644 --- a/src/engine/core/schemes/meet/evaluators/EvaluatorContact.ts +++ b/src/engine/core/schemes/meet/evaluators/EvaluatorContact.ts @@ -2,8 +2,8 @@ import { LuabindClass, property_evaluator, stalker_ids } from "xray16"; import { registry } from "@/engine/core/database"; import { ISchemeMeetState } from "@/engine/core/schemes/meet"; -import { isObjectWounded } from "@/engine/core/utils/check/check"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isObjectWounded } from "@/engine/core/utils/object"; import { FALSE } from "@/engine/lib/constants/words"; import { ActionPlanner, ClientObject, Optional } from "@/engine/lib/types"; @@ -33,7 +33,7 @@ export class EvaluatorContact extends property_evaluator { } else { this.state.meetManager.update(); - if (isObjectWounded(this.object)) { + if (isObjectWounded(this.object.id())) { return false; } else if (this.object.best_enemy() !== null) { return false; diff --git a/src/engine/core/schemes/mob_combat/MobCombatManager.ts b/src/engine/core/schemes/mob_combat/MobCombatManager.ts index 2f0bf2718..d3b599ab9 100644 --- a/src/engine/core/schemes/mob_combat/MobCombatManager.ts +++ b/src/engine/core/schemes/mob_combat/MobCombatManager.ts @@ -1,7 +1,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeMobCombatState } from "@/engine/core/schemes/mob_combat/ISchemeMobCombatState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; /** * todo; diff --git a/src/engine/core/schemes/mob_combat/SchemeMobCombat.ts b/src/engine/core/schemes/mob_combat/SchemeMobCombat.ts index 7b0e31fef..1d3937b77 100644 --- a/src/engine/core/schemes/mob_combat/SchemeMobCombat.ts +++ b/src/engine/core/schemes/mob_combat/SchemeMobCombat.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemeMobCombatState } from "@/engine/core/schemes/mob_combat/ISchemeMobCombatState"; import { MobCombatManager } from "@/engine/core/schemes/mob_combat/MobCombatManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_death/MobDeathManager.ts b/src/engine/core/schemes/mob_death/MobDeathManager.ts index b2c03ccad..ecfd147e3 100644 --- a/src/engine/core/schemes/mob_death/MobDeathManager.ts +++ b/src/engine/core/schemes/mob_death/MobDeathManager.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes/base"; import { ISchemeDeathState } from "@/engine/core/schemes/death"; import { ISchemeMobDeathState } from "@/engine/core/schemes/mob_death/ISchemeMobDeathState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, EScheme, Optional } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/mob_death/SchemeMobDeath.ts b/src/engine/core/schemes/mob_death/SchemeMobDeath.ts index d108fd8a3..b5fce0f61 100644 --- a/src/engine/core/schemes/mob_death/SchemeMobDeath.ts +++ b/src/engine/core/schemes/mob_death/SchemeMobDeath.ts @@ -1,7 +1,7 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemeMobDeathState } from "@/engine/core/schemes/mob_death/ISchemeMobDeathState"; import { MobDeathManager } from "@/engine/core/schemes/mob_death/MobDeathManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_home/MobHomeManager.ts b/src/engine/core/schemes/mob_home/MobHomeManager.ts index 29f51b501..abae4764b 100644 --- a/src/engine/core/schemes/mob_home/MobHomeManager.ts +++ b/src/engine/core/schemes/mob_home/MobHomeManager.ts @@ -5,8 +5,8 @@ import { SmartTerrain } from "@/engine/core/objects"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeMobHomeState } from "@/engine/core/schemes/mob_home/ISchemeMobHomeState"; import { assert } from "@/engine/core/utils/assertion"; -import { parseWaypointData } from "@/engine/core/utils/ini/parse"; -import { IWaypointData } from "@/engine/core/utils/ini/types"; +import { parseWaypointData } from "@/engine/core/utils/ini/ini_parse"; +import { IWaypointData } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; import { Optional, Patrol, ServerCreatureObject, TDistance, TName, TNumberId } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_home/SchemeMobHome.test.ts b/src/engine/core/schemes/mob_home/SchemeMobHome.test.ts index 71e32903b..d9336b6aa 100644 --- a/src/engine/core/schemes/mob_home/SchemeMobHome.test.ts +++ b/src/engine/core/schemes/mob_home/SchemeMobHome.test.ts @@ -3,7 +3,7 @@ import { describe, expect, it } from "@jest/globals"; import { IRegistryObjectState, registerObject, registry } from "@/engine/core/database"; import { ISchemeMobHomeState } from "@/engine/core/schemes/mob_home/ISchemeMobHomeState"; import { SchemeMobHome } from "@/engine/core/schemes/mob_home/SchemeMobHome"; -import { loadSchemeImplementation } from "@/engine/core/utils/scheme/setup"; +import { loadSchemeImplementation } from "@/engine/core/utils/scheme/scheme_setup"; import { ClientObject, EScheme, ESchemeType, IniFile } from "@/engine/lib/types"; import { mockClientGameObject, mockIniFile } from "@/fixtures/xray"; diff --git a/src/engine/core/schemes/mob_home/SchemeMobHome.ts b/src/engine/core/schemes/mob_home/SchemeMobHome.ts index c785caec5..3f5407532 100644 --- a/src/engine/core/schemes/mob_home/SchemeMobHome.ts +++ b/src/engine/core/schemes/mob_home/SchemeMobHome.ts @@ -2,8 +2,8 @@ import { getMonsterState } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeMobHomeState } from "@/engine/core/schemes/mob_home/ISchemeMobHomeState"; import { MobHomeManager } from "@/engine/core/schemes/mob_home/MobHomeManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TName, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_jump/MobJumpManager.ts b/src/engine/core/schemes/mob_jump/MobJumpManager.ts index 3eb92b9d2..6936a81c9 100644 --- a/src/engine/core/schemes/mob_jump/MobJumpManager.ts +++ b/src/engine/core/schemes/mob_jump/MobJumpManager.ts @@ -3,7 +3,7 @@ import { cond, look, patrol } from "xray16"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeMobJumpState } from "@/engine/core/schemes/mob_jump/ISchemeMobJumpState"; import { abort } from "@/engine/core/utils/assertion"; -import { action } from "@/engine/core/utils/object/object_general"; +import { action } from "@/engine/core/utils/object/object_action"; import { scriptCaptureMonster, scriptReleaseMonster } from "@/engine/core/utils/scheme"; import { addVectors } from "@/engine/core/utils/vector"; import { Optional, Patrol, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_jump/SchemeMobJump.ts b/src/engine/core/schemes/mob_jump/SchemeMobJump.ts index f85bf3d21..2d2c7c358 100644 --- a/src/engine/core/schemes/mob_jump/SchemeMobJump.ts +++ b/src/engine/core/schemes/mob_jump/SchemeMobJump.ts @@ -2,9 +2,9 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemeMobJumpState } from "@/engine/core/schemes/mob_jump/ISchemeMobJumpState"; import { MobJumpManager } from "@/engine/core/schemes/mob_jump/MobJumpManager"; import { assert } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { createVector } from "@/engine/core/utils/vector"; import { ClientObject, EScheme, ESchemeType, IniFile, LuaArray, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_remark/MobRemarkManager.ts b/src/engine/core/schemes/mob_remark/MobRemarkManager.ts index ccf17b377..c9f2ca6e8 100644 --- a/src/engine/core/schemes/mob_remark/MobRemarkManager.ts +++ b/src/engine/core/schemes/mob_remark/MobRemarkManager.ts @@ -6,10 +6,10 @@ import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeMobRemarkState } from "@/engine/core/schemes/mob_remark/ISchemeMobRemarkState"; import { abort } from "@/engine/core/utils/assertion"; import { getExtern } from "@/engine/core/utils/binding"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { action } from "@/engine/core/utils/object/object_general"; -import { scriptCaptureMonster } from "@/engine/core/utils/scheme/monster"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { action } from "@/engine/core/utils/object/object_action"; +import { scriptCaptureMonster } from "@/engine/core/utils/scheme/scheme_monster"; import { AnyCallablesModule, LuaArray, MonsterBodyStateKey, Optional, TName } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/mob_remark/SchemeMobRemark.ts b/src/engine/core/schemes/mob_remark/SchemeMobRemark.ts index 7bba1d8f8..4387f90f9 100644 --- a/src/engine/core/schemes/mob_remark/SchemeMobRemark.ts +++ b/src/engine/core/schemes/mob_remark/SchemeMobRemark.ts @@ -2,8 +2,8 @@ import { getMonsterState } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeMobRemarkState } from "@/engine/core/schemes/mob_remark/ISchemeMobRemarkState"; import { MobRemarkManager } from "@/engine/core/schemes/mob_remark/MobRemarkManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/mob_walker/ISchemeMobWalkerState.ts b/src/engine/core/schemes/mob_walker/ISchemeMobWalkerState.ts index b6b08ae4e..28295765b 100644 --- a/src/engine/core/schemes/mob_walker/ISchemeMobWalkerState.ts +++ b/src/engine/core/schemes/mob_walker/ISchemeMobWalkerState.ts @@ -1,5 +1,5 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { IWaypointData } from "@/engine/core/utils/ini/types"; +import type { IWaypointData } from "@/engine/core/utils/ini/ini_types"; import type { EMonsterState } from "@/engine/lib/constants/monsters"; import type { LuaArray, Optional } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/mob_walker/MobWalkerManager.ts b/src/engine/core/schemes/mob_walker/MobWalkerManager.ts index 2c00a0e1d..4458833ca 100644 --- a/src/engine/core/schemes/mob_walker/MobWalkerManager.ts +++ b/src/engine/core/schemes/mob_walker/MobWalkerManager.ts @@ -5,11 +5,10 @@ import { StalkerMoveManager } from "@/engine/core/objects/state/StalkerMoveManag import { AbstractSchemeManager } from "@/engine/core/schemes/base"; import { ISchemeMobWalkerState } from "@/engine/core/schemes/mob_walker/ISchemeMobWalkerState"; import { abort } from "@/engine/core/utils/assertion"; -import { parseWaypointsData, pickSectionFromCondList } from "@/engine/core/utils/ini"; -import { IWaypointData } from "@/engine/core/utils/ini/types"; -import { action } from "@/engine/core/utils/object/object_general"; -import { isStalkerAtWaypoint } from "@/engine/core/utils/position"; -import { isMonsterScriptCaptured, scriptCaptureMonster } from "@/engine/core/utils/scheme/monster"; +import { IWaypointData, parseWaypointsData, pickSectionFromCondList } from "@/engine/core/utils/ini"; +import { isStalkerAtWaypoint } from "@/engine/core/utils/object"; +import { action } from "@/engine/core/utils/object/object_action"; +import { isMonsterScriptCaptured, scriptCaptureMonster } from "@/engine/core/utils/scheme/scheme_monster"; import { copyVector } from "@/engine/core/utils/vector"; import { EMonsterState } from "@/engine/lib/constants/monsters"; import { NIL, TRUE } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/schemes/mob_walker/SchemeMobWalker.ts b/src/engine/core/schemes/mob_walker/SchemeMobWalker.ts index 9841b51e2..452dab3af 100644 --- a/src/engine/core/schemes/mob_walker/SchemeMobWalker.ts +++ b/src/engine/core/schemes/mob_walker/SchemeMobWalker.ts @@ -3,8 +3,8 @@ import { AbstractScheme } from "@/engine/core/schemes"; import { ISchemeMobWalkerState } from "@/engine/core/schemes/mob_walker/ISchemeMobWalkerState"; import { MobWalkerManager } from "@/engine/core/schemes/mob_walker/MobWalkerManager"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TName, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/patrol/ISchemePatrolState.ts b/src/engine/core/schemes/patrol/ISchemePatrolState.ts index a9df01b1a..647403e48 100644 --- a/src/engine/core/schemes/patrol/ISchemePatrolState.ts +++ b/src/engine/core/schemes/patrol/ISchemePatrolState.ts @@ -1,5 +1,5 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { IWaypointData } from "@/engine/core/utils/ini/types"; +import type { IWaypointData } from "@/engine/core/utils/ini/ini_types"; import type { LuaArray, Optional } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/patrol/SchemePatrol.ts b/src/engine/core/schemes/patrol/SchemePatrol.ts index 6d55d95be..c12b80332 100644 --- a/src/engine/core/schemes/patrol/SchemePatrol.ts +++ b/src/engine/core/schemes/patrol/SchemePatrol.ts @@ -8,11 +8,10 @@ import { EvaluatorPatrolComm, EvaluatorPatrolEnd } from "@/engine/core/schemes/p import { ISchemePatrolState } from "@/engine/core/schemes/patrol/ISchemePatrolState"; import { PatrolManager } from "@/engine/core/schemes/patrol/PatrolManager"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions, readIniBoolean, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getObjectSquad } from "@/engine/core/utils/object/object_general"; -import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/setup"; +import { getObjectSquad } from "@/engine/core/utils/object"; +import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/scheme_setup"; import { ActionPlanner, ClientObject, IniFile, Optional, TName } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/patrol/actions/ActionCommander.ts b/src/engine/core/schemes/patrol/actions/ActionCommander.ts index cc3d7c861..c948a7950 100644 --- a/src/engine/core/schemes/patrol/actions/ActionCommander.ts +++ b/src/engine/core/schemes/patrol/actions/ActionCommander.ts @@ -5,7 +5,7 @@ import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundMan import { EStalkerState } from "@/engine/core/objects/state"; import { StalkerMoveManager } from "@/engine/core/objects/state/StalkerMoveManager"; import { ISchemePatrolState } from "@/engine/core/schemes/patrol"; -import { parseWaypointsData } from "@/engine/core/utils/ini/parse"; +import { parseWaypointsData } from "@/engine/core/utils/ini/ini_parse"; import { ClientObject, Optional } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/patrol/actions/ActionPatrol.ts b/src/engine/core/schemes/patrol/actions/ActionPatrol.ts index 284b7a9fb..8da8e5282 100644 --- a/src/engine/core/schemes/patrol/actions/ActionPatrol.ts +++ b/src/engine/core/schemes/patrol/actions/ActionPatrol.ts @@ -4,9 +4,9 @@ import { registry, setStalkerState } from "@/engine/core/database"; import { EStalkerState } from "@/engine/core/objects/state"; import { StalkerMoveManager } from "@/engine/core/objects/state/StalkerMoveManager"; import { ISchemePatrolState } from "@/engine/core/schemes/patrol"; -import { parseWaypointsData } from "@/engine/core/utils/ini/parse"; +import { parseWaypointsData } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_general"; +import { sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_location"; import { areSameVectors, createEmptyVector, createVector } from "@/engine/core/utils/vector"; import { ClientObject, EClientObjectPath, TDistance, TNumberId, TTimestamp, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/patrol/evaluators/EvaluatorPatrolEnd.ts b/src/engine/core/schemes/patrol/evaluators/EvaluatorPatrolEnd.ts index fe76485c9..a70c67a39 100644 --- a/src/engine/core/schemes/patrol/evaluators/EvaluatorPatrolEnd.ts +++ b/src/engine/core/schemes/patrol/evaluators/EvaluatorPatrolEnd.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemePatrolState } from "@/engine/core/schemes/patrol"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/ph_button/ISchemePhysicalButtonState.ts b/src/engine/core/schemes/ph_button/ISchemePhysicalButtonState.ts index 8f3e5dfc3..3b393c411 100644 --- a/src/engine/core/schemes/ph_button/ISchemePhysicalButtonState.ts +++ b/src/engine/core/schemes/ph_button/ISchemePhysicalButtonState.ts @@ -1,5 +1,5 @@ import { IBaseSchemeState } from "@/engine/core/schemes/base"; -import { IConfigSwitchConditionsDescriptor } from "@/engine/core/utils/ini/types"; +import { IConfigSwitchConditionsDescriptor } from "@/engine/core/utils/ini/ini_types"; import { Optional, TLabel } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/ph_button/PhysicalButtonManager.ts b/src/engine/core/schemes/ph_button/PhysicalButtonManager.ts index 4a4f51142..6bd8a245d 100644 --- a/src/engine/core/schemes/ph_button/PhysicalButtonManager.ts +++ b/src/engine/core/schemes/ph_button/PhysicalButtonManager.ts @@ -3,10 +3,10 @@ import { time_global } from "xray16"; import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePhysicalButtonState } from "@/engine/core/schemes/ph_button/ISchemePhysicalButtonState"; -import { isActiveSection } from "@/engine/core/utils/check/is"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { isActiveSection } from "@/engine/core/utils/object"; +import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, Optional, TIndex, TRate, TTimestamp, Vector } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/ph_button/SchemePhysicalButton.ts b/src/engine/core/schemes/ph_button/SchemePhysicalButton.ts index 42f1e49ba..8f30757c3 100644 --- a/src/engine/core/schemes/ph_button/SchemePhysicalButton.ts +++ b/src/engine/core/schemes/ph_button/SchemePhysicalButton.ts @@ -1,8 +1,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemePhysicalButtonState } from "@/engine/core/schemes/ph_button/ISchemePhysicalButtonState"; import { PhysicalButtonManager } from "@/engine/core/schemes/ph_button/PhysicalButtonManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_code/CodeManager.ts b/src/engine/core/schemes/ph_code/CodeManager.ts index bf998878d..dad0267f9 100644 --- a/src/engine/core/schemes/ph_code/CodeManager.ts +++ b/src/engine/core/schemes/ph_code/CodeManager.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeCodeState } from "@/engine/core/schemes/ph_code/ISchemeCodeState"; import { NumPadWindow } from "@/engine/core/ui/game/NumPadWindow"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; import { ClientObject, TLabel } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/ph_code/ISchemeCodeState.ts b/src/engine/core/schemes/ph_code/ISchemeCodeState.ts index f8b28f4e8..64819d68b 100644 --- a/src/engine/core/schemes/ph_code/ISchemeCodeState.ts +++ b/src/engine/core/schemes/ph_code/ISchemeCodeState.ts @@ -1,5 +1,5 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { IConfigSwitchConditionsDescriptor, TConditionList } from "@/engine/core/utils/ini/types"; +import type { IConfigSwitchConditionsDescriptor, TConditionList } from "@/engine/core/utils/ini/ini_types"; import type { Optional, TLabel, TName } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/ph_code/SchemeCode.ts b/src/engine/core/schemes/ph_code/SchemeCode.ts index fe42fd463..5a0c321eb 100644 --- a/src/engine/core/schemes/ph_code/SchemeCode.ts +++ b/src/engine/core/schemes/ph_code/SchemeCode.ts @@ -2,13 +2,13 @@ import { IBaseSchemeLogic } from "@/engine/core/schemes"; import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { CodeManager } from "@/engine/core/schemes/ph_code/CodeManager"; import { ISchemeCodeState } from "@/engine/core/schemes/ph_code/ISchemeCodeState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { readIniConditionList, readIniNumber, readIniString, readIniStringAndCondList, -} from "@/engine/core/utils/ini/read"; +} from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TIndex, TName, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_door/ISchemePhysicalDoorState.ts b/src/engine/core/schemes/ph_door/ISchemePhysicalDoorState.ts index bbc7b8191..ca150f051 100644 --- a/src/engine/core/schemes/ph_door/ISchemePhysicalDoorState.ts +++ b/src/engine/core/schemes/ph_door/ISchemePhysicalDoorState.ts @@ -1,6 +1,6 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { IConfigSwitchConditionsDescriptor, TConditionList } from "@/engine/core/utils/ini/types"; -import type { LuaArray, Optional, TDistance, TLabel } from "@/engine/lib/types"; +import type { IBoneStateDescriptor, IConfigSwitchConditionsDescriptor } from "@/engine/core/utils/ini/ini_types"; +import type { LuaArray, Optional, TLabel } from "@/engine/lib/types"; /** * todo; @@ -20,8 +20,5 @@ export interface ISchemePhysicalDoorState extends IBaseSchemeState { snd_close_stop: string; script_used_more_than_once: Optional; on_use: Optional; - hit_on_bone: LuaArray<{ - dist: Optional; - state: Optional; - }>; + hit_on_bone: LuaArray; } diff --git a/src/engine/core/schemes/ph_door/PhysicalDoorManager.ts b/src/engine/core/schemes/ph_door/PhysicalDoorManager.ts index d867bb79b..58ec9c170 100644 --- a/src/engine/core/schemes/ph_door/PhysicalDoorManager.ts +++ b/src/engine/core/schemes/ph_door/PhysicalDoorManager.ts @@ -3,8 +3,8 @@ import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundMan import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePhysicalDoorState } from "@/engine/core/schemes/ph_door/ISchemePhysicalDoorState"; import { abort } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, Optional, diff --git a/src/engine/core/schemes/ph_door/SchemePhysicalDoor.ts b/src/engine/core/schemes/ph_door/SchemePhysicalDoor.ts index f6bf93f41..744a09400 100644 --- a/src/engine/core/schemes/ph_door/SchemePhysicalDoor.ts +++ b/src/engine/core/schemes/ph_door/SchemePhysicalDoor.ts @@ -1,9 +1,9 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemePhysicalDoorState } from "@/engine/core/schemes/ph_door/ISchemePhysicalDoorState"; import { PhysicalDoorManager } from "@/engine/core/schemes/ph_door/PhysicalDoorManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseData1v } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseBoneStateDescriptors } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; @@ -49,7 +49,7 @@ export class SchemePhysicalDoor extends AbstractScheme { } } - state.hit_on_bone = parseData1v(object, readIniString(ini, section, "hit_on_bone", false, "")); + state.hit_on_bone = parseBoneStateDescriptors(readIniString(ini, section, "hit_on_bone", false, "")); } /** diff --git a/src/engine/core/schemes/ph_force/PhysicalForceManager.ts b/src/engine/core/schemes/ph_force/PhysicalForceManager.ts index 718e9510b..5ca5fb26c 100644 --- a/src/engine/core/schemes/ph_force/PhysicalForceManager.ts +++ b/src/engine/core/schemes/ph_force/PhysicalForceManager.ts @@ -2,7 +2,7 @@ import { time_global } from "xray16"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePhysicalForceState } from "@/engine/core/schemes/ph_force/ISchemePhysicalForceState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { Vector } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/ph_force/SchemePhysicalForce.ts b/src/engine/core/schemes/ph_force/SchemePhysicalForce.ts index beb6c9335..c0f4f2f70 100644 --- a/src/engine/core/schemes/ph_force/SchemePhysicalForce.ts +++ b/src/engine/core/schemes/ph_force/SchemePhysicalForce.ts @@ -4,8 +4,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemePhysicalForceState } from "@/engine/core/schemes/ph_force/ISchemePhysicalForceState"; import { PhysicalForceManager } from "@/engine/core/schemes/ph_force/PhysicalForceManager"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_hit/PhysicalHitManager.ts b/src/engine/core/schemes/ph_hit/PhysicalHitManager.ts index 3f4f87434..5927c95db 100644 --- a/src/engine/core/schemes/ph_hit/PhysicalHitManager.ts +++ b/src/engine/core/schemes/ph_hit/PhysicalHitManager.ts @@ -2,7 +2,7 @@ import { hit, patrol } from "xray16"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePhysicalHitState } from "@/engine/core/schemes/ph_hit/ISchemePhysicalHitState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { copyVector } from "@/engine/core/utils/vector"; import { Hit, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_hit/SchemePhysicalHit.ts b/src/engine/core/schemes/ph_hit/SchemePhysicalHit.ts index 1fb751760..a53d94ab5 100644 --- a/src/engine/core/schemes/ph_hit/SchemePhysicalHit.ts +++ b/src/engine/core/schemes/ph_hit/SchemePhysicalHit.ts @@ -1,8 +1,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemePhysicalHitState } from "@/engine/core/schemes/ph_hit/ISchemePhysicalHitState"; import { PhysicalHitManager } from "@/engine/core/schemes/ph_hit/PhysicalHitManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_idle/ISchemePhysicalIdleState.ts b/src/engine/core/schemes/ph_idle/ISchemePhysicalIdleState.ts index eceda6add..34babd9c3 100644 --- a/src/engine/core/schemes/ph_idle/ISchemePhysicalIdleState.ts +++ b/src/engine/core/schemes/ph_idle/ISchemePhysicalIdleState.ts @@ -1,15 +1,12 @@ import type { IBaseSchemeLogic, IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { TConditionList } from "@/engine/core/utils/ini/types"; -import type { LuaArray, Optional, TDistance } from "@/engine/lib/types"; +import type { IBoneStateDescriptor } from "@/engine/core/utils/ini/ini_types"; +import type { LuaArray, Optional } from "@/engine/lib/types"; /** * todo; */ export interface ISchemePhysicalIdleState extends IBaseSchemeState { - hit_on_bone: LuaArray<{ - dist: Optional; - state: Optional; - }>; + hit_on_bone: LuaArray; nonscript_usable: boolean; on_use: Optional; tips: string; diff --git a/src/engine/core/schemes/ph_idle/PhysicalIdleManager.ts b/src/engine/core/schemes/ph_idle/PhysicalIdleManager.ts index 9e46a5405..68e8fef7b 100644 --- a/src/engine/core/schemes/ph_idle/PhysicalIdleManager.ts +++ b/src/engine/core/schemes/ph_idle/PhysicalIdleManager.ts @@ -1,10 +1,10 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes/base"; import { ISchemePhysicalIdleState } from "@/engine/core/schemes/ph_idle/ISchemePhysicalIdleState"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { TConditionList } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, Optional, TCount, TIndex, TSection, Vector } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/ph_idle/SchemePhysicalIdle.ts b/src/engine/core/schemes/ph_idle/SchemePhysicalIdle.ts index 8cd4b53a2..eb637a6b6 100644 --- a/src/engine/core/schemes/ph_idle/SchemePhysicalIdle.ts +++ b/src/engine/core/schemes/ph_idle/SchemePhysicalIdle.ts @@ -1,9 +1,9 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemePhysicalIdleState } from "@/engine/core/schemes/ph_idle/ISchemePhysicalIdleState"; import { PhysicalIdleManager } from "@/engine/core/schemes/ph_idle/PhysicalIdleManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseData1v } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseBoneStateDescriptors } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniConditionList, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; @@ -23,7 +23,7 @@ export class SchemePhysicalIdle extends AbstractScheme { const state: ISchemePhysicalIdleState = AbstractScheme.assign(object, ini, scheme, section); state.logic = getConfigSwitchConditions(ini, section); - state.hit_on_bone = parseData1v(object, readIniString(ini, section, "hit_on_bone", false, "")); + state.hit_on_bone = parseBoneStateDescriptors(readIniString(ini, section, "hit_on_bone", false, "")); state.nonscript_usable = readIniBoolean(ini, section, "nonscript_usable", false); state.on_use = readIniConditionList(ini, section, "on_use"); state.tips = readIniString(ini, section, "tips", false, "", ""); diff --git a/src/engine/core/schemes/ph_minigun/MinigunManager.ts b/src/engine/core/schemes/ph_minigun/MinigunManager.ts index 02302ab05..61aacb524 100644 --- a/src/engine/core/schemes/ph_minigun/MinigunManager.ts +++ b/src/engine/core/schemes/ph_minigun/MinigunManager.ts @@ -4,11 +4,14 @@ import { getObjectByStoryId, registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes/base"; import { ISchemeMinigunState } from "@/engine/core/schemes/ph_minigun/ISchemeMinigunState"; import { abort } from "@/engine/core/utils/assertion"; -import { isHeavilyWounded } from "@/engine/core/utils/check/check"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { pickSectionFromCondList, TConditionList } from "@/engine/core/utils/ini"; -import { isMonsterScriptCaptured, scriptReleaseMonster } from "@/engine/core/utils/scheme"; -import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { isActiveSection, isObjectWounded } from "@/engine/core/utils/object"; +import { + isMonsterScriptCaptured, + scriptReleaseMonster, + switchObjectSchemeToSection, + trySwitchToAnotherSection, +} from "@/engine/core/utils/scheme"; import { createEmptyVector, createVector, yaw } from "@/engine/core/utils/vector"; import { ACTOR, NIL } from "@/engine/lib/constants/words"; import { Car, ClientObject, Optional, TName, TSection, TStringId, TTimestamp, Vector } from "@/engine/lib/types"; @@ -383,7 +386,7 @@ export class MinigunManager extends AbstractSchemeManager { if (this.targetObject!.id() !== registry.actor.id()) { if (this.targetObject!.target_body_state() === move.crouch) { this.targetFirePt.y = this.targetFirePt.y + 0.5; - } else if (!isHeavilyWounded(this.targetObject!.id())) { + } else if (!isObjectWounded(this.targetObject!.id())) { this.targetFirePt.y = this.targetFirePt.y + 1.2; } else { this.targetFirePt.y = this.targetFirePt.y + 0.1; diff --git a/src/engine/core/schemes/ph_minigun/SchemeMinigun.ts b/src/engine/core/schemes/ph_minigun/SchemeMinigun.ts index 7a38f9cf8..f5a8d0073 100644 --- a/src/engine/core/schemes/ph_minigun/SchemeMinigun.ts +++ b/src/engine/core/schemes/ph_minigun/SchemeMinigun.ts @@ -1,8 +1,13 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemeMinigunState } from "@/engine/core/schemes/ph_minigun/ISchemeMinigunState"; import { MinigunManager } from "@/engine/core/schemes/ph_minigun/MinigunManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString, readIniStringAndCondList } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { + readIniBoolean, + readIniNumber, + readIniString, + readIniStringAndCondList, +} from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_on_death/PhysicalDeathManager.ts b/src/engine/core/schemes/ph_on_death/PhysicalDeathManager.ts index 5e5e9880d..97dbc457b 100644 --- a/src/engine/core/schemes/ph_on_death/PhysicalDeathManager.ts +++ b/src/engine/core/schemes/ph_on_death/PhysicalDeathManager.ts @@ -1,7 +1,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePhysicalOnDeathState } from "@/engine/core/schemes/ph_on_death/ISchemePhysicalOnDeathState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, Optional } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/ph_on_death/SchemePhysicalOnDeath.ts b/src/engine/core/schemes/ph_on_death/SchemePhysicalOnDeath.ts index c267e50cc..dd09bb3a0 100644 --- a/src/engine/core/schemes/ph_on_death/SchemePhysicalOnDeath.ts +++ b/src/engine/core/schemes/ph_on_death/SchemePhysicalOnDeath.ts @@ -1,7 +1,7 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemePhysicalOnDeathState } from "@/engine/core/schemes/ph_on_death/ISchemePhysicalOnDeathState"; import { PhysicalDeathManager } from "@/engine/core/schemes/ph_on_death/PhysicalDeathManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/ph_on_hit/PhysicalOnHitManager.ts b/src/engine/core/schemes/ph_on_hit/PhysicalOnHitManager.ts index 8a5ae8315..f6c30bdee 100644 --- a/src/engine/core/schemes/ph_on_hit/PhysicalOnHitManager.ts +++ b/src/engine/core/schemes/ph_on_hit/PhysicalOnHitManager.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePhysicalOnHitState } from "@/engine/core/schemes/ph_on_hit/ISchemePhysicalOnHitState"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { NIL } from "@/engine/lib/constants/words"; import { ClientObject, Optional, TCount, TIndex, TName, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_on_hit/SchemePhysicalOnHit.ts b/src/engine/core/schemes/ph_on_hit/SchemePhysicalOnHit.ts index 4785ba37b..9701d8439 100644 --- a/src/engine/core/schemes/ph_on_hit/SchemePhysicalOnHit.ts +++ b/src/engine/core/schemes/ph_on_hit/SchemePhysicalOnHit.ts @@ -3,7 +3,7 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { SchemePhysicalHit } from "@/engine/core/schemes/ph_hit"; import { ISchemePhysicalOnHitState } from "@/engine/core/schemes/ph_on_hit/ISchemePhysicalOnHitState"; import { PhysicalOnHitManager } from "@/engine/core/schemes/ph_on_hit/PhysicalOnHitManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/ph_oscillate/SchemeOscillate.ts b/src/engine/core/schemes/ph_oscillate/SchemeOscillate.ts index bcb0ea5f1..75edc4476 100644 --- a/src/engine/core/schemes/ph_oscillate/SchemeOscillate.ts +++ b/src/engine/core/schemes/ph_oscillate/SchemeOscillate.ts @@ -2,8 +2,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeOscillateState } from "@/engine/core/schemes/ph_oscillate/ISchemeOscillateState"; import { OscillateManager } from "@/engine/core/schemes/ph_oscillate/OscillateManager"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TName, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/reach_task/ReachTaskPatrolManager.ts b/src/engine/core/schemes/reach_task/ReachTaskPatrolManager.ts index 5c4d593ad..825a69343 100644 --- a/src/engine/core/schemes/reach_task/ReachTaskPatrolManager.ts +++ b/src/engine/core/schemes/reach_task/ReachTaskPatrolManager.ts @@ -4,7 +4,7 @@ import { Squad } from "@/engine/core/objects"; import { EStalkerState } from "@/engine/core/objects/state"; import { abort, assertDefined } from "@/engine/core/utils/assertion"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getObjectSquad } from "@/engine/core/utils/object/object_general"; +import { getObjectSquad } from "@/engine/core/utils/object"; import { createEmptyVector, createVector, vectorCross, vectorRotateY, yawDegree } from "@/engine/core/utils/vector"; import { ClientObject, diff --git a/src/engine/core/schemes/reach_task/actions/ActionReachTaskLocation.ts b/src/engine/core/schemes/reach_task/actions/ActionReachTaskLocation.ts index 58d4a7819..77d586b6d 100644 --- a/src/engine/core/schemes/reach_task/actions/ActionReachTaskLocation.ts +++ b/src/engine/core/schemes/reach_task/actions/ActionReachTaskLocation.ts @@ -7,7 +7,7 @@ import { TSimulationObject } from "@/engine/core/objects/server/types"; import { EStalkerState } from "@/engine/core/objects/state"; import { ReachTaskPatrolManager } from "@/engine/core/schemes/reach_task/ReachTaskPatrolManager"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getObjectSquad, sendToNearestAccessibleVertex } from "@/engine/core/utils/object/object_general"; +import { getObjectSquad, sendToNearestAccessibleVertex } from "@/engine/core/utils/object"; import { areSameVectors, createEmptyVector, createVector } from "@/engine/core/utils/vector"; import { ClientObject, diff --git a/src/engine/core/schemes/reach_task/evaluators/EvaluatorReachedTaskLocation.ts b/src/engine/core/schemes/reach_task/evaluators/EvaluatorReachedTaskLocation.ts index cae831524..cf6b8b399 100644 --- a/src/engine/core/schemes/reach_task/evaluators/EvaluatorReachedTaskLocation.ts +++ b/src/engine/core/schemes/reach_task/evaluators/EvaluatorReachedTaskLocation.ts @@ -4,7 +4,7 @@ import { SquadReachTargetAction } from "@/engine/core/objects/server/squad/actio import type { Squad } from "@/engine/core/objects/server/squad/Squad"; import { TSimulationObject } from "@/engine/core/objects/server/types"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getObjectSquad } from "@/engine/core/utils/object/object_general"; +import { getObjectSquad } from "@/engine/core/utils/object"; import { Optional } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/remark/ISchemeRemarkState.ts b/src/engine/core/schemes/remark/ISchemeRemarkState.ts index ec5784924..bf3dd356a 100644 --- a/src/engine/core/schemes/remark/ISchemeRemarkState.ts +++ b/src/engine/core/schemes/remark/ISchemeRemarkState.ts @@ -1,5 +1,5 @@ import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { IConfigSwitchCondition } from "@/engine/core/utils/ini/types"; +import type { IConfigSwitchCondition } from "@/engine/core/utils/ini/ini_types"; import type { LuaArray, Optional, StringOptional, TName, TNumberId, TStringId, Vector } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/remark/SchemeRemark.ts b/src/engine/core/schemes/remark/SchemeRemark.ts index c5de6a487..2a2f9a097 100644 --- a/src/engine/core/schemes/remark/SchemeRemark.ts +++ b/src/engine/core/schemes/remark/SchemeRemark.ts @@ -4,11 +4,11 @@ import { AbstractScheme, EActionId, EEvaluatorId } from "@/engine/core/schemes"; import { ActionRemarkActivity } from "@/engine/core/schemes/remark/actions/ActionRemarkActivity"; import { EvaluatorNeedRemark } from "@/engine/core/schemes/remark/evaluators/EvaluatorNeedRemark"; import { ISchemeRemarkState } from "@/engine/core/schemes/remark/ISchemeRemarkState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/setup"; +import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/scheme_setup"; import { NIL } from "@/engine/lib/constants/words"; import { ActionPlanner, ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/remark/actions/ActionRemarkActivity.ts b/src/engine/core/schemes/remark/actions/ActionRemarkActivity.ts index 717f4b514..bd6e8313b 100644 --- a/src/engine/core/schemes/remark/actions/ActionRemarkActivity.ts +++ b/src/engine/core/schemes/remark/actions/ActionRemarkActivity.ts @@ -8,7 +8,7 @@ import { EStalkerState, ILookTargetDescriptor } from "@/engine/core/objects/stat import { IStateManagerCallbackDescriptor } from "@/engine/core/objects/state/StalkerStateManager"; import { ISchemeRemarkState } from "@/engine/core/schemes/remark"; import { abort } from "@/engine/core/utils/assertion"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NIL } from "@/engine/lib/constants/words"; import { ClientObject, Optional, SoundObject, TNumberId, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/remark/evaluators/EvaluatorNeedRemark.ts b/src/engine/core/schemes/remark/evaluators/EvaluatorNeedRemark.ts index 70b7b5c4d..ef91f491a 100644 --- a/src/engine/core/schemes/remark/evaluators/EvaluatorNeedRemark.ts +++ b/src/engine/core/schemes/remark/evaluators/EvaluatorNeedRemark.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeRemarkState } from "@/engine/core/schemes/remark"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/sleeper/ISchemeSleeperState.ts b/src/engine/core/schemes/sleeper/ISchemeSleeperState.ts index f5fd2ac92..4b31191bc 100644 --- a/src/engine/core/schemes/sleeper/ISchemeSleeperState.ts +++ b/src/engine/core/schemes/sleeper/ISchemeSleeperState.ts @@ -1,5 +1,5 @@ import { IBaseSchemeState } from "@/engine/core/schemes/base"; -import { IWaypointData } from "@/engine/core/utils/ini/types"; +import { IWaypointData } from "@/engine/core/utils/ini/ini_types"; import { LuaArray, Optional } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/sleeper/SchemeSleeper.ts b/src/engine/core/schemes/sleeper/SchemeSleeper.ts index 1be4fe949..648fb5c4f 100644 --- a/src/engine/core/schemes/sleeper/SchemeSleeper.ts +++ b/src/engine/core/schemes/sleeper/SchemeSleeper.ts @@ -4,10 +4,10 @@ import { AbstractScheme, EActionId, EEvaluatorId } from "@/engine/core/schemes"; import { ActionSleeperActivity } from "@/engine/core/schemes/sleeper/actions/ActionSleeperActivity"; import { EvaluatorNeedSleep } from "@/engine/core/schemes/sleeper/evaluators/EvaluatorNeedSleep"; import { ISchemeSleeperState } from "@/engine/core/schemes/sleeper/ISchemeSleeperState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/setup"; +import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/scheme_setup"; import { ActionPlanner, ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/sleeper/actions/ActionSleeperActivity.ts b/src/engine/core/schemes/sleeper/actions/ActionSleeperActivity.ts index 3f5a3cdd6..aa67af183 100644 --- a/src/engine/core/schemes/sleeper/actions/ActionSleeperActivity.ts +++ b/src/engine/core/schemes/sleeper/actions/ActionSleeperActivity.ts @@ -5,8 +5,8 @@ import { EStalkerState } from "@/engine/core/objects/state"; import { StalkerMoveManager } from "@/engine/core/objects/state/StalkerMoveManager"; import { ISchemeSleeperState } from "@/engine/core/schemes/sleeper"; import { abort } from "@/engine/core/utils/assertion"; -import { parseWaypointsDataFromList } from "@/engine/core/utils/ini/parse"; -import { IWaypointData } from "@/engine/core/utils/ini/types"; +import { parseWaypointsDataFromList } from "@/engine/core/utils/ini/ini_parse"; +import { IWaypointData } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; import { AnyCallable, ClientObject, LuaArray, Optional, Patrol, TCount, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sleeper/evaluators/EvaluatorNeedSleep.ts b/src/engine/core/schemes/sleeper/evaluators/EvaluatorNeedSleep.ts index 0d953140a..a666be9f5 100644 --- a/src/engine/core/schemes/sleeper/evaluators/EvaluatorNeedSleep.ts +++ b/src/engine/core/schemes/sleeper/evaluators/EvaluatorNeedSleep.ts @@ -2,7 +2,7 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeSleeperState } from "@/engine/core/schemes/sleeper"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { isSectionActive } from "@/engine/core/utils/scheme/logic"; +import { isSectionActive } from "@/engine/core/utils/scheme/scheme_logic"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/smartcover/SchemeSmartCover.ts b/src/engine/core/schemes/smartcover/SchemeSmartCover.ts index 5da04f999..97934e29f 100644 --- a/src/engine/core/schemes/smartcover/SchemeSmartCover.ts +++ b/src/engine/core/schemes/smartcover/SchemeSmartCover.ts @@ -5,8 +5,8 @@ import { EActionId, EEvaluatorId } from "@/engine/core/schemes/base/id"; import { ActionSmartCoverActivity } from "@/engine/core/schemes/smartcover/actions"; import { EvaluatorNeedSmartCover, EvaluatorUseSmartCoverInCombat } from "@/engine/core/schemes/smartcover/evaluators"; import { ISchemeSmartCoverState } from "@/engine/core/schemes/smartcover/ISchemeSmartCoverState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NIL } from "@/engine/lib/constants/words"; import { ActionPlanner, ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/smartcover/actions/ActionSmartCoverActivity.ts b/src/engine/core/schemes/smartcover/actions/ActionSmartCoverActivity.ts index 1cf23a9d6..a50202929 100644 --- a/src/engine/core/schemes/smartcover/actions/ActionSmartCoverActivity.ts +++ b/src/engine/core/schemes/smartcover/actions/ActionSmartCoverActivity.ts @@ -10,9 +10,7 @@ import { ISchemeSmartCoverState, } from "@/engine/core/schemes/smartcover/ISchemeSmartCoverState"; import { abort } from "@/engine/core/utils/assertion"; -import { getParametersString, pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { parseConditionsList, pickSectionFromCondList, TConditionList } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; import { NIL } from "@/engine/lib/constants/words"; import { ClientObject, Optional, StringOptional, TName, TNumberId, Vector } from "@/engine/lib/types"; @@ -42,9 +40,6 @@ export class ActionSmartCoverActivity extends action_base { this.state = state; } - /** - * todo: Description. - */ public override initialize(): void { super.initialize(); @@ -92,30 +87,26 @@ export class ActionSmartCoverActivity extends action_base { // --object.set_smart_cover_target_selector() this.targetEnemyId = null; - const [coverName, used] = getParametersString(this.state.cover_name as string); + this.coverName = this.state.cover_name as string; - this.coverName = coverName; - - if (this.coverName !== this.state.cover_name || used === false) { - if (registry.smartCovers.get(this.coverName) === null) { - abort("There is no smart_cover with name [%s]", this.coverName); - } + if (registry.smartCovers.get(this.coverName) === null) { + abort("There is no smart_cover with name [%s]", this.coverName); + } - setStalkerState(this.object, EStalkerState.SMART_COVER, null, null, null, null); + setStalkerState(this.object, EStalkerState.SMART_COVER, null, null, null, null); - this.targetPathCondlist = parseConditionsList(this.state.target_path); - this.checkTarget(); + this.targetPathCondlist = parseConditionsList(this.state.target_path); + this.checkTarget(); - this.coverСondlist = parseConditionsList(this.state.cover_state); - this.coverState = pickSectionFromCondList(registry.actor, this.object, this.coverСondlist) as ECoverState; - this.targetSelector(this.object); - this.checkTargetSelector(); + this.coverСondlist = parseConditionsList(this.state.cover_state); + this.coverState = pickSectionFromCondList(registry.actor, this.object, this.coverСondlist) as ECoverState; + this.targetSelector(this.object); + this.checkTargetSelector(); - this.object.idle_min_time(this.state.idle_min_time); - this.object.idle_max_time(this.state.idle_max_time); - this.object.lookout_min_time(this.state.lookout_min_time); - this.object.lookout_max_time(this.state.lookout_max_time); - } + this.object.idle_min_time(this.state.idle_min_time); + this.object.idle_max_time(this.state.idle_max_time); + this.object.lookout_min_time(this.state.lookout_min_time); + this.object.lookout_max_time(this.state.lookout_max_time); } /** @@ -149,9 +140,7 @@ export class ActionSmartCoverActivity extends action_base { ); if (targetPathSection !== NIL && targetPathSection !== null) { - const [targetPath, used] = getParametersString(targetPathSection); - - this.targetPath = targetPath; + this.targetPath = targetPathSection; if (this.targetPath !== NIL) { if (level.patrol_path_exists(this.targetPath)) { diff --git a/src/engine/core/schemes/smartcover/evaluators/EvaluatorNeedSmartCover.ts b/src/engine/core/schemes/smartcover/evaluators/EvaluatorNeedSmartCover.ts index d93fa6b1c..b9f67eb73 100644 --- a/src/engine/core/schemes/smartcover/evaluators/EvaluatorNeedSmartCover.ts +++ b/src/engine/core/schemes/smartcover/evaluators/EvaluatorNeedSmartCover.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeSmartCoverState } from "@/engine/core/schemes/smartcover"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); @@ -13,9 +13,6 @@ const logger: LuaLogger = new LuaLogger($filename); export class EvaluatorNeedSmartCover extends property_evaluator { public readonly state: ISchemeSmartCoverState; - /** - * todo: Description. - */ public constructor(state: ISchemeSmartCoverState) { super(null, EvaluatorNeedSmartCover.__name); this.state = state; diff --git a/src/engine/core/schemes/smartcover/evaluators/EvaluatorUseSmartCoverInCombat.ts b/src/engine/core/schemes/smartcover/evaluators/EvaluatorUseSmartCoverInCombat.ts index 2106a6031..a187c6f6b 100644 --- a/src/engine/core/schemes/smartcover/evaluators/EvaluatorUseSmartCoverInCombat.ts +++ b/src/engine/core/schemes/smartcover/evaluators/EvaluatorUseSmartCoverInCombat.ts @@ -1,8 +1,8 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeSmartCoverState } from "@/engine/core/schemes/smartcover"; -import { isActiveSection } from "@/engine/core/utils/check/is"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isActiveSection } from "@/engine/core/utils/object"; const logger: LuaLogger = new LuaLogger($filename); @@ -13,9 +13,6 @@ const logger: LuaLogger = new LuaLogger($filename); export class EvaluatorUseSmartCoverInCombat extends property_evaluator { public readonly state: ISchemeSmartCoverState; - /** - * todo: Description. - */ public constructor(state: ISchemeSmartCoverState) { super(null, EvaluatorUseSmartCoverInCombat.__name); this.state = state; diff --git a/src/engine/core/schemes/sr_crow_spawner/CrowSpawnerManager.ts b/src/engine/core/schemes/sr_crow_spawner/CrowSpawnerManager.ts index 426e138ba..3922dd33f 100644 --- a/src/engine/core/schemes/sr_crow_spawner/CrowSpawnerManager.ts +++ b/src/engine/core/schemes/sr_crow_spawner/CrowSpawnerManager.ts @@ -4,7 +4,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeCrowSpawnerState } from "@/engine/core/schemes/sr_crow_spawner/ISchemeCrowSpawnerState"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { copyTable } from "@/engine/core/utils/table"; import { Optional, Patrol, ServerObject, TCount, TDuration, TIndex, TName } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_crow_spawner/SchemeCrowSpawner.ts b/src/engine/core/schemes/sr_crow_spawner/SchemeCrowSpawner.ts index c018a94d2..91ebe4686 100644 --- a/src/engine/core/schemes/sr_crow_spawner/SchemeCrowSpawner.ts +++ b/src/engine/core/schemes/sr_crow_spawner/SchemeCrowSpawner.ts @@ -1,9 +1,9 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { CrowSpawnerManager } from "@/engine/core/schemes/sr_crow_spawner/CrowSpawnerManager"; import { ISchemeCrowSpawnerState } from "@/engine/core/schemes/sr_crow_spawner/ISchemeCrowSpawnerState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TName, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_cutscene/CutsceneManager.ts b/src/engine/core/schemes/sr_cutscene/CutsceneManager.ts index 57a3273ae..a996aa206 100644 --- a/src/engine/core/schemes/sr_cutscene/CutsceneManager.ts +++ b/src/engine/core/schemes/sr_cutscene/CutsceneManager.ts @@ -15,7 +15,7 @@ import { } from "@/engine/core/schemes/sr_cutscene/ISchemeCutsceneState"; import { getExtern } from "@/engine/core/utils/binding"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { postProcessors } from "@/engine/lib/constants/animation/post_processors"; import { AnyCallablesModule, ClientObject, Optional, TName, TNumberId } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_cutscene/SchemeCutscene.ts b/src/engine/core/schemes/sr_cutscene/SchemeCutscene.ts index 2248163b7..89c0988ac 100644 --- a/src/engine/core/schemes/sr_cutscene/SchemeCutscene.ts +++ b/src/engine/core/schemes/sr_cutscene/SchemeCutscene.ts @@ -2,7 +2,7 @@ import { AbstractScheme, ESchemeEvent } from "@/engine/core/schemes"; import { CutsceneManager } from "@/engine/core/schemes/sr_cutscene/CutsceneManager"; import { ISchemeCutsceneState } from "@/engine/core/schemes/sr_cutscene/ISchemeCutsceneState"; import { getConfigSwitchConditions, parseStringsList } from "@/engine/core/utils/ini"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { emitSchemeEvent } from "@/engine/core/utils/scheme"; import { NIL } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/schemes/sr_cutscene/effectors/CamEffectorSet.ts b/src/engine/core/schemes/sr_cutscene/effectors/CamEffectorSet.ts index 3a5d9a2a5..1ad9de90a 100644 --- a/src/engine/core/schemes/sr_cutscene/effectors/CamEffectorSet.ts +++ b/src/engine/core/schemes/sr_cutscene/effectors/CamEffectorSet.ts @@ -6,9 +6,9 @@ import { TCamEffectorSetDescriptor, } from "@/engine/core/schemes/sr_cutscene/effectors/camera_effector_sets"; import { EEffectorState, ISchemeCutsceneState } from "@/engine/core/schemes/sr_cutscene/ISchemeCutsceneState"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { parseConditionsList } from "@/engine/core/utils/ini/parse"; -import { TConditionList } from "@/engine/core/utils/ini/types"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; +import { parseConditionsList } from "@/engine/core/utils/ini/ini_parse"; +import { TConditionList } from "@/engine/core/utils/ini/ini_types"; import { LuaLogger } from "@/engine/core/utils/logging"; import { toJSON } from "@/engine/core/utils/transform/json"; import { FALSE } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/schemes/sr_deimos/DeimosManager.ts b/src/engine/core/schemes/sr_deimos/DeimosManager.ts index edaf712ea..d70ccd53f 100644 --- a/src/engine/core/schemes/sr_deimos/DeimosManager.ts +++ b/src/engine/core/schemes/sr_deimos/DeimosManager.ts @@ -6,7 +6,7 @@ import { ActorBinder } from "@/engine/core/objects/binders/creature/ActorBinder" import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeDeimosState } from "@/engine/core/schemes/sr_deimos/ISchemeDeimosState"; import { clampNumber } from "@/engine/core/utils/number"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { AnyObject, ClientObject, Optional, TIndex, TNumberId, TRate, TTimestamp, Vector } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/sr_deimos/SchemeDeimos.ts b/src/engine/core/schemes/sr_deimos/SchemeDeimos.ts index 14adabc0f..ac348cf8d 100644 --- a/src/engine/core/schemes/sr_deimos/SchemeDeimos.ts +++ b/src/engine/core/schemes/sr_deimos/SchemeDeimos.ts @@ -2,8 +2,8 @@ import { IRegistryObjectState, registry } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base"; import { DeimosManager } from "@/engine/core/schemes/sr_deimos/DeimosManager"; import { ISchemeDeimosState } from "@/engine/core/schemes/sr_deimos/ISchemeDeimosState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TRate, TSection, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_idle/IdleManager.ts b/src/engine/core/schemes/sr_idle/IdleManager.ts index b83ea8398..5a58628dc 100644 --- a/src/engine/core/schemes/sr_idle/IdleManager.ts +++ b/src/engine/core/schemes/sr_idle/IdleManager.ts @@ -1,6 +1,6 @@ import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeIdleState } from "@/engine/core/schemes/sr_idle/ISchemeIdleState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { TCount } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/sr_idle/SchemeIdle.ts b/src/engine/core/schemes/sr_idle/SchemeIdle.ts index 59746e3ac..dee067fc1 100644 --- a/src/engine/core/schemes/sr_idle/SchemeIdle.ts +++ b/src/engine/core/schemes/sr_idle/SchemeIdle.ts @@ -1,7 +1,7 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { IdleManager } from "@/engine/core/schemes/sr_idle/IdleManager"; import { ISchemeIdleState } from "@/engine/core/schemes/sr_idle/ISchemeIdleState"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/sr_light/LightManager.ts b/src/engine/core/schemes/sr_light/LightManager.ts index c5953b09d..f79fabd6a 100644 --- a/src/engine/core/schemes/sr_light/LightManager.ts +++ b/src/engine/core/schemes/sr_light/LightManager.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeLightState } from "@/engine/core/schemes/sr_light/ISchemeLightState"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/sr_light/SchemeLight.ts b/src/engine/core/schemes/sr_light/SchemeLight.ts index 65260d9b6..e3ecf9978 100644 --- a/src/engine/core/schemes/sr_light/SchemeLight.ts +++ b/src/engine/core/schemes/sr_light/SchemeLight.ts @@ -4,10 +4,9 @@ import { registry } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeLightState } from "@/engine/core/schemes/sr_light/ISchemeLightState"; import { LightManager } from "@/engine/core/schemes/sr_light/LightManager"; -import { isUndergroundLevel } from "@/engine/core/utils/check/is"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions, readIniBoolean } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { isUndergroundLevel } from "@/engine/core/utils/object"; import { resetTable } from "@/engine/core/utils/table"; import { misc } from "@/engine/lib/constants/items/misc"; import { ClientObject, EScheme, ESchemeType, IniFile, Optional, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_monster/MonsterManager.ts b/src/engine/core/schemes/sr_monster/MonsterManager.ts index 271858cdc..9865112b6 100644 --- a/src/engine/core/schemes/sr_monster/MonsterManager.ts +++ b/src/engine/core/schemes/sr_monster/MonsterManager.ts @@ -4,9 +4,9 @@ import { registry } from "@/engine/core/database"; import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeMonsterState } from "@/engine/core/schemes/sr_monster/ISchemeMonsterState"; -import { action } from "@/engine/core/utils/object/object_general"; +import { action } from "@/engine/core/utils/object/object_action"; import { scriptCaptureMonster, scriptReleaseMonster } from "@/engine/core/utils/scheme"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { copyVector, subVectors } from "@/engine/core/utils/vector"; import { sounds } from "@/engine/lib/constants/sound/sounds"; import { diff --git a/src/engine/core/schemes/sr_monster/SchemeMonster.ts b/src/engine/core/schemes/sr_monster/SchemeMonster.ts index 70ffd0d80..195c6a0dc 100644 --- a/src/engine/core/schemes/sr_monster/SchemeMonster.ts +++ b/src/engine/core/schemes/sr_monster/SchemeMonster.ts @@ -1,9 +1,9 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeMonsterState } from "@/engine/core/schemes/sr_monster/ISchemeMonsterState"; import { MonsterManager } from "@/engine/core/schemes/sr_monster/MonsterManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_no_weapon/NoWeaponManager.ts b/src/engine/core/schemes/sr_no_weapon/NoWeaponManager.ts index 8ff8c6855..3c512e020 100644 --- a/src/engine/core/schemes/sr_no_weapon/NoWeaponManager.ts +++ b/src/engine/core/schemes/sr_no_weapon/NoWeaponManager.ts @@ -5,7 +5,7 @@ import { AbstractSchemeManager } from "@/engine/core/schemes"; import { EActorZoneState, ISchemeNoWeaponState } from "@/engine/core/schemes/sr_no_weapon/ISchemeNoWeaponState"; import { SchemeNoWeapon } from "@/engine/core/schemes/sr_no_weapon/SchemeNoWeapon"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { ClientObject, Optional, TDuration, Time } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/sr_no_weapon/SchemeNoWeapon.ts b/src/engine/core/schemes/sr_no_weapon/SchemeNoWeapon.ts index 3b4da85b9..d6726560e 100644 --- a/src/engine/core/schemes/sr_no_weapon/SchemeNoWeapon.ts +++ b/src/engine/core/schemes/sr_no_weapon/SchemeNoWeapon.ts @@ -1,7 +1,7 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemeNoWeaponState } from "@/engine/core/schemes/sr_no_weapon/ISchemeNoWeaponState"; import { NoWeaponManager } from "@/engine/core/schemes/sr_no_weapon/NoWeaponManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TNumberId, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_particle/ParticleManager.ts b/src/engine/core/schemes/sr_particle/ParticleManager.ts index 53c03f38c..2a715ce14 100644 --- a/src/engine/core/schemes/sr_particle/ParticleManager.ts +++ b/src/engine/core/schemes/sr_particle/ParticleManager.ts @@ -2,9 +2,9 @@ import { particles_object, patrol, time_global } from "xray16"; import { AbstractSchemeManager } from "@/engine/core/schemes/base"; import { ISchemeParticleState } from "@/engine/core/schemes/sr_particle/ISchemeParticleState"; -import { parseWaypointsData } from "@/engine/core/utils/ini/parse"; -import { IWaypointData } from "@/engine/core/utils/ini/types"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { parseWaypointsData } from "@/engine/core/utils/ini/ini_parse"; +import { IWaypointData } from "@/engine/core/utils/ini/ini_types"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { LuaArray, Optional, Patrol, TCount, TDuration, TTimestamp } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/sr_particle/SchemeParticle.ts b/src/engine/core/schemes/sr_particle/SchemeParticle.ts index 5c778bf0b..e91e880f2 100644 --- a/src/engine/core/schemes/sr_particle/SchemeParticle.ts +++ b/src/engine/core/schemes/sr_particle/SchemeParticle.ts @@ -2,8 +2,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemeParticleState } from "@/engine/core/schemes/sr_particle/ISchemeParticleState"; import { ParticleManager } from "@/engine/core/schemes/sr_particle/ParticleManager"; import { abort } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TName, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_postprocess/SchemePostProcess.ts b/src/engine/core/schemes/sr_postprocess/SchemePostProcess.ts index da3a34ce0..1332ef759 100644 --- a/src/engine/core/schemes/sr_postprocess/SchemePostProcess.ts +++ b/src/engine/core/schemes/sr_postprocess/SchemePostProcess.ts @@ -1,8 +1,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base"; import { ISchemePostProcessState } from "@/engine/core/schemes/sr_postprocess/ISchemePostProcessState"; import { SchemePostProcessManager } from "@/engine/core/schemes/sr_postprocess/SchemePostProcessManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_postprocess/SchemePostProcessManager.ts b/src/engine/core/schemes/sr_postprocess/SchemePostProcessManager.ts index 017c08ab9..b41677e66 100644 --- a/src/engine/core/schemes/sr_postprocess/SchemePostProcessManager.ts +++ b/src/engine/core/schemes/sr_postprocess/SchemePostProcessManager.ts @@ -5,7 +5,7 @@ import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemePostProcessState } from "@/engine/core/schemes/sr_postprocess/ISchemePostProcessState"; import { PPEffector } from "@/engine/core/schemes/sr_postprocess/PPEffector"; import { abort } from "@/engine/core/utils/assertion"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { createEmptyVector } from "@/engine/core/utils/vector"; import { ClientObject, Color, Hit, Noise, TDuration } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_psy_antenna/PsyAntennaSchemaManager.ts b/src/engine/core/schemes/sr_psy_antenna/PsyAntennaSchemaManager.ts index 8a570b3ae..becb85f88 100644 --- a/src/engine/core/schemes/sr_psy_antenna/PsyAntennaSchemaManager.ts +++ b/src/engine/core/schemes/sr_psy_antenna/PsyAntennaSchemaManager.ts @@ -4,7 +4,7 @@ import { getPortableStoreValue, registry, setPortableStoreValue } from "@/engine import { PsyAntennaManager } from "@/engine/core/managers/world/PsyAntennaManager"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { EAntennaState, ISchemePsyAntennaState } from "@/engine/core/schemes/sr_psy_antenna/ISchemePsyAntennaState"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { NIL } from "@/engine/lib/constants/words"; import { ClientObject } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_psy_antenna/SchemePsyAntenna.ts b/src/engine/core/schemes/sr_psy_antenna/SchemePsyAntenna.ts index bcf21a492..12c4332f3 100644 --- a/src/engine/core/schemes/sr_psy_antenna/SchemePsyAntenna.ts +++ b/src/engine/core/schemes/sr_psy_antenna/SchemePsyAntenna.ts @@ -1,8 +1,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemePsyAntennaState } from "@/engine/core/schemes/sr_psy_antenna/ISchemePsyAntennaState"; import { PsyAntennaSchemaManager } from "@/engine/core/schemes/sr_psy_antenna/PsyAntennaSchemaManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { postProcessors } from "@/engine/lib/constants/animation/post_processors"; import { ClientObject, EScheme, ESchemeType, IniFile, TSection } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_silence/SchemeSilence.ts b/src/engine/core/schemes/sr_silence/SchemeSilence.ts index d9b23d14d..02da13dd5 100644 --- a/src/engine/core/schemes/sr_silence/SchemeSilence.ts +++ b/src/engine/core/schemes/sr_silence/SchemeSilence.ts @@ -2,7 +2,7 @@ import { registry } from "@/engine/core/database"; import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeSilenceState } from "@/engine/core/schemes/sr_silence/ISchemeSilenceState"; import { SilenceManager } from "@/engine/core/schemes/sr_silence/SilenceManager"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/sr_teleport/SchemeTeleport.test.ts b/src/engine/core/schemes/sr_teleport/SchemeTeleport.test.ts index 663c64b05..b98ea546b 100644 --- a/src/engine/core/schemes/sr_teleport/SchemeTeleport.test.ts +++ b/src/engine/core/schemes/sr_teleport/SchemeTeleport.test.ts @@ -3,9 +3,8 @@ import { describe, expect, it } from "@jest/globals"; import { IRegistryObjectState, registerObject, registry } from "@/engine/core/database"; import { ISchemeTeleportState } from "@/engine/core/schemes/sr_teleport/ISchemeTeleportState"; import { SchemeTeleport } from "@/engine/core/schemes/sr_teleport/SchemeTeleport"; -import { loadSchemeImplementation } from "@/engine/core/utils/scheme/setup"; +import { loadSchemeImplementation } from "@/engine/core/utils/scheme/scheme_setup"; import { ClientObject, EScheme, ESchemeType, IniFile } from "@/engine/lib/types"; -import { luaTableToArray } from "@/fixtures/lua/mocks/lua_utils"; import { mockClientGameObject, mockIniFile } from "@/fixtures/xray"; describe("SchemeTeleport functionality", () => { @@ -49,7 +48,7 @@ describe("SchemeTeleport functionality", () => { expect(schemeState.timeout).toBe(500); expect(schemeState.maxTotalProbability).toBe(2); expect(schemeState.points.length()).toBe(3); - expect(luaTableToArray(schemeState.points)).toEqual([ + expect(schemeState.points).toEqualLuaArrays([ { look: "al", point: "ap", diff --git a/src/engine/core/schemes/sr_teleport/SchemeTeleport.ts b/src/engine/core/schemes/sr_teleport/SchemeTeleport.ts index 5ba285d05..824f0de8d 100644 --- a/src/engine/core/schemes/sr_teleport/SchemeTeleport.ts +++ b/src/engine/core/schemes/sr_teleport/SchemeTeleport.ts @@ -2,8 +2,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ISchemeTeleportState, ITeleportPoint } from "@/engine/core/schemes/sr_teleport/ISchemeTeleportState"; import { TeleportManager } from "@/engine/core/schemes/sr_teleport/TeleportManager"; import { assert } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/sr_teleport/TeleportManager.test.ts b/src/engine/core/schemes/sr_teleport/TeleportManager.test.ts index 1f3b45e93..462fc0817 100644 --- a/src/engine/core/schemes/sr_teleport/TeleportManager.test.ts +++ b/src/engine/core/schemes/sr_teleport/TeleportManager.test.ts @@ -8,7 +8,7 @@ import { SchemeTeleport, TeleportManager, } from "@/engine/core/schemes/sr_teleport"; -import { giveInfo } from "@/engine/core/utils/info_portion"; +import { giveInfo } from "@/engine/core/utils/object/object_info_portion"; import { activateSchemeBySection, loadSchemeImplementation } from "@/engine/core/utils/scheme"; import { ClientObject, EScheme, IniFile } from "@/engine/lib/types"; import { getSchemeAction } from "@/fixtures/engine"; diff --git a/src/engine/core/schemes/sr_teleport/TeleportManager.ts b/src/engine/core/schemes/sr_teleport/TeleportManager.ts index af7156247..cc03d1d30 100644 --- a/src/engine/core/schemes/sr_teleport/TeleportManager.ts +++ b/src/engine/core/schemes/sr_teleport/TeleportManager.ts @@ -4,8 +4,8 @@ import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ETeleportState, ISchemeTeleportState } from "@/engine/core/schemes/sr_teleport/ISchemeTeleportState"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { teleportActorWithEffects } from "@/engine/core/utils/position"; -import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; +import { teleportActorWithEffects } from "@/engine/core/utils/object"; +import { trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { postProcessors } from "@/engine/lib/constants/animation/post_processors"; import { ClientObject, Optional, TProbability, TTimestamp, Vector } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/sr_timer/SchemeTimer.test.ts b/src/engine/core/schemes/sr_timer/SchemeTimer.test.ts index c263eef9e..2d6270bc9 100644 --- a/src/engine/core/schemes/sr_timer/SchemeTimer.test.ts +++ b/src/engine/core/schemes/sr_timer/SchemeTimer.test.ts @@ -3,9 +3,8 @@ import { describe, expect, it } from "@jest/globals"; import { IRegistryObjectState, registerObject, registry } from "@/engine/core/database"; import { ETimerType, ISchemeTimerState } from "@/engine/core/schemes/sr_timer/ISchemeTimerState"; import { SchemeTimer } from "@/engine/core/schemes/sr_timer/SchemeTimer"; -import { loadSchemeImplementation } from "@/engine/core/utils/scheme/setup"; +import { loadSchemeImplementation } from "@/engine/core/utils/scheme/scheme_setup"; import { ClientObject, EScheme, ESchemeType, IniFile } from "@/engine/lib/types"; -import { luaTableToObject } from "@/fixtures/lua/mocks/lua_utils"; import { mockClientGameObject, mockIniFile } from "@/fixtures/xray"; describe("SchemeTimer functionality", () => { @@ -60,7 +59,7 @@ describe("SchemeTimer functionality", () => { expect(schemeState.startValue).toBe(15_000); expect(schemeState.timerId).toBe("timerId123"); expect(schemeState.string).toBe("label"); - expect(luaTableToObject(schemeState.onValue)).toEqual({ + expect(schemeState.onValue).toEqualLuaTables({ condlist: { "1": { infop_check: { diff --git a/src/engine/core/schemes/sr_timer/SchemeTimer.ts b/src/engine/core/schemes/sr_timer/SchemeTimer.ts index fbfbaa9c5..121afe2d2 100644 --- a/src/engine/core/schemes/sr_timer/SchemeTimer.ts +++ b/src/engine/core/schemes/sr_timer/SchemeTimer.ts @@ -2,8 +2,8 @@ import { AbstractScheme } from "@/engine/core/schemes/base/AbstractScheme"; import { ETimerType, ISchemeTimerState } from "@/engine/core/schemes/sr_timer/ISchemeTimerState"; import { TimerManager } from "@/engine/core/schemes/sr_timer/TimerManager"; import { assert } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniNumber, readIniNumberAndConditionList, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniNumber, readIniNumberAndConditionList, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, IniFile } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/sr_timer/TimerManager.ts b/src/engine/core/schemes/sr_timer/TimerManager.ts index 33eb975a1..2bacb7f34 100644 --- a/src/engine/core/schemes/sr_timer/TimerManager.ts +++ b/src/engine/core/schemes/sr_timer/TimerManager.ts @@ -3,10 +3,10 @@ import { CUIGameCustom, get_hud, time_global } from "xray16"; import { registry } from "@/engine/core/database"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ETimerType, ISchemeTimerState } from "@/engine/core/schemes/sr_timer/ISchemeTimerState"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { globalTimeToString } from "@/engine/core/utils/game/game_time"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/switch"; -import { globalTimeToString } from "@/engine/core/utils/time"; +import { switchObjectSchemeToSection, trySwitchToAnotherSection } from "@/engine/core/utils/scheme/scheme_switch"; import { Optional, TSection, TTimestamp } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/walker/ISchemeWalkerState.ts b/src/engine/core/schemes/walker/ISchemeWalkerState.ts index addcfd327..8c3ca945a 100644 --- a/src/engine/core/schemes/walker/ISchemeWalkerState.ts +++ b/src/engine/core/schemes/walker/ISchemeWalkerState.ts @@ -1,7 +1,7 @@ import type { EStalkerState } from "@/engine/core/objects/state"; import type { IAnimpointAction } from "@/engine/core/schemes/animpoint/types"; import type { IBaseSchemeState } from "@/engine/core/schemes/base"; -import type { IWaypointData } from "@/engine/core/utils/ini/types"; +import type { IWaypointData } from "@/engine/core/utils/ini/ini_types"; import type { LuaArray, Optional, TName } from "@/engine/lib/types"; /** diff --git a/src/engine/core/schemes/walker/SchemeWalker.ts b/src/engine/core/schemes/walker/SchemeWalker.ts index 1c6e2e18b..c71abcc73 100644 --- a/src/engine/core/schemes/walker/SchemeWalker.ts +++ b/src/engine/core/schemes/walker/SchemeWalker.ts @@ -5,10 +5,10 @@ import { ActionWalkerActivity } from "@/engine/core/schemes/walker/actions"; import { EvaluatorNeedWalker } from "@/engine/core/schemes/walker/evaluators"; import { ISchemeWalkerState } from "@/engine/core/schemes/walker/ISchemeWalkerState"; import { abort, assert } from "@/engine/core/utils/assertion"; -import { getConfigSwitchConditions } from "@/engine/core/utils/ini/config"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { getConfigSwitchConditions } from "@/engine/core/utils/ini/ini_config"; +import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/ini_read"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/setup"; +import { addCommonActionPreconditions } from "@/engine/core/utils/scheme/scheme_setup"; import { ActionPlanner, ClientObject, IniFile, TName } from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; diff --git a/src/engine/core/schemes/walker/actions/ActionWalkerActivity.ts b/src/engine/core/schemes/walker/actions/ActionWalkerActivity.ts index 1001d0be3..b12d22fec 100644 --- a/src/engine/core/schemes/walker/actions/ActionWalkerActivity.ts +++ b/src/engine/core/schemes/walker/actions/ActionWalkerActivity.ts @@ -9,7 +9,7 @@ import { IAnimpointAction } from "@/engine/core/schemes/animpoint/types"; import { ISchemeEventHandler } from "@/engine/core/schemes/base"; import { CampStoryManager } from "@/engine/core/schemes/camper/CampStoryManager"; import { ISchemeWalkerState } from "@/engine/core/schemes/walker"; -import { parseWaypointsData } from "@/engine/core/utils/ini/parse"; +import { parseWaypointsData } from "@/engine/core/utils/ini/ini_parse"; import { LuaLogger } from "@/engine/core/utils/logging"; import { ClientObject, Optional } from "@/engine/lib/types"; diff --git a/src/engine/core/schemes/walker/evaluators/EvaluatorNeedWalker.ts b/src/engine/core/schemes/walker/evaluators/EvaluatorNeedWalker.ts index a7e9981fc..985f86e93 100644 --- a/src/engine/core/schemes/walker/evaluators/EvaluatorNeedWalker.ts +++ b/src/engine/core/schemes/walker/evaluators/EvaluatorNeedWalker.ts @@ -2,7 +2,7 @@ import { LuabindClass, property_evaluator } from "xray16"; import { ISchemeWalkerState } from "@/engine/core/schemes/walker"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { isSectionActive } from "@/engine/core/utils/scheme/logic"; +import { isSectionActive } from "@/engine/core/utils/scheme/scheme_logic"; const logger: LuaLogger = new LuaLogger($filename); diff --git a/src/engine/core/schemes/wounded/ISchemeWoundedState.ts b/src/engine/core/schemes/wounded/ISchemeWoundedState.ts index ab3360b11..5a8c2db51 100644 --- a/src/engine/core/schemes/wounded/ISchemeWoundedState.ts +++ b/src/engine/core/schemes/wounded/ISchemeWoundedState.ts @@ -15,7 +15,6 @@ export interface ISchemeWoundedState extends IBaseSchemeState { hp_victim: LuaArray; hp_cover: LuaArray; hp_fight: LuaArray; - syndata: LuaArray; help_start_dialog: Optional; use_medkit: Optional; help_dialog: TNumberId; diff --git a/src/engine/core/schemes/wounded/SchemeWounded.ts b/src/engine/core/schemes/wounded/SchemeWounded.ts index 45f36415e..10c3d6ce7 100644 --- a/src/engine/core/schemes/wounded/SchemeWounded.ts +++ b/src/engine/core/schemes/wounded/SchemeWounded.ts @@ -6,13 +6,22 @@ import { ActionWounded } from "@/engine/core/schemes/wounded/actions"; import { EvaluatorCanFight, EvaluatorWounded } from "@/engine/core/schemes/wounded/evaluators"; import { ISchemeWoundedState } from "@/engine/core/schemes/wounded/ISchemeWoundedState"; import { WoundManager } from "@/engine/core/schemes/wounded/WoundManager"; -import { parseData, parseSynData } from "@/engine/core/utils/ini/parse"; -import { readIniBoolean, readIniString } from "@/engine/core/utils/ini/read"; +import { IConfigSwitchCondition, parseConditionsList, readIniBoolean, readIniString } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; +import { getCharacterCommunity } from "@/engine/core/utils/object/object_get"; import { communities, TCommunity } from "@/engine/lib/constants/communities"; import { NIL } from "@/engine/lib/constants/words"; -import { ActionPlanner, AnyObject, ClientObject, IniFile, Maybe, Optional, TNumberId } from "@/engine/lib/types"; +import { + ActionPlanner, + AnyObject, + ClientObject, + IniFile, + LuaArray, + Maybe, + Optional, + TDistance, + TNumberId, +} from "@/engine/lib/types"; import { EScheme, ESchemeType, TSection } from "@/engine/lib/types/scheme"; const woundedByState: Record = { @@ -30,18 +39,12 @@ export class SchemeWounded extends AbstractScheme { public static override readonly SCHEME_SECTION: EScheme = EScheme.WOUNDED; public static override readonly SCHEME_TYPE: ESchemeType = ESchemeType.STALKER; - /** - * todo: Description. - */ public static override activate(object: ClientObject, ini: IniFile, scheme: EScheme, section: TSection): void { const state: ISchemeWoundedState = AbstractScheme.assign(object, ini, scheme, section); state.woundManager = new WoundManager(object, state); } - /** - * todo: Description. - */ public static override add( object: ClientObject, ini: IniFile, @@ -79,9 +82,6 @@ export class SchemeWounded extends AbstractScheme { .add_precondition(new world_property(EEvaluatorId.CAN_FIGHT, true)); } - /** - * todo: Description. - */ public static override reset( object: ClientObject, scheme: EScheme, @@ -169,13 +169,12 @@ export class SchemeWounded extends AbstractScheme { // Initialize state: if (tostring(section) === NIL) { - state.hp_state = parseData(defaults.hp_state); - state.hp_state_see = parseData(defaults.hp_state_see); - state.psy_state = parseData(defaults.psy_state); - state.hp_victim = parseData(defaults.hp_victim); - state.hp_cover = parseData(defaults.hp_cover); - state.hp_fight = parseData(defaults.hp_fight); - state.syndata = parseSynData(defaults.syndata); + state.hp_state = SchemeWounded.parseData(defaults.hp_state); + state.hp_state_see = SchemeWounded.parseData(defaults.hp_state_see); + state.psy_state = SchemeWounded.parseData(defaults.psy_state); + state.hp_victim = SchemeWounded.parseData(defaults.hp_victim); + state.hp_cover = SchemeWounded.parseData(defaults.hp_cover); + state.hp_fight = SchemeWounded.parseData(defaults.hp_fight); state.help_dialog = defaults.help_dialog; state.help_start_dialog = null; state.use_medkit = defaults.use_medkit; @@ -183,13 +182,18 @@ export class SchemeWounded extends AbstractScheme { state.enable_talk = true; state.not_for_help = defaults.not_for_help; } else { - state.hp_state = parseData(readIniString(ini, section, "hp_state", false, "", defaults.hp_state)); - state.hp_state_see = parseData(readIniString(ini, section, "hp_state_see", false, "", defaults.hp_state_see)); - state.psy_state = parseData(readIniString(ini, section, "psy_state", false, "", defaults.psy_state)); - state.hp_victim = parseData(readIniString(ini, section, "hp_victim", false, "", defaults.hp_victim)); - state.hp_cover = parseData(readIniString(ini, section, "hp_cover", false, "", defaults.hp_cover)); - state.hp_fight = parseData(readIniString(ini, section, "hp_fight", false, "", defaults.hp_fight)); - state.syndata = parseSynData(readIniString(ini, section, "syndata", false, "", defaults.syndata)); + state.hp_state = SchemeWounded.parseData(readIniString(ini, section, "hp_state", false, "", defaults.hp_state)); + state.hp_state_see = SchemeWounded.parseData( + readIniString(ini, section, "hp_state_see", false, "", defaults.hp_state_see) + ); + state.psy_state = SchemeWounded.parseData( + readIniString(ini, section, "psy_state", false, "", defaults.psy_state) + ); + state.hp_victim = SchemeWounded.parseData( + readIniString(ini, section, "hp_victim", false, "", defaults.hp_victim) + ); + state.hp_cover = SchemeWounded.parseData(readIniString(ini, section, "hp_cover", false, "", defaults.hp_cover)); + state.hp_fight = SchemeWounded.parseData(readIniString(ini, section, "hp_fight", false, "", defaults.hp_fight)); state.help_dialog = readIniString(ini, section, "help_dialog", false, "", defaults.help_dialog); state.help_start_dialog = readIniString(ini, section, "help_start_dialog", false, "", null); state.use_medkit = readIniBoolean(ini, section, "use_medkit", false, defaults.use_medkit); @@ -248,4 +252,54 @@ export class SchemeWounded extends AbstractScheme { return false; } + + /** + * todo; + */ + private static parseData(target: Optional): LuaArray<{ + dist: Optional; + state: Optional>; + sound: Optional>; + }> { + const collection: LuaArray = new LuaTable(); + + if (target) { + for (const name of string.gfind(target, "(%|*%d+%|[^%|]+)%p*")) { + const dat = { + dist: null as Optional, + state: null as Optional>, + sound: null as Optional>, + }; + + const [tPosition] = string.find(name, "|", 1, true); + const [sPosition] = string.find(name, "@", 1, true); + + const dist = string.sub(name, 1, tPosition - 1); + + let state: Optional = null; + let sound: Optional = null; + + if (sPosition !== null) { + state = string.sub(name, tPosition + 1, sPosition - 1); + sound = string.sub(name, sPosition + 1); + } else { + state = string.sub(name, tPosition + 1); + } + + dat.dist = tonumber(dist)!; + + if (state !== null) { + dat.state = parseConditionsList(state); + } + + if (sound !== null) { + dat.sound = parseConditionsList(sound); + } + + table.insert(collection, dat); + } + } + + return collection; + } } diff --git a/src/engine/core/schemes/wounded/WoundManager.ts b/src/engine/core/schemes/wounded/WoundManager.ts index 69c134a11..960752577 100644 --- a/src/engine/core/schemes/wounded/WoundManager.ts +++ b/src/engine/core/schemes/wounded/WoundManager.ts @@ -5,7 +5,7 @@ import { getPortableStoreValue, setPortableStoreValue } from "@/engine/core/data import { GlobalSoundManager } from "@/engine/core/managers/sounds/GlobalSoundManager"; import { AbstractSchemeManager } from "@/engine/core/schemes"; import { ISchemeWoundedState } from "@/engine/core/schemes/wounded/ISchemeWoundedState"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; +import { pickSectionFromCondList } from "@/engine/core/utils/ini/ini_config"; import { drugs } from "@/engine/lib/constants/items/drugs"; import { FALSE, NIL, TRUE } from "@/engine/lib/constants/words"; import { AlifeSimulator, LuaArray, Optional, TCount, TIndex, TRate, TTimestamp } from "@/engine/lib/types"; diff --git a/src/engine/core/ui/debug/sections/DebugCommandsSection.ts b/src/engine/core/ui/debug/sections/DebugCommandsSection.ts index 9d837c924..c61e3f13f 100644 --- a/src/engine/core/ui/debug/sections/DebugCommandsSection.ts +++ b/src/engine/core/ui/debug/sections/DebugCommandsSection.ts @@ -1,7 +1,7 @@ import { CConsole, CUICheckButton, CUIScrollView, CUIStatic, get_console, LuabindClass, ui_events } from "xray16"; import { AbstractDebugSection } from "@/engine/core/ui/debug/sections/AbstractDebugSection"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFile } from "@/engine/core/utils/ui"; import { onOffCommands, TConsoleCommand, zeroOneCommands } from "@/engine/lib/constants/console_commands"; diff --git a/src/engine/core/ui/debug/sections/DebugItemsSection.ts b/src/engine/core/ui/debug/sections/DebugItemsSection.ts index 853b9d625..062fe8ea9 100644 --- a/src/engine/core/ui/debug/sections/DebugItemsSection.ts +++ b/src/engine/core/ui/debug/sections/DebugItemsSection.ts @@ -3,16 +3,16 @@ import { CUI3tButton, CUIComboBox, CUIListBox, CUIWindow, LuabindClass, ui_event import { registry } from "@/engine/core/database"; import { AbstractDebugSection } from "@/engine/core/ui/debug/sections/AbstractDebugSection"; import { DebugItemListEntry } from "@/engine/core/ui/debug/sections/DebugItemListEntry"; -import { isAmmoSection, isGameStarted } from "@/engine/core/utils/check/is"; -import { LuaLogger } from "@/engine/core/utils/logging"; +import { isGameStarted } from "@/engine/core/utils/game"; import { getAmmoSections, getArtefactsSections, getHelmetsSections, getOutfitSections, getWeaponSections, -} from "@/engine/core/utils/sections"; -import { getInventoryNameForItemSection, spawnItemsForObject } from "@/engine/core/utils/spawn"; +} from "@/engine/core/utils/ini"; +import { LuaLogger } from "@/engine/core/utils/logging"; +import { getInventoryNameForItemSection, isAmmoSection, spawnItemsForObject } from "@/engine/core/utils/object"; import { resolveXmlFile } from "@/engine/core/utils/ui"; import { TInventoryItem } from "@/engine/lib/constants/items"; import { drugs } from "@/engine/lib/constants/items/drugs"; diff --git a/src/engine/core/ui/debug/sections/DebugObjectSection.ts b/src/engine/core/ui/debug/sections/DebugObjectSection.ts index ea45768d9..19b68e460 100644 --- a/src/engine/core/ui/debug/sections/DebugObjectSection.ts +++ b/src/engine/core/ui/debug/sections/DebugObjectSection.ts @@ -4,10 +4,10 @@ import { registry } from "@/engine/core/database"; import { DebugManager } from "@/engine/core/managers/debug/DebugManager"; import { Squad } from "@/engine/core/objects"; import { AbstractDebugSection } from "@/engine/core/ui/debug/sections/AbstractDebugSection"; -import { isGameStarted } from "@/engine/core/utils/check"; +import { isGameStarted } from "@/engine/core/utils/game"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { getObjectSquad } from "@/engine/core/utils/object"; import { getNearestClientObject } from "@/engine/core/utils/object/object_find"; -import { getObjectSquad } from "@/engine/core/utils/object/object_general"; import { ERelation, getObjectsRelationSafe, diff --git a/src/engine/core/ui/debug/sections/DebugSpawnSection.ts b/src/engine/core/ui/debug/sections/DebugSpawnSection.ts index 756fd4af1..ce1765957 100644 --- a/src/engine/core/ui/debug/sections/DebugSpawnSection.ts +++ b/src/engine/core/ui/debug/sections/DebugSpawnSection.ts @@ -3,11 +3,15 @@ import { CUI3tButton, CUIComboBox, CUIListBox, CUIWindow, LuabindClass, ui_event import { Squad } from "@/engine/core/objects"; import { AbstractDebugSection } from "@/engine/core/ui/debug/sections/AbstractDebugSection"; import { DebugItemListEntry } from "@/engine/core/ui/debug/sections/DebugItemListEntry"; -import { isGameStarted } from "@/engine/core/utils/check"; +import { isGameStarted } from "@/engine/core/utils/game"; +import { getSimulationGroupSections, getStalkerSections } from "@/engine/core/utils/ini"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getNearestServerObject } from "@/engine/core/utils/object/object_find"; -import { getSimulationGroupSections, getStalkerSections } from "@/engine/core/utils/sections"; -import { getInventoryNameForItemSection, spawnCreatureNearActor, spawnSquadInSmart } from "@/engine/core/utils/spawn"; +import { getNearestServerObject } from "@/engine/core/utils/object"; +import { + getInventoryNameForItemSection, + spawnCreatureNearActor, + spawnSquadInSmart, +} from "@/engine/core/utils/object/object_spawn"; import { resolveXmlFile } from "@/engine/core/utils/ui"; import { TInventoryItem } from "@/engine/lib/constants/items"; import { LuaArray, Optional, ServerObject, TPath, TSection, Vector2D } from "@/engine/lib/types"; diff --git a/src/engine/core/ui/debug/sections/DebugTeleportSection.ts b/src/engine/core/ui/debug/sections/DebugTeleportSection.ts index 4a2dab34d..4d05db729 100644 --- a/src/engine/core/ui/debug/sections/DebugTeleportSection.ts +++ b/src/engine/core/ui/debug/sections/DebugTeleportSection.ts @@ -5,13 +5,11 @@ import { EGameEvent, EventsManager } from "@/engine/core/managers"; import { SmartTerrain } from "@/engine/core/objects"; import { AbstractDebugSection } from "@/engine/core/ui/debug/sections/AbstractDebugSection"; import { DebugTeleportListEntry } from "@/engine/core/ui/debug/sections/DebugTeleportListEntry"; -import { isGameStarted } from "@/engine/core/utils/check"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; -import { vectorToString } from "@/engine/core/utils/general"; +import { executeConsoleCommand, isGameStarted } from "@/engine/core/utils/game"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { getServerObjects } from "@/engine/core/utils/object/object_find"; -import { isGameVertexFromLevel } from "@/engine/core/utils/position"; +import { getServerObjects, isGameVertexFromLevel } from "@/engine/core/utils/object"; import { resolveXmlFile } from "@/engine/core/utils/ui"; +import { vectorToString } from "@/engine/core/utils/vector"; import { postProcessors } from "@/engine/lib/constants/animation/post_processors"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; import { LuaArray, Optional, TPath, Vector2D } from "@/engine/lib/types"; diff --git a/src/engine/core/ui/debug/sections/DebugWeatherSection.ts b/src/engine/core/ui/debug/sections/DebugWeatherSection.ts index 9ff33c698..11df49eac 100644 --- a/src/engine/core/ui/debug/sections/DebugWeatherSection.ts +++ b/src/engine/core/ui/debug/sections/DebugWeatherSection.ts @@ -2,7 +2,7 @@ import { CUI3tButton, CUIComboBox, CUIStatic, LuabindClass, ui_events } from "xr import { IWeatherState, WeatherManager } from "@/engine/core/managers/world/WeatherManager"; import { AbstractDebugSection } from "@/engine/core/ui/debug/sections/AbstractDebugSection"; -import { isGameStarted } from "@/engine/core/utils/check"; +import { isGameStarted } from "@/engine/core/utils/game"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFile } from "@/engine/core/utils/ui"; import { NIL } from "@/engine/lib/constants/words"; diff --git a/src/engine/core/ui/game/FreeplayDialog.ts b/src/engine/core/ui/game/FreeplayDialog.ts index 704c44bea..6a5cabc05 100644 --- a/src/engine/core/ui/game/FreeplayDialog.ts +++ b/src/engine/core/ui/game/FreeplayDialog.ts @@ -1,7 +1,7 @@ import { CUIMessageBoxEx, CUIScriptWnd, Frect, LuabindClass, ui_events } from "xray16"; -import { giveInfo } from "@/engine/core/utils/info_portion"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { giveInfo } from "@/engine/core/utils/object/object_info_portion"; import { infoPortions } from "@/engine/lib/constants/info_portions"; import { Optional } from "@/engine/lib/types"; diff --git a/src/engine/core/ui/game/GameOutroManager.ts b/src/engine/core/ui/game/GameOutroManager.ts index efd686f59..5e23c4edf 100644 --- a/src/engine/core/ui/game/GameOutroManager.ts +++ b/src/engine/core/ui/game/GameOutroManager.ts @@ -4,8 +4,8 @@ import { registry } from "@/engine/core/database"; import { AbstractCoreManager } from "@/engine/core/managers/base/AbstractCoreManager"; import { ActorInputManager } from "@/engine/core/managers/interface"; import { getExtern } from "@/engine/core/utils/binding"; -import { hasAlifeInfo } from "@/engine/core/utils/info_portion"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { hasAlifeInfo } from "@/engine/core/utils/object/object_info_portion"; import { gameTutorials } from "@/engine/lib/constants/game_tutorials"; import { infoPortions } from "@/engine/lib/constants/info_portions"; import { sounds } from "@/engine/lib/constants/sound/sounds"; diff --git a/src/engine/core/ui/game/WeaponParams.ts b/src/engine/core/ui/game/WeaponParams.ts index f37e1df35..faf09fb8d 100644 --- a/src/engine/core/ui/game/WeaponParams.ts +++ b/src/engine/core/ui/game/WeaponParams.ts @@ -1,5 +1,5 @@ import { SYSTEM_INI } from "@/engine/core/database"; -import { parseStringsList } from "@/engine/core/utils/ini/parse"; +import { parseStringsList } from "@/engine/core/utils/ini/ini_parse"; import { TRate, TSection } from "@/engine/lib/types"; /** diff --git a/src/engine/core/ui/interaction/SleepDialog.ts b/src/engine/core/ui/interaction/SleepDialog.ts index 608e8a669..e5670d1fb 100644 --- a/src/engine/core/ui/interaction/SleepDialog.ts +++ b/src/engine/core/ui/interaction/SleepDialog.ts @@ -15,8 +15,8 @@ import { import { registry } from "@/engine/core/database"; import { SleepManager } from "@/engine/core/managers/interaction/SleepManager"; -import { disableInfo, giveInfo } from "@/engine/core/utils/info_portion"; import { LuaLogger } from "@/engine/core/utils/logging"; +import { disableInfo, giveInfo } from "@/engine/core/utils/object/object_info_portion"; import { isWideScreen, resolveXmlFormPath } from "@/engine/core/utils/ui"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; import { captions } from "@/engine/lib/constants/captions/captions"; diff --git a/src/engine/core/ui/menu/MainMenu.ts b/src/engine/core/ui/menu/MainMenu.ts index 9635e9eae..2b9fca708 100644 --- a/src/engine/core/ui/menu/MainMenu.ts +++ b/src/engine/core/ui/menu/MainMenu.ts @@ -27,7 +27,7 @@ import { MultiplayerGameSpy } from "@/engine/core/ui/menu/multiplayer_login/Mult import { MultiplayerLocalnet } from "@/engine/core/ui/menu/multiplayer_login/MultiplayerLocalnet"; import { OptionsDialog } from "@/engine/core/ui/menu/options/OptionsDialog"; import { SaveDialog } from "@/engine/core/ui/menu/save/SaveDialog"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFile, resolveXmlFormPath } from "@/engine/core/utils/ui"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; diff --git a/src/engine/core/ui/menu/load/LoadDialog.ts b/src/engine/core/ui/menu/load/LoadDialog.ts index 72bfd7319..6fded7371 100644 --- a/src/engine/core/ui/menu/load/LoadDialog.ts +++ b/src/engine/core/ui/menu/load/LoadDialog.ts @@ -24,7 +24,7 @@ import { import { registry } from "@/engine/core/database"; import { LoadItem } from "@/engine/core/ui/menu/load/LoadItem"; -import { deleteGameSave, gatFileDataForGameSave, isGameSaveFileExist } from "@/engine/core/utils/game_save"; +import { deleteGameSave, gatFileDataForGameSave, isGameSaveFileExist } from "@/engine/core/utils/game/game_save"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFormPath } from "@/engine/core/utils/ui"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; diff --git a/src/engine/core/ui/menu/multiplayer/MultiplayerDemo.ts b/src/engine/core/ui/menu/multiplayer/MultiplayerDemo.ts index 481f194c3..3da7738cd 100644 --- a/src/engine/core/ui/menu/multiplayer/MultiplayerDemo.ts +++ b/src/engine/core/ui/menu/multiplayer/MultiplayerDemo.ts @@ -21,7 +21,7 @@ import { MultiplayerDemoLoadItem } from "@/engine/core/ui/menu/multiplayer/Multi import { MultiplayerDemoPlayerInfo } from "@/engine/core/ui/menu/multiplayer/MultiplayerDemoPlayerInfo"; import { MultiplayerDemoPlayerStatItem } from "@/engine/core/ui/menu/multiplayer/MultiplayerDemoPlayerStatItem"; import { MultiplayerMenu } from "@/engine/core/ui/menu/multiplayer/MultiplayerMenu"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; import { roots } from "@/engine/lib/constants/roots"; diff --git a/src/engine/core/ui/menu/multiplayer/MultiplayerMenu.ts b/src/engine/core/ui/menu/multiplayer/MultiplayerMenu.ts index 038443c91..5feb917a9 100644 --- a/src/engine/core/ui/menu/multiplayer/MultiplayerMenu.ts +++ b/src/engine/core/ui/menu/multiplayer/MultiplayerMenu.ts @@ -40,7 +40,7 @@ import { MultiplayerOptions } from "@/engine/core/ui/menu/multiplayer/Multiplaye import { MultiplayerProfile } from "@/engine/core/ui/menu/multiplayer/MultiplayerProfile"; import { MultiplayerServer } from "@/engine/core/ui/menu/multiplayer/MultiplayerServer"; import { EOptionGroup } from "@/engine/core/ui/menu/options/types"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFormPath } from "@/engine/core/utils/ui"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; diff --git a/src/engine/core/ui/menu/options/OptionsDialog.ts b/src/engine/core/ui/menu/options/OptionsDialog.ts index 86ff886e2..bc4822f9c 100644 --- a/src/engine/core/ui/menu/options/OptionsDialog.ts +++ b/src/engine/core/ui/menu/options/OptionsDialog.ts @@ -25,7 +25,7 @@ import { OptionsSound } from "@/engine/core/ui/menu/options/OptionsSound"; import { OptionsVideo } from "@/engine/core/ui/menu/options/OptionsVideo"; import { OptionsVideoAdvanced } from "@/engine/core/ui/menu/options/OptionsVideoAdvanced"; import { EGameRenderer, EOptionGroup, optionGroupsMessages } from "@/engine/core/ui/menu/options/types"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFormPath } from "@/engine/core/utils/ui"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; diff --git a/src/engine/core/ui/menu/save/SaveDialog.ts b/src/engine/core/ui/menu/save/SaveDialog.ts index 83711a9c6..262e5ed82 100644 --- a/src/engine/core/ui/menu/save/SaveDialog.ts +++ b/src/engine/core/ui/menu/save/SaveDialog.ts @@ -20,8 +20,8 @@ import { } from "xray16"; import { SaveItem } from "@/engine/core/ui/menu/save/SaveItem"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; -import { deleteGameSave } from "@/engine/core/utils/game_save"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; +import { deleteGameSave } from "@/engine/core/utils/game/game_save"; import { LuaLogger } from "@/engine/core/utils/logging"; import { resolveXmlFormPath } from "@/engine/core/utils/ui"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; diff --git a/src/engine/core/utils/check/check.ts b/src/engine/core/utils/check/check.ts deleted file mode 100644 index 963262418..000000000 --- a/src/engine/core/utils/check/check.ts +++ /dev/null @@ -1,425 +0,0 @@ -import { alife, danger_object, device, game_graph, relation_registry } from "xray16"; - -import { getObjectIdByStoryId, getServerObjectByStoryId, IRegistryObjectState, registry } from "@/engine/core/database"; -import { SimulationBoardManager } from "@/engine/core/managers/interaction/SimulationBoardManager"; -import type { SmartTerrain } from "@/engine/core/objects"; -import { ESmartTerrainStatus } from "@/engine/core/objects/server/smart_terrain/types"; -import type { Squad } from "@/engine/core/objects/server/squad/Squad"; -import { EActionId } from "@/engine/core/schemes/base"; -import { ISchemeCombatIgnoreState } from "@/engine/core/schemes/combat_ignore"; -import { ISchemeWoundedState } from "@/engine/core/schemes/wounded"; -import { isStalker } from "@/engine/core/utils/check/is"; -import { pickSectionFromCondList } from "@/engine/core/utils/ini/config"; -import { getCharacterCommunity } from "@/engine/core/utils/object/object_general"; -import { EGoodwill } from "@/engine/core/utils/relation/types"; -import { logicsConfig } from "@/engine/lib/configs/LogicsConfig"; -import { surgeConfig } from "@/engine/lib/configs/SurgeConfig"; -import { communities, TCommunity } from "@/engine/lib/constants/communities"; -import { ACTOR_ID } from "@/engine/lib/constants/ids"; -import { lootableTableExclude, TLootableExcludeItem } from "@/engine/lib/constants/items/lootable_table"; -import { TLevel } from "@/engine/lib/constants/levels"; -import { MAX_U16 } from "@/engine/lib/constants/memory"; -import { NIL, TRUE } from "@/engine/lib/constants/words"; -import { - ActionPlanner, - AlifeSimulator, - AnyObject, - ClientObject, - DangerObject, - EClientObjectRelation, - EScheme, - Optional, - ServerCreatureObject, - ServerHumanObject, - ServerObject, - TDangerType, - TDistance, - TName, - TNumberId, - TStringId, -} from "@/engine/lib/types"; - -/** - * todo; - */ -export function isSquadExisting(squadStoryId: TStringId): boolean { - return getServerObjectByStoryId(squadStoryId) !== null; -} - -/** - * Is provided target stalker and alive. - */ -export function isStalkerAlive(targetObject: ClientObject | ServerHumanObject | TStringId): boolean { - let targetId: Optional = null; - - if (type(targetObject) === "string") { - targetId = getObjectIdByStoryId(targetObject as TStringId); - } else if (type((targetObject as ServerHumanObject).id) === "number") { - targetId = (targetObject as ServerHumanObject).id; - } else { - targetId = (targetObject as ClientObject).id(); - } - - if (targetId === null) { - return false; - } else { - const object: Optional = alife().object(targetId); - - return object !== null && isStalker(object) && object.alive(); - } -} - -/** - * todo; - */ -export function isActorEnemyWithFaction(faction: TCommunity, actor: ClientObject = registry.actor): boolean { - return relation_registry.community_goodwill(faction, actor.id()) <= EGoodwill.ENEMIES; -} - -/** - * todo; - */ -export function isActorFriendWithFaction(faction: TCommunity, actor: ClientObject = registry.actor): boolean { - return relation_registry.community_goodwill(faction, actor.id()) >= EGoodwill.FRIENDS; -} - -/** - * todo; - */ -export function isActorNeutralWithFaction(faction: TCommunity, actor: ClientObject = registry.actor): boolean { - const goodwill: number = relation_registry.community_goodwill(faction, actor.id()); - - return goodwill > EGoodwill.ENEMIES && goodwill < EGoodwill.FRIENDS; -} - -/** - * @returns whether provided object is on a provided level. - */ -export function isObjectOnLevel(object: Optional, levelName: TName): boolean { - return object !== null && alife().level_name(game_graph().vertex(object.m_game_vertex_id).level_id()) === levelName; -} - -/** - * @returns whether provided community squad is immune to surge. - */ -export function isImmuneToSurge(object: Squad): boolean { - return surgeConfig.IMMUNE_SQUDS[object.faction] === true; -} - -/** - * @returns whether surge can be started on provided level. - */ -export function isSurgeEnabledOnLevel(levelName: TLevel): boolean { - return surgeConfig.SURGE_DISABLED_LEVELS[levelName] !== true; -} - -/** - * @returns whether object is excluded from loot drop. - */ -export function isExcludedFromLootDropItem(object: ClientObject): boolean { - return lootableTableExclude[object.section()] !== null; -} - -/** - * @returns whether current game level is changing. - */ -export function isLevelChanging(): boolean { - const simulator: Optional = alife(); - - return simulator === null - ? false - : game_graph().vertex(simulator.actor().m_game_vertex_id).level_id() !== simulator.level_id(); -} - -/** - * @returns whether object is inside another object. - */ -export function isObjectInZone(object: Optional, zone: Optional): boolean { - return object !== null && zone !== null && zone.inside(object.position()); -} - -/** - * @returns whether object is wounded. - */ -export function isObjectWounded(object: ClientObject): boolean { - const state: IRegistryObjectState = registry.objects.get(object.id()); - - if (state === null) { - return false; - } else if (state[EScheme.WOUNDED] !== null) { - return tostring((state[EScheme.WOUNDED] as ISchemeWoundedState).woundManager.woundState) !== NIL; - } else { - return false; - } -} - -/** - * @returns whether object is meeting with someone. - */ -export function isObjectMeeting(object: ClientObject): boolean { - const actionPlanner: ActionPlanner = object.motivation_action_manager(); - - return ( - actionPlanner !== null && - actionPlanner.initialized() && - actionPlanner.current_action_id() === EActionId.MEET_WAITING_ACTIVITY - ); -} - -/** - * @returns whether object is heavily wounded. - */ -export function isHeavilyWounded(objectId: TNumberId): boolean { - const state: Optional = registry.objects.get(objectId); - - return ( - (state && - state[EScheme.WOUNDED] && - tostring((state[EScheme.WOUNDED] as ISchemeWoundedState).woundManager.woundState) !== NIL) === true - ); -} - -/** - * @returns whether object is facing any danger right now - */ -export function isObjectFacingDanger(object: ClientObject): boolean { - const bestDanger: Optional = object.best_danger(); - - if (bestDanger === null) { - return false; - } - - const bestDangerType: TDangerType = bestDanger.type(); - const bestDangerObject: Optional = - bestDangerType !== danger_object.grenade && bestDanger.dependent_object() !== null - ? bestDanger.dependent_object() - : bestDanger.object(); - - if (bestDangerObject === null) { - return false; - } - - if ( - bestDangerType !== danger_object.entity_corpse && - bestDangerType !== danger_object.grenade && - object.relation(bestDangerObject) !== EClientObjectRelation.ENEMY - ) { - return false; - } - - if (bestDangerType === danger_object.grenade) { - // Zombied ignore grenades. - if (getCharacterCommunity(object) === communities.zombied) { - return false; - } - } - - // todo: Implement? - if (bestDangerType === danger_object.entity_corpse) { - return false; - /** - * --const corpse_object = best_danger:object() - * --if time_global() - corpse_object:death_time() >= DANGER_INERTION_TIME then - * -- return false - * --end - */ - } - - if ( - !isObjectEnemy( - object, - bestDangerObject, - registry.objects.get(object.id())[EScheme.COMBAT_IGNORE] as ISchemeCombatIgnoreState - ) - ) { - return false; - } - - const dangerDistanceSqrt: TDistance = bestDanger.position().distance_to_sqr(object.position()); - const ignoreDistanceByType: Optional = logicsConfig.DANGER_IGNORE_DISTANCE_BY_TYPE[bestDangerType]; - - if (ignoreDistanceByType !== null) { - if (dangerDistanceSqrt >= ignoreDistanceByType * ignoreDistanceByType) { - return false; - } - } else if ( - dangerDistanceSqrt >= - logicsConfig.DANGER_IGNORE_DISTANCE_GENERAL * logicsConfig.DANGER_IGNORE_DISTANCE_GENERAL - ) { - return false; - } - - if (isHeavilyWounded(object.id())) { - return false; - } - - // todo: Update, originally incorrect. - /** - if (active_scheme === "camper" && bd_type !== danger_object.grenade) { - return false; - } - */ - - return true; -} - -/** - * todo; - * @returns whether object os enemy of provided client entity - */ -export function isObjectEnemy(object: ClientObject, enemy: ClientObject, state: ISchemeCombatIgnoreState): boolean { - if (!object.alive()) { - return false; - } - - if (object.critically_wounded()) { - return true; - } - - if (state.enabled === false) { - return true; - } - - const overrides: Optional = state.overrides; - const objectId: TNumberId = object.id(); - const objectState: IRegistryObjectState = registry.objects.get(objectId); - - if (objectState === null) { - return true; - } - - objectState.enemy_id = enemy.id(); - - if (enemy.id() !== ACTOR_ID) { - for (const [k, v] of registry.noCombatZones) { - const zone = registry.zones.get(k); - - if (zone && (isObjectInZone(object, zone) || isObjectInZone(enemy, zone))) { - const smart: Optional = SimulationBoardManager.getInstance().getSmartTerrainByName(v); - - if ( - smart && - smart.smartTerrainActorControl !== null && - smart.smartTerrainActorControl.status !== ESmartTerrainStatus.ALARM - ) { - return false; - } - } - } - } - - const serverObject: Optional = alife().object(enemy.id()); - - if ( - serverObject !== null && - serverObject.m_smart_terrain_id !== null && - serverObject.m_smart_terrain_id !== MAX_U16 - ) { - const enemySmartTerrain: SmartTerrain = alife().object( - serverObject.m_smart_terrain_id - ) as SmartTerrain; - - if (registry.noCombatSmartTerrains.get(enemySmartTerrain.name())) { - return false; - } - } - - if (overrides && overrides.combat_ignore) { - return pickSectionFromCondList(enemy, object, overrides.combat_ignore.condlist) !== TRUE; - } - - return true; -} - -/** - * todo; - * todo; - * todo; - */ -export function isActorInZone(zone: Optional): boolean { - const actor: Optional = registry.actor; - - return actor !== null && zone !== null && zone.inside(actor.position()); -} - -/** - * todo; - * todo; - * todo; - */ -export function isActorInZoneWithName(zoneName: TName, actor: Optional = registry.actor): boolean { - const zone: Optional = registry.zones.get(zoneName); - - return actor !== null && zone !== null && zone.inside(actor.position()); -} - -/** - * @returns whether provided enemy object is actor. - */ -export function isActorEnemy(object: ClientObject): boolean { - return object.id() === registry.actor.id(); -} - -/** - * @returns whether actor is alive. - */ -export function isActorAlive(): boolean { - return registry.actor?.alive() === true; -} - -/** - * @returns whether actor see the object. - */ -export function isSeenByActor(object: ClientObject): boolean { - return registry.actor.see(object); -} - -/** - * @returns whether distance between objects greater or equal. - */ -export function isDistanceBetweenObjectsGreaterOrEqual( - first: ClientObject, - second: ClientObject, - distance: TDistance -): boolean { - return first.position().distance_to_sqr(second.position()) >= distance * distance; -} - -/** - * @returns whether distance between objects less or equal. - */ -export function isDistanceBetweenObjectsLessOrEqual( - first: ClientObject, - second: ClientObject, - distance: TDistance -): boolean { - return first.position().distance_to_sqr(second.position()) <= distance * distance; -} - -/** - * @returns whether distance to actor greater or equal. - */ -export function isDistanceToActorGreaterOrEqual(object: ClientObject, distance: TDistance): boolean { - return object.position().distance_to_sqr(registry.actor.position()) >= distance * distance; -} - -/** - * @returns whether distance to actor less or equal. - */ -export function isDistanceToActorLessOrEqual(object: ClientObject, distance: TDistance): boolean { - return object.position().distance_to_sqr(registry.actor.position()) <= distance * distance; -} - -/** - * @returns whether currently black screen is visible and rendering is paused. - */ -export function isBlackScreen(): boolean { - return device().precache_frame > 1; -} - -/** - * @returns whether currently sound is playing. - */ -export function isPlayingSound(object: ClientObject): boolean { - return registry.sounds.generic.has(object.id()); -} diff --git a/src/engine/core/utils/check/index.ts b/src/engine/core/utils/check/index.ts deleted file mode 100644 index c5148aa40..000000000 --- a/src/engine/core/utils/check/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "@/engine/core/utils/check/is"; -export * from "@/engine/core/utils/check/check"; diff --git a/src/engine/core/utils/check/is.ts b/src/engine/core/utils/check/is.ts deleted file mode 100644 index 56bd07da7..000000000 --- a/src/engine/core/utils/check/is.ts +++ /dev/null @@ -1,156 +0,0 @@ -import { alife, clsid, system_ini } from "xray16"; - -import { getStoryIdByObjectId, registry } from "@/engine/core/database"; -import { assertDefined } from "@/engine/core/utils/assertion"; -import { squadMonsters } from "@/engine/lib/constants/behaviours"; -import { artefactClassIds, monsterClassIds, stalkerClassIds, weaponClassIds } from "@/engine/lib/constants/class_ids"; -import { TCommunity } from "@/engine/lib/constants/communities"; -import { ammo, TAmmoItem } from "@/engine/lib/constants/items/ammo"; -import { lootableTable, TLootableItem } from "@/engine/lib/constants/items/lootable_table"; -import { levels, TLevel } from "@/engine/lib/constants/levels"; -import { - AnyGameObject, - ClientObject, - Maybe, - Optional, - ServerArtefactItemObject, - ServerHumanObject, - ServerMonsterAbstractObject, - ServerObject, - TClassId, - TNumberId, - TSection, -} from "@/engine/lib/types"; - -/** - * todo; - */ -export function isGameStarted(): boolean { - return alife() !== null; -} - -/** - * Check whether actor is absolutely healthy - without radiation/bleeding/damaged health. - */ -export function isActorAbsolutelyHealthy(actor: ClientObject = registry.actor): boolean { - return actor.health < 1 || actor.radiation > 0 || actor.bleeding > 0; -} - -/** - * todo; - */ -export function isCseAlifeObject(object: AnyGameObject): object is ServerObject { - return type(object.id) === "number"; -} - -/** - * todo; - */ -export function isMonster(object: AnyGameObject): object is ServerMonsterAbstractObject { - return monsterClassIds[object.clsid()] === true; -} - -/** - * todo; - */ -export function isSquadMonsterCommunity(community: TCommunity): boolean { - return squadMonsters[community] === true; -} - -/** - * todo; - */ -export function isStalker(object: AnyGameObject): object is ServerHumanObject { - return stalkerClassIds[object.clsid()] === true; -} - -/** - * todo; - */ -export function isStalkerClassId(classId: TNumberId): boolean { - return classId === clsid.stalker || classId === clsid.script_stalker; -} - -/** - * todo; - */ -export function isWeapon(object: Optional): boolean { - if (object === null) { - return false; - } - - return weaponClassIds[object.clsid()] === true; -} - -/** - * todo; - */ -export function isGrenade(object: Optional): boolean { - if (object === null) { - return false; - } - - const id: TClassId = object.clsid(); - - return id === clsid.wpn_grenade_rgd5_s || id === clsid.wpn_grenade_f1_s; -} - -/** - * Is provided object artefact. - */ -export function isArtefact(object: AnyGameObject): object is ServerArtefactItemObject { - return artefactClassIds[object.clsid()] === true; -} - -/** - * todo; - */ -export function isStrappableWeapon(object: Optional): object is ClientObject { - return object === null ? false : system_ini().line_exist(object.section(), "strap_bone0"); -} - -/** - * @returns whether level is fully indoor. - */ -export function isUndergroundLevel(level: TLevel): boolean { - return level === levels.jupiter_underground || level === levels.labx8; -} - -/** - * @returns whether provided object has linked story id. - */ -export function isStoryObject(object: ServerObject): boolean { - return getStoryIdByObjectId(object.id) !== null; -} - -/** - * @returns whether object can be looted by stalkers from corpses. - */ -export function isLootableItem(object: ClientObject): boolean { - return object.section() in lootableTable; -} - -/** - * @returns whether object is ammo-defined section item. - */ -export function isAmmoItem(object: ClientObject): boolean { - return object.section() in ammo; -} - -/** - * @returns whether section is ammo-defined. - */ -export function isAmmoSection(section: TSection): section is TAmmoItem { - return section in ammo; -} - -/** - * @param object - object to check - * @param section - logic section to check - * @returns whether object logics active section is same as provided - */ -export function isActiveSection(object: ClientObject, section: Maybe): boolean { - assertDefined(section, "'isActiveSection' error for '%s', no section defined: '%s'.", object.name(), section); - - return section === registry.objects.get(object.id()).activeSection; -} diff --git a/src/engine/core/utils/game/game_check.test.ts b/src/engine/core/utils/game/game_check.test.ts new file mode 100644 index 000000000..882a6b998 --- /dev/null +++ b/src/engine/core/utils/game/game_check.test.ts @@ -0,0 +1,16 @@ +import { describe, expect, it } from "@jest/globals"; +import { alife } from "xray16"; + +import { isGameStarted } from "@/engine/core/utils/game/game_check"; +import { replaceFunctionMock } from "@/fixtures/utils"; +import { mockAlifeSimulator } from "@/fixtures/xray"; + +describe("game_check utils", () => { + it("'isGameStarted' should check alife", () => { + replaceFunctionMock(alife, () => null); + expect(isGameStarted()).toBe(false); + + replaceFunctionMock(alife, mockAlifeSimulator); + expect(isGameStarted()).toBe(true); + }); +}); diff --git a/src/engine/core/utils/game/game_check.ts b/src/engine/core/utils/game/game_check.ts new file mode 100644 index 000000000..2ebe510b4 --- /dev/null +++ b/src/engine/core/utils/game/game_check.ts @@ -0,0 +1,43 @@ +import { alife, device, game_graph, IsGameTypeSingle } from "xray16"; + +import { AlifeSimulator, Optional } from "@/engine/lib/types"; + +/** + * Check whether game started. + * + * @returns whether game is started and simulator is initialized + */ +export function isGameStarted(): boolean { + return alife() !== null; +} + +/** + * todo + */ +export function isSinglePlayerGame(): boolean { + if (alife === null || alife() !== null) { + return true; + } else if (IsGameTypeSingle === null || IsGameTypeSingle()) { + return true; + } + + return false; +} + +/** + * @returns whether currently black screen is visible and rendering is paused. + */ +export function isBlackScreen(): boolean { + return device().precache_frame > 1; +} + +/** + * @returns whether current game level is changing. + */ +export function isGameLevelChanging(): boolean { + const simulator: Optional = alife(); + + return simulator === null + ? false + : game_graph().vertex(simulator.actor().m_game_vertex_id).level_id() !== simulator.level_id(); +} diff --git a/src/engine/core/utils/console.test.ts b/src/engine/core/utils/game/game_console.test.ts similarity index 97% rename from src/engine/core/utils/console.test.ts rename to src/engine/core/utils/game/game_console.test.ts index b1d0714c9..e81db0dc5 100644 --- a/src/engine/core/utils/console.test.ts +++ b/src/engine/core/utils/game/game_console.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, expect, it, jest } from "@jest/globals"; -import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand, getConsoleFloatCommand } from "@/engine/core/utils/game/game_console"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; import { gameDifficulties } from "@/engine/lib/constants/game_difficulties"; import { resetFunctionMock } from "@/fixtures/utils/function_mock"; diff --git a/src/engine/core/utils/console.ts b/src/engine/core/utils/game/game_console.ts similarity index 100% rename from src/engine/core/utils/console.ts rename to src/engine/core/utils/game/game_console.ts diff --git a/src/engine/core/utils/game_save.test.ts b/src/engine/core/utils/game/game_save.test.ts similarity index 99% rename from src/engine/core/utils/game_save.test.ts rename to src/engine/core/utils/game/game_save.test.ts index b42de0e68..69cee5465 100644 --- a/src/engine/core/utils/game_save.test.ts +++ b/src/engine/core/utils/game/game_save.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, expect, it } from "@jest/globals"; -import { createAutoSave, createSave } from "@/engine/core/utils/game_save"; +import { createAutoSave, createSave } from "@/engine/core/utils/game/game_save"; import { resetFunctionMock } from "@/fixtures/utils/function_mock"; import { gameConsole } from "@/fixtures/xray/mocks/console.mock"; import { mocksConfig } from "@/fixtures/xray/mocks/MocksConfig"; diff --git a/src/engine/core/utils/game_save.ts b/src/engine/core/utils/game/game_save.ts similarity index 95% rename from src/engine/core/utils/game_save.ts rename to src/engine/core/utils/game/game_save.ts index 7bc637f2c..90303593a 100644 --- a/src/engine/core/utils/game_save.ts +++ b/src/engine/core/utils/game/game_save.ts @@ -1,9 +1,9 @@ import { bit_or, CSavedGameWrapper, FS, game, getFS, IsImportantSave, user_name } from "xray16"; import { assert } from "@/engine/core/utils/assertion"; -import { executeConsoleCommand } from "@/engine/core/utils/console"; +import { executeConsoleCommand } from "@/engine/core/utils/game/game_console"; +import { gameTimeToString } from "@/engine/core/utils/game/game_time"; import { LuaLogger } from "@/engine/core/utils/logging"; -import { gameTimeToString } from "@/engine/core/utils/time"; import { gameConfig } from "@/engine/lib/configs/GameConfig"; import { captions } from "@/engine/lib/constants/captions"; import { consoleCommands } from "@/engine/lib/constants/console_commands"; diff --git a/src/engine/core/utils/time.test.ts b/src/engine/core/utils/game/game_time.test.ts similarity index 98% rename from src/engine/core/utils/time.test.ts rename to src/engine/core/utils/game/game_time.test.ts index 63f3fdddb..eae572e41 100644 --- a/src/engine/core/utils/time.test.ts +++ b/src/engine/core/utils/game/game_time.test.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from "@jest/globals"; import { game, level } from "xray16"; -import { isInTimeInterval, readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/time"; +import { isInTimeInterval, readTimeFromPacket, writeTimeToPacket } from "@/engine/core/utils/game/game_time"; import { MAX_I32, MAX_U8, MIN_I32 } from "@/engine/lib/constants/memory"; import { Optional, Time } from "@/engine/lib/types"; import { replaceFunctionMock } from "@/fixtures/utils/function_mock"; diff --git a/src/engine/core/utils/time.ts b/src/engine/core/utils/game/game_time.ts similarity index 80% rename from src/engine/core/utils/time.ts rename to src/engine/core/utils/game/game_time.ts index f94eb8e03..d0e40c04e 100644 --- a/src/engine/core/utils/time.ts +++ b/src/engine/core/utils/game/game_time.ts @@ -2,7 +2,7 @@ import { game, level, time_global, verify_if_thread_is_running } from "xray16"; import { LuaLogger } from "@/engine/core/utils/logging"; import { MAX_U8 } from "@/engine/lib/constants/memory"; -import { NetPacket, NetProcessor, Optional, TDuration, Time, TLabel, TTimestamp } from "@/engine/lib/types"; +import { NetPacket, NetProcessor, Optional, TDuration, Time, TLabel, TRate, TTimestamp } from "@/engine/lib/types"; const logger: LuaLogger = new LuaLogger($filename); @@ -140,3 +140,31 @@ export function readTimeFromPacket(reader: NetProcessor): Optional