Working on web version

This commit is contained in:
Vladislav Khorev committed 2026-06-06 16:37:11 +03:00
1 parent 597ed04fdc
commit 0cc384028f
122 files changed
+7594 -224603

No files matched your search

+63
View File
@@ -0,0 +1,63 @@
#!/usr/bin/env python3
"""
convert_config_meshes.py - Bulk-convert 3D mesh files referenced in a game object JSON config.
Reads <src_config>, converts every .txt mesh to binary (.txt.bin via BSMF format),
and writes the updated config to <dst_config> with meshPath values pointing to the
.bin files. Works for both regular game object configs and interactive object configs.
Mesh paths in the JSON are relative to the current working directory — run this
script from the project root.
Usage:
python convert_config_meshes.py <src_config.json> <dst_config.json>
"""
import json
import os
import sys
from convert_model_to_binary import convert
def convert_config(src_path: str, dst_path: str) -> None:
with open(src_path, 'r', encoding='utf-8') as f:
config = json.load(f)
objects = config.get("objects", [])
# Track already-converted paths so shared meshes are only processed once.
cache: dict[str, str | None] = {}
for obj in objects:
mesh_path = obj.get("meshPath")
if not mesh_path or not mesh_path.lower().endswith(".txt"):
continue
if mesh_path not in cache:
if not os.path.isfile(mesh_path):
print(f" WARNING: mesh not found, skipping: {mesh_path}")
cache[mesh_path] = None
else:
bin_path = mesh_path + ".bin"
convert(mesh_path, bin_path)
cache[mesh_path] = bin_path
if cache[mesh_path] is not None:
obj["meshPath"] = cache[mesh_path]
os.makedirs(os.path.dirname(os.path.abspath(dst_path)), exist_ok=True)
with open(dst_path, 'w', encoding='utf-8') as f:
json.dump(config, f, indent=4, ensure_ascii=False)
converted_count = sum(1 for v in cache.values() if v is not None)
print(f"Saved: {dst_path} ({converted_count} mesh(es) converted, "
f"{len(cache) - converted_count} skipped)")
if __name__ == '__main__':
if len(sys.argv) != 3:
print(f"Usage: {sys.argv[0]} <src_config.json> <dst_config.json>")
sys.exit(1)
convert_config(sys.argv[1], sys.argv[2])
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,503 @@
{
"objects": [
{
"name": "Door_Room_1_1_0_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_1_1_0_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.1,
"positionY": 0.0,
"positionZ": 10.0,
"approachRadius": 0.89,
"boundsMaxX": 0.01552116870880127,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5717296600341797,
"boundsMinX": -0.09790635108947754,
"boundsMinY": -1.0,
"boundsMinZ": -0.548670768737793,
"interactionPositionX": 0.9887073040008545,
"interactionPositionY": 0.0,
"interactionPositionZ": 10.041143417358398,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Room_1_-1_0_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_1_-1_0_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.1,
"positionY": 0.0,
"positionZ": 10.0,
"approachRadius": 0.8,
"boundsMaxX": 0.10440409183502197,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5663089752197266,
"boundsMinX": -0.05429041385650635,
"boundsMinY": -1.0,
"boundsMinZ": -0.5487642288208008,
"interactionPositionX": -0.9637802839279175,
"interactionPositionY": 0.0,
"interactionPositionZ": 9.992685317993164,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Room_-1_1_0_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_-1_1_0_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.1,
"positionY": 0.0,
"positionZ": -10.0,
"approachRadius": 0.8,
"boundsMaxX": 0.05766594409942627,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5710372924804688,
"boundsMinX": -0.0875619649887085,
"boundsMinY": -1.0,
"boundsMinZ": -0.525609016418457,
"interactionPositionX": 0.988898515701294,
"interactionPositionY": 0.0,
"interactionPositionZ": -9.97990608215332,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Room_-1_-1_0_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_-1_-1_0_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.1,
"positionY": 0.0,
"positionZ": -10.0,
"approachRadius": 0.8,
"boundsMaxX": 0.10906755924224854,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5573873519897461,
"boundsMinX": -0.02557361125946045,
"boundsMinY": -1.0,
"boundsMinZ": -0.5323200225830078,
"interactionPositionX": -0.968346118927002,
"interactionPositionY": 0.0,
"interactionPositionZ": -10.002159118652344,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Room_1_1_1_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_1_1_1_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.1,
"positionY": 0.0,
"positionZ": 15.7,
"approachRadius": 0.8,
"boundsMaxX": 0.046350955963134766,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5500001907348633,
"boundsMinX": -0.10775184631347656,
"boundsMinY": -1.0,
"boundsMinZ": -0.5863857269287109,
"interactionPositionX": 1.005477786064148,
"interactionPositionY": 0.0,
"interactionPositionZ": 15.732091903686523,
"scale": 1.0,
"interactionRadius": 0.5,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Room_1_-1_1_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_1_-1_1_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.1,
"positionY": 0.0,
"positionZ": 15.7,
"approachRadius": 0.800000011920929,
"boundsMaxX": 0.12420153617858887,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5454416275024414,
"boundsMinX": -0.02631092071533203,
"boundsMinY": 0.0,
"boundsMinZ": -0.5781536102294922,
"interactionPositionX": -0.9698797464370728,
"interactionPositionY": 0.0,
"interactionPositionZ": 15.617175102233887,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Utility_1_1_2_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Utility_1_1_2_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.1,
"positionY": 0.0,
"positionZ": 19.95,
"approachRadius": 0.8,
"boundsMaxX": -0.05098748207092285,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.52764892578125,
"boundsMinX": -0.1196892261505127,
"boundsMinY": -1.0,
"boundsMinZ": -0.5527801513671875,
"interactionPositionX": 1.0174394845962524,
"interactionPositionY": 0.0,
"interactionPositionZ": 19.976728439331055,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Utility_1_-1_2_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Utility_1_-1_2_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.1,
"positionY": 0.0,
"positionZ": 19.95,
"approachRadius": 0.8,
"boundsMaxX": 0.07334935665130615,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5791053771972656,
"boundsMinX": -0.04259765148162842,
"boundsMinY": -1.0,
"boundsMinZ": -0.5342922210693359,
"interactionPositionX": -1.0046367645263672,
"interactionPositionY": 0.0,
"interactionPositionZ": 19.962736129760742,
"interactionRadius": 0.5,
"scale": 1.0,
"activateFunction": "on_locked_door_click"
},
{
"name": "Door_Utility_-1_1_2_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Utility_-1_1_2_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.1,
"positionY": 0.0,
"positionZ": -19.95,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": -0.6,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Door_Utility_-1_-1_2_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Utility_-1_-1_2_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.1,
"positionY": 0.0,
"positionZ": -19.95,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": -0.6,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Phone001",
"texturePath": "resources/w/dorm2/phone001_tex001.png",
"meshPath": "resources/w/dorm2/phone001_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 6.6644,
"positionY": 0.9,
"positionZ": -12.5262,
"approachRadius": 0.6,
"boundsMaxX": 0.32435035705566406,
"boundsMaxY": 0.5,
"boundsMaxZ": 0.5178079605102539,
"boundsMinX": -0.19553518295288086,
"boundsMinY": -0.5,
"boundsMinZ": -0.2698993682861328,
"interactionPositionX": 6.694502353668213,
"interactionPositionY": 0.0,
"interactionPositionZ": -12.80740737915039,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_phone_pickup"
},
{
"name": "Journal001",
"texturePath": "resources/w/dorm2/journal001_tex002.png",
"meshPath": "resources/w/dorm2/journal001_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 5.84296,
"positionY": 0.9,
"positionZ": -12.4661,
"approachRadius": 0.6,
"boundsMaxX": 0.17081403732299805,
"boundsMaxY": 0.5,
"boundsMaxZ": 0.35796260833740234,
"boundsMinX": -0.22043895721435547,
"boundsMinY": -0.5,
"boundsMinZ": -0.25891780853271484,
"interactionPositionX": 5.819052696228027,
"interactionPositionY": 0.0,
"interactionPositionZ": -12.76319408416748,
"scale": 1.0,
"interactionRadius": 0.3,
"activateFunction": "on_journal_pickup"
},
{
"name": "Bed001",
"texturePath": "resources/transparent.png",
"meshPath": "resources/w/Cube_001.txt",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": 0.0,
"positionZ": 0.0,
"boundsMaxX": 8.642372131347656,
"boundsMaxY": 1.0,
"boundsMaxZ": -15.692028045654297,
"boundsMinX": 6.203922748565674,
"boundsMinY": 0.0,
"boundsMinZ": -16.945722579956055,
"interactionPositionX": 8.280488014221191,
"interactionPositionY": 0.0,
"interactionPositionZ": -15.692096710205078,
"approachRadius": 0.6,
"scale": 1.0,
"interactionRadius": 0.3,
"activateFunction": "on_bed_sleep"
},
{
"name": "Door_Bath_-1_1_1_Leaf_002",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Bath_-1_1_1_Leaf_002.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 2.825,
"positionY": 0.0,
"positionZ": -14.3,
"pivotX": -0.6,
"pivotY": 0.0,
"pivotZ": 0.0,
"approachRadius": 0.8,
"boundsMaxX": 0.5514686107635498,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.11902141571044922,
"boundsMinX": -0.5845658779144287,
"boundsMinY": -1.0,
"boundsMinZ": -0.11658763885498047,
"interactionPositionX": 2.8216893672943115,
"interactionPositionY": 0.0,
"interactionPositionZ": -14.428529739379883,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_player_bathroom_click"
},
{
"name": "Door_Bath_-1_-1_1_Leaf_002",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Bath_-1_-1_1_Leaf_002.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -2.825,
"positionY": 0.0,
"positionZ": -14.3,
"approachRadius": 0.8,
"boundsMaxX": 0.5543923377990723,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.09879684448242188,
"boundsMinX": -0.5794532299041748,
"boundsMinY": -1.0,
"boundsMinZ": -0.10668659210205078,
"interactionPositionX": -2.365324020385742,
"interactionPositionY": 0.0,
"interactionPositionZ": -14.433123588562012,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_alik_bathroom_click"
},
{
"name": "Door_Room_-1_1_1_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_-1_1_1_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.1,
"positionY": 0.0,
"positionZ": -15.7,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": -0.6,
"approachRadius": 0.8,
"boundsMaxX": 0.12640702724456787,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5614070892333984,
"boundsMinX": -0.07332098484039307,
"boundsMinY": -1.0,
"boundsMinZ": -0.5617532730102539,
"interactionPositionX": 1.4176452159881592,
"interactionPositionY": 0.0,
"interactionPositionZ": -15.264726638793945,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_player_door_click"
},
{
"name": "Door_Room_-1_-1_1_Leaf_001",
"texturePath": "resources/w/dorm2/doors_tex001.png",
"meshPath": "resources/w/dorm2/Door_Room_-1_-1_1_Leaf_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.1,
"positionY": 0.0,
"positionZ": -15.7,
"approachRadius": 0.8,
"boundsMaxX": 0.13942182064056396,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5940608978271484,
"boundsMinX": -0.0942072868347168,
"boundsMinY": -1.0,
"boundsMinZ": -0.5547590255737305,
"interactionPositionX": -0.9912688732147217,
"interactionPositionY": 0.0,
"interactionPositionZ": -15.256343841552734,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": -0.6,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_alik_door_click"
},
{
"name": "Room_Cover_Bath_W_N_2_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_North_West_1_Bath_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_LivingRoom_W_N_2_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_North_West_1_RoomB_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_LivingRoom_W_S_2_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_South_West_1_RoomB_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_Main_Hall_And_Corridors_002",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_Main_Hall_Corridor_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_Others_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_All_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_Utility_W_N_3_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_North_West_2_Utility_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_Utility_W_S_3_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/dorm2/Room_Cover_South_West_2_Utility_001.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -0.1,
"positionZ": 0.0,
"scale": 1.0,
"interactionRadius": 0.0
}
]
}
@@ -0,0 +1,28 @@
{
"objects": [
{
"name": "Container001",
"texturePath": "resources/w/exterior/derbis001_tex001.png",
"meshPath": "resources/w/exterior/Derbis_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -26.8049,
"positionY": 0.0,
"positionZ": 9.11524,
"approachRadius": 1.5,
"boundsMaxX": 2.9518299102783203,
"boundsMaxY": 1.0,
"boundsMaxZ": 2.6554784774780273,
"boundsMinX": -2.662546157836914,
"boundsMinY": 0.0,
"boundsMinZ": -1.8787870407104492,
"interactionPositionX": -25.583452224731445,
"interactionPositionY": 0.0,
"interactionPositionZ": 6.782981872558594,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_container_clicked"
}
]
}
@@ -0,0 +1,443 @@
{
"objects": [
{
"name": "Computer001",
"texturePath": "resources/w/interior/computer_texture002.png",
"textureDarkandsPath": "resources/w/interior/computer_texture002.png",
"meshPath": "resources/w/interior/computer001_004.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 5.0916,
"positionY": 1.1534,
"positionZ": 0.751629,
"approachRadius": 1.2,
"boundsMaxX": 0.6253643035888672,
"boundsMaxY": 0.5,
"boundsMaxZ": 0.638715922832489,
"boundsMinX": -0.6565828323364258,
"boundsMinY": -1.0,
"boundsMinZ": -0.7323135733604431,
"interactionPositionX": 4.502297401428223,
"interactionPositionY": 0.0,
"interactionPositionZ": 1.3883256912231445,
"scale": 1.0,
"activateFunction": "on_computer_clicked"
},
{
"name": "Knife001",
"texturePath": "resources/w/white.png",
"meshPath": "resources/w/interior/Knife.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -5.3964,
"positionY": 0.91414,
"positionZ": 2.54703,
"approachRadius": 1.4,
"boundsMaxX": 0.30867958068847656,
"boundsMaxY": 0.4,
"boundsMaxZ": 0.28728413581848145,
"boundsMinX": -0.444033145904541,
"boundsMinY": 0.0,
"boundsMinZ": -0.31477832794189453,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_knife_pickup"
},
{
"name": "Book001",
"texturePath": "resources/w/interior/book_tex002.png",
"meshPath": "resources/w/interior/book001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.84795,
"positionY": 0.6595,
"positionZ": 2.90552,
"approachRadius": 0.6,
"boundsMaxX": 0.2350165843963623,
"boundsMaxY": 0.3,
"boundsMaxZ": 0.3136167526245117,
"boundsMinX": -0.27574634552001953,
"boundsMinY": 0.0,
"boundsMinZ": -0.2367849349975586,
"interactionPositionX": 2.1176772117614746,
"interactionPositionY": 0.0,
"interactionPositionZ": 2.938464641571045,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_book_pickup"
},
{
"name": "Bookshelf001",
"texturePath": "resources/transparent.png",
"meshPath": "resources/w/Cube_001.txt",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.84795,
"positionY": 0.0,
"positionZ": 2.90552,
"approachRadius": 0.6,
"boundsMaxX": 0.24423766136169434,
"boundsMaxY": 2.0,
"boundsMaxZ": 1.0927515029907227,
"boundsMinX": -0.14073467254638672,
"boundsMinY": 0.0,
"boundsMinZ": -0.41706109046936035,
"interactionPositionX": 2.14984393119812,
"interactionPositionY": 0.0,
"interactionPositionZ": 3.089071750640869,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_bookshelf_clicked"
},
{
"name": "ReportCard001",
"texturePath": "resources/w/interior/report_card_tex001.png",
"meshPath": "resources/w/interior/book001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -5.10169,
"positionY": 1.09748,
"positionZ": 0.440886,
"approachRadius": 0.5,
"boundsMaxX": 0.9267187118530273,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.13578465580940247,
"boundsMinX": -0.6683897972106934,
"boundsMinY": -1.0,
"boundsMinZ": -0.26944229006767273,
"interactionPositionX": -4.608266353607178,
"interactionPositionY": 0.0,
"interactionPositionZ": 0.7330145835876465,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_report_card_pickup"
},
{
"name": "Note001",
"texturePath": "resources/w/interior/note001_text001.png",
"meshPath": "resources/w/interior/note001_001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 3.82193,
"positionY": 1.0438,
"positionZ": 1.07944,
"approachRadius": 0.6,
"boundsMaxX": 0.3282341957092285,
"boundsMaxY": 0.5,
"boundsMaxZ": 0.2137817144393921,
"boundsMinX": -0.21202635765075684,
"boundsMinY": 0.0,
"boundsMinZ": -0.5441347360610962,
"interactionPositionX": 3.836475133895874,
"interactionPositionY": 0.0,
"interactionPositionZ": 1.3356603384017944,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_note_pickup"
},
{
"name": "Room_N_2_Leaf001",
"texturePath": "resources/w/interior/doors_tex001.png",
"meshPath": "resources/w/interior/outputRoom_N_2_Leaf001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.5,
"positionY": 0.975,
"positionZ": 6.965,
"approachRadius": 0.7,
"boundsMaxX": 0.06785714626312256,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.49353456497192383,
"boundsMinX": -0.09638166427612305,
"boundsMinY": -1.0,
"boundsMinZ": -0.6017804145812988,
"interactionPositionX": 1.5370807647705078,
"interactionPositionY": 0.0,
"interactionPositionZ": 6.6271867752075195,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.565,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_library_door_click"
},
{
"name": "Room_N_1_Leaf001",
"texturePath": "resources/w/interior/doors_tex001.png",
"meshPath": "resources/w/interior/outputRoom_N_1_Leaf001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 1.5,
"positionY": 0.975,
"positionZ": -1.035,
"approachRadius": 0.8,
"boundsMaxX": 0.10772454738616943,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5702499151229858,
"boundsMinX": -0.0382380485534668,
"boundsMinY": -1.0,
"boundsMinZ": -0.5757150650024414,
"interactionPositionX": 1.6236109733581543,
"interactionPositionY": 0.0,
"interactionPositionZ": -1.3863778114318848,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.565,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_n2_door_click"
},
{
"name": "Room_S_1_Leaf001",
"texturePath": "resources/w/interior/doors_tex001.png",
"meshPath": "resources/w/interior/outputRoom_S_1_Leaf001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.5,
"positionY": 0.975,
"positionZ": -1.035,
"approachRadius": 0.8,
"boundsMaxX": 0.12115073204040527,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.6290097236633301,
"boundsMinX": -0.07913470268249512,
"boundsMinY": -1.0,
"boundsMinZ": -0.5976793766021729,
"interactionPositionX": -1.5360143184661865,
"interactionPositionY": 0.0,
"interactionPositionZ": -1.230910301208496,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.565,
"scale": 1.0,
"interactionRadius": 0.5,
"activateFunction": "on_s2_door_click"
},
{
"name": "Room_S_2_Leaf001",
"texturePath": "resources/w/interior/doors_tex001.png",
"meshPath": "resources/w/interior/outputRoom_S_2_Leaf001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.5,
"positionY": 0.975,
"positionZ": 6.965,
"approachRadius": 0.8,
"boundsMaxX": 0.09747374057769775,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.6132597923278809,
"boundsMinX": -0.07834482192993164,
"boundsMinY": -1.0,
"boundsMinZ": -0.5960769653320312,
"interactionPositionX": -1.5287463665008545,
"interactionPositionY": 0.0,
"interactionPositionZ": 6.798524856567383,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.565,
"scale": 1.0,
"interactionRadius": 0.0,
"activateFunction": "on_teachers_door_click"
},
{
"name": "Hall_Leaf001",
"texturePath": "resources/w/interior/doors_tex001.png",
"meshPath": "resources/w/interior/outputHall_Leaf001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.565,
"positionY": 0.975,
"positionZ": 8,
"approachRadius": 0.9,
"boundsMaxX": 0.6243956089019775,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.11013984680175781,
"boundsMinX": -0.6047632098197937,
"boundsMinY": -1.0,
"boundsMinZ": -0.12955093383789062,
"interactionPositionX": 0.02494657039642334,
"interactionPositionY": 0.0,
"interactionPositionZ": 8.023686408996582,
"scale": 1.0,
"pivotX": 0.565,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0,
"activateFunction": "on_hall_door_click"
},
{
"name": "Room_S_0_Leaf001",
"texturePath": "resources/w/interior/doors_tex001.png",
"meshPath": "resources/w/interior/outputRoom_S_0_Leaf001.txt.bin",
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": -1.5,
"positionY": 0.975,
"positionZ": -9.035,
"approachRadius": 0.8,
"boundsMaxX": 0.10914039611816406,
"boundsMaxY": 1.0,
"boundsMaxZ": 0.5991430282592773,
"boundsMinX": -0.04130113124847412,
"boundsMinY": -1.0,
"boundsMinZ": -0.6299610137939453,
"interactionPositionX": -1.4023009538650513,
"interactionPositionY": 0.0,
"interactionPositionZ": -9.225384712219238,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.565,
"scale": 1.0,
"interactionRadius": 0.5,
"activateFunction": "on_s1_door_click"
},
{
"name": "Room_Cover_Corridor_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_Corridor_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_Main_Hall_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_Main_Hall_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_North_1_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_North_1_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_South_1_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_South_1_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_North_2_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_North_2_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_South_2_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_South_2_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_North_3_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_North_3_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
},
{
"name": "Room_Cover_South_3_001",
"texturePath": "resources/black.png",
"meshPath": "resources/w/interior/Room_Cover_South_3_002.txt.bin",
"castShadowNight": false,
"rotationX": 0.0,
"rotationY": 0.0,
"rotationZ": 0.0,
"positionX": 0.0,
"positionY": -5.0,
"positionZ": 0.0,
"scale": 1.0,
"pivotX": 0.0,
"pivotY": 0.0,
"pivotZ": 0.0,
"interactionRadius": 0.0
}
]
}
+17 -7
View File
@@ -44,21 +44,31 @@
{
"id": "npc_04_ghost",
"name": "Призрак",
"texturePath": "resources/w/ghost_skin001.png",
"animationIdlePath": "resources/w/default_float001.anim",
"animationWalkPath": "resources/w/default_float001.anim",
"animationIdlePath": "resources/w/ghost/ghost_idle001.anim",
"animationWalkPath": "resources/w/ghost/ghost_idle001.anim",
"animationActionIdlePath": "resources/w/ghost/ghost_idle001.anim",
"animationActionAttackPath": "resources/w/ghost/ghost_attack001.anim",
"animationStandToActionPath": "resources/w/ghost/ghost_idle001.anim",
"animationActionToStandPath": "resources/w/ghost/ghost_idle001.anim",
"animationActionToDeathPath": "resources/w/ghost/ghost_die001.anim",
"animationDeathIdlePath": "resources/w/ghost/ghost_dead001.anim",
"meshTextures": {
"Ghost": "resources/w/ghost/Ghost_BaseColor.png"
},
"positionX": -0.28594,
"positionY": 0,
"positionZ": 13.9641,
"walkSpeed": 1.5,
"rotationSpeed": 8.0,
"modelScale": 0.01,
"modelCorrectionRotX": 0.0,
"modelScale": 1.0,
"modelCorrectionRotX": -90.0,
"modelCorrectionRotY": 180.0,
"modelCorrectionRotZ": 0.0,
"interactionRadius": 1.0
"interactionRadius": 1.0,
"hp": 35,
"canAttack": false
},
{
{
"id": "ghost_01x",
"name": "Тень",
"texturePath": "resources/w/ghost_skin002.png",
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large. Load diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loaded 100 of 122 files, more files were not shown because too many files have changed in this diff. Show more