npc+enemy(первая половина) фикс диалогов g

This commit is contained in:
2026-07-30 01:02:19 +07:00
parent 9878b4cc63
commit e4d634ec5f
20 changed files with 2134 additions and 29 deletions
Binary file not shown.
+24
View File
@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://hx5n2uo7y7bf"
path="res://.godot/imported/Ахмед.wav-9cdcddf00ce23795fcdf6718b2b94802.sample"
[deps]
source_file="res://Sound/effect/Ахмед.wav"
dest_files=["res://.godot/imported/Ахмед.wav-9cdcddf00ce23795fcdf6718b2b94802.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2
Binary file not shown.
+24
View File
@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dv24eggjt4bd0"
path="res://.godot/imported/Ахмед2.wav-afe49faf6dcab7367f6ca76452354115.sample"
[deps]
source_file="res://Sound/effect/Ахмед2.wav"
dest_files=["res://.godot/imported/Ахмед2.wav-afe49faf6dcab7367f6ca76452354115.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2
Binary file not shown.
+24
View File
@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://vti5bwsv7nr"
path="res://.godot/imported/Ахмед.wav-897afd9fc0e0f2ecddbcb8ac7147ec36.sample"
[deps]
source_file="res://Sound/Ахмед.wav"
dest_files=["res://.godot/imported/Ахмед.wav-897afd9fc0e0f2ecddbcb8ac7147ec36.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2
+127 -16
View File
@@ -17,6 +17,16 @@
[ext_resource type="PackedScene" uid="uid://uostigglwe36" path="res://addons/custmode/vagon.tscn" id="15_cgv6d"] [ext_resource type="PackedScene" uid="uid://uostigglwe36" path="res://addons/custmode/vagon.tscn" id="15_cgv6d"]
[ext_resource type="PackedScene" uid="uid://btbvk5tjlg3m3" path="res://addons/custmode/Models/source/psx_japanese_warehouse.tscn" id="15_kjqe1"] [ext_resource type="PackedScene" uid="uid://btbvk5tjlg3m3" path="res://addons/custmode/Models/source/psx_japanese_warehouse.tscn" id="15_kjqe1"]
[ext_resource type="PackedScene" uid="uid://bi572t16ogoqo" path="res://addons/custmode/garbage_track.tscn" id="17_y1uxi"] [ext_resource type="PackedScene" uid="uid://bi572t16ogoqo" path="res://addons/custmode/garbage_track.tscn" id="17_y1uxi"]
[ext_resource type="PackedScene" uid="uid://bosc6q1wqeps7" path="res://addons/NPC/npc-security.tscn" id="18_2dj88"]
[ext_resource type="PackedScene" uid="uid://du8f1rmtasbax" path="res://addons/NPC/npcbabka.tscn" id="19_7ays8"]
[ext_resource type="PackedScene" uid="uid://c0txsmf1ffuqg" path="res://addons/NPC/aristot.tscn" id="20_5v3pv"]
[ext_resource type="JSON" path="res://addons/NPC/dialog/map1/sec.json" id="20_emu02"]
[ext_resource type="PackedScene" uid="uid://duupbdffupc1n" path="res://addons/NPC/enemy/cigan.tscn" id="21_6hvf0"]
[ext_resource type="AudioStream" uid="uid://vti5bwsv7nr" path="res://Sound/Ахмед.wav" id="22_8s7mi"]
[ext_resource type="JSON" path="res://addons/NPC/dialog/map1/babka.json" id="23_3kji6"]
[ext_resource type="PackedScene" uid="uid://2xuobbl0hkyk" path="res://addons/custmode/Models/source/vaz_2105.tscn" id="23_yrgpi"]
[ext_resource type="JSON" path="res://addons/NPC/dialog/map1/arest.json" id="24_emu02"]
[ext_resource type="PackedScene" uid="uid://pjv5ptit5tvg" path="res://addons/Weapons/Scenes/AmmoRefillerScene.tscn" id="27_3kji6"]
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_8yhxy"] [sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_8yhxy"]
panorama = ExtResource("2_8yhxy") panorama = ExtResource("2_8yhxy")
@@ -188,26 +198,32 @@ transform = Transform3D(0.8976818, 0, -0.44064432, 0, 1, 0, 0.44064432, 0, 0.897
[node name="car5" parent="auto" unique_id=1863221443 instance=ExtResource("10_ng7ae")] [node name="car5" parent="auto" unique_id=1863221443 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.72761714, 0, 0.6859835, 0, 1, 0, -0.6859835, 0, 0.72761714, 155.41559, 0.05000019, -39.123177) transform = Transform3D(0.72761714, 0, 0.6859835, 0, 1, 0, -0.6859835, 0, 0.72761714, 155.41559, 0.05000019, -39.123177)
[node name="vaz2105" parent="auto" unique_id=159074785 instance=ExtResource("11_proq1")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 127.59149, 0.20823169, -61.586308)
[node name="vaz2106" parent="auto" unique_id=1460528559 instance=ExtResource("11_proq1")]
transform = Transform3D(0.5579024, 0, 1.3923881, 0, 1.5, 0, -1.3923881, 0, 0.5579024, 111.22854, 0.20823169, -58.777626)
[node name="vaz2107" parent="auto" unique_id=506181385 instance=ExtResource("11_proq1")]
transform = Transform3D(0.38911355, 0, 1.4486513, 0, 1.5, 0, -1.4486513, 0, 0.38911355, 127.59149, 0.20823169, -47.978703)
[node name="vaz2108" parent="auto" unique_id=1171737564 instance=ExtResource("11_proq1")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 117.77853, 0.20823169, -52.488434)
[node name="car6" parent="auto" unique_id=1511037213 instance=ExtResource("10_ng7ae")] [node name="car6" parent="auto" unique_id=1511037213 instance=ExtResource("10_ng7ae")]
transform = Transform3D(-0.588745, 0, 0.80831885, 0, 1, 0, -0.80831885, 0, -0.588745, 106.34987, 0.05000019, -27.155666) transform = Transform3D(-0.588745, 0, 0.80831885, 0, 1, 0, -0.80831885, 0, -0.588745, 106.34987, 0.05000019, -27.155666)
[node name="vaz2109" parent="auto" unique_id=1741568735 instance=ExtResource("11_proq1")] [node name="vaz2105" parent="auto" unique_id=159074785 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 107.833, 0.20823169, -69.94444) transform = Transform3D(0.7381221, 0, 1.0701288, 0, 1.3, 0, -1.0701288, 0, 0.7381221, 133.06233, 0.08107129, -50.184658)
[node name="vaz2110" parent="auto" unique_id=244562523 instance=ExtResource("11_proq1")] [node name="vaz2106" parent="auto" unique_id=1347529809 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 150.81404, 0.20823169, -61.586308) transform = Transform3D(-0.0037663376, 0, -1.2999946, 0, 1.3, 0, 1.2999946, 0, -0.0037663376, 132.61331, 0.08107129, -56.375797)
[node name="vaz2107" parent="auto" unique_id=1847890421 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 122.34361, 0.08107129, -40.77899)
[node name="vaz2108" parent="auto" unique_id=1462054653 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 113.90281, 0.08107129, -50.105663)
[node name="vaz2109" parent="auto" unique_id=1447126962 instance=ExtResource("23_yrgpi")]
transform = Transform3D(-1.2853696, 0, 0.19448563, 0, 1.3, 0, -0.19448563, 0, -1.2853696, 129.87952, 0.08107129, -32.006973)
[node name="vaz2110" parent="auto" unique_id=1979247828 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 123.71063, 0.08107129, -65.772316)
[node name="vaz2111" parent="auto" unique_id=825385760 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 104.878944, 0.08107129, -66.625275)
[node name="vaz2112" parent="auto" unique_id=755713690 instance=ExtResource("23_yrgpi")]
transform = Transform3D(-0.637028, 0, -1.1332234, 0, 1.3, 0, 1.1332234, 0, -0.637028, 141.25555, 0.08107081, -65.25995)
[node name="truba" type="Node3D" parent="." unique_id=1793831443] [node name="truba" type="Node3D" parent="." unique_id=1793831443]
@@ -437,3 +453,98 @@ transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -78.6035
[node name="Sketchfab_Scene6" parent="traks" unique_id=150437203 instance=ExtResource("17_y1uxi")] [node name="Sketchfab_Scene6" parent="traks" unique_id=150437203 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -97.58939) transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -97.58939)
[node name="npc" type="Node3D" parent="." unique_id=748416009]
[node name="secur" parent="npc" unique_id=2094693982 instance=ExtResource("18_2dj88")]
transform = Transform3D(-0.22122513, 0, 0.97522277, 0, 1, 0, -0.97522277, 0, -0.22122513, 236.17165, 0.05460739, -77.6084)
dialogue_data = Array[Dictionary]([])
dialogue_file = ExtResource("20_emu02")
[node name="babka" parent="npc" unique_id=1797533482 instance=ExtResource("19_7ays8")]
transform = Transform3D(-0.9875953, 0, 0.15702054, 0, 1, 0, -0.15702054, 0, -0.9875953, 178.76431, 1.4086559, 18.294493)
dialogue_file = ExtResource("23_3kji6")
[node name="aritot" parent="npc" unique_id=1345356780 instance=ExtResource("20_5v3pv")]
transform = Transform3D(-0.30027303, 0, 0.9538533, 0, 1, 0, -0.9538533, 0, -0.30027303, 46.378628, 0.95449877, -23.65288)
dialogue_file = ExtResource("24_emu02")
[node name="battel1" type="Node3D" parent="." unique_id=1104389055]
[node name="CharacterBody3D" parent="battel1" unique_id=1156384226 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 129.24011, 0.94639117, -28.026142)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D2" parent="battel1" unique_id=626362519 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 120.03938, 0.94639117, -35.727333)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D3" parent="battel1" unique_id=836135435 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 120.03938, 0.94639117, -59.02198)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D4" parent="battel1" unique_id=382645947 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 99.997826, 0.94639117, -59.02198)
move_speed = 2.0
damage_to_player = 2.0
custom_battle_music = ExtResource("22_8s7mi")
health = 5.0
[node name="CharacterBody3D5" parent="battel1" unique_id=936516052 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 99.997826, 0.94639117, -30.821632)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D6" parent="battel1" unique_id=1840984398 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 120.79072, 0.94639117, -48.40757)
move_speed = 2.0
damage_to_player = 2.0
custom_battle_music = ExtResource("22_8s7mi")
health = 5.0
[node name="CharacterBody3D7" parent="battel1" unique_id=761606704 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 129.14119, 0.94639117, -35.727333)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D8" parent="battel1" unique_id=350343242 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 129.14119, 0.94639117, -53.770195)
move_speed = 2.0
damage_to_player = 2.0
custom_battle_music = ExtResource("22_8s7mi")
health = 5.0
[node name="vaz2105" parent="battel1" unique_id=1326835688 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 164.39148, 0.08107129, -53.41939)
[node name="am" type="Node3D" parent="." unique_id=512579315]
[node name="AmmoRefiller" parent="am" unique_id=1413490376 instance=ExtResource("27_3kji6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.683653, 0.44769043, 1.5733643)
ammoToRefill = {
"GrenadeAmmo": 12,
"HeavyAmmo": 9,
"LightAmmo": 34,
"MediumAmmo": 60,
"RocketAmmo": 3,
"ShellAmmo": 128
}
[node name="AmmoRefiller2" parent="am" unique_id=1498406763 instance=ExtResource("27_3kji6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.787826, 0.44769043, 1.5733643)
ammoToRefill = {
"GrenadeAmmo": 12,
"HeavyAmmo": 9,
"LightAmmo": 34,
"MediumAmmo": 60,
"RocketAmmo": 3,
"ShellAmmo": 128
}
+560
View File
@@ -0,0 +1,560 @@
[gd_scene format=3 uid="uid://bicmsc2u0jjsw"]
[ext_resource type="PackedScene" uid="uid://bwggrf7sbmkcv" path="res://addons/PlayerCharacter/Scenes/PlayerCharacterScene.tscn" id="1_lecqj"]
[ext_resource type="Texture2D" uid="uid://b26ir1ccbj3f1" path="res://addons/texture_custom/Timeline 1_00086400.png" id="2_8yhxy"]
[ext_resource type="PackedScene" uid="uid://bjwirgtp1lhss" path="res://addons/custmode/vokzal_3.tscn" id="3_y76s3"]
[ext_resource type="Material" uid="uid://cxaj2ujanixc7" path="res://addons/custmode/materials/new_standard_material_3d.tres" id="4_4rk33"]
[ext_resource type="Texture2D" uid="uid://4dcj7a45w3yh" path="res://addons/custmode/Urban Jungle/building faces/building_03.jpg" id="5_4scfb"]
[ext_resource type="PackedScene" uid="uid://b34mb5pc1y4el" path="res://addons/custmode/xruha2.tscn" id="6_yudv5"]
[ext_resource type="Texture2D" uid="uid://b524tktqah63v" path="res://addons/custmode/Urban Jungle/building faces/building_02.jpg" id="7_rdaxf"]
[ext_resource type="Texture2D" uid="uid://epkgup0ivqo3" path="res://addons/custmode/Urban Jungle/bricks/bricks_02.jpg" id="8_vqw15"]
[ext_resource type="PackedScene" uid="uid://blxd132vgsdle" path="res://addons/custmode/larek.tscn" id="9_vqw15"]
[ext_resource type="PackedScene" uid="uid://muvkocbhln75" path="res://addons/custmode/car_2.tscn" id="10_ng7ae"]
[ext_resource type="PackedScene" uid="uid://x45udehn7ela" path="res://addons/custmode/Models/source/vaz2105.fbx" id="11_proq1"]
[ext_resource type="Material" uid="uid://o5wc3ps1w47x" path="res://addons/custmode/materials/panel_material_3d.tres" id="12_proq1"]
[ext_resource type="PackedScene" uid="uid://dte4uwmgvi023" path="res://addons/custmode/Models/back_r_ef_1.tscn" id="12_ybbbl"]
[ext_resource type="PackedScene" uid="uid://ck6nv0bdwmqsy" path="res://addons/custmode/Models/back_r_ef_2.tscn" id="14_f6er4"]
[ext_resource type="PackedScene" uid="uid://uostigglwe36" path="res://addons/custmode/vagon.tscn" id="15_cgv6d"]
[ext_resource type="PackedScene" uid="uid://btbvk5tjlg3m3" path="res://addons/custmode/Models/source/psx_japanese_warehouse.tscn" id="15_kjqe1"]
[ext_resource type="PackedScene" uid="uid://bi572t16ogoqo" path="res://addons/custmode/garbage_track.tscn" id="17_y1uxi"]
[ext_resource type="PackedScene" uid="uid://bosc6q1wqeps7" path="res://addons/NPC/npc-security.tscn" id="18_2dj88"]
[ext_resource type="PackedScene" uid="uid://du8f1rmtasbax" path="res://addons/NPC/npcbabka.tscn" id="19_7ays8"]
[ext_resource type="PackedScene" uid="uid://c0txsmf1ffuqg" path="res://addons/NPC/aristot.tscn" id="20_5v3pv"]
[ext_resource type="JSON" path="res://addons/NPC/dialog/sec.json" id="20_wdroc"]
[ext_resource type="PackedScene" uid="uid://duupbdffupc1n" path="res://addons/NPC/enemy/cigan.tscn" id="21_6hvf0"]
[ext_resource type="AudioStream" uid="uid://vti5bwsv7nr" path="res://Sound/Ахмед.wav" id="22_8s7mi"]
[ext_resource type="PackedScene" uid="uid://2xuobbl0hkyk" path="res://addons/custmode/Models/source/vaz_2105.tscn" id="23_yrgpi"]
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_8yhxy"]
panorama = ExtResource("2_8yhxy")
energy_multiplier = 0.85
[sub_resource type="Sky" id="Sky_y76s3"]
sky_material = SubResource("PanoramaSkyMaterial_8yhxy")
[sub_resource type="Environment" id="Environment_4rk33"]
background_mode = 2
sky = SubResource("Sky_y76s3")
sky_custom_fov = 127.5
sky_rotation = Vector3(-6.2831855, -2.8553586, 0.02617994)
ambient_light_sky_contribution = 0.37
ambient_light_energy = 10.55
ssr_enabled = true
ssr_fade_in = 2.2392774
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_yudv5"]
albedo_texture = ExtResource("5_4scfb")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_mqt4p"]
albedo_texture = ExtResource("7_rdaxf")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ng7ae"]
albedo_texture = ExtResource("8_vqw15")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_proq1"]
albedo_texture = ExtResource("5_4scfb")
[node name="world" type="Node3D" unique_id=522949471]
[node name="grond" type="CSGBox3D" parent="." unique_id=1719606979]
transform = Transform3D(1, 0, 0, 0, 0.1, 0, 0, 0, 1, 158.34615, 1.9073486e-06, -134.7201)
use_collision = true
size = Vector3(230.27588, 1, 1138.0377)
[node name="grond2" type="CSGBox3D" parent="grond" unique_id=1927380283]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -245.18466, 0, 0)
use_collision = true
size = Vector3(227.93372, 1, 1138.0377)
[node name="grond" type="CSGBox3D" parent="grond" unique_id=643191285]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 0.10000001, 0, -1, 0, -4.371139e-08, -157.30276, 0, -294.1404)
use_collision = true
size = Vector3(549.0773, 1, 506.62823)
[node name="grond3" type="CSGBox3D" parent="grond" unique_id=1538979399]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 0.10000001, 0, -1, 0, -4.371139e-08, -157.30276, 0, 473.12863)
use_collision = true
size = Vector3(549.0773, 1, 506.62823)
[node name="PlayerCharacter" parent="." unique_id=1059654044 instance=ExtResource("1_lecqj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 244.83806, 1.05, -89.64798)
metadata/_edit_group_ = true
[node name="ev" type="Node3D" parent="." unique_id=282827433]
[node name="WorldEnvironment" type="WorldEnvironment" parent="ev" unique_id=852452197]
environment = SubResource("Environment_4rk33")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="ev" unique_id=1053427202]
transform = Transform3D(0.10784156, 0.58931756, 0.8006718, 0.6043669, -0.6783268, 0.41786718, 0.7893729, 0.438836, -0.42931643, 0, 199.791, -104.256)
light_energy = 0.18
light_specular = 2.379
shadow_enabled = true
shadow_bias = 0.855
shadow_normal_bias = 1.97
shadow_reverse_cull_face = true
shadow_transmittance_bias = -0.05
shadow_blur = 1.15
[node name="start" type="Node3D" parent="." unique_id=638092048]
[node name="vokzal3" parent="start" unique_id=13340583 instance=ExtResource("3_y76s3")]
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 240.22108, 0.051242694, -51.180817)
[node name="zabor" type="Node3D" parent="start" unique_id=1196871753]
[node name="CSGBox3D" type="CSGBox3D" parent="start/zabor" unique_id=12901694]
transform = Transform3D(0.25, 0, 0, 0, 1, 0, 0, 0, 1, 232, 2.068134, -78.662384)
use_collision = true
size = Vector3(1, 3.8123627, 6.1052246)
material = ExtResource("4_4rk33")
[node name="CSGBox3D2" type="CSGBox3D" parent="start/zabor" unique_id=1627901003]
transform = Transform3D(0.18934569, 0, 0.65297127, 0, 1, 0, -0.16324282, 0, 0.75738275, 229.9964, 2.0419118, -83.95525)
use_collision = true
size = Vector3(1, 3.7599182, 6.1052246)
material = ExtResource("4_4rk33")
[node name="CSGBox3D3" type="CSGBox3D" parent="start/zabor" unique_id=958260980]
transform = Transform3D(0.25, 0, 0, 0, 1, 0, 0, 0, 1, 228.13397, 1.9989051, -95.77064)
use_collision = true
size = Vector3(1, 3.6966858, 19.23523)
material = ExtResource("4_4rk33")
[node name="lefhome" type="Node3D" parent="start" unique_id=242345197]
[node name="CSGBox3D" type="CSGBox3D" parent="start/lefhome" unique_id=1023709056]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 213.3952, 5.643055, -113.1583)
material_override = SubResource("StandardMaterial3D_yudv5")
use_collision = true
size = Vector3(29.990479, 11.055756, 17.226563)
material = ExtResource("4_4rk33")
[node name="hruhi" type="Node3D" parent="." unique_id=1006088662]
[node name="xruha" parent="hruhi" unique_id=1348431901 instance=ExtResource("6_yudv5")]
transform = Transform3D(-0.009878443, 0, -1.9999753, 0, 2, 0, 1.9999753, 0, -0.009878443, 124.725, -1.203, -106.069)
[node name="xruha2" parent="hruhi" unique_id=1476786256 instance=ExtResource("6_yudv5")]
transform = Transform3D(-0.009878443, 0, -1.9999753, 0, 2, 0, 1.9999753, 0, -0.009878443, -55.58595, -1.028, -110.993)
[node name="xruha3" parent="hruhi" unique_id=334631628 instance=ExtResource("6_yudv5")]
transform = Transform3D(-0.010471858, 0, 1.9999722, 0, 2, 0, -1.9999722, 0, -0.010471858, 124.7247, -1.5808153, 17.515282)
[node name="xruha4" parent="hruhi" unique_id=230567876 instance=ExtResource("6_yudv5")]
transform = Transform3D(-0.010471858, 0, 1.9999722, 0, 2, 0, -1.9999722, 0, -0.010471858, -55.012947, -1.554, 13.053)
[node name="build2" type="Node3D" parent="." unique_id=866033970]
transform = Transform3D(0.258, 0, 0, 0, 0.617, 0, 0, 0, 0.346, 302.47336, 0, -10.984846)
[node name="CSGBox3D2" type="CSGBox3D" parent="build2" unique_id=80417783]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -278.7324, 5.124804, 104.50032)
material_override = SubResource("StandardMaterial3D_mqt4p")
calculate_tangents = false
use_collision = true
size = Vector3(177.949, 14.951505, 56.207)
[node name="CSGBox3D" type="CSGBox3D" parent="build2" unique_id=2136227872]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -226.18253, 0.8811221, 199.43336)
material_override = SubResource("StandardMaterial3D_ng7ae")
calculate_tangents = false
use_collision = true
size = Vector3(72.7045, 29.189222, 133.583)
[node name="CSGBox3D4" type="CSGBox3D" parent="build2" unique_id=344131087]
transform = Transform3D(-0.014642832, 0, 0.9998928, 0, 1, 0, -0.9998928, 0, -0.014642832, -389.81293, 2.8164482, 146.12822)
material_override = SubResource("StandardMaterial3D_proq1")
use_collision = true
size = Vector3(138.412, 33.199512, 70.261)
[node name="CSGBox3D3" type="CSGBox3D" parent="build2" unique_id=140668298]
transform = Transform3D(0.1323651, 0, -0.8483347, 0, 1, 0, 0.21208374, 0, 0.52946055, -149.29932, 1.6159015, 53.891617)
use_collision = true
size = Vector3(1, 2.907898, 96.81464)
material = ExtResource("4_4rk33")
[node name="larek" parent="." unique_id=423452881 instance=ExtResource("9_vqw15")]
transform = Transform3D(0.40743598, 0, 1.5420834, 0, 1.595, 0, -1.5420834, 0, 0.40743598, 179.49547, -0.32802963, 18.90769)
[node name="auto" type="Node3D" parent="." unique_id=1539278193]
[node name="ground" type="CSGBox3D" parent="auto" unique_id=1801303835]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 133.85855, -0.3555782, -48.16407)
size = Vector3(80.11655, 1, 57.98456)
material = ExtResource("4_4rk33")
[node name="car2" parent="auto" unique_id=2050930364 instance=ExtResource("10_ng7ae")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 141.05005, 0.05000019, -39.417015)
[node name="car3" parent="auto" unique_id=210284454 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.94411206, 0, 0.3296247, 0, 1, 0, -0.3296247, 0, 0.94411206, 145.37689, 0.05000019, -39.417015)
[node name="car4" parent="auto" unique_id=735907057 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.8976818, 0, -0.44064432, 0, 1, 0, 0.44064432, 0, 0.8976818, 135.53938, 0.05000019, -39.417015)
[node name="car5" parent="auto" unique_id=1863221443 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.72761714, 0, 0.6859835, 0, 1, 0, -0.6859835, 0, 0.72761714, 155.41559, 0.05000019, -39.123177)
[node name="car6" parent="auto" unique_id=1511037213 instance=ExtResource("10_ng7ae")]
transform = Transform3D(-0.588745, 0, 0.80831885, 0, 1, 0, -0.80831885, 0, -0.588745, 106.34987, 0.05000019, -27.155666)
[node name="vaz2105" parent="auto" unique_id=159074785 instance=ExtResource("23_yrgpi")]
transform = Transform3D(0.7381221, 0, 1.0701288, 0, 1.3, 0, -1.0701288, 0, 0.7381221, 133.06233, 0.08107129, -50.184658)
[node name="vaz2106" parent="auto" unique_id=1347529809 instance=ExtResource("23_yrgpi")]
transform = Transform3D(-0.0037663376, 0, -1.2999946, 0, 1.3, 0, 1.2999946, 0, -0.0037663376, 132.61331, 0.08107129, -56.375797)
[node name="vaz2107" parent="auto" unique_id=1847890421 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 122.34361, 0.08107129, -40.77899)
[node name="vaz2108" parent="auto" unique_id=1462054653 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 113.90281, 0.08107129, -50.105663)
[node name="vaz2109" parent="auto" unique_id=1447126962 instance=ExtResource("23_yrgpi")]
transform = Transform3D(-1.2853696, 0, 0.19448563, 0, 1.3, 0, -0.19448563, 0, -1.2853696, 129.87952, 0.08107129, -32.006973)
[node name="vaz2110" parent="auto" unique_id=1979247828 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 123.71063, 0.08107129, -65.772316)
[node name="vaz2111" parent="auto" unique_id=825385760 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 104.878944, 0.08107129, -66.625275)
[node name="vaz2112" parent="auto" unique_id=755713690 instance=ExtResource("23_yrgpi")]
transform = Transform3D(-0.637028, 0, -1.1332234, 0, 1.3, 0, 1.1332234, 0, -0.637028, 141.25555, 0.08107081, -65.25995)
[node name="truba" type="Node3D" parent="." unique_id=1793831443]
[node name="CSGCylinder3D" type="CSGCylinder3D" parent="truba" unique_id=1278035767]
transform = Transform3D(-9.474492e-10, -0.02167505, 0.99976504, 1, -4.371139e-08, 0, 4.3701117e-08, 0.99976504, 0.02167505, 39.191544, -6.795421, -51.351578)
use_collision = true
radius = 2.416
height = 218.49495
material = ExtResource("4_4rk33")
[node name="CSGCylinder3D3" type="CSGCylinder3D" parent="truba" unique_id=1810741665]
transform = Transform3D(-9.474492e-10, -0.02167505, 0.99976504, 1, -4.371139e-08, 0, 4.3701117e-08, 0.99976504, 0.02167505, 32.523273, -8.922827, -51.351578)
use_collision = true
radius = 2.416
height = 218.49495
material = ExtResource("4_4rk33")
[node name="zabor2" type="Node3D" parent="." unique_id=495368684]
[node name="BackREf1" parent="zabor2" unique_id=1898325547 instance=ExtResource("12_ybbbl")]
transform = Transform3D(0.019021204, 0, -0.474619, 0, 0.475, 0, 0.474619, 0, 0.019021204, 53.483265, 186.0407, -181.08073)
[node name="CSGBox3D3" type="CSGBox3D" parent="zabor2" unique_id=25468821]
transform = Transform3D(0.008724874, 0, 0.99939084, 0, 1, 0, -0.24984771, 0, 0.034899496, 33.580322, 8.18557, -108.8807)
use_collision = true
size = Vector3(1, 15.42881, 86.70757)
material = ExtResource("4_4rk33")
[node name="CSGBox3D4" type="CSGBox3D" parent="zabor2" unique_id=1843952243]
transform = Transform3D(0.008724874, 0, 0.99939084, 0, 1, 0, -0.24984771, 0, 0.034899496, 51.03391, 8.18557, 14.511322)
use_collision = true
size = Vector3(1, 15.42881, 57.092422)
material = ExtResource("4_4rk33")
[node name="CSGBox3D5" type="CSGBox3D" parent="zabor2" unique_id=1229489624]
transform = Transform3D(0.24991111, 0, 0.026665404, 0, 1, 0, -0.006666351, 0, 0.99964446, 23.687307, 7.9648724, 46.07273)
use_collision = true
size = Vector3(1, 15.42881, 64.85285)
material = ExtResource("4_4rk33")
[node name="CSGBox3D6" type="CSGBox3D" parent="zabor2" unique_id=786407374]
transform = Transform3D(-0.14006215, 0, 0.8283245, 0, 1, 0, -0.20708112, 0, -0.5602486, 47.883816, 7.8932266, 62.30451)
use_collision = true
size = Vector3(1, 15.42881, 57.092422)
material = ExtResource("4_4rk33")
[node name="panel2" type="Node3D" parent="." unique_id=146005241]
[node name="xruha" parent="panel2" unique_id=1625191379 instance=ExtResource("6_yudv5")]
transform = Transform3D(1.9999999, 0, 0, 0, 2, 0, 0, 0, 1.9999999, -2.9880066, -1.203, 180.14209)
[node name="xruha2" parent="panel2" unique_id=392233576 instance=ExtResource("6_yudv5")]
transform = Transform3D(1.9999999, 0, 0, 0, 2, 0, 0, 0, 1.9999999, -2.9880066, -1.203, 243.6313)
[node name="CSGBox3D" type="CSGBox3D" parent="panel2" unique_id=1497459825]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -39.080204, 12.146851, 77.879395)
use_collision = true
size = Vector3(54.80542, 25.293701, 89.44092)
material = ExtResource("12_proq1")
[node name="CSGBox3D2" type="CSGBox3D" parent="panel2" unique_id=428763059]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 83.25791, 10.667782, 90.32921)
use_collision = true
size = Vector3(94.46632, 23.686707, 37.61911)
material = ExtResource("12_proq1")
[node name="CSGBox3D3" type="CSGBox3D" parent="panel2" unique_id=88832739]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 66.89024, 37.295258, 114.98661)
use_collision = true
size = Vector3(23.591677, 23.686707, 60.342724)
material = ExtResource("12_proq1")
[node name="CSGBox3D4" type="CSGBox3D" parent="panel2" unique_id=1879659994]
transform = Transform3D(0.81797904, 0, -0.575248, 0, 1, 0, 0.575248, 0, 0.81797904, 83.25791, 11.091682, 151.99356)
use_collision = true
size = Vector3(94.46632, 23.686707, 37.61911)
material = ExtResource("12_proq1")
[node name="BackREf2" parent="panel2" unique_id=562081405 instance=ExtResource("14_f6er4")]
transform = Transform3D(7.694859, 0, 125.8099, 0, 126.045, 0, -125.8099, 0, 7.694859, 102.36827, 113.133644, 229.01929)
[node name="PSX Japanese Warehouse" parent="panel2" unique_id=1074574302 instance=ExtResource("15_kjqe1")]
transform = Transform3D(2.4872177, 0, -1.4912236, 0, 2.9, 0, 1.4912236, 0, 2.4872177, -19.965668, 0, 135.858)
[node name="CSGBox3D5" type="CSGBox3D" parent="panel2" unique_id=60707985]
transform = Transform3D(0.81797904, 0, -0.575248, 0, 1, 0, 0.575248, 0, 0.81797904, 83.25791, 11.091682, 151.99356)
use_collision = true
size = Vector3(94.46632, 23.686707, 37.61911)
material = ExtResource("12_proq1")
[node name="CSGBox3D6" type="CSGBox3D" parent="panel2" unique_id=1618995654]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -100.576385, 6.3511963, 98.23836)
use_collision = true
size = Vector3(72.30467, 13.702393, 35.111816)
material = ExtResource("12_proq1")
[node name="CSGBox3D7" type="CSGBox3D" parent="panel2" unique_id=2022265849]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -78.97875, 34.665833, 97.201294)
use_collision = true
size = Vector3(54.197205, 13.702393, 35.111816)
material = ExtResource("12_proq1")
[node name="CSGBox3D8" type="CSGBox3D" parent="panel2" unique_id=867479652]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -93.07043, 20.284473, 95.88515)
use_collision = true
size = Vector3(26.230698, 13.702393, 35.111816)
material = ExtResource("12_proq1")
[node name="oth" type="Node3D" parent="." unique_id=1721063470]
[node name="vagon" parent="oth" unique_id=1152981182 instance=ExtResource("15_cgv6d")]
transform = Transform3D(3.3741286, 1.1948419, -2.7271967, -1.5021311, 4.2418866, 1.2963067e-08, 2.5707693, 0.91035736, 3.57944, 37.589092, 0, 285.1403)
[node name="vagon3" parent="oth" unique_id=1111479200 instance=ExtResource("15_cgv6d")]
transform = Transform3D(1.0118319, 0.35830846, -4.3701043, -1.502131, 4.2418866, 0, 4.119442, 1.4587709, 1.0734005, -8.880792, 0, 319.21954)
[node name="CSGBox3D2" type="CSGBox3D" parent="oth" unique_id=500521755]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 90.31004, 21.010021, 364.98682)
use_collision = true
size = Vector3(80.36206, 44.371185, 37.61911)
material = ExtResource("12_proq1")
[node name="CSGBox3D3" type="CSGBox3D" parent="oth" unique_id=1891028237]
transform = Transform3D(0.91796243, 0, -0.3966673, 0, 1, 0, 0.3966673, 0, 0.91796243, -5.2302933, 18.645344, 373.76743)
use_collision = true
size = Vector3(94.46632, 39.64183, 25.327621)
material = ExtResource("12_proq1")
[node name="CSGBox3D4" type="CSGBox3D" parent="oth" unique_id=1070817469]
transform = Transform3D(0.34210217, 0, -0.9396629, 0, 1, 0, 0.9396629, 0, 0.34210217, 90.31004, 10.667782, 310.26013)
use_collision = true
size = Vector3(80.36206, 23.686707, 37.61911)
material = ExtResource("12_proq1")
[node name="CSGBox3D5" type="CSGBox3D" parent="oth" unique_id=579987507]
transform = Transform3D(0.9079019, 0, -0.41918272, 0, 1, 0, 0.41918272, 0, 0.9079019, 54.16565, 43.23919, 334.8498)
use_collision = true
size = Vector3(29.272827, 8.217663, 86.68787)
material = ExtResource("12_proq1")
[node name="CSGBox3D6" type="CSGBox3D" parent="oth" unique_id=2026708041]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 85.86658, 21.010021, 321.3631)
use_collision = true
size = Vector3(27.936218, 44.371185, 37.61911)
material = ExtResource("12_proq1")
[node name="auto2" type="Node3D" parent="." unique_id=2005708356]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -5.639145, 0, 316.2368)
[node name="ground" type="CSGBox3D" parent="auto2" unique_id=213314181]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 133.85855, -0.3555782, -48.16407)
size = Vector3(80.11655, 1, 57.98456)
material = ExtResource("4_4rk33")
[node name="car2" parent="auto2" unique_id=895042380 instance=ExtResource("10_ng7ae")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 141.05005, 0.05000019, -39.417015)
[node name="car3" parent="auto2" unique_id=140786338 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.94411206, 0, 0.3296247, 0, 1, 0, -0.3296247, 0, 0.94411206, 145.37689, 0.05000019, -39.417015)
[node name="car4" parent="auto2" unique_id=724998498 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.8976818, 0, -0.44064432, 0, 1, 0, 0.44064432, 0, 0.8976818, 135.53938, 0.05000019, -39.417015)
[node name="car5" parent="auto2" unique_id=1785783950 instance=ExtResource("10_ng7ae")]
transform = Transform3D(0.72761714, 0, 0.6859835, 0, 1, 0, -0.6859835, 0, 0.72761714, 155.41559, 0.05000019, -39.123177)
[node name="vaz2105" parent="auto2" unique_id=293934017 instance=ExtResource("11_proq1")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 127.59149, 0.20823169, -61.586308)
[node name="vaz2106" parent="auto2" unique_id=688796877 instance=ExtResource("11_proq1")]
transform = Transform3D(0.5579024, 0, 1.3923881, 0, 1.5, 0, -1.3923881, 0, 0.5579024, 111.22854, 0.20823169, -58.777626)
[node name="vaz2107" parent="auto2" unique_id=1121279012 instance=ExtResource("11_proq1")]
transform = Transform3D(0.38911355, 0, 1.4486513, 0, 1.5, 0, -1.4486513, 0, 0.38911355, 127.59149, 0.20823169, -47.978703)
[node name="vaz2108" parent="auto2" unique_id=169352053 instance=ExtResource("11_proq1")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 117.77853, 0.20823169, -52.488434)
[node name="car6" parent="auto2" unique_id=1474212939 instance=ExtResource("10_ng7ae")]
transform = Transform3D(-0.588745, 0, 0.80831885, 0, 1, 0, -0.80831885, 0, -0.588745, 106.34987, 0.05000019, -27.155666)
[node name="vaz2109" parent="auto2" unique_id=1941123716 instance=ExtResource("11_proq1")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 107.833, 0.20823169, -69.94444)
[node name="vaz2110" parent="auto2" unique_id=906269965 instance=ExtResource("11_proq1")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 150.81404, 0.20823169, -61.586308)
[node name="end" type="Node3D" parent="." unique_id=1075000191]
[node name="xruha" parent="end" unique_id=232907050 instance=ExtResource("6_yudv5")]
transform = Transform3D(1.7009246, 0, 1.0520716, 0, 2, 0, -1.0520716, 0, 1.7009246, -75.83963, -1.203, 323.22424)
[node name="xruha3" parent="end" unique_id=1879822519 instance=ExtResource("6_yudv5")]
transform = Transform3D(1.9999999, 0, 0, 0, 2, 0, 0, 0, 1.9999999, -141.67607, -1.203, 76.36853)
[node name="xruha4" parent="end" unique_id=1630424727 instance=ExtResource("6_yudv5")]
transform = Transform3D(1.9999999, 0, 0, 0, 2, 0, 0, 0, 1.9999999, -141.67607, -1.203, 139.85776)
[node name="CSGBox3D3" type="CSGBox3D" parent="end" unique_id=1861697483]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -172.72705, 18.678047, 280.1199)
use_collision = true
size = Vector3(85.00232, 39.576424, 134.0766)
material = ExtResource("12_proq1")
[node name="CSGBox3D5" type="CSGBox3D" parent="end" unique_id=1585882508]
transform = Transform3D(0.10580403, 0, -0.7061203, 0, 1, 0, 0.2533052, 0, 0.29494214, -111.73096, 7.9648724, 306.37994)
use_collision = true
size = Vector3(1, 15.42881, 47.844883)
material = ExtResource("4_4rk33")
[node name="traks" type="Node3D" parent="." unique_id=2117848960]
[node name="Sketchfab_Scene" parent="traks" unique_id=1251330679 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -4.794965)
[node name="Sketchfab_Scene2" parent="traks" unique_id=1196271883 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -22.164272)
[node name="Sketchfab_Scene3" parent="traks" unique_id=260796516 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -41.396324)
[node name="Sketchfab_Scene4" parent="traks" unique_id=1893097331 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -59.868683)
[node name="Sketchfab_Scene5" parent="traks" unique_id=44880927 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -78.60358)
[node name="Sketchfab_Scene6" parent="traks" unique_id=150437203 instance=ExtResource("17_y1uxi")]
transform = Transform3D(4.5, 0, 0, 0, 4.5, 0, 0, 0, 4.5, -51.856865, 0, -97.58939)
[node name="npc" type="Node3D" parent="." unique_id=748416009]
[node name="secur" parent="npc" unique_id=2094693982 instance=ExtResource("18_2dj88")]
transform = Transform3D(-0.22122513, 0, 0.97522277, 0, 1, 0, -0.97522277, 0, -0.22122513, 236.17165, 0.05460739, -77.6084)
dialogue_data = Array[Dictionary]([{
"name": "Иван",
"text": " Приветствую уважаемый!"
}, {
"name": "Охранник",
"text": " Держи дистанцию, ты можешь быть переодетым драконом или засланным уродом газспора"
}, {
"name": "Иван",
"text": "Я хочу просто узнать пару моментов"
}])
[node name="secur" parent="npc/secur" unique_id=2065301950 instance=ExtResource("18_2dj88")]
transform = Transform3D(-0.22122513, 0, 0.97522277, 0, 1, 0, -0.97522277, 0, -0.22122513, 236.17165, 0.05460739, -77.6084)
dialogue_data = Array[Dictionary]([{
"name": "Иван",
"text": " Приветствую уважаемый!"
}, {
"name": "Охранник",
"text": " Держи дистанцию, ты можешь быть переодетым драконом или засланным уродом газспора"
}, {
"name": "Иван",
"text": "Я хочу просто узнать пару моментов"
}])
[node name="secur2" parent="npc/secur" unique_id=402621669 instance=ExtResource("18_2dj88")]
transform = Transform3D(-0.22122513, 0, 0.97522277, 0, 1, 0, -0.97522277, 0, -0.22122513, 236.17165, 0.05460739, -77.6084)
dialogue_data = Array[Dictionary]([])
dialogue_file = ExtResource("20_wdroc")
[node name="secur" parent="npc/secur/secur2" unique_id=1386089040 instance=ExtResource("18_2dj88")]
transform = Transform3D(-0.22122513, 0, 0.97522277, 0, 1, 0, -0.97522277, 0, -0.22122513, 236.17165, 0.05460739, -77.6084)
dialogue_data = Array[Dictionary]([{
"name": "Иван",
"text": " Приветствую уважаемый!"
}, {
"name": "Охранник",
"text": " Держи дистанцию, ты можешь быть переодетым драконом или засланным уродом газспора"
}, {
"name": "Иван",
"text": "Я хочу просто узнать пару моментов"
}])
[node name="babka" parent="npc" unique_id=1797533482 instance=ExtResource("19_7ays8")]
transform = Transform3D(-0.9875953, 0, 0.15702054, 0, 1, 0, -0.15702054, 0, -0.9875953, 178.76431, 1.4086559, 18.294493)
[node name="aritot" parent="npc" unique_id=1345356780 instance=ExtResource("20_5v3pv")]
transform = Transform3D(-0.30027303, 0, 0.9538533, 0, 1, 0, -0.9538533, 0, -0.30027303, 46.378628, 0.95449877, -23.65288)
[node name="battel1" type="Node3D" parent="." unique_id=1104389055]
[node name="CharacterBody3D" parent="battel1" unique_id=1156384226 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 129.24011, 0.94639117, -28.026142)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D2" parent="battel1" unique_id=626362519 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 120.03938, 0.94639117, -35.727333)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D3" parent="battel1" unique_id=836135435 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 120.03938, 0.94639117, -59.02198)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D4" parent="battel1" unique_id=382645947 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 99.997826, 0.94639117, -59.02198)
move_speed = 2.0
damage_to_player = 2.0
custom_battle_music = ExtResource("22_8s7mi")
health = 5.0
[node name="CharacterBody3D5" parent="battel1" unique_id=936516052 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 99.997826, 0.94639117, -30.821632)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D6" parent="battel1" unique_id=1840984398 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 120.79072, 0.94639117, -48.40757)
move_speed = 2.0
damage_to_player = 2.0
custom_battle_music = ExtResource("22_8s7mi")
health = 5.0
[node name="CharacterBody3D7" parent="battel1" unique_id=761606704 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 129.14119, 0.94639117, -35.727333)
move_speed = 2.0
damage_to_player = 2.0
health = 5.0
[node name="CharacterBody3D8" parent="battel1" unique_id=350343242 instance=ExtResource("21_6hvf0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 129.14119, 0.94639117, -53.770195)
move_speed = 2.0
damage_to_player = 2.0
custom_battle_music = ExtResource("22_8s7mi")
health = 5.0
[node name="vaz2105" parent="battel1" unique_id=1326835688 instance=ExtResource("23_yrgpi")]
transform = Transform3D(1.3, 0, 0, 0, 1.3, 0, 0, 0, 1.3, 164.39148, 0.08107129, -53.41939)
+33
View File
@@ -0,0 +1,33 @@
[gd_scene format=3 uid="uid://c0txsmf1ffuqg"]
[ext_resource type="Script" uid="uid://bv488f4v7ly6a" path="res://addons/NPC/script/dialog_npct.gd" id="1_7gkvn"]
[ext_resource type="PackedScene" uid="uid://bdwjy2jvga343" path="res://addons/custmode/Models/Male/Character_20_Police.fbx" id="2_7gkvn"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_se2kl"]
[sub_resource type="BoxShape3D" id="BoxShape3D_diulm"]
size = Vector3(1.6360468, 1.3225784, 2.9930296)
[node name="npc" type="StaticBody3D" unique_id=2094693982]
collision_layer = 64
collision_mask = 121
script = ExtResource("1_7gkvn")
[node name="Hitbox" type="CollisionShape3D" parent="." unique_id=1852865682]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.017934263, 0.009854734, 0.019842744)
shape = SubResource("CapsuleShape3D_se2kl")
debug_color = Color(0.52798665, 0.57221377, 5.7756904e-07, 0.41960785)
[node name="DetectArea" type="Area3D" parent="." unique_id=798798411]
transform = Transform3D(1.15835, 0, 0, 0, 1.5085664, 0, 0, 0, 3.406684, 0.4316032, 0.013125002, 0.15177906)
collision_layer = 64
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="DetectArea" unique_id=1961649541]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.2729469, 0.09678304, 0.4440172)
shape = SubResource("BoxShape3D_diulm")
[node name="Character_20_Police" parent="." unique_id=963124408 instance=ExtResource("2_7gkvn")]
transform = Transform3D(0.455, 0, 0, 0, 0.455, 0, 0, 0, 0.455, 0, -0.895, 0)
[connection signal="area_entered" from="DetectArea" to="." method="_on_detect_area_area_entered"]
+6
View File
@@ -0,0 +1,6 @@
[
{"name": "Иван", "text": "Аристотель давно не виделись"},
{"name": "Аристотель", "text": "Используй “DASH“ чтобы пересечь трубу"},
{"name": "Иван", "text": "Благодарие прими, но ты бы хоть поздоровался"}
]
+26
View File
@@ -0,0 +1,26 @@
[
{
"name": "Иван",
"text": "Здравствуйте, мне бы цыбару"
},
{
"name": "Бабка",
"text": "Опять эти бомжи ходют тут и ходют, с тебя 43 рубля бомжара"
},
{
"name": "Иван",
"text": "а чего сразу бомжара? Я сейчас вызову клан Маклаудов, они быстро пояснят за жизнь так сказать"
},
{
"name": "Бабка",
"text": " Деньги плати(наставляет обрез)"
},
{
"name": "Иван",
"text": "да на тебе деньги"
},
{
"name": "Бабка",
"text": "вот и иди по добру здоровому"
}
]
+17
View File
@@ -0,0 +1,17 @@
[
{"name": "Иван", "text": "Приветствую уважаемый!"},
{"name": "Охранник", "text": "Держи дистанцию, ты можешь быть переодетым драконом или засланным уродом газспора"},
{"name": "Иван", "text": "Я хочу просто узнать пару моментов"},
{"name": "Охранник", "text": "Если ты меня обманешь, получишь пулю в лоб"},
{"name": "Иван", "text": "Да ты улыбнись и жизнь станет ярче, я ветеран первой драконовой войны(показывает документы)"},
{"name": "Охранник", "text": "Ты ветеран? Это меняет дело, вы воевали за благое дело, я отвечу на твои вопросы"},
{"name": "Иван", "text": "Как я тут оказался? Кто меня выкинул с поезда?"},
{"name": "Охранник", "text": "Я не видел, знаю только что это был человек в военной форме"},
{"name": "Иван", "text": "Урод ограбил меня, где тут ближайший магазин?"},
{"name": "Охранник", "text": "Пройдёшь вперёд и впереди будет ларёк, там обычно есть всё для первой необходимости сигары, водка и шмаль"},
{"name": "Иван", "text": "Отлично теперь надо как-то достать деньги…"},
{"name": "Охранник", "text": "Держи пистолет с одной обоймой, как раз поможешь убрать местных цыган, которые терроризируют город"},
{"name": "Иван", "text": "Вот это хорошая штука, пойду тогда разберусь с этими любителями золотить ручку"},
{"name": "Охранник", "text": "Удачи, если захочешь узнать что случилось с Белово после войны я могу вкратце ответить"}
]
File diff suppressed because one or more lines are too long
+1
View File
@@ -828,6 +828,7 @@ shape = SubResource("BoxShape3D_diulm")
[node name="rig" type="Node3D" parent="." unique_id=331009377] [node name="rig" type="Node3D" parent="." unique_id=331009377]
[node name="GeneralSkeleton" type="Skeleton3D" parent="rig" unique_id=45011411] [node name="GeneralSkeleton" type="Skeleton3D" parent="rig" unique_id=45011411]
transform = Transform3D(1.49, 0, 0, 0, 1.49, 0, 0, 0, 1.49, 0, 0, 0)
motion_scale = 1.2929 motion_scale = 1.2929
bones/0/name = "MCH-foot_ik.parent.L" bones/0/name = "MCH-foot_ik.parent.L"
bones/0/parent = -1 bones/0/parent = -1
+1 -1
View File
@@ -143,7 +143,7 @@ shape = SubResource("BoxShape3D_diulm")
[node name="GeneralSkeleton" type="Skeleton3D" parent="." unique_id=276953981] [node name="GeneralSkeleton" type="Skeleton3D" parent="." unique_id=276953981]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(0.37, 0, 0, 0, 0.37, 0, 0, 0, 0.37, 0, -0.785, 0) transform = Transform3D(0.49, 0, 0, 0, 0.49, 0, 0, 0, 0.49, 0, -0.785, 0)
motion_scale = 2.426675 motion_scale = 2.426675
bones/0/name = "Hips" bones/0/name = "Hips"
bones/0/parent = -1 bones/0/parent = -1
+26 -9
View File
@@ -1,12 +1,14 @@
extends StaticBody3D extends StaticBody3D
# --- ОПЦИЯ 1: БЫСТРЫЙ ДИАЛОГ НАПРЯМУЮ В ИНСПЕКТОРЕ NPC ---
@export var dialogue_data: Array[Dictionary] = [ @export var dialogue_data: Array[Dictionary] = [
{"name": "Сталкер", "text": "Привет! Наконец-то ты подошел."}, {"name": "Сталкер", "text": "Привет! Наконец-то ты подошел."}
{"name": "Игрок", "text": "Привет. Что за проблемы со скриптами?"},
{"name": "Сталкер", "text": "Да вот, теперь и подсказки работают как надо!"}
] ]
# Укажи здесь точный путь к .tscn файлу твоей сцены диалога # --- ОПЦИЯ 2: ВНЕШНИЙ ФАЙЛ ДЛЯ БОЛЬШИХ ДIАЛОГОВ ---
# Сюда можно будет перетащить файл .json из папки проекта!
@export var dialogue_file: JSON
const DIALOGUE_UI_FILE = preload("res://addons/dialoge/dialogue_ui.tscn") const DIALOGUE_UI_FILE = preload("res://addons/dialoge/dialogue_ui.tscn")
var is_player_inside: bool = false var is_player_inside: bool = false
@@ -14,17 +16,34 @@ var is_dialogue_active: bool = false
var ui_instance: Node = null var ui_instance: Node = null
var detect_area: Area3D = null var detect_area: Area3D = null
# Финальный массив фраз, который мы передадим в UI на основе проверки
var final_dialogue_lines: Array = []
func _ready() -> void: func _ready() -> void:
detect_area = get_node_or_null("DetectArea") detect_area = get_node_or_null("DetectArea")
if detect_area == null: if detect_area == null:
detect_area = find_child("DetectArea", true, false) detect_area = find_child("DetectArea", true, false)
if detect_area:
print("[NPC] Зона DetectArea найдена. Универсальный скрипт запущен.")
# Спавним диалог ОДИН РАЗ при старте карты, чтобы он не багался при переспавне # Готовим текст перед стартом
_prepare_dialogue_data()
if ui_instance == null: if ui_instance == null:
ui_instance = DIALOGUE_UI_FILE.instantiate() ui_instance = DIALOGUE_UI_FILE.instantiate()
get_tree().get_root().add_child.call_deferred(ui_instance) get_tree().get_root().add_child.call_deferred(ui_instance)
if "layer" in ui_instance: ui_instance.layer = 135 if "layer" in ui_instance: ui_instance.layer = 135
func _prepare_dialogue_data() -> void:
# Проверяем, закинул ли ты внешний JSON-файл в инспектор этого конкретного NPC
if dialogue_file != null and dialogue_file.data is Array:
final_dialogue_lines = dialogue_file.data
print("[NPC] Успешно загружен диалог из внешнего JSON файла для: ", name)
else:
# Если файла нет, используем ручные строчки из инспектора
final_dialogue_lines = dialogue_data
print("[NPC] Использую ручной массив диалога из инспектора для: ", name)
func _process(_delta: float) -> void: func _process(_delta: float) -> void:
if detect_area == null: return if detect_area == null: return
@@ -36,14 +55,12 @@ func _process(_delta: float) -> void:
found_player_this_frame = true found_player_this_frame = true
break break
# Игрок ЗАШЕЛ в зону NPC
if found_player_this_frame and not is_player_inside: if found_player_this_frame and not is_player_inside:
is_player_inside = true is_player_inside = true
if ui_instance and not is_dialogue_active: if ui_instance and not is_dialogue_active:
if ui_instance.has_method("show_prompt"): if ui_instance.has_method("show_prompt"):
ui_instance.show_prompt() ui_instance.show_prompt()
# Игрок ВЫШЕЛ из зоны NPC
elif not found_player_this_frame and is_player_inside: elif not found_player_this_frame and is_player_inside:
is_player_inside = false is_player_inside = false
is_dialogue_active = false is_dialogue_active = false
@@ -51,11 +68,11 @@ func _process(_delta: float) -> void:
if ui_instance.has_method("hide_prompt"): ui_instance.hide_prompt() if ui_instance.has_method("hide_prompt"): ui_instance.hide_prompt()
if ui_instance.has_method("end_dialogue"): ui_instance.end_dialogue() if ui_instance.has_method("end_dialogue"): ui_instance.end_dialogue()
# Старт диалога по кнопке E
if is_player_inside and not is_dialogue_active: if is_player_inside and not is_dialogue_active:
if Input.is_key_pressed(KEY_E) or Input.is_action_just_pressed("interact"): if Input.is_key_pressed(KEY_E) or Input.is_action_just_pressed("interact"):
is_dialogue_active = true is_dialogue_active = true
if ui_instance: if ui_instance:
if ui_instance.has_method("hide_prompt"): ui_instance.hide_prompt() if ui_instance.has_method("hide_prompt"): ui_instance.hide_prompt()
if ui_instance.has_method("start_dialogue"): if ui_instance.has_method("start_dialogue"):
ui_instance.start_dialogue(dialogue_data) # ПЕРЕДАЕМ НАШ СФОРМИРОВАННЫЙ ТЕКСТ
ui_instance.start_dialogue(final_dialogue_lines)
@@ -635,6 +635,7 @@ outline_color = Color(0, 0, 0, 1)
shader = ExtResource("30_vqiv6") shader = ExtResource("30_vqiv6")
[node name="PlayerCharacter" type="CharacterBody3D" unique_id=1059654044 groups=["PlayerCharacter"]] [node name="PlayerCharacter" type="CharacterBody3D" unique_id=1059654044 groups=["PlayerCharacter"]]
transform = Transform3D(1, 0, 0, 0, 1.4071057, 0, 0, 0, 1, 0, 0, 0)
collision_layer = 2 collision_layer = 2
collision_mask = 97 collision_mask = 97
floor_block_on_wall = false floor_block_on_wall = false
@@ -21,8 +21,8 @@ shootAnimName = "ShootAnimPistol"
reloadAnimName = "ReloadAnimPistol" reloadAnimName = "ReloadAnimPistol"
shootSound = ExtResource("3_5tegi") shootSound = ExtResource("3_5tegi")
reloadSound = ExtResource("2_vx7n8") reloadSound = ExtResource("2_vx7n8")
totalAmmoInMag = 10 totalAmmoInMag = 9
totalAmmoInMagRef = 10 totalAmmoInMagRef = 9
ammoType = "LightAmmo" ammoType = "LightAmmo"
equipTime = 0.2 equipTime = 0.2
unequipTime = 0.2 unequipTime = 0.2
@@ -1,7 +1,7 @@
extends Node3D extends Node3D
var ammoDict : Dictionary = { #key = ammo type, value = ammo start number var ammoDict : Dictionary = { #key = ammo type, value = ammo start number
"LightAmmo" : 90, "LightAmmo" : 9,
"MediumAmmo" : 60, "MediumAmmo" : 60,
"HeavyAmmo" : 9, "HeavyAmmo" : 9,
"ShellAmmo" : 128, "ShellAmmo" : 128,
File diff suppressed because one or more lines are too long