diff options
| author | Anson Bridges <bridges.anson@gmail.com> | 2022-09-30 11:20:16 -0400 |
|---|---|---|
| committer | Anson Bridges <bridges.anson@gmail.com> | 2022-09-30 11:20:16 -0400 |
| commit | 4a17fde692b900393d796675bcf7011aa7399dad (patch) | |
| tree | 5305dba808a7094192821736a379168cdb549843 | |
| parent | 7a1d857de96174dfa5a0fa40f8c14acbd2f651c2 (diff) | |
syncing off main
70 files changed, 661 insertions, 966 deletions
diff --git a/godot/.gdbinit b/godot/.gdbinit deleted file mode 100644 index 0c1f45b..0000000 --- a/godot/.gdbinit +++ /dev/null @@ -1 +0,0 @@ -set debuginfod enabled off diff --git a/godot/.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.md5 b/godot/.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.md5 new file mode 100644 index 0000000..b1c7dd0 --- /dev/null +++ b/godot/.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.md5 @@ -0,0 +1,3 @@ +source_md5="5e4ce2a9a8da359e25ebacefe6085207" +dest_md5="540f42f15b11a03bbc5c26d78088848a" + diff --git a/godot/.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.oggstr b/godot/.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.oggstr Binary files differnew file mode 100644 index 0000000..a5df690 --- /dev/null +++ b/godot/.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.oggstr diff --git a/godot/.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.md5 b/godot/.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.md5 new file mode 100644 index 0000000..5b914b9 --- /dev/null +++ b/godot/.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.md5 @@ -0,0 +1,3 @@ +source_md5="42a68b509a5b55bacf421a53b8498ac9" +dest_md5="ed10ec8a9448819e30f35be09e23325a" + diff --git a/godot/.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.oggstr b/godot/.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.oggstr Binary files differnew file mode 100644 index 0000000..3659edc --- /dev/null +++ b/godot/.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.oggstr diff --git a/godot/.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.md5 b/godot/.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.md5 new file mode 100644 index 0000000..321bb2f --- /dev/null +++ b/godot/.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.md5 @@ -0,0 +1,3 @@ +source_md5="096249de9851a4dd5cff284df6e2cfbe" +dest_md5="6ec64c55a330edeb2cdf04c14a60c8f6" + diff --git a/godot/.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.oggstr b/godot/.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.oggstr Binary files differnew file mode 100644 index 0000000..f2473d2 --- /dev/null +++ b/godot/.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.oggstr diff --git a/godot/.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.md5 b/godot/.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.md5 new file mode 100644 index 0000000..86f4833 --- /dev/null +++ b/godot/.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.md5 @@ -0,0 +1,3 @@ +source_md5="2bbf2dc2c4fd5dab1471565a7717c26d" +dest_md5="2cbd71ac6e406536e91118e2f7f5b95d" + diff --git a/godot/.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.oggstr b/godot/.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.oggstr Binary files differnew file mode 100644 index 0000000..2653e96 --- /dev/null +++ b/godot/.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.oggstr diff --git a/godot/.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.md5 b/godot/.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.md5 new file mode 100644 index 0000000..7918de1 --- /dev/null +++ b/godot/.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.md5 @@ -0,0 +1,3 @@ +source_md5="9c86cbb9d876a664616768b928f09c41" +dest_md5="6f79b791e828a1c0d1ac6925dbe5f1b7" + diff --git a/godot/.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.oggstr b/godot/.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.oggstr Binary files differnew file mode 100644 index 0000000..5ee96b0 --- /dev/null +++ b/godot/.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.oggstr diff --git a/godot/.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.md5 b/godot/.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.md5 new file mode 100644 index 0000000..6ebe6a9 --- /dev/null +++ b/godot/.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.md5 @@ -0,0 +1,3 @@ +source_md5="1ad77a09007eecfe72c27d6979372fb9" +dest_md5="eae27abc77d8ece3dd72977c8ba37879" + diff --git a/godot/.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.oggstr b/godot/.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.oggstr Binary files differnew file mode 100644 index 0000000..14ee55e --- /dev/null +++ b/godot/.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.oggstr diff --git a/godot/addons/blend/import_blend.gd b/godot/addons/blend/import_blend.gd deleted file mode 100644 index 102b1fc..0000000 --- a/godot/addons/blend/import_blend.gd +++ /dev/null @@ -1,104 +0,0 @@ -# Copyright (c) 2021 K. S. Ernest (iFire) Lee and V-Sekai Contributors. -# Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. -# Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md). -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -tool -extends EditorSceneImporter - -const settings_blender_path = "filesystem/import/blend/blender_path" - -var blender_path : String - -func _init(): - if not ProjectSettings.has_setting(settings_blender_path): - ProjectSettings.set_setting(settings_blender_path, "blender") - ProjectSettings.set_initial_value(settings_blender_path, "blender") - else: - blender_path = ProjectSettings.get_setting(settings_blender_path) - var property_info = { - "name": settings_blender_path, - "type": TYPE_STRING, - "hint": PROPERTY_HINT_GLOBAL_FILE, - "hint_string": "" - } - ProjectSettings.add_property_info(property_info) - - -func _get_extensions(): - return ["blend"] - - -func _get_import_flags(): - return EditorSceneImporter.IMPORT_SCENE - - -func _import_scene(path: String, flags: int, bake_fps: int): - var import_config_file = ConfigFile.new() - import_config_file.load(path + ".import") - var compression_flags: int = import_config_file.get_value("params", "meshes/compress", 0) - # ARRAY_COMPRESS_BASE = (ARRAY_INDEX + 1) - compression_flags = compression_flags << (VisualServer.ARRAY_INDEX + 1) - if import_config_file.get_value("params", "meshes/octahedral_compression", false): - compression_flags |= VisualServer.ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION - - var path_global : String = ProjectSettings.globalize_path(path) - path_global = path_global.c_escape() - var output_path : String = "res://.import/" + path.get_file() + "-" + path.md5_text() + ".glb" - var output_path_global = ProjectSettings.globalize_path(output_path) - output_path_global = output_path_global.c_escape() - var stdout = [].duplicate() - var addon_path : String = blender_path - var addon_path_global = ProjectSettings.globalize_path(addon_path) - var params: PoolStringArray = [ - "filepath='%s'" % output_path_global, - "export_format='GLB'", - "export_colors=True", - "export_all_influences=False", - "export_extras=True", - "export_cameras=True", - "export_lights=True", - "export_apply=(len(bpy.data.shape_keys)==0)" - ] - var script : String = "import bpy; bpy.ops.export_scene.gltf(%s)" % params.join(",") - path_global = path_global.c_escape() - var args = PoolStringArray([ - path_global, - "--background", - "--python-expr", - script - ]) - var ret = OS.execute(addon_path_global, args, true, stdout, true) - if ret != OK: - push_error( - "Blender import failed with code=%d.\nCommand: %s\nOutput: %s" % [ - ret, - args.join(" "), - PoolStringArray(stdout).join("\n") - ] - ) - return null - - var root_node: Spatial = null - if Engine.get_version_info()["major"] <= 3 and Engine.get_version_info()["minor"] <= 3: - root_node = call("import_scene_from_other_importer", output_path, flags, bake_fps) - else: - root_node = call("import_scene_from_other_importer", output_path, flags, bake_fps, compression_flags) - return root_node diff --git a/godot/addons/blend/plugin.cfg b/godot/addons/blend/plugin.cfg deleted file mode 100644 index 3fe0961..0000000 --- a/godot/addons/blend/plugin.cfg +++ /dev/null @@ -1,7 +0,0 @@ -[plugin] - -name="Blend" -description="Blend Importer" -author="K. S. Ernest Lee and V-Sekai Contributors" -version="1.0.0" -script="plugin.gd" diff --git a/godot/addons/blend/plugin.gd b/godot/addons/blend/plugin.gd deleted file mode 100644 index d399e67..0000000 --- a/godot/addons/blend/plugin.gd +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2021 K. S. Ernest (iFire) Lee and V-Sekai Contributors. -# Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. -# Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md). -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. -# -tool -extends EditorPlugin - -var import_plugin - -func _enter_tree(): - import_plugin = preload("res://addons/blend/import_blend.gd").new() - add_scene_import_plugin(import_plugin) - - -func _exit_tree(): - remove_scene_import_plugin(import_plugin) - import_plugin = null diff --git a/godot/bin/playercam._gdnlib b/godot/bin/playercam._gdnlib deleted file mode 100644 index 105b98f..0000000 --- a/godot/bin/playercam._gdnlib +++ /dev/null @@ -1,14 +0,0 @@ -[general] - -singleton=false -load_once=true -symbol_prefix="godot_" -reloadable=true - -[entry] - -X11.64="res://bin/x11/libplayercam.so" - -[dependencies] - -X11.64=[ ] diff --git a/godot/bin/playercam.gdns b/godot/bin/playercam.gdns deleted file mode 100644 index 46fa989..0000000 --- a/godot/bin/playercam.gdns +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="NativeScript" load_steps=2 format=2] - -[ext_resource path="res://bin/playercontroller.gdnlib" type="GDNativeLibrary" id=1] - -[resource] -resource_name = "playercam" -class_name = "PlayerCam" -library = ExtResource( 1 ) diff --git a/godot/bin/playercontroller.gdnlib b/godot/bin/playercontroller.gdnlib deleted file mode 100644 index 37c30d5..0000000 --- a/godot/bin/playercontroller.gdnlib +++ /dev/null @@ -1,14 +0,0 @@ -[general] - -singleton=false -load_once=false -symbol_prefix="godot_" -reloadable=true - -[entry] - -X11.64="res://bin/x11/libplayercontroller.so" - -[dependencies] - -X11.64=[ ] diff --git a/godot/bin/playercontroller.gdns b/godot/bin/playercontroller.gdns deleted file mode 100644 index eaf0649..0000000 --- a/godot/bin/playercontroller.gdns +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="NativeScript" load_steps=2 format=2] - -[ext_resource path="res://bin/playercontroller.gdnlib" type="GDNativeLibrary" id=1] - -[resource] -resource_name = "playercontroller" -class_name = "PlayerController" -library = ExtResource( 1 ) diff --git a/godot/bin/x11/libnetmachine.so b/godot/bin/x11/libnetmachine.so Binary files differdeleted file mode 100755 index b8cc579..0000000 --- a/godot/bin/x11/libnetmachine.so +++ /dev/null diff --git a/godot/bin/x11/libplayercam.so b/godot/bin/x11/libplayercam.so Binary files differdeleted file mode 100755 index b48d39a..0000000 --- a/godot/bin/x11/libplayercam.so +++ /dev/null diff --git a/godot/bin/x11/libplayercontroller.so b/godot/bin/x11/libplayercontroller.so Binary files differdeleted file mode 100755 index 69262c1..0000000 --- a/godot/bin/x11/libplayercontroller.so +++ /dev/null diff --git a/godot/export_presets.cfg b/godot/export_presets.cfg index 1532051..145666c 100644 --- a/godot/export_presets.cfg +++ b/godot/export_presets.cfg @@ -7,7 +7,7 @@ custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" -export_path="./boats.x86_64" +export_path="../../../boats.x86_64" script_export_mode=1 script_encryption_key="" diff --git a/godot/libnetmachine.so b/godot/libnetmachine.so Binary files differdeleted file mode 100644 index b8cc579..0000000 --- a/godot/libnetmachine.so +++ /dev/null diff --git a/godot/maps/Main.tscn b/godot/maps/Main.tscn index 9e7ea06..c84ea11 100644 --- a/godot/maps/Main.tscn +++ b/godot/maps/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=32 format=2] +[gd_scene load_steps=57 format=2] [ext_resource path="res://scripts/World.gd" type="Script" id=1] [ext_resource path="res://scenes/machines/Cannon.tscn" type="PackedScene" id=2] @@ -16,6 +16,10 @@ [ext_resource path="res://scenes/vehicles/Airplane.tscn" type="PackedScene" id=14] [ext_resource path="res://scenes/weapons/hands.gd" type="Script" id=15] [ext_resource path="res://scenes/ballistics/Cannonball.tscn" type="PackedScene" id=16] +[ext_resource path="res://scenes/weapons/pistol.gd" type="Script" id=17] +[ext_resource path="res://scenes/weapons/rockets.gd" type="Script" id=18] +[ext_resource path="res://scenes/weapons/grapplinghook.gd" type="Script" id=19] +[ext_resource path="res://scenes/worldprops/ball_bucket.tscn" type="PackedScene" id=20] [sub_resource type="PhysicsMaterial" id=17] resource_local_to_scene = true @@ -25,38 +29,122 @@ rough = true resource_local_to_scene = true script = ExtResource( 15 ) +[sub_resource type="Resource" id=21] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=22] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=41] +resource_local_to_scene = true +script = ExtResource( 19 ) + [sub_resource type="PhysicsMaterial" id=18] resource_local_to_scene = true rough = true -[sub_resource type="Resource" id=21] +[sub_resource type="Resource" id=23] resource_local_to_scene = true script = ExtResource( 15 ) +[sub_resource type="Resource" id=24] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=25] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=42] +resource_local_to_scene = true +script = ExtResource( 19 ) + [sub_resource type="PhysicsMaterial" id=19] resource_local_to_scene = true rough = true -[sub_resource type="Resource" id=22] +[sub_resource type="Resource" id=26] resource_local_to_scene = true script = ExtResource( 15 ) -[sub_resource type="Resource" id=23] +[sub_resource type="Resource" id=27] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=28] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=43] +resource_local_to_scene = true +script = ExtResource( 19 ) + +[sub_resource type="Resource" id=29] resource_local_to_scene = true script = ExtResource( 15 ) -[sub_resource type="Resource" id=24] +[sub_resource type="Resource" id=30] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=31] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=44] +resource_local_to_scene = true +script = ExtResource( 19 ) + +[sub_resource type="Resource" id=32] resource_local_to_scene = true script = ExtResource( 15 ) -[sub_resource type="Resource" id=25] +[sub_resource type="Resource" id=33] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=34] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=45] +resource_local_to_scene = true +script = ExtResource( 19 ) + +[sub_resource type="Resource" id=35] resource_local_to_scene = true script = ExtResource( 15 ) -[sub_resource type="Resource" id=26] +[sub_resource type="Resource" id=36] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=37] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=46] +resource_local_to_scene = true +script = ExtResource( 19 ) + +[sub_resource type="Resource" id=38] resource_local_to_scene = true script = ExtResource( 15 ) +[sub_resource type="Resource" id=39] +resource_local_to_scene = true +script = ExtResource( 17 ) + +[sub_resource type="Resource" id=40] +resource_local_to_scene = true +script = ExtResource( 18 ) + +[sub_resource type="Resource" id=47] +resource_local_to_scene = true +script = ExtResource( 19 ) + [sub_resource type="NavigationMesh" id=14] vertices = PoolVector3Array( 7.53034, -0.161953, -20.3654, 6.53034, -0.411953, -23.3654, 2.53034, 0.338047, -21.3654, -3.46966, 0.588047, -19.3654, 7.53034, -0.161953, -20.3654, 2.53034, 0.338047, -21.3654, -3.46966, -0.161953, -22.3654, 1.53034, 1.83805, -16.3654, 5.53034, 2.08805, -15.3654, 4.53034, 1.58805, -17.3654, 6.53034, 2.58805, -11.3654, 13.5303, 1.83805, -10.3654, 12.5303, 1.33805, -14.3654, 5.53034, 2.08805, -15.3654, -16.4697, -1.41195, -12.3654, -16.4697, -0.911953, -10.3654, -12.4697, -0.411953, -11.3654, -16.4697, -1.41195, -12.3654, -12.4697, -0.411953, -11.3654, -16.4697, -1.91195, -14.3654, -18.4697, -2.16195, -12.3654, -16.4697, -1.41195, -12.3654, -16.4697, -1.91195, -14.3654, -23.4697, -1.91195, -14.3654, -19.9697, -2.41195, -14.3654, -23.4697, -1.91195, -14.3654, -23.4697, -0.411953, -5.36539, -17.4697, -1.16195, -8.36539, -18.4697, -2.16195, -12.3654, -9.46966, 3.83805, -3.36539, -9.46966, 3.83805, -2.36539, -8.46966, 3.83805, -2.36539, -7.46966, 3.83805, -4.36539, -9.46966, 3.83805, -4.36539, -9.46966, 3.83805, -3.36539, -8.46966, 3.83805, -2.36539, 17.5303, 1.58805, 0.634615, 12.5303, 2.58805, -0.365385, 10.5303, 3.08805, 0.634615, 9.53034, 3.08805, 2.63461, 12.5303, 2.08805, 9.63461, 16.5303, 1.33805, 8.63461, 17.0303, 1.58805, 4.63461, -7.46966, 3.83805, -4.36539, -8.46966, 3.83805, -2.36539, -7.46966, 3.83805, -1.36539, -5.46966, 3.33805, -7.36539, 0.530344, 3.83805, -9.36539, 2.53034, 3.83805, -9.36539, 1.53034, 3.83805, -13.3654, -10.4697, 2.58805, -9.36539, -9.46966, 3.08805, -6.36539, -7.46966, 3.33805, -6.36539, -5.46966, 3.33805, -7.36539, -7.46966, 2.08805, -14.3654, -6.46966, 3.08805, -10.8654, 1.53034, 3.58805, -4.36539, 2.53034, 3.83805, -6.36539, 0.530344, 3.83805, -9.36539, -5.46966, 3.33805, -7.36539, -0.469656, 3.33805, 4.63461, -2.46966, 3.33805, 3.63461, -1.46966, 2.83805, 6.63461, 0.530344, 2.83805, 10.6346, 1.53034, 3.58805, -4.36539, -5.46966, 3.33805, -7.36539, -7.46966, 3.83805, -1.36539, -2.46966, 3.33805, 3.63461, -0.469656, 3.33805, 4.63461, 4.53034, 3.33805, 0.634615, -5.46966, 3.33805, -7.36539, -7.46966, 3.33805, -6.36539, -7.46966, 3.83805, -4.36539, 4.53034, 3.33805, 0.634615, 2.53034, 3.83805, -3.36539, 1.53034, 3.58805, -4.36539, 16.5303, 1.58805, -7.36539, 14.5303, 2.08805, -7.36539, 12.5303, 2.58805, -0.365385, 17.5303, 1.58805, 0.634615, 0.530344, 3.83805, -9.36539, 1.53034, 3.83805, -13.3654, -4.46966, 3.83805, -13.3654, -5.46966, 3.33805, -7.36539, -1.46966, 2.83805, 6.63461, -3.46966, 3.33805, 4.63461, -8.46966, 2.83805, 6.63461, -3.46966, 2.08805, 15.6346, 0.530344, 2.83805, 10.6346, -2.46966, 1.83805, 16.6346, 4.53034, 1.83805, 16.6346, 0.530344, 2.83805, 10.6346, -3.46966, 2.08805, 15.6346, 4.53034, 3.33805, 0.634615, -0.469656, 3.33805, 4.63461, 1.53034, 3.08805, 6.63461, 9.53034, 3.08805, 2.63461, 10.5303, 3.08805, 0.634615, 5.53034, 3.33805, 4.63461, -8.46966, 3.33805, -0.365385, -8.46966, 3.83805, -2.36539, -9.46966, 3.83805, -2.36539, -11.4697, 3.33805, -3.36539, -9.46966, 3.83805, -3.36539, -9.46966, 3.83805, -4.36539, -5.46966, 1.33805, 17.6346, -2.46966, 1.83805, 16.6346, -3.46966, 2.08805, 15.6346, -6.46966, 1.58805, 15.6346, -8.46966, 2.83805, 6.63461, -3.46966, 3.33805, 4.63461, -2.46966, 3.33805, 3.63461, -7.46966, 3.83805, -1.36539, -8.46966, 3.33805, -0.365385, -11.4697, 2.58805, 5.63461, -6.46966, 1.58805, 15.6346, -3.46966, 2.08805, 15.6346, -7.46966, 1.58805, 13.6346, -11.4697, 3.33805, -3.36539, -9.46966, 3.83805, -4.36539, -9.46966, 3.08805, -6.36539, -10.4697, 2.58805, -9.36539, -14.4697, 1.83805, -8.36539, -13.4697, 2.58805, -5.36539, -8.46966, 3.33805, -0.365385, -9.46966, 3.83805, -2.36539, -11.4697, 3.33805, -3.36539, -20.4697, 1.58805, -1.36539, -20.4697, 1.08805, 3.63461, -17.4697, 2.08805, 1.63461, -18.4697, 2.08805, -3.36539, -11.4697, 1.08805, 15.6346, -6.46966, 1.58805, 15.6346, -7.46966, 1.58805, 13.6346, -11.4697, 1.83805, 12.6346, -24.4697, 1.58805, -3.36539, -25.4697, 1.58805, -13.3654, -27.4697, 1.58805, -13.3654, -28.4697, 1.58805, -2.36539, -14.4697, 2.33805, 4.63461, -14.4697, 1.33805, 11.6346, -11.4697, 2.08805, 7.63461, -11.4697, 2.58805, 5.63461, -17.4697, 2.08805, 1.63461, -14.4697, 2.33805, 4.63461, -11.4697, 2.58805, 5.63461, -8.46966, 3.33805, -0.365385, -11.4697, 3.33805, -3.36539, -18.4697, 2.08805, -3.36539, -13.4697, 2.58805, -5.36539, -16.4697, 1.58805, -6.36539, -18.4697, 2.08805, -3.36539, -11.4697, 3.33805, -3.36539, -11.4697, 1.83805, 12.6346, -7.46966, 1.58805, 13.6346, -8.46966, 2.58805, 8.63461, -11.4697, 2.08805, 7.63461, -14.4697, 1.33805, 11.6346, -24.4697, 1.58805, -3.36539, -28.4697, 1.58805, -2.36539, -20.4697, 1.58805, -1.36539, -18.4697, 2.08805, -3.36539, 4.53034, 4.33805, -5.36539, 1.53034, 3.58805, -4.36539, 2.53034, 3.83805, -3.36539, 4.53034, 4.33805, -3.36539, 6.53034, 4.08805, -7.36539, 4.53034, 4.33805, -5.36539, 4.53034, 4.33805, -3.36539, 6.53034, 4.08805, -7.36539, 4.53034, 3.83805, -13.3654, 1.53034, 3.83805, -13.3654, 2.53034, 3.83805, -9.36539, 4.53034, 4.33805, -5.36539, 4.53034, 4.33805, -3.36539, 4.53034, 4.08805, -1.36539, 9.53034, 4.08805, -2.36539, 10.5303, 3.58805, -8.36539, 6.53034, 4.08805, -7.36539, 3.53034, 2.83805, 8.63461, 5.53034, 2.33805, 12.6346, 9.53034, 2.33805, 10.6346, 8.53034, 2.83805, 6.63461, -19.4697, -0.661953, 7.63461, -19.4697, -1.41195, 10.6346, -17.4697, -0.911953, 10.6346, -16.4697, 0.088047, 13.6346, -12.4697, 0.338047, 16.6346, -13.4697, 0.838047, 13.6346 ) polygons = [ PoolIntArray( 2, 1, 0 ), PoolIntArray( 6, 5, 3 ), PoolIntArray( 3, 5, 4 ), PoolIntArray( 7, 9, 8 ), PoolIntArray( 13, 12, 10 ), PoolIntArray( 10, 12, 11 ), PoolIntArray( 16, 15, 14 ), PoolIntArray( 19, 18, 17 ), PoolIntArray( 21, 20, 22 ), PoolIntArray( 22, 20, 24 ), PoolIntArray( 24, 20, 23 ), PoolIntArray( 28, 27, 25 ), PoolIntArray( 25, 27, 26 ), PoolIntArray( 31, 30, 29 ), PoolIntArray( 34, 33, 35 ), PoolIntArray( 35, 33, 32 ), PoolIntArray( 38, 37, 39 ), PoolIntArray( 39, 37, 36 ), PoolIntArray( 39, 36, 42 ), PoolIntArray( 39, 42, 41 ), PoolIntArray( 39, 41, 40 ), PoolIntArray( 44, 43, 45 ), PoolIntArray( 45, 43, 46 ), PoolIntArray( 49, 48, 47 ), PoolIntArray( 52, 51, 53 ), PoolIntArray( 53, 51, 50 ), PoolIntArray( 53, 50, 55 ), PoolIntArray( 55, 50, 54 ), PoolIntArray( 57, 56, 58 ), PoolIntArray( 58, 56, 59 ), PoolIntArray( 61, 60, 62 ), PoolIntArray( 62, 60, 63 ), PoolIntArray( 68, 67, 69 ), PoolIntArray( 69, 67, 64 ), PoolIntArray( 64, 67, 66 ), PoolIntArray( 64, 66, 65 ), PoolIntArray( 71, 70, 72 ), PoolIntArray( 73, 75, 74 ), PoolIntArray( 77, 76, 78 ), PoolIntArray( 78, 76, 79 ), PoolIntArray( 81, 80, 82 ), PoolIntArray( 82, 80, 83 ), PoolIntArray( 84, 88, 85 ), PoolIntArray( 85, 88, 86 ), PoolIntArray( 86, 88, 87 ), PoolIntArray( 92, 91, 89 ), PoolIntArray( 89, 91, 90 ), PoolIntArray( 96, 98, 97 ), PoolIntArray( 97, 98, 93 ), PoolIntArray( 93, 98, 95 ), PoolIntArray( 93, 95, 94 ), PoolIntArray( 101, 100, 99 ), PoolIntArray( 104, 103, 102 ), PoolIntArray( 106, 105, 107 ), PoolIntArray( 107, 105, 108 ), PoolIntArray( 110, 109, 111 ), PoolIntArray( 111, 109, 114 ), PoolIntArray( 111, 114, 113 ), PoolIntArray( 111, 113, 112 ), PoolIntArray( 117, 116, 115 ), PoolIntArray( 119, 118, 120 ), PoolIntArray( 120, 118, 123 ), PoolIntArray( 120, 123, 121 ), PoolIntArray( 121, 123, 122 ), PoolIntArray( 126, 125, 124 ), PoolIntArray( 130, 129, 127 ), PoolIntArray( 127, 129, 128 ), PoolIntArray( 134, 133, 131 ), PoolIntArray( 131, 133, 132 ), PoolIntArray( 136, 135, 137 ), PoolIntArray( 137, 135, 138 ), PoolIntArray( 142, 141, 139 ), PoolIntArray( 139, 141, 140 ), PoolIntArray( 144, 143, 145 ), PoolIntArray( 145, 143, 146 ), PoolIntArray( 146, 143, 147 ), PoolIntArray( 147, 143, 148 ), PoolIntArray( 149, 152, 150 ), PoolIntArray( 150, 152, 151 ), PoolIntArray( 157, 156, 153 ), PoolIntArray( 153, 156, 155 ), PoolIntArray( 153, 155, 154 ), PoolIntArray( 161, 160, 158 ), PoolIntArray( 158, 160, 159 ), PoolIntArray( 164, 163, 165 ), PoolIntArray( 165, 163, 162 ), PoolIntArray( 168, 167, 166 ), PoolIntArray( 171, 170, 172 ), PoolIntArray( 172, 170, 169 ), PoolIntArray( 172, 169, 173 ), PoolIntArray( 175, 174, 176 ), PoolIntArray( 176, 174, 178 ), PoolIntArray( 176, 178, 177 ), PoolIntArray( 180, 179, 181 ), PoolIntArray( 181, 179, 182 ), PoolIntArray( 185, 184, 183 ), PoolIntArray( 188, 187, 186 ) ] @@ -105,6 +193,15 @@ transform = Transform( -0.866025, 0, -0.5, 0, 3.5, 0, 0.5, 0, -0.866025, 6.42983 [node name="Runway" parent="WORLDGEO" instance=ExtResource( 13 )] transform = Transform( -4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 32.5651, 0, 36.5712 ) +[node name="Runway2" parent="WORLDGEO" instance=ExtResource( 13 )] +transform = Transform( -1, 0, -1.50996e-07, 0, 1, 0, 1.50996e-07, 0, -1, -13.8197, 32.8116, 41.3509 ) + +[node name="Runway3" parent="WORLDGEO" instance=ExtResource( 13 )] +transform = Transform( 1.94707e-07, 0, -1, 0, 1, 0, 1, 0, 1.94707e-07, 49.6462, 19.1714, 35.7231 ) + +[node name="ball_bucket" parent="WORLDGEO" instance=ExtResource( 20 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.216192, 3.60375, -12.2556 ) + [node name="MACHINES" type="Spatial" parent="."] [node name="Cannon" parent="MACHINES" instance=ExtResource( 2 )] @@ -136,43 +233,145 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -49.9367, 0.0469036, -33.3132 [node name="Cannonball" parent="BALLISTICS" instance=ExtResource( 16 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3.1422, 4.06477, -6.08684 ) +[node name="Cannonball2" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.303401, 4.06477, -12.7643 ) + +[node name="Cannonball3" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.303401, 4.06477, -12.2326 ) + +[node name="Cannonball4" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.162657, 4.06477, -12.2326 ) + +[node name="Cannonball5" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.162657, 4.06477, -11.7252 ) + +[node name="Cannonball6" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.369819, 4.06477, -11.7252 ) + +[node name="Cannonball7" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.06477, -11.7252 ) + +[node name="Cannonball8" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.06477, -12.1919 ) + +[node name="Cannonball9" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.06477, -12.7322 ) + +[node name="Cannonball10" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.206795, 4.06477, -12.7322 ) + +[node name="Cannonball11" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.303401, 4.47363, -12.7643 ) + +[node name="Cannonball12" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.303401, 4.47363, -12.2326 ) + +[node name="Cannonball13" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.162657, 4.47363, -12.2326 ) + +[node name="Cannonball14" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.162657, 4.47363, -11.7252 ) + +[node name="Cannonball15" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.369819, 4.47363, -11.7252 ) + +[node name="Cannonball16" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.47363, -11.7252 ) + +[node name="Cannonball17" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.47363, -12.1919 ) + +[node name="Cannonball18" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.47363, -12.7322 ) + +[node name="Cannonball19" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.206795, 4.47363, -12.7322 ) + +[node name="Cannonball20" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.303401, 4.92571, -12.7643 ) + +[node name="Cannonball21" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.303401, 4.92571, -12.2326 ) + +[node name="Cannonball22" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.162657, 4.92571, -12.2326 ) + +[node name="Cannonball23" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.162657, 4.92571, -11.7252 ) + +[node name="Cannonball24" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.369819, 4.92571, -11.7252 ) + +[node name="Cannonball25" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.92571, -11.7252 ) + +[node name="Cannonball26" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.92571, -12.1919 ) + +[node name="Cannonball27" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.792434, 4.92571, -12.7322 ) + +[node name="Cannonball28" parent="BALLISTICS" instance=ExtResource( 16 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.206795, 4.92571, -12.7322 ) + [node name="PLAYERS" type="Spatial" parent="."] [node name="Player" parent="PLAYERS" instance=ExtResource( 5 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 28.8794, 2.55194, 2.65124 ) physics_material_override = SubResource( 17 ) -weapon = SubResource( 20 ) +weapon_slot1 = SubResource( 20 ) +weapon_slot2 = SubResource( 21 ) +weapon_slot3 = SubResource( 22 ) +weapon_slot4 = SubResource( 41 ) [node name="Player2" parent="PLAYERS" instance=ExtResource( 5 )] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10.1844, 3.62129, 0.930942 ) +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 49.2067, 27.526, 45.9431 ) physics_material_override = SubResource( 18 ) team = "BLUE" -weapon = SubResource( 21 ) +weapon_slot1 = SubResource( 23 ) +weapon_slot2 = SubResource( 24 ) +weapon_slot3 = SubResource( 25 ) +weapon_slot4 = SubResource( 42 ) [node name="Player3" parent="PLAYERS" instance=ExtResource( 5 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.426252, 5.22026, -3.48068 ) physics_material_override = SubResource( 19 ) -weapon = SubResource( 22 ) +weapon_slot1 = SubResource( 26 ) +weapon_slot2 = SubResource( 27 ) +weapon_slot3 = SubResource( 28 ) +weapon_slot4 = SubResource( 43 ) [node name="Player5" parent="PLAYERS" instance=ExtResource( 5 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1.86776, 6.37388, -1.22525 ) physics_material_override = SubResource( 19 ) -weapon = SubResource( 23 ) +weapon_slot1 = SubResource( 29 ) +weapon_slot2 = SubResource( 30 ) +weapon_slot3 = SubResource( 31 ) +weapon_slot4 = SubResource( 44 ) [node name="Player7" parent="PLAYERS" instance=ExtResource( 5 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1.11742, 6.37388, 0.816121 ) physics_material_override = SubResource( 19 ) -weapon = SubResource( 24 ) +weapon_slot1 = SubResource( 32 ) +weapon_slot2 = SubResource( 33 ) +weapon_slot3 = SubResource( 34 ) +weapon_slot4 = SubResource( 45 ) [node name="Player8" parent="PLAYERS" instance=ExtResource( 5 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.888317, 6.37388, 1.86328 ) physics_material_override = SubResource( 19 ) -weapon = SubResource( 25 ) +weapon_slot1 = SubResource( 35 ) +weapon_slot2 = SubResource( 36 ) +weapon_slot3 = SubResource( 37 ) +weapon_slot4 = SubResource( 46 ) [node name="Player9" parent="PLAYERS" instance=ExtResource( 5 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.819816, 6.37388, 2.89708 ) physics_material_override = SubResource( 19 ) -weapon = SubResource( 26 ) +weapon_slot1 = SubResource( 38 ) +weapon_slot2 = SubResource( 39 ) +weapon_slot3 = SubResource( 40 ) +weapon_slot4 = SubResource( 47 ) [node name="worldnavmesh" type="NavigationMeshInstance" parent="."] navmesh = SubResource( 14 ) @@ -206,7 +405,7 @@ visible = false mesh = SubResource( 16 ) [node name="DEFAULTCAM" type="Camera" parent="."] -transform = Transform( -0.507541, -0.600446, 0.617953, -0.0365804, 0.731562, 0.680792, -0.860851, 0.322925, -0.393262, 12.1857, 17.0183, -13.3083 ) +transform = Transform( -0.507541, -0.344177, 0.789902, -0.0365804, 0.924536, 0.379336, -0.860851, 0.163633, -0.48183, 12.1857, 17.0183, -13.3083 ) current = true far = 8192.0 diff --git a/godot/meshes/laetine.obj b/godot/meshes/laetine.obj deleted file mode 100644 index b55e973..0000000 --- a/godot/meshes/laetine.obj +++ /dev/null @@ -1,346 +0,0 @@ -# Blender v2.92.0 OBJ File: 'laetine.blend' -# www.blender.org -mtllib laetine.mtl -o Cube -v 16.000000 0.982453 -1.912256 -v 16.000000 -0.682236 -1.641230 -v 16.000000 0.982453 1.882782 -v 16.000000 -0.682236 1.610786 -v -16.000000 1.455369 -0.617766 -v -16.000000 0.897865 -0.530011 -v -16.000000 1.455369 0.557376 -v -16.000000 0.897865 0.476983 -v 0.000000 -0.941928 -2.142920 -v 0.000000 0.982453 2.500000 -v 0.000000 -0.941928 2.141643 -v 0.000000 0.982453 -2.500000 -v 8.000000 -0.941928 2.141643 -v 8.000000 0.982453 -2.500000 -v 8.000000 -0.941928 -2.142920 -v 8.000000 0.982453 2.500000 -v -8.000000 -0.728505 -1.831360 -v -8.000000 0.982453 2.138350 -v -8.000000 -0.728505 1.831740 -v -8.000000 0.982453 -2.136415 -v -12.000000 -0.389587 -1.452316 -v -12.000000 1.142182 1.675897 -v -12.000000 -0.389587 1.435458 -v -12.000000 1.142182 -1.694078 -v -3.851343 -0.941928 2.033623 -v -3.851343 0.982453 -2.377693 -v -3.851343 -0.941928 -2.038114 -v -3.851343 0.982453 2.373943 -v 4.000000 -0.941928 -2.142920 -v 4.000000 0.982453 2.500000 -v 4.000000 -0.941928 2.141643 -v 4.000000 0.982453 -2.500000 -v 12.000000 -0.941928 2.009462 -v 12.000000 0.982453 -2.355201 -v 12.000000 -0.941928 -2.019429 -v 12.000000 0.982453 2.346436 -v 12.000000 0.982453 2.078222 -v 8.000000 0.982453 2.213053 -v 16.000000 0.982453 1.627357 -v -16.000000 1.455369 0.353375 -v 0.000000 0.982453 2.194380 -v -12.000000 1.142182 1.347721 -v -8.000000 0.982453 1.851137 -v -3.851343 0.982453 2.072511 -v 4.000000 0.982453 2.234215 -v -8.000000 0.982453 -1.893030 -v -16.000000 1.455369 -0.446854 -v 16.000000 0.982453 -1.675475 -v -12.000000 1.142182 -1.478664 -v 4.000000 0.982453 -2.174777 -v 8.000000 0.982453 -2.176962 -v 0.000000 0.982453 -2.083515 -v -3.851343 0.982453 -1.994098 -v 12.000000 0.982453 -2.031110 -v -13.354506 1.478747 -0.894318 -v -13.287239 1.483561 0.789345 -v 15.634655 0.982453 -1.716910 -v 15.633256 0.982453 1.693027 -v 12.000000 -0.355757 1.945383 -v 8.000000 -0.355757 2.019444 -v 0.000000 -0.355757 2.065702 -v -12.000000 -0.355757 1.268733 -v -8.000000 -0.355757 1.722697 -v -3.851343 -0.355757 1.950985 -v 4.000000 -0.355757 2.038746 -v -8.000000 -0.355757 -1.764913 -v -12.000000 -0.355757 -1.391772 -v 4.000000 -0.355757 -1.982917 -v 8.000000 -0.355757 -1.984911 -v 0.000000 -0.355757 -1.961124 -v -3.851343 -0.355757 -1.876955 -v 12.000000 -0.355757 -1.900816 -v -13.354506 0.806437 -0.838368 -v -13.287239 0.811252 0.746481 -v 15.634655 -0.450049 -1.616035 -v 15.633256 -0.355757 1.593773 -v -3.851343 -1.123510 0.081178 -v 4.000000 -1.123510 0.081178 -v -8.000000 -0.910087 0.081178 -v 16.000000 -0.863819 0.081178 -v -12.000000 -0.571169 0.081178 -v 0.000000 -1.123510 0.081178 -v 8.000000 -1.123510 0.081178 -v -16.000000 0.716283 0.081178 -v 12.000000 -1.123510 0.081178 -vt 0.843750 0.500000 -vt 0.875000 0.500000 -vt 0.875000 0.536360 -vt 0.872226 0.536077 -vt 0.843750 0.533173 -vt 0.375000 0.968750 -vt 0.625000 0.968750 -vt 0.625000 1.000000 -vt 0.375000 1.000000 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 0.043399 -vt 0.625000 0.213640 -vt 0.625000 0.250000 -vt 0.375000 0.250000 -vt 0.375000 0.065260 -vt 0.343750 0.500000 -vt 0.375000 0.500000 -vt 0.375000 0.625745 -vt 0.343750 0.625777 -vt 0.625000 0.500000 -vt 0.625000 0.537350 -vt 0.625000 0.694368 -vt 0.625000 0.750000 -vt 0.375000 0.750000 -vt 0.375000 0.468750 -vt 0.625000 0.468750 -vt 0.375000 0.344911 -vt 0.625000 0.344911 -vt 0.625000 0.375000 -vt 0.375000 0.375000 -vt 0.219911 0.500000 -vt 0.250000 0.500000 -vt 0.250000 0.629194 -vt 0.219911 0.630768 -vt 0.375000 0.843750 -vt 0.625000 0.843750 -vt 0.625000 0.875000 -vt 0.375000 0.875000 -vt 0.718750 0.500000 -vt 0.750000 0.500000 -vt 0.750000 0.532123 -vt 0.718750 0.532990 -vt 0.656250 0.500000 -vt 0.687500 0.500000 -vt 0.687500 0.536579 -vt 0.656250 0.535812 -vt 0.375000 0.781250 -vt 0.625000 0.781250 -vt 0.625000 0.812500 -vt 0.375000 0.812500 -vt 0.375000 0.406250 -vt 0.625000 0.406250 -vt 0.625000 0.437500 -vt 0.375000 0.437500 -vt 0.281250 0.500000 -vt 0.312500 0.500000 -vt 0.312500 0.626716 -vt 0.281250 0.627955 -vt 0.156250 0.500000 -vt 0.187500 0.500000 -vt 0.187500 0.633207 -vt 0.156250 0.638918 -vt 0.375000 0.281250 -vt 0.625000 0.281250 -vt 0.625000 0.312500 -vt 0.375000 0.312500 -vt 0.375000 0.905089 -vt 0.625000 0.905089 -vt 0.625000 0.937500 -vt 0.375000 0.937500 -vt 0.780089 0.500000 -vt 0.812500 0.500000 -vt 0.812500 0.545259 -vt 0.780089 0.531167 -vt 0.125000 0.500000 -vt 0.125000 0.684740 -vt 0.631189 0.537046 -vt 0.718750 0.698992 -vt 0.750000 0.705949 -vt 0.750000 0.750000 -vt 0.718750 0.750000 -vt 0.656250 0.692220 -vt 0.687500 0.694741 -vt 0.687500 0.750000 -vt 0.656250 0.750000 -vt 0.843750 0.693080 -vt 0.871700 0.705173 -vt 0.875000 0.706601 -vt 0.875000 0.750000 -vt 0.843750 0.750000 -vt 0.638611 0.693432 -vt 0.812500 0.706742 -vt 0.812500 0.750000 -vt 0.780089 0.707511 -vt 0.780089 0.750000 -vt 0.812500 0.706742 -vt 0.843750 0.693080 -vt 0.687500 0.536579 -vt 0.656250 0.535812 -vt 0.872226 0.536077 -vt 0.843750 0.533173 -vt 0.750000 0.532123 -vt 0.718750 0.532990 -vt 0.871700 0.705173 -vt 0.656250 0.692220 -vt 0.687500 0.694741 -vt 0.780089 0.531167 -vt 0.631189 0.537046 -vt 0.638611 0.693432 -vt 0.812500 0.545259 -vt 0.718750 0.698992 -vt 0.750000 0.705949 -vt 0.780089 0.707511 -vt 0.187500 0.750000 -vt 0.156250 0.750000 -vt 0.250000 0.750000 -vt 0.219911 0.750000 -vt 0.125000 0.750000 -vt 0.281250 0.750000 -vt 0.343750 0.750000 -vt 0.312500 0.750000 -vn -0.0163 0.9374 -0.3478 -vn -0.2759 -0.1459 0.9501 -vn -1.0000 0.0000 0.0000 -vn 0.0689 -0.9931 -0.0943 -vn 1.0000 0.0000 0.0000 -vn 0.1060 -0.1658 -0.9805 -vn -0.0290 -0.1780 -0.9836 -vn -0.0011 -0.9965 -0.0833 -vn 0.0000 -0.1831 0.9831 -vn 0.0000 1.0000 0.0000 -vn 0.0351 -0.1777 0.9835 -vn 0.0000 -0.1824 -0.9832 -vn 0.0000 -0.9967 -0.0814 -vn -0.0889 -0.9906 -0.1044 -vn -0.1109 -0.1653 -0.9800 -vn -0.0563 -0.1749 0.9830 -vn -0.2678 -0.1501 -0.9517 -vn -0.3190 -0.9344 -0.1582 -vn -0.1154 -0.1652 0.9795 -vn 0.0399 0.9992 0.0000 -vn -0.0299 -0.1785 0.9835 -vn -0.0534 -0.9945 -0.0896 -vn -0.0576 -0.1743 -0.9830 -vn 0.1110 -0.1662 0.9798 -vn 0.0330 -0.1771 -0.9836 -vn 0.0013 -0.9965 -0.0837 -vn 0.0006 0.9546 0.2980 -vn 0.1199 0.0724 -0.9901 -vn -0.0285 0.1195 0.9924 -vn 0.4145 0.0598 0.9081 -vn 0.0140 0.1166 0.9931 -vn 0.4118 0.0511 -0.9098 -vn -0.0259 0.1210 -0.9923 -vn 0.0224 0.0891 0.9958 -vn -0.0096 1.0000 -0.0017 -vn -1.0000 0.0000 -0.0004 -vn 0.0256 0.0912 0.9955 -vn 0.9992 -0.0004 -0.0411 -vn -0.0050 0.1439 -0.9896 -vn -0.0808 0.0829 0.9933 -vn 0.0306 0.0930 -0.9952 -vn 0.0992 0.0752 0.9922 -vn -0.1005 0.0860 -0.9912 -vn 0.0539 0.0929 -0.9942 -vn 0.0005 0.1420 0.9899 -vn 0.0016 0.1202 -0.9927 -vn 0.0128 0.9998 -0.0134 -vn 0.6612 0.7501 -0.0113 -vn -0.0895 -0.9892 0.1157 -vn -0.0013 -0.9959 0.0901 -vn -0.3215 -0.9272 0.1924 -vn 0.0000 -0.9961 0.0878 -vn 0.0015 -0.9959 0.0907 -vn 0.0696 -0.9921 0.1042 -vn -0.0535 -0.9938 0.0975 -usemtl Material -s off -f 24/1/1 5/2/1 47/3/1 55/4/1 49/5/1 -f 23/6/2 22/7/2 7/8/2 8/9/2 -f 8/10/3 7/11/3 40/12/3 47/13/3 5/14/3 6/15/3 84/16/3 -f 35/17/4 2/18/4 80/19/4 85/20/4 -f 2/18/5 1/21/5 48/22/5 39/23/5 3/24/5 4/25/5 80/19/5 -f 35/26/6 34/27/6 1/21/6 2/18/6 -f 27/28/7 26/29/7 12/30/7 9/31/7 -f 27/32/8 9/33/8 82/34/8 77/35/8 -f 31/36/9 30/37/9 10/38/9 11/39/9 -f 32/40/10 12/41/10 52/42/10 50/43/10 -f 34/44/10 14/45/10 51/46/10 54/47/10 -f 33/48/11 36/49/11 16/50/11 13/51/11 -f 29/52/12 32/53/12 14/54/12 15/55/12 -f 29/56/13 15/57/13 83/58/13 78/59/13 -f 21/60/14 17/61/14 79/62/14 81/63/14 -f 21/64/15 24/65/15 20/66/15 17/67/15 -f 25/68/16 28/69/16 18/70/16 19/71/16 -f 26/72/10 20/73/10 46/74/10 53/75/10 -f 6/15/17 5/14/17 24/65/17 21/64/17 -f 6/76/18 21/60/18 81/63/18 84/77/18 -f 19/71/19 18/70/19 22/7/19 23/6/19 -f 20/73/20 24/1/20 49/5/20 46/74/20 -f 12/41/10 26/72/10 53/75/10 52/42/10 -f 11/39/21 10/38/21 28/69/21 25/68/21 -f 17/61/22 27/32/22 77/35/22 79/62/22 -f 17/67/23 20/66/23 26/29/23 27/28/23 -f 9/33/13 29/56/13 78/59/13 82/34/13 -f 9/31/12 12/30/12 32/53/12 29/52/12 -f 14/45/10 32/40/10 50/43/10 51/46/10 -f 13/51/9 16/50/9 30/37/9 31/36/9 -f 4/25/24 3/24/24 36/49/24 33/48/24 -f 1/21/10 34/44/10 54/47/10 57/78/10 48/22/10 -f 15/55/25 14/54/25 34/27/25 35/26/25 -f 15/57/26 35/17/26 85/20/26 83/58/26 -f 45/79/10 41/80/10 10/81/10 30/82/10 -f 37/83/10 38/84/10 16/85/10 36/86/10 -f 42/87/27 56/88/27 40/89/27 7/90/27 22/91/27 -f 39/23/10 58/92/10 37/83/10 36/86/10 3/24/10 -f 43/93/20 42/87/20 22/91/20 18/94/20 -f 38/84/10 45/79/10 30/82/10 16/85/10 -f 41/80/10 44/95/10 28/96/10 10/81/10 -f 44/95/10 43/93/10 18/94/10 28/96/10 -f 42/87/28 43/93/28 63/97/28 62/98/28 -f 54/47/29 51/46/29 69/99/29 72/100/29 -f 49/5/30 55/4/30 73/101/30 67/102/30 -f 48/22/10 57/78/10 58/92/10 39/23/10 -f 50/43/31 52/42/31 70/103/31 68/104/31 -f 56/88/32 42/87/32 62/98/32 74/105/32 -f 38/84/33 37/83/33 59/106/33 60/107/33 -f 52/42/34 53/75/34 71/108/34 70/103/34 -f 56/88/35 55/4/35 47/3/35 40/89/35 -f 58/92/36 57/78/36 75/109/36 76/110/36 -f 53/75/37 46/74/37 66/111/37 71/108/37 -f 55/4/38 56/88/38 74/105/38 73/101/38 -f 45/79/39 38/84/39 60/107/39 65/112/39 -f 57/78/40 54/47/40 72/100/40 75/109/40 -f 44/95/41 41/80/41 61/113/41 64/114/41 -f 46/74/42 49/5/42 67/102/42 66/111/42 -f 37/83/43 58/92/43 76/110/43 59/106/43 -f 43/93/44 44/95/44 64/114/44 63/97/44 -f 51/46/45 50/43/45 68/104/45 69/99/45 -f 41/80/46 45/79/46 65/112/46 61/113/46 -f 75/109/47 72/100/47 59/106/47 76/110/47 -f 60/107/10 59/106/10 72/100/10 69/99/10 -f 65/112/10 60/107/10 69/99/10 68/104/10 -f 61/113/10 65/112/10 68/104/10 70/103/10 -f 64/114/10 61/113/10 70/103/10 71/108/10 -f 63/97/10 64/114/10 71/108/10 66/111/10 -f 62/98/10 63/97/10 66/111/10 67/102/10 -f 74/105/48 62/98/48 67/102/48 73/101/48 -f 81/63/49 79/62/49 19/115/49 23/116/49 -f 77/35/50 82/34/50 11/117/50 25/118/50 -f 84/77/51 81/63/51 23/116/51 8/119/51 -f 82/34/52 78/59/52 31/120/52 11/117/52 -f 83/58/53 85/20/53 33/121/53 13/122/53 -f 78/59/52 83/58/52 13/122/52 31/120/52 -f 85/20/54 80/19/54 4/25/54 33/121/54 -f 79/62/55 77/35/55 25/118/55 19/115/55 diff --git a/godot/meshes/laetine.obj.import b/godot/meshes/laetine.obj.import deleted file mode 100644 index 9445c41..0000000 --- a/godot/meshes/laetine.obj.import +++ /dev/null @@ -1,20 +0,0 @@ -[remap] - -importer="wavefront_obj" -type="Mesh" -path="res://.import/laetine.obj-e2f2547cb01c5b6ffec4bdf5b2a3aec9.mesh" - -[deps] - -files=[ "res://.import/laetine.obj-e2f2547cb01c5b6ffec4bdf5b2a3aec9.mesh" ] - -source_file="res://meshes/laetine.obj" -dest_files=[ "res://.import/laetine.obj-e2f2547cb01c5b6ffec4bdf5b2a3aec9.mesh", "res://.import/laetine.obj-e2f2547cb01c5b6ffec4bdf5b2a3aec9.mesh" ] - -[params] - -generate_tangents=true -scale_mesh=Vector3( 1, 1, 1 ) -offset_mesh=Vector3( 0, 0, 0 ) -octahedral_compression=true -optimize_mesh_flags=4286 diff --git a/godot/meshes/laetine_mask.obj b/godot/meshes/laetine_mask.obj deleted file mode 100644 index 44be1a1..0000000 --- a/godot/meshes/laetine_mask.obj +++ /dev/null @@ -1,97 +0,0 @@ -# Blender v2.92.0 OBJ File: 'laetine.blend' -# www.blender.org -mtllib laetine_mask.mtl -o Cube.001 -v -13.287994 0.205399 0.979553 -v -13.287994 1.000000 0.979553 -v -13.287994 0.205399 -0.979553 -v -13.287994 1.000000 -0.979553 -v 15.695301 -0.570796 1.568131 -v 15.736877 1.000000 1.803618 -v 15.695301 -0.570796 -1.568131 -v 15.736877 1.000000 -1.803618 -v 0.000000 -0.880590 -2.129694 -v 0.000000 1.000000 -2.319838 -v 0.000000 -0.880590 2.129694 -v 0.000000 1.000000 2.270563 -v -8.087383 -0.725956 -1.089942 -v -8.655064 1.000000 1.984209 -v -8.655064 1.000000 -1.984209 -v -8.087383 -0.725956 1.089942 -v 10.447272 1.000000 -2.279417 -v 8.087383 -0.869857 2.032708 -v 8.087383 -0.869857 -2.032708 -v 10.447272 1.000000 2.253140 -vt 0.375000 0.000000 -vt 0.625000 0.000000 -vt 0.625000 0.250000 -vt 0.375000 0.250000 -vt 0.375000 0.437500 -vt 0.625000 0.437500 -vt 0.625000 0.500000 -vt 0.375000 0.500000 -vt 0.625000 0.750000 -vt 0.375000 0.750000 -vt 0.375000 0.937500 -vt 0.625000 0.937500 -vt 0.625000 1.000000 -vt 0.375000 1.000000 -vt 0.312500 0.500000 -vt 0.312500 0.750000 -vt 0.812500 0.500000 -vt 0.875000 0.500000 -vt 0.875000 0.750000 -vt 0.812500 0.750000 -vt 0.687500 0.500000 -vt 0.750000 0.500000 -vt 0.750000 0.750000 -vt 0.687500 0.750000 -vt 0.187500 0.500000 -vt 0.250000 0.500000 -vt 0.250000 0.750000 -vt 0.187500 0.750000 -vt 0.375000 0.812500 -vt 0.625000 0.812500 -vt 0.625000 0.875000 -vt 0.375000 0.875000 -vt 0.375000 0.312500 -vt 0.625000 0.312500 -vt 0.625000 0.375000 -vt 0.375000 0.375000 -vt 0.125000 0.500000 -vt 0.125000 0.750000 -vn -1.0000 0.0000 0.0000 -vn 0.0758 -0.1901 -0.9788 -vn 0.9996 -0.0265 0.0000 -vn -0.1386 -0.3587 0.9231 -vn 0.0393 -0.9992 0.0000 -vn 0.0000 1.0000 0.0000 -vn -0.0191 -0.9998 0.0000 -vn 0.0062 -0.0998 0.9950 -vn -0.0809 -0.2987 -0.9509 -vn -0.1386 -0.3587 -0.9231 -vn -0.1763 -0.9843 0.0000 -vn -0.0783 -0.2864 0.9549 -vn 0.0737 -0.1814 0.9806 -vn 0.0013 -1.0000 0.0000 -vn 0.0074 -0.1203 -0.9927 -usemtl None -s off -f 1/1/1 2/2/1 4/3/1 3/4/1 -f 19/5/2 17/6/2 8/7/2 7/8/2 -f 7/8/3 8/7/3 6/9/3 5/10/3 -f 16/11/4 14/12/4 2/13/4 1/14/4 -f 19/15/5 7/8/5 5/10/5 18/16/5 -f 15/17/6 4/18/6 2/19/6 14/20/6 -f 17/21/6 10/22/6 12/23/6 20/24/6 -f 13/25/7 9/26/7 11/27/7 16/28/7 -f 18/29/8 20/30/8 12/31/8 11/32/8 -f 13/33/9 15/34/9 10/35/9 9/36/9 -f 3/4/10 4/3/10 15/34/10 13/33/10 -f 3/37/11 13/25/11 16/28/11 1/38/11 -f 10/22/6 15/17/6 14/20/6 12/23/6 -f 11/32/12 12/31/12 14/12/12 16/11/12 -f 5/10/13 6/9/13 20/30/13 18/29/13 -f 8/7/6 17/21/6 20/24/6 6/9/6 -f 9/26/14 19/15/14 18/16/14 11/27/14 -f 9/36/15 10/35/15 17/6/15 19/5/15 diff --git a/godot/project.godot b/godot/project.godot index c9aa7ca..a6d3c33 100644 --- a/godot/project.godot +++ b/godot/project.godot @@ -214,6 +214,7 @@ reload={ [physics] +3d/smooth_trimesh_collision=true 3d/active_soft_world=false [rendering] diff --git a/godot/scenes/ballistics/Cannonball.tscn b/godot/scenes/ballistics/Cannonball.tscn index 4e5d06a..b9d5a0d 100644 --- a/godot/scenes/ballistics/Cannonball.tscn +++ b/godot/scenes/ballistics/Cannonball.tscn @@ -34,7 +34,6 @@ mass = 10.0 continuous_cd = true contacts_reported = 2 contact_monitor = true -can_sleep = false script = ExtResource( 1 ) [node name="CollisionShape" type="CollisionShape" parent="."] @@ -44,12 +43,12 @@ shape = SubResource( 1 ) mesh = SubResource( 2 ) material/0 = SubResource( 3 ) -[node name="PickupArea" type="Area" parent="."] +[node name="CarryArea" type="Area" parent="."] collision_layer = 2 collision_mask = 2 monitoring = false -[node name="CollisionShape" type="CollisionShape" parent="PickupArea"] +[node name="CollisionShape" type="CollisionShape" parent="CarryArea"] shape = SubResource( 6 ) [connection signal="body_entered" from="." to="." method="_on_collision"] diff --git a/godot/scenes/characters/PlayerRigid.tscn b/godot/scenes/characters/PlayerRigid.tscn index 6e9fe48..87a463d 100644 --- a/godot/scenes/characters/PlayerRigid.tscn +++ b/godot/scenes/characters/PlayerRigid.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=13 format=2] +[gd_scene load_steps=14 format=2] [ext_resource path="res://scripts/characters/player_controller_new.gd" type="Script" id=1] [ext_resource path="res://theming/FreeMono.otf" type="DynamicFontData" id=2] @@ -7,6 +7,7 @@ [ext_resource path="res://scenes/weapons/hands.res" type="Resource" id=5] [ext_resource path="res://scenes/weapons/pistol.tres" type="Resource" id=6] [ext_resource path="res://scenes/weapons/rockets.tres" type="Resource" id=7] +[ext_resource path="res://scenes/weapons/grapplinghook.tres" type="Resource" id=8] [sub_resource type="PhysicsMaterial" id=8] resource_local_to_scene = true @@ -46,6 +47,7 @@ script = ExtResource( 1 ) weapon_slot1 = ExtResource( 5 ) weapon_slot2 = ExtResource( 6 ) weapon_slot3 = ExtResource( 7 ) +weapon_slot4 = ExtResource( 8 ) [node name="Collision" type="CollisionShape" parent="."] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9, 0 ) diff --git a/godot/scenes/characters/viewmodel_arms.tscn b/godot/scenes/characters/viewmodel_arms.tscn index 1808785..b4d3257 100644 --- a/godot/scenes/characters/viewmodel_arms.tscn +++ b/godot/scenes/characters/viewmodel_arms.tscn @@ -49,7 +49,7 @@ bones/3/name = "Wrist.R" bones/3/parent = 2 bones/3/rest = Transform( 0.942879, -0.20747, 0.260645, 0.237384, 0.967355, -0.0887301, -0.233727, 0.145535, 0.961348, 2.68221e-07, 1.29325, 0 ) bones/3/enabled = true -bones/3/bound_children = [ NodePath("GunBone") ] +bones/3/bound_children = [ ] bones/4/name = "Thumb.R" bones/4/parent = 3 bones/4/rest = Transform( 0.771494, -0.608265, -0.186579, 0.518122, 0.770842, -0.370612, 0.369253, 0.189254, 0.909854, -0.138479, 0.349082, 0.150327 ) @@ -176,5 +176,5 @@ mesh = ExtResource( 3 ) skin = ExtResource( 4 ) [node name="GunBone" type="BoneAttachment" parent="Skeleton"] -transform = Transform( -0.978, -0.15941, 0.134542, 0.1673, -0.214165, 0.962363, -0.124596, 0.963702, 0.236124, -1.28918, -0.187637, 3.05885 ) +transform = Transform( -0.988177, 0.144629, -0.0508501, -0.0291988, 0.148051, 0.988548, 0.150501, 0.978347, -0.142077, -1.28918, -0.187637, 3.05885 ) bone_name = "Wrist.R" diff --git a/godot/scenes/environment/RopeSegment.tscn b/godot/scenes/environment/RopeSegment.tscn new file mode 100644 index 0000000..ae6d19b --- /dev/null +++ b/godot/scenes/environment/RopeSegment.tscn @@ -0,0 +1,18 @@ +[gd_scene load_steps=3 format=2] + +[sub_resource type="BoxShape" id=1] +extents = Vector3( 0.1, 0.1, 1 ) + +[sub_resource type="CubeMesh" id=2] +size = Vector3( 0.5, 0.5, 0.5 ) + +[node name="RopeSegment" type="RigidBody"] +collision_layer = 32768 +collision_mask = 32768 +mass = 15.0 + +[node name="CollisionShape" type="CollisionShape" parent="."] +shape = SubResource( 1 ) + +[node name="MeshInstance" type="MeshInstance" parent="."] +mesh = SubResource( 2 ) diff --git a/godot/scenes/environment/SwingRope.tscn b/godot/scenes/environment/SwingRope.tscn new file mode 100644 index 0000000..74ec78b --- /dev/null +++ b/godot/scenes/environment/SwingRope.tscn @@ -0,0 +1,3 @@ +[gd_scene format=2] + +[node name="SwingRope" type="Spatial"] diff --git a/godot/scenes/vehicles/Gunboat.tscn b/godot/scenes/vehicles/Gunboat.tscn deleted file mode 100644 index 6b447d6..0000000 --- a/godot/scenes/vehicles/Gunboat.tscn +++ /dev/null @@ -1,282 +0,0 @@ -[gd_scene load_steps=30 format=2] - -[ext_resource path="res://scripts/vehicles/Gunboat.gd" type="Script" id=1] -[ext_resource path="res://scenes/machines/Cannon.tscn" type="PackedScene" id=2] -[ext_resource path="res://textures/planks.jpg" type="Texture" id=3] -[ext_resource path="res://meshes/laetine_mask.obj" type="ArrayMesh" id=4] -[ext_resource path="res://scenes/environment/Ladder.tscn" type="PackedScene" id=5] - -[sub_resource type="PhysicsMaterial" id=28] -rough = true - -[sub_resource type="BoxShape" id=5] -extents = Vector3( 0.2, 0.2, 0.2 ) - -[sub_resource type="CubeMesh" id=6] -size = Vector3( 0.4, 0.4, 0.4 ) - -[sub_resource type="BoxShape" id=7] -extents = Vector3( 0.1, 0.1, 0.1 ) - -[sub_resource type="CubeMesh" id=9] -size = Vector3( 0.15, 24, 0.15 ) - -[sub_resource type="OpenSimplexNoise" id=10] - -[sub_resource type="NoiseTexture" id=11] -noise = SubResource( 10 ) - -[sub_resource type="SpatialMaterial" id=12] -albedo_color = Color( 0.266667, 0.215686, 0.215686, 1 ) -albedo_texture = SubResource( 11 ) - -[sub_resource type="CubeMesh" id=13] -size = Vector3( 0.05, 15, 13 ) - -[sub_resource type="CubeMesh" id=14] -size = Vector3( 2, 2.5, 0.15 ) - -[sub_resource type="SpatialMaterial" id=15] -albedo_texture = ExtResource( 3 ) -uv1_scale = Vector3( 0.1, 0.1, 0.1 ) -uv1_offset = Vector3( 1, 0, 0 ) -uv1_triplanar = true - -[sub_resource type="ArrayMesh" id=16] -surfaces/0 = { -"aabb": AABB( -16, -1.12351, -2.5, 32, 2.60707, 5 ), -"array_data": PoolByteArray( 0, 0, 128, 193, 136, 73, 186, 63, 234, 37, 30, 191, 221, 125, 162, 67, 0, 59, 0, 56, 0, 0, 64, 193, 5, 51, 146, 63, 140, 215, 216, 191, 221, 125, 172, 68, 192, 58, 0, 56, 0, 0, 128, 193, 136, 73, 186, 63, 12, 202, 228, 190, 221, 125, 161, 67, 0, 59, 107, 55, 14, 172, 85, 193, 149, 71, 189, 63, 6, 242, 100, 191, 221, 125, 151, 65, 250, 58, 108, 55, 0, 0, 64, 193, 5, 51, 146, 63, 221, 68, 189, 191, 221, 125, 177, 69, 192, 58, 120, 55, 0, 0, 64, 193, 5, 51, 146, 63, 203, 131, 214, 63, 231, 243, 0, 118, 0, 57, 0, 40, 0, 0, 64, 193, 242, 119, 199, 190, 22, 189, 183, 63, 231, 243, 0, 118, 0, 54, 0, 40, 0, 0, 128, 193, 136, 73, 186, 63, 50, 176, 14, 63, 231, 243, 0, 118, 0, 57, 0, 0, 0, 0, 128, 193, 123, 218, 101, 63, 30, 55, 244, 62, 231, 243, 0, 118, 0, 54, 0, 0, 0, 0, 128, 193, 136, 73, 186, 63, 50, 176, 14, 63, 129, 0, 0, 118, 0, 57, 0, 60, 0, 0, 128, 193, 123, 218, 101, 63, 30, 55, 244, 62, 129, 0, 0, 123, 0, 54, 0, 60, 0, 0, 128, 193, 136, 73, 186, 63, 145, 237, 180, 62, 129, 0, 0, 118, 0, 57, 167, 59, 0, 0, 128, 193, 136, 73, 186, 63, 12, 202, 228, 190, 129, 0, 0, 118, 0, 57, 74, 58, 0, 0, 128, 193, 136, 73, 186, 63, 234, 37, 30, 191, 129, 0, 6, 127, 0, 57, 0, 58, 0, 0, 128, 193, 123, 218, 101, 63, 205, 174, 7, 191, 129, 0, 17, 127, 0, 54, 0, 58, 0, 0, 128, 193, 83, 94, 55, 63, 167, 64, 166, 61, 129, 0, 127, 63, 0, 54, 122, 59, 0, 0, 128, 65, 5, 167, 46, 191, 211, 19, 210, 191, 17, 137, 110, 66, 0, 54, 0, 56, 0, 0, 64, 65, 50, 34, 113, 191, 83, 62, 1, 192, 17, 137, 116, 67, 128, 53, 0, 56, 0, 0, 128, 65, 62, 35, 93, 191, 167, 64, 166, 61, 17, 137, 112, 67, 0, 54, 252, 53, 0, 0, 64, 65, 45, 207, 143, 191, 167, 64, 166, 61, 17, 137, 118, 67, 128, 53, 252, 53, 0, 0, 128, 65, 10, 130, 123, 63, 206, 196, 244, 191, 127, 0, 17, 127, 0, 57, 0, 56, 0, 0, 128, 65, 5, 167, 46, 191, 211, 19, 210, 191, 127, 0, 26, 127, 0, 54, 0, 56, 0, 0, 128, 65, 10, 130, 123, 63, 247, 117, 214, 191, 127, 0, 30, 127, 0, 57, 103, 55, 0, 0, 128, 65, 10, 130, 123, 63, 60, 77, 208, 63, 127, 0, 0, 95, 0, 57, 227, 52, 0, 0, 128, 65, 10, 130, 123, 63, 0, 255, 240, 63, 127, 0, 0, 107, 0, 57, 0, 52, 0, 0, 128, 65, 5, 167, 46, 191, 60, 46, 206, 63, 127, 0, 0, 118, 0, 54, 0, 52, 0, 0, 128, 65, 62, 35, 93, 191, 167, 64, 166, 61, 127, 0, 127, 63, 0, 54, 252, 53, 0, 0, 64, 65, 10, 130, 123, 63, 157, 187, 22, 192, 110, 140, 238, 126, 0, 57, 64, 56, 0, 0, 64, 65, 50, 34, 113, 191, 83, 62, 1, 192, 110, 140, 238, 126, 0, 54, 64, 56, 0, 0, 128, 65, 10, 130, 123, 63, 206, 196, 244, 191, 110, 140, 18, 126, 0, 57, 0, 56, 0, 0, 128, 65, 5, 167, 46, 191, 211, 19, 210, 191, 110, 140, 18, 126, 0, 54, 0, 56, 103, 124, 118, 192, 10, 130, 123, 63, 31, 44, 24, 192, 148, 133, 237, 126, 0, 57, 61, 57, 103, 124, 118, 192, 50, 34, 113, 191, 118, 112, 2, 192, 148, 133, 237, 126, 0, 54, 61, 57, 0, 0, 0, 0, 10, 130, 123, 63, 0, 0, 32, 192, 148, 133, 19, 126, 0, 57, 0, 57, 0, 0, 0, 0, 50, 34, 113, 191, 154, 37, 9, 192, 148, 133, 19, 126, 0, 54, 0, 57, 0, 0, 0, 0, 50, 34, 113, 191, 154, 37, 9, 192, 247, 130, 126, 65, 0, 52, 0, 56, 103, 124, 118, 192, 50, 34, 113, 191, 118, 112, 2, 192, 247, 130, 126, 63, 9, 51, 0, 56, 0, 0, 0, 0, 45, 207, 143, 191, 167, 64, 166, 61, 247, 130, 126, 64, 0, 52, 238, 53, 103, 124, 118, 192, 45, 207, 143, 191, 167, 64, 166, 61, 247, 130, 125, 63, 9, 51, 232, 53, 0, 0, 128, 64, 10, 130, 123, 63, 0, 0, 32, 64, 0, 237, 0, 117, 0, 57, 0, 49, 0, 0, 128, 64, 50, 34, 113, 191, 174, 16, 9, 64, 0, 237, 0, 117, 0, 54, 0, 49, 0, 0, 0, 0, 10, 130, 123, 63, 0, 0, 32, 64, 0, 237, 0, 117, 0, 57, 0, 48, 0, 0, 0, 0, 50, 34, 113, 191, 174, 16, 9, 64, 0, 237, 0, 117, 0, 54, 0, 48, 0, 0, 0, 0, 10, 130, 123, 63, 0, 0, 32, 192, 0, 127, 131, 63, 0, 58, 0, 56, 0, 0, 128, 64, 10, 130, 123, 63, 0, 0, 32, 192, 0, 127, 131, 63, 192, 57, 0, 56, 0, 0, 0, 0, 10, 130, 123, 63, 79, 88, 5, 192, 0, 127, 131, 63, 0, 58, 124, 55, 0, 0, 128, 64, 10, 130, 123, 63, 140, 47, 11, 192, 0, 127, 131, 63, 192, 57, 120, 55, 0, 0, 0, 65, 10, 130, 123, 63, 0, 0, 32, 192, 0, 127, 129, 64, 128, 57, 0, 56, 0, 0, 64, 65, 10, 130, 123, 63, 157, 187, 22, 192, 0, 127, 129, 67, 64, 57, 0, 56, 0, 0, 0, 65, 10, 130, 123, 63, 88, 83, 11, 192, 0, 127, 129, 64, 128, 57, 106, 55, 0, 0, 64, 65, 10, 130, 123, 63, 181, 253, 1, 192, 0, 127, 129, 67, 64, 57, 109, 55, 0, 0, 64, 65, 10, 130, 123, 63, 2, 44, 22, 64, 3, 238, 0, 117, 0, 57, 0, 51, 0, 0, 64, 65, 50, 34, 113, 191, 7, 155, 0, 64, 3, 238, 0, 117, 0, 54, 0, 51, 0, 0, 0, 65, 10, 130, 123, 63, 0, 0, 32, 64, 3, 238, 0, 117, 0, 57, 0, 50, 0, 0, 0, 65, 50, 34, 113, 191, 174, 16, 9, 64, 3, 238, 0, 117, 0, 54, 0, 50, 0, 0, 128, 64, 10, 130, 123, 63, 0, 0, 32, 192, 107, 129, 19, 127, 0, 57, 192, 56, 0, 0, 128, 64, 50, 34, 113, 191, 154, 37, 9, 192, 107, 129, 19, 127, 0, 54, 192, 56, 0, 0, 0, 65, 10, 130, 123, 63, 0, 0, 32, 192, 107, 129, 19, 127, 0, 57, 128, 56, 0, 0, 0, 65, 50, 34, 113, 191, 154, 37, 9, 192, 107, 129, 19, 127, 0, 54, 128, 56, 0, 0, 0, 65, 50, 34, 113, 191, 154, 37, 9, 192, 9, 129, 127, 63, 0, 53, 0, 56, 0, 0, 128, 64, 50, 34, 113, 191, 154, 37, 9, 192, 9, 129, 126, 63, 128, 52, 0, 56, 0, 0, 0, 65, 45, 207, 143, 191, 167, 64, 166, 61, 9, 129, 126, 63, 0, 53, 248, 53, 0, 0, 128, 64, 45, 207, 143, 191, 167, 64, 166, 61, 9, 129, 126, 63, 128, 52, 243, 53, 0, 0, 0, 193, 78, 127, 58, 191, 1, 106, 234, 191, 236, 139, 118, 54, 0, 50, 0, 56, 0, 0, 64, 193, 242, 119, 199, 190, 126, 229, 185, 191, 236, 139, 116, 57, 0, 49, 0, 56, 0, 0, 0, 193, 118, 251, 104, 191, 167, 64, 166, 61, 236, 139, 117, 55, 0, 50, 222, 53, 0, 0, 64, 193, 34, 56, 18, 191, 167, 64, 166, 61, 236, 139, 114, 58, 0, 49, 198, 53, 0, 0, 64, 193, 5, 51, 146, 63, 140, 215, 216, 191, 146, 141, 238, 126, 0, 57, 192, 57, 0, 0, 64, 193, 242, 119, 199, 190, 126, 229, 185, 191, 146, 141, 238, 126, 0, 54, 192, 57, 0, 0, 0, 193, 10, 130, 123, 63, 6, 187, 8, 192, 146, 141, 18, 126, 0, 57, 128, 57, 0, 0, 0, 193, 78, 127, 58, 191, 1, 106, 234, 191, 146, 141, 18, 126, 0, 54, 128, 57, 103, 124, 118, 192, 10, 130, 123, 63, 175, 238, 23, 64, 251, 238, 0, 117, 0, 57, 19, 46, 103, 124, 118, 192, 50, 34, 113, 191, 225, 38, 2, 64, 251, 238, 0, 117, 0, 54, 19, 46, 0, 0, 0, 193, 10, 130, 123, 63, 186, 218, 8, 64, 251, 238, 0, 117, 0, 57, 0, 44, 0, 0, 0, 193, 78, 127, 58, 191, 117, 118, 234, 63, 251, 238, 0, 117, 0, 54, 0, 44, 0, 0, 0, 193, 10, 130, 123, 63, 6, 187, 8, 192, 0, 127, 136, 63, 128, 58, 0, 56, 103, 124, 118, 192, 10, 130, 123, 63, 31, 44, 24, 192, 0, 127, 131, 63, 61, 58, 0, 56, 0, 0, 0, 193, 10, 130, 123, 63, 207, 78, 242, 191, 0, 127, 136, 63, 128, 58, 70, 55, 103, 124, 118, 192, 10, 130, 123, 63, 154, 62, 255, 191, 0, 127, 130, 63, 61, 58, 128, 55, 0, 0, 128, 193, 136, 73, 186, 63, 234, 37, 30, 191, 143, 154, 239, 126, 0, 57, 0, 58, 0, 0, 128, 193, 123, 218, 101, 63, 205, 174, 7, 191, 143, 154, 239, 126, 0, 54, 0, 58, 0, 0, 64, 193, 5, 51, 146, 63, 140, 215, 216, 191, 143, 154, 17, 126, 0, 57, 192, 57, 0, 0, 64, 193, 242, 119, 199, 190, 126, 229, 185, 191, 143, 154, 17, 126, 0, 54, 192, 57, 0, 0, 64, 193, 242, 119, 199, 190, 126, 229, 185, 191, 214, 158, 101, 41, 0, 49, 0, 56, 0, 0, 128, 193, 123, 218, 101, 63, 205, 174, 7, 191, 214, 158, 95, 46, 0, 48, 0, 56, 0, 0, 64, 193, 34, 56, 18, 191, 167, 64, 166, 61, 214, 158, 101, 42, 0, 49, 198, 53, 0, 0, 128, 193, 83, 94, 55, 63, 167, 64, 166, 61, 214, 158, 91, 47, 0, 48, 11, 53, 0, 0, 0, 193, 10, 130, 123, 63, 186, 218, 8, 64, 245, 240, 0, 117, 0, 57, 0, 44, 0, 0, 0, 193, 78, 127, 58, 191, 117, 118, 234, 63, 245, 240, 0, 117, 0, 54, 0, 44, 0, 0, 64, 193, 5, 51, 146, 63, 203, 131, 214, 63, 245, 240, 0, 117, 0, 57, 0, 40, 0, 0, 64, 193, 242, 119, 199, 190, 22, 189, 183, 63, 245, 240, 0, 117, 0, 54, 0, 40, 0, 0, 64, 193, 5, 51, 146, 63, 140, 215, 216, 191, 4, 122, 146, 65, 192, 58, 0, 56, 0, 0, 0, 193, 10, 130, 123, 63, 6, 187, 8, 192, 4, 122, 147, 65, 128, 58, 0, 56, 0, 0, 64, 193, 5, 51, 146, 63, 221, 68, 189, 191, 4, 122, 146, 65, 192, 58, 120, 55, 0, 0, 0, 193, 10, 130, 123, 63, 207, 78, 242, 191, 4, 122, 147, 65, 128, 58, 70, 55, 0, 0, 0, 0, 10, 130, 123, 63, 0, 0, 32, 64, 253, 237, 0, 117, 0, 57, 0, 48, 0, 0, 0, 0, 50, 34, 113, 191, 174, 16, 9, 64, 253, 237, 0, 117, 0, 54, 0, 48, 103, 124, 118, 192, 10, 130, 123, 63, 175, 238, 23, 64, 253, 237, 0, 117, 0, 57, 19, 46, 103, 124, 118, 192, 50, 34, 113, 191, 225, 38, 2, 64, 253, 237, 0, 117, 0, 54, 19, 46, 103, 124, 118, 192, 50, 34, 113, 191, 118, 112, 2, 192, 241, 135, 121, 57, 9, 51, 0, 56, 0, 0, 0, 193, 78, 127, 58, 191, 1, 106, 234, 191, 241, 135, 120, 59, 0, 50, 0, 56, 103, 124, 118, 192, 45, 207, 143, 191, 167, 64, 166, 61, 241, 135, 121, 58, 9, 51, 232, 53, 0, 0, 0, 193, 118, 251, 104, 191, 167, 64, 166, 61, 241, 135, 119, 60, 0, 50, 222, 53, 0, 0, 0, 193, 10, 130, 123, 63, 6, 187, 8, 192, 148, 136, 19, 126, 0, 57, 128, 57, 0, 0, 0, 193, 78, 127, 58, 191, 1, 106, 234, 191, 148, 136, 19, 126, 0, 54, 128, 57, 103, 124, 118, 192, 10, 130, 123, 63, 31, 44, 24, 192, 148, 136, 237, 126, 0, 57, 61, 57, 103, 124, 118, 192, 50, 34, 113, 191, 118, 112, 2, 192, 148, 136, 237, 126, 0, 54, 61, 57, 0, 0, 0, 0, 50, 34, 113, 191, 154, 37, 9, 192, 9, 129, 126, 63, 0, 52, 0, 56, 0, 0, 0, 0, 45, 207, 143, 191, 167, 64, 166, 61, 9, 129, 126, 63, 0, 52, 238, 53, 0, 0, 0, 0, 10, 130, 123, 63, 0, 0, 32, 192, 107, 129, 19, 127, 0, 57, 0, 57, 0, 0, 0, 0, 50, 34, 113, 191, 154, 37, 9, 192, 107, 129, 19, 127, 0, 54, 0, 57, 0, 0, 0, 65, 10, 130, 123, 63, 0, 0, 32, 64, 0, 237, 0, 117, 0, 57, 0, 50, 0, 0, 0, 65, 50, 34, 113, 191, 174, 16, 9, 64, 0, 237, 0, 117, 0, 54, 0, 50, 0, 0, 128, 65, 10, 130, 123, 63, 0, 255, 240, 63, 11, 240, 0, 117, 0, 57, 0, 52, 0, 0, 128, 65, 5, 167, 46, 191, 60, 46, 206, 63, 11, 240, 0, 117, 0, 54, 0, 52, 0, 0, 64, 65, 10, 130, 123, 63, 2, 44, 22, 64, 11, 240, 0, 117, 0, 57, 0, 51, 0, 0, 64, 65, 50, 34, 113, 191, 7, 155, 0, 64, 11, 240, 0, 117, 0, 54, 0, 51, 0, 0, 128, 65, 10, 130, 123, 63, 206, 196, 244, 191, 0, 127, 129, 69, 0, 57, 0, 56, 140, 39, 122, 65, 10, 130, 123, 63, 181, 195, 219, 191, 0, 127, 129, 68, 12, 57, 104, 55, 0, 0, 128, 65, 10, 130, 123, 63, 247, 117, 214, 191, 0, 127, 129, 68, 0, 57, 103, 55, 0, 0, 0, 65, 10, 130, 123, 63, 0, 0, 32, 192, 108, 133, 237, 126, 0, 57, 128, 56, 0, 0, 0, 65, 50, 34, 113, 191, 154, 37, 9, 192, 108, 133, 237, 126, 0, 54, 128, 56, 0, 0, 64, 65, 10, 130, 123, 63, 157, 187, 22, 192, 108, 133, 19, 126, 0, 57, 64, 56, 0, 0, 64, 65, 50, 34, 113, 191, 83, 62, 1, 192, 108, 133, 19, 126, 0, 54, 64, 56, 0, 0, 64, 65, 50, 34, 113, 191, 83, 62, 1, 192, 9, 130, 123, 63, 128, 53, 0, 56, 0, 0, 0, 65, 50, 34, 113, 191, 154, 37, 9, 192, 9, 130, 125, 63, 0, 53, 0, 56, 0, 0, 64, 65, 45, 207, 143, 191, 167, 64, 166, 61, 9, 130, 124, 63, 128, 53, 252, 53, 0, 0, 0, 65, 45, 207, 143, 191, 167, 64, 166, 61, 9, 130, 126, 63, 0, 53, 248, 53, 0, 0, 0, 0, 10, 130, 123, 63, 185, 112, 12, 64, 0, 127, 129, 65, 0, 58, 180, 52, 0, 0, 128, 64, 10, 130, 123, 63, 97, 253, 14, 64, 0, 127, 129, 63, 192, 57, 208, 52, 0, 0, 0, 0, 10, 130, 123, 63, 0, 0, 32, 64, 0, 127, 129, 65, 0, 58, 0, 52, 0, 0, 128, 64, 10, 130, 123, 63, 0, 0, 32, 64, 0, 127, 129, 63, 192, 57, 0, 52, 0, 0, 0, 65, 10, 130, 123, 63, 169, 162, 13, 64, 0, 127, 131, 63, 128, 57, 226, 52, 0, 0, 64, 65, 10, 130, 123, 63, 151, 1, 5, 64, 0, 127, 139, 63, 64, 57, 236, 52, 0, 0, 0, 65, 10, 130, 123, 63, 0, 0, 32, 64, 0, 127, 131, 63, 128, 57, 0, 52, 0, 0, 64, 65, 10, 130, 123, 63, 2, 44, 22, 64, 0, 127, 138, 63, 64, 57, 0, 52, 136, 152, 84, 193, 84, 229, 189, 63, 132, 18, 74, 63, 0, 96, 109, 61, 249, 58, 183, 52, 0, 0, 64, 193, 5, 51, 146, 63, 31, 130, 172, 63, 0, 96, 138, 81, 192, 58, 233, 52, 0, 0, 128, 193, 136, 73, 186, 63, 145, 237, 180, 62, 0, 96, 138, 80, 0, 59, 177, 52, 0, 0, 128, 193, 136, 73, 186, 63, 50, 176, 14, 63, 0, 96, 137, 79, 0, 59, 0, 52, 0, 0, 64, 193, 5, 51, 146, 63, 203, 131, 214, 63, 0, 96, 138, 80, 192, 58, 0, 52, 209, 33, 122, 65, 10, 130, 123, 63, 28, 181, 216, 63, 0, 127, 144, 63, 27, 57, 231, 52, 0, 0, 128, 65, 10, 130, 123, 63, 60, 77, 208, 63, 0, 127, 149, 63, 0, 57, 227, 52, 0, 0, 128, 65, 10, 130, 123, 63, 0, 255, 240, 63, 0, 127, 143, 63, 0, 57, 0, 52, 0, 0, 64, 193, 5, 51, 146, 63, 31, 130, 172, 63, 4, 122, 134, 71, 192, 58, 233, 52, 0, 0, 0, 193, 10, 130, 123, 63, 15, 242, 236, 63, 4, 122, 134, 72, 128, 58, 177, 52, 0, 0, 64, 193, 5, 51, 146, 63, 203, 131, 214, 63, 4, 122, 134, 71, 192, 58, 0, 52, 0, 0, 0, 193, 10, 130, 123, 63, 186, 218, 8, 64, 4, 122, 134, 72, 128, 58, 0, 52, 103, 124, 118, 192, 10, 130, 123, 63, 5, 164, 4, 64, 0, 127, 129, 66, 61, 58, 174, 52, 103, 124, 118, 192, 10, 130, 123, 63, 175, 238, 23, 64, 0, 127, 129, 66, 61, 58, 0, 52, 0, 0, 0, 193, 10, 130, 123, 63, 15, 242, 236, 63, 0, 127, 129, 66, 128, 58, 177, 52, 0, 0, 0, 193, 10, 130, 123, 63, 186, 218, 8, 64, 0, 127, 129, 66, 128, 58, 0, 52, 0, 0, 0, 193, 10, 130, 123, 63, 15, 242, 236, 63, 119, 114, 127, 63, 128, 58, 177, 52, 0, 0, 64, 193, 5, 51, 146, 63, 31, 130, 172, 63, 119, 114, 127, 63, 192, 58, 233, 52, 0, 0, 0, 193, 200, 37, 182, 190, 86, 129, 220, 63, 119, 114, 127, 63, 128, 58, 177, 52, 0, 0, 64, 193, 200, 37, 182, 190, 216, 101, 162, 63, 119, 114, 127, 63, 192, 58, 233, 52, 0, 0, 0, 65, 10, 130, 123, 63, 88, 83, 11, 192, 253, 13, 127, 193, 128, 57, 106, 55, 0, 0, 64, 65, 10, 130, 123, 63, 181, 253, 1, 192, 253, 13, 127, 193, 64, 57, 109, 55, 0, 0, 0, 65, 200, 37, 182, 190, 144, 17, 254, 191, 253, 13, 127, 193, 128, 57, 106, 55, 0, 0, 64, 65, 200, 37, 182, 190, 240, 77, 243, 191, 253, 13, 127, 193, 64, 57, 109, 55, 14, 172, 85, 193, 149, 71, 189, 63, 6, 242, 100, 191, 38, 5, 127, 193, 250, 58, 108, 55, 0, 0, 64, 193, 5, 51, 146, 63, 221, 68, 189, 191, 38, 5, 127, 193, 192, 58, 120, 55, 14, 172, 85, 193, 168, 114, 78, 63, 73, 159, 86, 191, 38, 5, 127, 193, 250, 58, 108, 55, 0, 0, 64, 193, 200, 37, 182, 190, 150, 37, 178, 191, 38, 5, 127, 193, 192, 58, 120, 55, 0, 0, 0, 0, 10, 130, 123, 63, 79, 88, 5, 192, 1, 13, 127, 193, 0, 58, 124, 55, 0, 0, 128, 64, 10, 130, 123, 63, 140, 47, 11, 192, 1, 13, 127, 193, 192, 57, 120, 55, 0, 0, 0, 0, 200, 37, 182, 190, 28, 6, 251, 191, 1, 13, 127, 193, 0, 58, 124, 55, 0, 0, 128, 64, 200, 37, 182, 190, 57, 208, 253, 191, 1, 13, 127, 193, 192, 57, 120, 55, 0, 0, 64, 193, 5, 51, 146, 63, 31, 130, 172, 63, 122, 88, 127, 63, 192, 58, 233, 52, 136, 152, 84, 193, 84, 229, 189, 63, 132, 18, 74, 63, 122, 88, 127, 63, 249, 58, 183, 52, 0, 0, 64, 193, 200, 37, 182, 190, 216, 101, 162, 63, 122, 88, 127, 63, 192, 58, 233, 52, 136, 152, 84, 193, 54, 174, 79, 63, 97, 25, 63, 63, 122, 88, 127, 63, 249, 58, 183, 52, 0, 0, 64, 65, 10, 130, 123, 63, 151, 1, 5, 64, 143, 124, 127, 63, 64, 57, 236, 52, 0, 0, 0, 65, 10, 130, 123, 63, 169, 162, 13, 64, 143, 124, 127, 63, 128, 57, 226, 52, 0, 0, 64, 65, 200, 37, 182, 190, 79, 2, 249, 63, 143, 124, 127, 63, 64, 57, 236, 52, 0, 0, 0, 65, 200, 37, 182, 190, 146, 62, 1, 64, 143, 124, 127, 63, 128, 57, 226, 52, 103, 124, 118, 192, 10, 130, 123, 63, 154, 62, 255, 191, 2, 10, 127, 193, 61, 58, 128, 55, 0, 0, 0, 0, 10, 130, 123, 63, 79, 88, 5, 192, 2, 10, 127, 193, 0, 58, 124, 55, 103, 124, 118, 192, 200, 37, 182, 190, 16, 64, 240, 191, 2, 10, 127, 193, 61, 58, 128, 55, 0, 0, 0, 0, 200, 37, 182, 190, 28, 6, 251, 191, 2, 10, 127, 193, 0, 58, 124, 55, 14, 172, 85, 193, 149, 71, 189, 63, 6, 242, 100, 191, 255, 125, 149, 62, 250, 58, 108, 55, 136, 152, 84, 193, 84, 229, 189, 63, 132, 18, 74, 63, 255, 125, 142, 62, 249, 58, 183, 52, 0, 0, 128, 193, 136, 73, 186, 63, 12, 202, 228, 190, 255, 125, 131, 59, 0, 59, 107, 55, 0, 0, 128, 193, 136, 73, 186, 63, 145, 237, 180, 62, 255, 125, 131, 54, 0, 59, 177, 52, 140, 39, 122, 65, 10, 130, 123, 63, 181, 195, 219, 191, 129, 0, 127, 63, 12, 57, 104, 55, 209, 33, 122, 65, 10, 130, 123, 63, 28, 181, 216, 63, 129, 0, 127, 63, 27, 57, 231, 52, 140, 39, 122, 65, 211, 108, 230, 190, 60, 218, 206, 191, 129, 0, 127, 63, 12, 57, 104, 55, 209, 33, 122, 65, 200, 37, 182, 190, 193, 0, 204, 63, 129, 0, 127, 63, 27, 57, 231, 52, 0, 0, 0, 193, 10, 130, 123, 63, 207, 78, 242, 191, 2, 10, 127, 193, 128, 58, 70, 55, 103, 124, 118, 192, 10, 130, 123, 63, 154, 62, 255, 191, 2, 10, 127, 193, 61, 58, 128, 55, 0, 0, 0, 193, 200, 37, 182, 190, 171, 232, 225, 191, 2, 10, 127, 193, 128, 58, 70, 55, 103, 124, 118, 192, 200, 37, 182, 190, 16, 64, 240, 191, 2, 10, 127, 193, 61, 58, 128, 55, 136, 152, 84, 193, 84, 229, 189, 63, 132, 18, 74, 63, 126, 251, 127, 63, 249, 58, 183, 52, 14, 172, 85, 193, 149, 71, 189, 63, 6, 242, 100, 191, 126, 251, 127, 63, 250, 58, 108, 55, 136, 152, 84, 193, 54, 174, 79, 63, 97, 25, 63, 63, 126, 251, 127, 63, 249, 58, 183, 52, 14, 172, 85, 193, 168, 114, 78, 63, 73, 159, 86, 191, 126, 251, 127, 63, 250, 58, 108, 55, 0, 0, 0, 65, 10, 130, 123, 63, 169, 162, 13, 64, 146, 126, 127, 63, 128, 57, 226, 52, 0, 0, 128, 64, 10, 130, 123, 63, 97, 253, 14, 64, 146, 126, 127, 63, 192, 57, 208, 52, 0, 0, 0, 65, 200, 37, 182, 190, 146, 62, 1, 64, 146, 126, 127, 63, 128, 57, 226, 52, 0, 0, 128, 64, 200, 37, 182, 190, 209, 122, 2, 64, 146, 126, 127, 63, 192, 57, 208, 52, 0, 0, 64, 65, 10, 130, 123, 63, 181, 253, 1, 192, 248, 9, 127, 193, 64, 57, 109, 55, 140, 39, 122, 65, 10, 130, 123, 63, 181, 195, 219, 191, 248, 9, 127, 193, 12, 57, 104, 55, 0, 0, 64, 65, 200, 37, 182, 190, 240, 77, 243, 191, 248, 9, 127, 193, 64, 57, 109, 55, 140, 39, 122, 65, 211, 108, 230, 190, 60, 218, 206, 191, 248, 9, 127, 193, 12, 57, 104, 55, 0, 0, 0, 0, 10, 130, 123, 63, 185, 112, 12, 64, 116, 123, 127, 63, 0, 58, 180, 52, 103, 124, 118, 192, 10, 130, 123, 63, 5, 164, 4, 64, 116, 123, 127, 63, 61, 58, 174, 52, 0, 0, 0, 0, 200, 37, 182, 190, 118, 52, 4, 64, 116, 123, 127, 63, 0, 58, 180, 52, 103, 124, 118, 192, 200, 37, 182, 190, 224, 185, 249, 63, 116, 123, 127, 63, 61, 58, 174, 52, 0, 0, 64, 193, 5, 51, 146, 63, 221, 68, 189, 191, 10, 8, 127, 193, 192, 58, 120, 55, 0, 0, 0, 193, 10, 130, 123, 63, 207, 78, 242, 191, 10, 8, 127, 193, 128, 58, 70, 55, 0, 0, 64, 193, 200, 37, 182, 190, 150, 37, 178, 191, 10, 8, 127, 193, 192, 58, 120, 55, 0, 0, 0, 193, 200, 37, 182, 190, 171, 232, 225, 191, 10, 8, 127, 193, 128, 58, 70, 55, 209, 33, 122, 65, 10, 130, 123, 63, 28, 181, 216, 63, 139, 116, 127, 63, 27, 57, 231, 52, 0, 0, 64, 65, 10, 130, 123, 63, 151, 1, 5, 64, 139, 116, 127, 63, 64, 57, 236, 52, 209, 33, 122, 65, 200, 37, 182, 190, 193, 0, 204, 63, 139, 116, 127, 63, 27, 57, 231, 52, 0, 0, 64, 65, 200, 37, 182, 190, 79, 2, 249, 63, 139, 116, 127, 63, 64, 57, 236, 52, 103, 124, 118, 192, 10, 130, 123, 63, 5, 164, 4, 64, 116, 121, 127, 63, 61, 58, 174, 52, 0, 0, 0, 193, 10, 130, 123, 63, 15, 242, 236, 63, 116, 121, 127, 63, 128, 58, 177, 52, 103, 124, 118, 192, 200, 37, 182, 190, 224, 185, 249, 63, 116, 121, 127, 63, 61, 58, 174, 52, 0, 0, 0, 193, 200, 37, 182, 190, 86, 129, 220, 63, 116, 121, 127, 63, 128, 58, 177, 52, 0, 0, 128, 64, 10, 130, 123, 63, 140, 47, 11, 192, 0, 15, 127, 193, 192, 57, 120, 55, 0, 0, 0, 65, 10, 130, 123, 63, 88, 83, 11, 192, 0, 15, 127, 193, 128, 57, 106, 55, 0, 0, 128, 64, 200, 37, 182, 190, 57, 208, 253, 191, 0, 15, 127, 193, 192, 57, 120, 55, 0, 0, 0, 65, 200, 37, 182, 190, 144, 17, 254, 191, 0, 15, 127, 193, 128, 57, 106, 55, 0, 0, 128, 64, 10, 130, 123, 63, 97, 253, 14, 64, 113, 126, 127, 63, 192, 57, 208, 52, 0, 0, 0, 0, 10, 130, 123, 63, 185, 112, 12, 64, 113, 126, 127, 63, 0, 58, 180, 52, 0, 0, 128, 64, 200, 37, 182, 190, 209, 122, 2, 64, 113, 126, 127, 63, 192, 57, 208, 52, 0, 0, 0, 0, 200, 37, 182, 190, 118, 52, 4, 64, 113, 126, 127, 63, 0, 58, 180, 52, 0, 0, 64, 65, 200, 37, 182, 190, 240, 77, 243, 191, 3, 125, 131, 68, 64, 57, 109, 55, 140, 39, 122, 65, 211, 108, 230, 190, 60, 218, 206, 191, 3, 125, 133, 64, 12, 57, 104, 55, 0, 0, 64, 65, 200, 37, 182, 190, 79, 2, 249, 63, 3, 125, 132, 64, 64, 57, 236, 52, 209, 33, 122, 65, 200, 37, 182, 190, 193, 0, 204, 63, 3, 125, 143, 64, 27, 57, 231, 52, 0, 0, 64, 65, 200, 37, 182, 190, 79, 2, 249, 63, 0, 127, 130, 63, 64, 57, 236, 52, 0, 0, 0, 65, 200, 37, 182, 190, 146, 62, 1, 64, 0, 127, 129, 64, 128, 57, 226, 52, 0, 0, 64, 65, 200, 37, 182, 190, 240, 77, 243, 191, 0, 127, 129, 64, 64, 57, 109, 55, 0, 0, 0, 65, 200, 37, 182, 190, 144, 17, 254, 191, 0, 127, 129, 64, 128, 57, 106, 55, 0, 0, 128, 64, 200, 37, 182, 190, 209, 122, 2, 64, 0, 127, 129, 64, 192, 57, 208, 52, 0, 0, 128, 64, 200, 37, 182, 190, 57, 208, 253, 191, 0, 127, 130, 63, 192, 57, 120, 55, 0, 0, 0, 0, 200, 37, 182, 190, 118, 52, 4, 64, 0, 127, 129, 65, 0, 58, 180, 52, 0, 0, 0, 0, 200, 37, 182, 190, 28, 6, 251, 191, 0, 127, 130, 63, 0, 58, 124, 55, 103, 124, 118, 192, 200, 37, 182, 190, 224, 185, 249, 63, 0, 127, 129, 65, 61, 58, 174, 52, 103, 124, 118, 192, 200, 37, 182, 190, 16, 64, 240, 191, 0, 127, 129, 64, 61, 58, 128, 55, 0, 0, 0, 193, 200, 37, 182, 190, 86, 129, 220, 63, 0, 127, 129, 66, 128, 58, 177, 52, 0, 0, 0, 193, 200, 37, 182, 190, 171, 232, 225, 191, 0, 127, 129, 64, 128, 58, 70, 55, 0, 0, 64, 193, 200, 37, 182, 190, 216, 101, 162, 63, 0, 127, 137, 63, 192, 58, 233, 52, 0, 0, 64, 193, 200, 37, 182, 190, 150, 37, 178, 191, 0, 127, 145, 63, 192, 58, 120, 55, 0, 0, 64, 193, 200, 37, 182, 190, 216, 101, 162, 63, 60, 67, 175, 100, 192, 58, 233, 52, 136, 152, 84, 193, 54, 174, 79, 63, 97, 25, 63, 63, 60, 67, 183, 96, 249, 58, 183, 52, 0, 0, 64, 193, 200, 37, 182, 190, 150, 37, 178, 191, 60, 67, 186, 95, 192, 58, 120, 55, 14, 172, 85, 193, 168, 114, 78, 63, 73, 159, 86, 191, 60, 67, 201, 88, 250, 58, 108, 55, 0, 0, 0, 193, 118, 251, 104, 191, 167, 64, 166, 61, 247, 151, 114, 58, 0, 50, 222, 53, 0, 0, 64, 193, 34, 56, 18, 191, 167, 64, 166, 61, 247, 151, 109, 59, 0, 49, 198, 53, 0, 0, 0, 193, 78, 127, 58, 191, 117, 118, 234, 63, 247, 151, 112, 58, 0, 50, 0, 52, 0, 0, 64, 193, 242, 119, 199, 190, 22, 189, 183, 63, 247, 151, 107, 59, 0, 49, 0, 52, 0, 0, 0, 0, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 126, 63, 0, 52, 238, 53, 103, 124, 118, 192, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 124, 63, 9, 51, 232, 53, 0, 0, 0, 0, 50, 34, 113, 191, 174, 16, 9, 64, 0, 140, 125, 63, 0, 52, 0, 52, 103, 124, 118, 192, 50, 34, 113, 191, 225, 38, 2, 64, 0, 140, 123, 63, 9, 51, 0, 52, 0, 0, 64, 193, 34, 56, 18, 191, 167, 64, 166, 61, 228, 175, 86, 49, 0, 49, 198, 53, 0, 0, 128, 193, 83, 94, 55, 63, 167, 64, 166, 61, 228, 175, 83, 50, 0, 48, 11, 53, 0, 0, 64, 193, 242, 119, 199, 190, 22, 189, 183, 63, 228, 175, 86, 49, 0, 49, 0, 52, 0, 0, 128, 193, 123, 218, 101, 63, 30, 55, 244, 62, 228, 175, 82, 51, 0, 48, 0, 52, 0, 0, 128, 64, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 126, 63, 128, 52, 243, 53, 0, 0, 0, 0, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 126, 63, 0, 52, 238, 53, 0, 0, 128, 64, 50, 34, 113, 191, 174, 16, 9, 64, 0, 140, 126, 63, 128, 52, 0, 52, 0, 0, 0, 0, 50, 34, 113, 191, 174, 16, 9, 64, 0, 140, 127, 63, 0, 52, 0, 52, 0, 0, 64, 65, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 126, 63, 128, 53, 252, 53, 0, 0, 0, 65, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 126, 62, 0, 53, 248, 53, 0, 0, 64, 65, 50, 34, 113, 191, 7, 155, 0, 64, 0, 140, 126, 64, 128, 53, 0, 52, 0, 0, 0, 65, 50, 34, 113, 191, 174, 16, 9, 64, 0, 140, 126, 61, 0, 53, 0, 52, 0, 0, 0, 65, 45, 207, 143, 191, 167, 64, 166, 61, 0, 140, 126, 63, 0, 53, 248, 53, 0, 0, 0, 65, 50, 34, 113, 191, 174, 16, 9, 64, 0, 140, 126, 63, 0, 53, 0, 52, 0, 0, 128, 65, 62, 35, 93, 191, 167, 64, 166, 61, 7, 148, 118, 67, 0, 54, 252, 53, 0, 0, 64, 65, 45, 207, 143, 191, 167, 64, 166, 61, 7, 148, 120, 71, 128, 53, 252, 53, 0, 0, 128, 65, 5, 167, 46, 191, 60, 46, 206, 63, 7, 148, 119, 69, 0, 54, 0, 52, 0, 0, 64, 65, 50, 34, 113, 191, 7, 155, 0, 64, 7, 148, 120, 72, 128, 53, 0, 52, 103, 124, 118, 192, 45, 207, 143, 191, 167, 64, 166, 61, 251, 146, 119, 60, 9, 51, 232, 53, 0, 0, 0, 193, 118, 251, 104, 191, 167, 64, 166, 61, 251, 146, 116, 60, 0, 50, 222, 53, 103, 124, 118, 192, 50, 34, 113, 191, 225, 38, 2, 64, 251, 146, 118, 60, 9, 51, 0, 52, 0, 0, 0, 193, 78, 127, 58, 191, 117, 118, 234, 63, 251, 146, 115, 60, 0, 50, 0, 52 ), -"array_index_data": PoolByteArray( 0, 0, 1, 0, 2, 0, 2, 0, 1, 0, 3, 0, 3, 0, 1, 0, 4, 0, 5, 0, 6, 0, 7, 0, 7, 0, 6, 0, 8, 0, 9, 0, 10, 0, 11, 0, 11, 0, 10, 0, 12, 0, 12, 0, 10, 0, 13, 0, 13, 0, 10, 0, 14, 0, 14, 0, 10, 0, 15, 0, 16, 0, 17, 0, 18, 0, 18, 0, 17, 0, 19, 0, 20, 0, 21, 0, 22, 0, 22, 0, 21, 0, 23, 0, 23, 0, 21, 0, 24, 0, 24, 0, 21, 0, 25, 0, 25, 0, 21, 0, 26, 0, 27, 0, 28, 0, 29, 0, 29, 0, 28, 0, 30, 0, 31, 0, 32, 0, 33, 0, 33, 0, 32, 0, 34, 0, 35, 0, 36, 0, 37, 0, 37, 0, 36, 0, 38, 0, 39, 0, 40, 0, 41, 0, 41, 0, 40, 0, 42, 0, 43, 0, 44, 0, 45, 0, 45, 0, 44, 0, 46, 0, 47, 0, 48, 0, 49, 0, 49, 0, 48, 0, 50, 0, 51, 0, 52, 0, 53, 0, 53, 0, 52, 0, 54, 0, 55, 0, 56, 0, 57, 0, 57, 0, 56, 0, 58, 0, 59, 0, 60, 0, 61, 0, 61, 0, 60, 0, 62, 0, 63, 0, 64, 0, 65, 0, 65, 0, 64, 0, 66, 0, 67, 0, 68, 0, 69, 0, 69, 0, 68, 0, 70, 0, 71, 0, 72, 0, 73, 0, 73, 0, 72, 0, 74, 0, 75, 0, 76, 0, 77, 0, 77, 0, 76, 0, 78, 0, 79, 0, 80, 0, 81, 0, 81, 0, 80, 0, 82, 0, 83, 0, 84, 0, 85, 0, 85, 0, 84, 0, 86, 0, 87, 0, 88, 0, 89, 0, 89, 0, 88, 0, 90, 0, 91, 0, 92, 0, 93, 0, 93, 0, 92, 0, 94, 0, 76, 0, 43, 0, 78, 0, 78, 0, 43, 0, 45, 0, 95, 0, 96, 0, 97, 0, 97, 0, 96, 0, 98, 0, 99, 0, 100, 0, 101, 0, 101, 0, 100, 0, 102, 0, 103, 0, 104, 0, 105, 0, 105, 0, 104, 0, 106, 0, 60, 0, 107, 0, 62, 0, 62, 0, 107, 0, 108, 0, 109, 0, 110, 0, 55, 0, 55, 0, 110, 0, 56, 0, 44, 0, 47, 0, 46, 0, 46, 0, 47, 0, 49, 0, 111, 0, 112, 0, 39, 0, 39, 0, 112, 0, 40, 0, 113, 0, 114, 0, 115, 0, 115, 0, 114, 0, 116, 0, 48, 0, 117, 0, 50, 0, 50, 0, 117, 0, 118, 0, 118, 0, 117, 0, 119, 0, 120, 0, 121, 0, 122, 0, 122, 0, 121, 0, 123, 0, 124, 0, 125, 0, 126, 0, 126, 0, 125, 0, 127, 0, 128, 0, 129, 0, 130, 0, 130, 0, 129, 0, 131, 0, 132, 0, 133, 0, 134, 0, 134, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 138, 0, 137, 0, 139, 0, 139, 0, 137, 0, 140, 0, 141, 0, 142, 0, 133, 0, 133, 0, 142, 0, 135, 0, 135, 0, 142, 0, 143, 0, 144, 0, 145, 0, 146, 0, 146, 0, 145, 0, 147, 0, 129, 0, 132, 0, 131, 0, 131, 0, 132, 0, 134, 0, 148, 0, 128, 0, 149, 0, 149, 0, 128, 0, 130, 0, 150, 0, 148, 0, 151, 0, 151, 0, 148, 0, 149, 0, 152, 0, 153, 0, 154, 0, 154, 0, 153, 0, 155, 0, 156, 0, 157, 0, 158, 0, 158, 0, 157, 0, 159, 0, 160, 0, 161, 0, 162, 0, 162, 0, 161, 0, 163, 0, 118, 0, 119, 0, 141, 0, 141, 0, 119, 0, 142, 0, 164, 0, 165, 0, 166, 0, 166, 0, 165, 0, 167, 0, 168, 0, 169, 0, 170, 0, 170, 0, 169, 0, 171, 0, 172, 0, 173, 0, 174, 0, 174, 0, 173, 0, 175, 0, 176, 0, 177, 0, 178, 0, 178, 0, 177, 0, 179, 0, 180, 0, 181, 0, 182, 0, 182, 0, 181, 0, 183, 0, 184, 0, 185, 0, 186, 0, 186, 0, 185, 0, 187, 0, 188, 0, 189, 0, 190, 0, 190, 0, 189, 0, 191, 0, 192, 0, 193, 0, 194, 0, 194, 0, 193, 0, 195, 0, 196, 0, 197, 0, 198, 0, 198, 0, 197, 0, 199, 0, 200, 0, 201, 0, 202, 0, 202, 0, 201, 0, 203, 0, 204, 0, 205, 0, 206, 0, 206, 0, 205, 0, 207, 0, 208, 0, 209, 0, 210, 0, 210, 0, 209, 0, 211, 0, 212, 0, 213, 0, 214, 0, 214, 0, 213, 0, 215, 0, 216, 0, 217, 0, 218, 0, 218, 0, 217, 0, 219, 0, 220, 0, 221, 0, 222, 0, 222, 0, 221, 0, 223, 0, 224, 0, 225, 0, 226, 0, 226, 0, 225, 0, 227, 0, 228, 0, 229, 0, 230, 0, 230, 0, 229, 0, 231, 0, 232, 0, 233, 0, 234, 0, 234, 0, 233, 0, 235, 0, 233, 0, 236, 0, 235, 0, 235, 0, 236, 0, 237, 0, 236, 0, 238, 0, 237, 0, 237, 0, 238, 0, 239, 0, 238, 0, 240, 0, 239, 0, 239, 0, 240, 0, 241, 0, 240, 0, 242, 0, 241, 0, 241, 0, 242, 0, 243, 0, 242, 0, 244, 0, 243, 0, 243, 0, 244, 0, 245, 0, 246, 0, 247, 0, 248, 0, 248, 0, 247, 0, 249, 0, 250, 0, 251, 0, 252, 0, 252, 0, 251, 0, 253, 0, 254, 0, 255, 0, 0, 1, 0, 1, 255, 0, 1, 1, 2, 1, 3, 1, 4, 1, 4, 1, 3, 1, 5, 1, 6, 1, 7, 1, 8, 1, 8, 1, 7, 1, 9, 1, 10, 1, 11, 1, 12, 1, 12, 1, 11, 1, 13, 1, 14, 1, 6, 1, 15, 1, 15, 1, 6, 1, 8, 1, 16, 1, 17, 1, 18, 1, 18, 1, 17, 1, 19, 1, 20, 1, 21, 1, 22, 1, 22, 1, 21, 1, 23, 1 ), -"blend_shape_data": [ ], -"format": 2194711, -"index_count": 498, -"material": SubResource( 15 ), -"name": "Material", -"primitive": 4, -"skeleton_aabb": [ ], -"vertex_count": 280 -} - -[sub_resource type="Shader" id=18] -code = "shader_type spatial; -render_mode blend_mix,depth_draw_always,cull_back,diffuse_burley,specular_schlick_ggx,unshaded; - -void fragment() -{ - ALBEDO.rgb = texture(SCREEN_TEXTURE, SCREEN_UV).rgb; - //ALPHA = texture(SCREEN_TEXTURE, SCREEN_UV).a; - //DEPTH = 0.0; -}" - -[sub_resource type="ShaderMaterial" id=19] -render_priority = -126 -shader = SubResource( 18 ) - -[sub_resource type="BoxShape" id=20] -extents = Vector3( 12.3896, 0.239365, 1.86841 ) - -[sub_resource type="BoxShape" id=21] -extents = Vector3( 7.3368, 0.780973, 0.124213 ) - -[sub_resource type="BoxShape" id=23] -extents = Vector3( 7.3368, 0.934506, 0.124213 ) - -[sub_resource type="BoxShape" id=24] -extents = Vector3( 1.57343, 0.934506, 1.35201 ) - -[sub_resource type="BoxShape" id=25] -extents = Vector3( 0.115313, 0.934506, 1.68658 ) - -[sub_resource type="BoxShape" id=22] -extents = Vector3( 2.14672, 0.239365, 1.59078 ) - -[sub_resource type="NavigationMesh" id=26] -vertices = PoolVector3Array( 4.5, 1.37649, -2.25, 4.5, 1.37649, -2, 6.25, 1.37649, -2, 6.25, 1.37649, -2.25, 14.5, 0.12649, -1.5, 14.5, 0.12649, -1.25, 14.75, 0.12649, -1.25, 14.75, 0.12649, -2.25, 13.75, 0.12649, -1.75, 13.75, 0.12649, -1.5, 14.5, 0.12649, -1.5, 14.75, 0.12649, -2.25, 11.5, 0.12649, -2.25, 11.5, 0.12649, -2, 12.75, 0.12649, -2, 14.75, 0.12649, -2.25, 12.75, 0.12649, -2, 12.75, 0.12649, -1.75, 13.75, 0.12649, -1.75, 14.75, 0.12649, -2.25, -6, 1.37649, 2, -6.25, 1.37649, 2, -6.25, 1.37649, 2.25, -4, 1.37649, 2.25, -4, 1.37649, 2, -4.25, 1.37649, 2, 13, 1.12649, 0.75, 13, 1.12649, -0.5, 12, 0.12649, -0.75, 11, 0.12649, 1, 12, 0.12649, 0.875, -6, 1.37649, 2, -6.25, 1.37649, 2.25, -4, 1.37649, 2.25, -4.25, 1.37649, 2, 8, 0.12649, -1.25, 8, 0.62649, -1.5, 3.5, 0.12649, -1.5, -6, 0.62649, 1, -6, 1.37649, 2, -4.25, 1.37649, 2, -4.25, 0.62649, 1, -11.75, 0.12649, -1.5, -14.25, 0.12649, 1.25, -14.25, 0.62649, 1.5, -6.5, 0.12649, 1.75, -6.5, 0.12649, 1, -4.25, 0.62649, 1, -3.75, 0.12649, 1, -4.25, 0.12649, -1.75, 11, 0.12649, 1, 12, 0.12649, -0.75, 12, 0.12649, -1, 8, 0.12649, -1.25, 8.5, 0.12649, 1.25, 8.5, 0.12649, 1.25, 11, 0.12649, 1.25, 11, 0.12649, 1, -11.75, 0.12649, -1.5, -14.25, 0.12649, -1.5, -14.25, 0.12649, -1.25, -15.25, 0.12649, -1.25, -15.25, -0.12351, 1.25, -14.25, 0.12649, 1.25, -14.25, 0.12649, -1.25, -6, 0.62649, 1, -4.25, 0.62649, 1, -4.25, 0.12649, -1.75, -5.41667, 0.12649, 0.0833333, -11.75, 0.12649, -1.5, -14.25, 0.12649, -1.25, -14.25, 0.12649, 1.25, 0, 0.12649, 1.5, 3.5, 0.12649, -1.5, 3.5, 0.62649, -1.75, -4.25, 0.12649, -1.75, -3.75, 0.12649, 1, -4.25, 0.12649, -1.75, -11.75, 0.62649, -1.75, -11.75, 0.12649, -1.5, -6.5, 0.12649, 1, -6, 0.62649, 1, -5.41667, 0.12649, 0.0833333, 8.5, 0.62649, 1.5, 8.5, 0.12649, 1.25, 8, 0.12649, -1.25, 3.5, 0.12649, -1.5, 0, 0.12649, 1.5, 7.08333, 0.12649, 1.5, -3.75, 0.12649, 1.75, 0, 0.62649, 1.75, 0, 0.12649, 1.5, -3.75, 0.12649, 1, 10.25, 1.37649, -1.75, 10.25, 1.37649, -1.5, 11.5, 1.62649, -1.5, 11.5, 1.62649, -1.75, 13.5, 1.87649, 0.75, 13, 1.87649, 1, 13, 1.87649, 1.25, 14.75, 1.87649, 1, 14.75, 1.87649, 0.75, 14.5, 1.87649, -0.75, 14.5, 1.62649, -1, 13.75, 1.87649, -1, 13.5, 1.87649, -0.75, 15.5, 1.87649, -0.5, 15.5, 1.87649, -0.75, 14.5, 1.87649, -0.75, 14.75, 1.87649, 0.75, 15.5, 1.87649, -0.5, 14.5, 1.87649, -0.75, 13.5, 1.87649, -0.75, 13.5, 1.87649, 0.75, 13.5, 1.87649, -0.75, 13.75, 1.87649, -1, 13.75, 1.62649, -1.25, 12, 1.62649, -1.5, 12, 1.62649, -1.25, 15.75, 1.87649, 0.75, 15.75, 1.87649, -0.5, 15.5, 1.87649, -0.5, 14.75, 1.87649, 0.75, 12.75, 0.12649, 2, 11.5, 0.12649, 2, 11.5, 0.12649, 2.25, 14.75, 0.12649, 2.25, 14.75, 0.12649, 2.25, 14.75, 0.12649, 1.5, 12.75, 0.12649, 1.75, 12.75, 0.12649, 2, -13, 1.37649, 2, -13, 1.37649, 2.25, -11.75, 1.37649, 2.25, -11.75, 1.37649, 2, 2.25, 1.37649, 2, 2.25, 1.37649, 2.25, 6.25, 1.37649, 2.25, 6.25, 1.37649, 2 ) -polygons = [ PoolIntArray( 3, 2, 0 ), PoolIntArray( 0, 2, 1 ), PoolIntArray( 5, 4, 6 ), PoolIntArray( 6, 4, 7 ), PoolIntArray( 9, 8, 10 ), PoolIntArray( 10, 8, 11 ), PoolIntArray( 13, 12, 14 ), PoolIntArray( 14, 12, 15 ), PoolIntArray( 17, 16, 18 ), PoolIntArray( 18, 16, 19 ), PoolIntArray( 22, 21, 20 ), PoolIntArray( 25, 24, 23 ), PoolIntArray( 26, 30, 27 ), PoolIntArray( 27, 30, 28 ), PoolIntArray( 28, 30, 29 ), PoolIntArray( 34, 33, 31 ), PoolIntArray( 31, 33, 32 ), PoolIntArray( 37, 36, 35 ), PoolIntArray( 41, 40, 38 ), PoolIntArray( 38, 40, 39 ), PoolIntArray( 43, 42, 44 ), PoolIntArray( 44, 42, 46 ), PoolIntArray( 44, 46, 45 ), PoolIntArray( 49, 48, 47 ), PoolIntArray( 51, 50, 52 ), PoolIntArray( 52, 50, 54 ), PoolIntArray( 52, 54, 53 ), PoolIntArray( 57, 56, 55 ), PoolIntArray( 60, 59, 58 ), PoolIntArray( 64, 63, 61 ), PoolIntArray( 61, 63, 62 ), PoolIntArray( 65, 68, 66 ), PoolIntArray( 66, 68, 67 ), PoolIntArray( 69, 71, 70 ), PoolIntArray( 73, 72, 74 ), PoolIntArray( 74, 72, 76 ), PoolIntArray( 74, 76, 75 ), PoolIntArray( 81, 80, 82 ), PoolIntArray( 82, 80, 77 ), PoolIntArray( 77, 80, 79 ), PoolIntArray( 77, 79, 78 ), PoolIntArray( 83, 88, 84 ), PoolIntArray( 84, 88, 85 ), PoolIntArray( 85, 88, 86 ), PoolIntArray( 86, 88, 87 ), PoolIntArray( 90, 89, 91 ), PoolIntArray( 91, 89, 92 ), PoolIntArray( 96, 95, 93 ), PoolIntArray( 93, 95, 94 ), PoolIntArray( 98, 97, 99 ), PoolIntArray( 99, 97, 100 ), PoolIntArray( 100, 97, 101 ), PoolIntArray( 103, 102, 104 ), PoolIntArray( 104, 102, 105 ), PoolIntArray( 108, 107, 106 ), PoolIntArray( 110, 109, 111 ), PoolIntArray( 111, 109, 112 ), PoolIntArray( 112, 109, 113 ), PoolIntArray( 115, 114, 116 ), PoolIntArray( 116, 114, 118 ), PoolIntArray( 116, 118, 117 ), PoolIntArray( 120, 119, 121 ), PoolIntArray( 121, 119, 122 ), PoolIntArray( 124, 123, 125 ), PoolIntArray( 125, 123, 126 ), PoolIntArray( 130, 129, 127 ), PoolIntArray( 127, 129, 128 ), PoolIntArray( 134, 133, 131 ), PoolIntArray( 131, 133, 132 ), PoolIntArray( 138, 137, 135 ), PoolIntArray( 135, 137, 136 ) ] -agent_height = 1.8 -agent_radius = 0.18 -agent_max_slope = 46.0 -edge_max_error = 0.68 - -[sub_resource type="CubeMesh" id=27] -size = Vector3( 30, 0.1, 5 ) - -[sub_resource type="CubeMesh" id=29] -size = Vector3( 2, 0.35, 2.5 ) - -[sub_resource type="ConvexPolygonShape" id=30] -points = PoolVector3Array( 1, 0.174966, 1.25, 1, -0.175, 1.25, 1, 0.174966, -1.25, -1, 0.174966, 1.25, -1, -0.175, 1.25, 1, -0.175, -1.25, -1, 0.174966, -1.25, -1, -0.175, -1.25 ) - -[node name="Gunboat" type="RigidBody"] -mass = 13500.0 -physics_material_override = SubResource( 28 ) -can_sleep = false -linear_damp = 1.0 -angular_damp = 1.0 -script = ExtResource( 1 ) - -[node name="SteerArea" type="Area" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6.36737, 1.76137, 0 ) -monitoring = false - -[node name="CollisionShape" type="CollisionShape" parent="SteerArea"] -shape = SubResource( 5 ) - -[node name="MeshInstance" type="MeshInstance" parent="SteerArea"] -mesh = SubResource( 6 ) - -[node name="FloatPoints" type="Spatial" parent="."] - -[node name="FloatArea" type="Area" parent="FloatPoints"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7.4398, -0.80712, -2.36264 ) -collision_layer = 0 -collision_mask = 4 -monitorable = false - -[node name="CollisionShape" type="CollisionShape" parent="FloatPoints/FloatArea"] -shape = SubResource( 7 ) - -[node name="FloatArea2" type="Area" parent="FloatPoints"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7.4398, -0.80712, 2.39068 ) -collision_layer = 0 -collision_mask = 4 -monitorable = false - -[node name="CollisionShape" type="CollisionShape" parent="FloatPoints/FloatArea2"] -shape = SubResource( 7 ) - -[node name="FloatArea5" type="Area" parent="FloatPoints"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.807551, 4.064 ) -collision_layer = 0 -collision_mask = 4 -monitorable = false - -[node name="CollisionShape" type="CollisionShape" parent="FloatPoints/FloatArea5"] -shape = SubResource( 7 ) - -[node name="FloatArea6" type="Area" parent="FloatPoints"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.807551, -4.064 ) -collision_layer = 0 -collision_mask = 4 -monitorable = false - -[node name="CollisionShape" type="CollisionShape" parent="FloatPoints/FloatArea6"] -shape = SubResource( 7 ) - -[node name="FloatArea3" type="Area" parent="FloatPoints"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7.44, -0.806844, 2.391 ) -collision_layer = 0 -collision_mask = 4 -monitorable = false - -[node name="CollisionShape" type="CollisionShape" parent="FloatPoints/FloatArea3"] -shape = SubResource( 7 ) - -[node name="FloatArea4" type="Area" parent="FloatPoints"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7.44, -0.806844, -2.391 ) -collision_layer = 0 -collision_mask = 4 -monitorable = false - -[node name="CollisionShape" type="CollisionShape" parent="FloatPoints/FloatArea4"] -shape = SubResource( 7 ) - -[node name="Mast" type="Spatial" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3.63842, 5.76149, 0 ) - -[node name="MastPole" type="MeshInstance" parent="Mast"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.93756, 0 ) -mesh = SubResource( 9 ) -skeleton = NodePath("../..") -material/0 = SubResource( 12 ) - -[node name="Sail" type="Spatial" parent="Mast"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.113369, 8.41979, 0 ) - -[node name="SailMesh" type="MeshInstance" parent="Mast/Sail"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.617531, 0 ) -mesh = SubResource( 13 ) -skeleton = NodePath("../..") - -[node name="Rudder" type="Spatial" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -16.0094, 0, 0 ) - -[node name="RudderMesh" type="MeshInstance" parent="Rudder"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.651875, 0, 0 ) -mesh = SubResource( 14 ) -skeleton = NodePath("../..") - -[node name="laetine" type="MeshInstance" parent="."] -transform = Transform( -1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0 ) -mesh = SubResource( 16 ) - -[node name="laetine_mask" type="MeshInstance" parent="."] -transform = Transform( -1, 0, -8.74228e-08, 0, 0.75, 0, 8.74228e-08, 0, -1, 0, -0.214627, 0 ) -visible = false -mesh = ExtResource( 4 ) -skeleton = NodePath("") -material/0 = SubResource( 19 ) - -[node name="CollisionShape" type="CollisionShape" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3.60351, -0.594547, 0 ) -shape = SubResource( 20 ) - -[node name="CollisionShape3" type="CollisionShape" parent="."] -transform = Transform( 0.999005, 0, -0.0445958, 0, 1, 0, 0.0445958, 0, 0.999005, -8.64722, 0.222032, 2.00624 ) -shape = SubResource( 21 ) - -[node name="CollisionShape5" type="CollisionShape" parent="."] -transform = Transform( 0.997985, 0, 0.0634524, 0, 1, 0, -0.0634524, 0, 0.997985, 5.96797, 0.222032, 1.98993 ) -shape = SubResource( 23 ) - -[node name="CollisionShape6" type="CollisionShape" parent="."] -transform = Transform( 0.997734, 0, -0.0672839, 0, 1, 0, 0.0672839, 0, 0.997734, 5.96797, 0.222032, -1.96965 ) -shape = SubResource( 23 ) - -[node name="CollisionShape7" type="CollisionShape" parent="."] -transform = Transform( 0.997734, 0, -0.0672839, 0, 1, 0, 0.0672839, 0, 0.997734, 14.4082, 0.423598, 0.0317991 ) -shape = SubResource( 24 ) - -[node name="CollisionShape8" type="CollisionShape" parent="."] -transform = Transform( 0.999989, 0, 0.00459021, 0, 1, 0, -0.00459021, 0, 0.999989, -15.8389, 0.423598, -0.0761639 ) -shape = SubResource( 25 ) - -[node name="CollisionShape4" type="CollisionShape" parent="."] -transform = Transform( 0.999644, 0, 0.0266829, 0, 1, 0, -0.0266829, 0, 0.999644, -8.61846, 0.222032, -2.11819 ) -shape = SubResource( 21 ) - -[node name="CollisionShape2" type="CollisionShape" parent="."] -transform = Transform( 0.966756, -0.255699, 0, 0.255699, 0.966756, 0, 0, 0, 1, 10.733, -0.0678967, 0.0285335 ) -shape = SubResource( 22 ) - -[node name="Cannon" parent="." instance=ExtResource( 2 )] -transform = Transform( -4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 3.29231, 0.746166, -2.13535 ) - -[node name="NavigationMeshInstance" type="NavigationMeshInstance" parent="."] -navmesh = SubResource( 26 ) - -[node name="MeshInstance" type="MeshInstance" parent="NavigationMeshInstance"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.282388, 0 ) -visible = false -mesh = SubResource( 27 ) - -[node name="laetine" type="MeshInstance" parent="NavigationMeshInstance"] -transform = Transform( -1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0 ) -visible = false -mesh = SubResource( 16 ) - -[node name="ramp" type="MeshInstance" parent="NavigationMeshInstance"] -transform = Transform( 1, 0, 0, 0, 0.816238, 0.577715, 0, -0.577715, 0.816238, -5.03993, 0.157205, 1.35372 ) -visible = false -mesh = SubResource( 29 ) - -[node name="ramp" type="MeshInstance" parent="."] -transform = Transform( 1, 0, 0, 0, 0.771436, 0.636307, 0, -0.636307, 0.771436, -5.03993, 0.255733, 1.26566 ) -mesh = SubResource( 29 ) - -[node name="CollisionShape9" type="CollisionShape" parent="."] -transform = Transform( 1, 0, 0, 0, 0.855174, 0.51834, 0, -0.51834, 0.855174, -5.03993, 0.255733, 1.26566 ) -shape = SubResource( 30 ) - -[node name="Ladder" parent="." instance=ExtResource( 5 )] -transform = Transform( -1, 0, -8.74228e-08, 0, 3, 0, 8.74228e-08, 0, -1, -7.1768, -0.262492, -2.50338 ) diff --git a/godot/scenes/vehicles/Gunbrig.tscn b/godot/scenes/vehicles/Gunbrig.tscn index ce417c7..91900c3 100644 --- a/godot/scenes/vehicles/Gunbrig.tscn +++ b/godot/scenes/vehicles/Gunbrig.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=24 format=2] +[gd_scene load_steps=25 format=2] [ext_resource path="res://scripts/vehicles/Gunboat.gd" type="Script" id=1] [ext_resource path="res://scenes/machines/Cannon.tscn" type="PackedScene" id=2] @@ -53,6 +53,9 @@ agent_radius = 0.18 agent_max_slope = 46.0 region_min_size = 3.0 +[sub_resource type="BoxShape" id=36] +extents = Vector3( 10.0294, 0.598376, 0.166381 ) + [node name="Gunbrig" type="RigidBody"] mass = 238000.0 physics_material_override = SubResource( 28 ) @@ -346,3 +349,11 @@ mesh = ExtResource( 8 ) transform = Transform( 0.926234, 1.7263e-09, 0.0323448, 0.0323448, -1.10483e-07, -0.926234, 1.7263e-09, 0.926799, -1.10483e-07, -10.6379, 11.734, -0.0107608 ) visible = false mesh = ExtResource( 7 ) + +[node name="GunwhaleR" type="CollisionShape" parent="."] +transform = Transform( 0.999486, 0, -0.0320562, 0, 1, 0, 0.0320562, 0, 0.999486, -0.646409, 0.658986, 3.50438 ) +shape = SubResource( 36 ) + +[node name="GunwhaleR2" type="CollisionShape" parent="."] +transform = Transform( 0.999486, 0, 0.0320562, 0, 1, 0, -0.0320562, 0, 0.999486, -0.646409, 0.658986, -3.46571 ) +shape = SubResource( 36 ) diff --git a/godot/scenes/vehicles/ship_parts/SquareSail.gd b/godot/scenes/vehicles/ship_parts/SquareSail.gd index b387232..72159d8 100644 --- a/godot/scenes/vehicles/ship_parts/SquareSail.gd +++ b/godot/scenes/vehicles/ship_parts/SquareSail.gd @@ -7,6 +7,8 @@ func _ready(): wind_bone = $Skeleton.find_bone("Bone") func set_sheet(amount: float): #0 to 1 + $Sheet.transform.origin.y = amount * sheet_out + print(amount) $Skeleton/IKL.start(true) $Skeleton/IKR.start(true) - $Sheet.transform.origin.y = amount * sheet_out + diff --git a/godot/scenes/weapons/grapplinghook.gd b/godot/scenes/weapons/grapplinghook.gd new file mode 100644 index 0000000..f7c1fa8 --- /dev/null +++ b/godot/scenes/weapons/grapplinghook.gd @@ -0,0 +1,98 @@ +extends Resource + +var player_owner: RigidBody = null +const fist_damage: int = 15 +var can_throw: bool = true +var hooking: bool = false + +var pin_root: PinJoint = PinJoint.new() +var pin_mid: PinJoint = PinJoint.new() +var pin_player: PinJoint = PinJoint.new() + +var rope_seg1: RigidBody = null #preload("res://scenes/environment/RopeSegment.tscn").instance() +var rope_seg2: RigidBody = null #preload("res://scenes/environment/RopeSegment.tscn").instance() + +const name: String = "GRAPPLINGHOOK" + +func init(owner): + player_owner = owner + rope_seg1 = preload("res://scenes/environment/RopeSegment.tscn").instance() + rope_seg2 = preload("res://scenes/environment/RopeSegment.tscn").instance() + +func deselect() -> bool: + if can_throw and !hooking: + return true + return false + +func select() -> void: + player_owner.rpc("anim_event", {"VMANIMPLAY" : "rockets_idle_vm"}) + +func attack1(): + if !can_throw or hooking: + return + can_throw = false + player_owner.rpc("anim_event", {"VMANIMPLAY" : "rockets_launch_vm"}) + yield(player_owner.get_tree().create_timer(0.45), "timeout") + hooking = true + player_owner.gun_ray.force_raycast_update() + if player_owner.gun_ray.is_colliding(): + var hit = player_owner.gun_ray.get_collider() + var hitpt: Vector3 = player_owner.gun_ray.get_collision_point() + var vlen: float = (hitpt - player_owner.head.global_transform.origin).length() + player_owner.world.add_child(pin_root) + player_owner.world.add_child(pin_mid) + player_owner.world.add_child(pin_player) + player_owner.world.add_child(rope_seg1) + player_owner.world.add_child(rope_seg2) + + pin_root.global_transform.origin = hitpt + pin_player.global_transform.origin = player_owner.head.global_transform.origin + pin_mid.global_transform.origin = hitpt.move_toward(player_owner.head.global_transform.origin, vlen/2) + pin_player.global_transform.origin += player_owner.velocity*0.0167 + print(pin_root.global_transform.origin) + print(pin_player.global_transform.origin) + print(pin_mid.global_transform.origin) + #should apply to both + rope_seg1.get_node("CollisionShape").shape.extents = Vector3(0.1,0.1,vlen/2) + #rope_seg2.get_node("CollisionShape").shape.extents = Vector3(0.1,0.1,vec.length()/2) + rope_seg1.global_transform.origin = hitpt.move_toward(player_owner.head.global_transform.origin, vlen*0.25) + rope_seg2.global_transform.origin = hitpt.move_toward(player_owner.head.global_transform.origin, 0.75*vlen) + rope_seg1.look_at(hitpt, Vector3.UP) + rope_seg2.look_at(hitpt, Vector3.UP) + + pin_root.set_node_a(hit.get_path()) + pin_root.set_node_b(rope_seg1.get_path()) + pin_mid.set_node_a(rope_seg1.get_path()) + pin_mid.set_node_b(rope_seg2.get_path()) + pin_player.set_node_a(rope_seg2.get_path()) + pin_player.set_node_b(player_owner.get_path()) + #rope_seg2.get_node("CollisionShape").shape.extents = Vector3(0.05,0.05,distance/2) + else: + can_throw = true + +func detach(): + player_owner.world.remove_child(pin_root) + player_owner.world.remove_child(pin_mid) + player_owner.world.remove_child(pin_player) + player_owner.world.remove_child(rope_seg1) + player_owner.world.remove_child(rope_seg2) + pin_root.set_node_a("") + pin_root.set_node_b("") + pin_mid.set_node_a("") + pin_mid.set_node_b("") + pin_player.set_node_a("") + pin_player.set_node_b("") + can_throw = true + hooking = false + +func mouse_input(m1: float, _m3: float, m2: float) -> void: + if m2 > 0 and hooking: + detach() + if m1 > 0 and rope_seg1.get_node("CollisionShape").shape.extents.z > 0.1: + rope_seg1.get_node("CollisionShape").shape.extents.z -= 0.05 + var trf1: Vector3 = (pin_root.global_transform.origin-pin_mid.global_transform.origin).normalized() + rope_seg1.global_transform.origin += trf1*0.025 + var trf2: Vector3 = (pin_mid.global_transform.origin-pin_player.global_transform.origin).normalized() + rope_seg2.global_transform.origin += trf2*0.025 + player_owner.linear_velocity += (trf1*0.05 + trf2*0.05) + diff --git a/godot/scenes/weapons/grapplinghook.tres b/godot/scenes/weapons/grapplinghook.tres new file mode 100644 index 0000000..395998e --- /dev/null +++ b/godot/scenes/weapons/grapplinghook.tres @@ -0,0 +1,7 @@ +[gd_resource type="Resource" load_steps=2 format=2] + +[ext_resource path="res://scenes/weapons/grapplinghook.gd" type="Script" id=1] + +[resource] +resource_local_to_scene = true +script = ExtResource( 1 ) diff --git a/godot/scenes/worldprops/ball_bucket.tscn b/godot/scenes/worldprops/ball_bucket.tscn new file mode 100644 index 0000000..d85a2fc --- /dev/null +++ b/godot/scenes/worldprops/ball_bucket.tscn @@ -0,0 +1,46 @@ +[gd_scene load_steps=4 format=2] + +[sub_resource type="BoxShape" id=1] +extents = Vector3( 1, 0.1, 1 ) + +[sub_resource type="BoxShape" id=2] +extents = Vector3( 1, 0.4, 0.1 ) + +[sub_resource type="SpatialMaterial" id=3] +albedo_color = Color( 0.266667, 0.168627, 0.0235294, 1 ) +metallic_specular = 0.0 + +[node name="ball_bucket" type="StaticBody"] + +[node name="CollisionShape" type="CollisionShape" parent="."] +shape = SubResource( 1 ) + +[node name="CollisionShape2" type="CollisionShape" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.474515, 0.95 ) +shape = SubResource( 2 ) + +[node name="CollisionShape3" type="CollisionShape" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.474515, -0.897996 ) +shape = SubResource( 2 ) + +[node name="CollisionShape4" type="CollisionShape" parent="."] +transform = Transform( -4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -0.889, 0.475, 0 ) +shape = SubResource( 2 ) + +[node name="CollisionShape5" type="CollisionShape" parent="."] +transform = Transform( -4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.889, 0.475, 0 ) +shape = SubResource( 2 ) + +[node name="CSGCombiner" type="CSGCombiner" parent="."] +material_override = SubResource( 3 ) + +[node name="CSGBox" type="CSGBox" parent="CSGCombiner"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.400668, 0 ) +height = 1.00035 + +[node name="CSGBox2" type="CSGBox" parent="CSGCombiner"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.975335, 0 ) +operation = 2 +width = 1.73095 +height = 1.87987 +depth = 1.54392 diff --git a/godot/scripts/GameBase.gd b/godot/scripts/GameBase.gd index 85af89a..9f24d7b 100644 --- a/godot/scripts/GameBase.gd +++ b/godot/scripts/GameBase.gd @@ -103,9 +103,9 @@ func back_to_main(): queue_free() func join_team(team): - if player_char != null: + if player_char != null: player_char.deselect_character() - $DEFAULTCAM.current = true + cam.attach($DEFAULTCAM, "STATIC", NodePath(".")) player_team = team rpc_id(1, "_call_on_server", "_client_change_teams", {"id" : client_id, "team" : team}) diff --git a/godot/scripts/ballistics/Cannonball.gd b/godot/scripts/ballistics/Cannonball.gd index 241fc7d..b41f104 100644 --- a/godot/scripts/ballistics/Cannonball.gd +++ b/godot/scripts/ballistics/Cannonball.gd @@ -15,6 +15,10 @@ func get_init_info(): return {"linear_velocity" : linear_velocity, "angular_velocity" : angular_velocity, "oldvel" : oldvel, "shooter" : shooter, "shooter_id" : shooter_id} func _on_collision(body): + if is_network_master() and body.has_method("load_cannonball") and !body.loaded: + body.rpc("load_cannonball") + rpc("net_remove") + return if is_network_master() and oldvel.length() > 20 and !damage_exceptions.has(body) and body.has_method("damage"): body.rpc("damage", oldvel.length(), "BLUNT", [shooter_id, shooter], "using 'cannon'") damage_exceptions.append(body) diff --git a/godot/scripts/characters/player_controller_new.gd b/godot/scripts/characters/player_controller_new.gd index a61ef1d..b1a8718 100644 --- a/godot/scripts/characters/player_controller_new.gd +++ b/godot/scripts/characters/player_controller_new.gd @@ -105,6 +105,7 @@ func _process(_delta: float) -> void: else: weapon.mouse_input(Input.get_action_strength("fire"), Input.get_action_strength("fire3"),Input.get_action_strength("fire2")) jumping = Input.get_action_strength("move_jump") + walk_speed = 5.0 if Input.get_action_strength("move_walk") else 7.5 if Input.is_action_just_pressed("fire"): weapon.attack1() if Input.is_action_just_pressed("reload") and weapon.has_method("reload"): @@ -190,6 +191,10 @@ func lose_machine(): machine = null func carry_process() -> void: + if !is_instance_valid(carrying_object): + carrying_object = null + carrying = false + return var vec = (carry_point.global_transform.origin - carrying_object.global_transform.origin) var length = vec.length() if length > 1: diff --git a/godot/scripts/machines/Cannon.gd b/godot/scripts/machines/Cannon.gd index 80b9edf..6c0b350 100644 --- a/godot/scripts/machines/Cannon.gd +++ b/godot/scripts/machines/Cannon.gd @@ -41,6 +41,7 @@ func _ready(): add_collision_exception_with(get_parent().get_parent()) mode = RigidBody.MODE_KINEMATIC world_ballistics = world.get_node("BALLISTICS") + if loaded: controllable = true func on_new_control(): if is_network_master(): world.cam.attach(self, "STATIC", "./YawJoint/PitchJoint/CameraPoint") @@ -65,6 +66,7 @@ func attack1(): remotesync func fire(): loaded = false + controllable = false status.set_visible(true) $YawJoint/PitchJoint/Muzzle/explosion_sound.play() var expl = preload("res://particles/p_Explosion.tscn").instance() @@ -79,6 +81,11 @@ remotesync func fire(): cball.shooter = user.name + " (" + world.players_info[user.get_network_master()][0] + ")" cball.shooter_id = user.get_network_master() if mode == RigidBody.MODE_KINEMATIC: - get_parent().apply_impulse($YawJoint/PitchJoint.global_transform.origin - get_parent().global_transform.origin, -1*cball.mass*ball_speed*muzzle.global_transform.basis.x) + get_parent().get_parent().apply_impulse($YawJoint/PitchJoint.global_transform.origin - get_parent().global_transform.origin, -1*cball.mass*ball_speed*muzzle.global_transform.basis.x) else: if is_network_master(): apply_impulse($YawJoint/PitchJoint.global_transform.origin - global_transform.origin, -1*cball.mass*ball_speed*muzzle.global_transform.basis.x) + +remotesync func load_cannonball(): + loaded = true + controllable = true + $StatusNotifier.visible = false diff --git a/godot/scripts/vehicles/Gunboat.gd b/godot/scripts/vehicles/Gunboat.gd index c00479e..03252e6 100644 --- a/godot/scripts/vehicles/Gunboat.gd +++ b/godot/scripts/vehicles/Gunboat.gd @@ -39,12 +39,18 @@ func mp_init(init_info): # Called when the node enters the scene tree for the first time. func _ready(): print("adding gunboat to scene",get_tree().get_network_unique_id()) + controllable = true + for sail in $SAILS.get_children(): + sail.set_sheet(sail_out) world = get_tree().get_root().find_node("GAMEWORLD", true, false) if get_tree().get_network_unique_id() == 0: print("enabling navigation for server") $NavigationMeshInstance.set_enabled(true) func on_no_control(): + rpc("reset_controls") + +remotesync func reset_controls(): rudder = 0.0 throttle = 0.0 mainsheet = 0.0 @@ -76,7 +82,7 @@ remotesync func damage(amount, _type, _shooter, _extra = ""): # Called every frame. 'delta' is the elapsed time since the previous frame. func _physics_process(delta): if is_network_master(): - if mainsheet != 0: + if throttle != 0: for sail in $SAILS.get_children(): sail.set_sheet(sail_out) $Rudder.rotation_degrees.y = rudder_turn diff --git a/godot/sounds/footstep01.ogg b/godot/sounds/footstep01.ogg Binary files differnew file mode 100644 index 0000000..4a2501c --- /dev/null +++ b/godot/sounds/footstep01.ogg diff --git a/godot/sounds/footstep01.ogg.import b/godot/sounds/footstep01.ogg.import new file mode 100644 index 0000000..eafe193 --- /dev/null +++ b/godot/sounds/footstep01.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.oggstr" + +[deps] + +source_file="res://sounds/footstep01.ogg" +dest_files=[ "res://.import/footstep01.ogg-d76963bf1bd06cc247473674bc496643.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/godot/sounds/footstep02.ogg b/godot/sounds/footstep02.ogg Binary files differnew file mode 100644 index 0000000..cda8c99 --- /dev/null +++ b/godot/sounds/footstep02.ogg diff --git a/godot/sounds/footstep02.ogg.import b/godot/sounds/footstep02.ogg.import new file mode 100644 index 0000000..1dfabc5 --- /dev/null +++ b/godot/sounds/footstep02.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.oggstr" + +[deps] + +source_file="res://sounds/footstep02.ogg" +dest_files=[ "res://.import/footstep02.ogg-f0eec7980dcf1290786fd8f372f7b88f.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/godot/sounds/footstep03.ogg b/godot/sounds/footstep03.ogg Binary files differnew file mode 100644 index 0000000..812335c --- /dev/null +++ b/godot/sounds/footstep03.ogg diff --git a/godot/sounds/footstep03.ogg.import b/godot/sounds/footstep03.ogg.import new file mode 100644 index 0000000..711cfc6 --- /dev/null +++ b/godot/sounds/footstep03.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.oggstr" + +[deps] + +source_file="res://sounds/footstep03.ogg" +dest_files=[ "res://.import/footstep03.ogg-03ef4afe33de50dbdff6ddbbf098ad74.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/godot/sounds/footstep04.ogg b/godot/sounds/footstep04.ogg Binary files differnew file mode 100644 index 0000000..dabbd70 --- /dev/null +++ b/godot/sounds/footstep04.ogg diff --git a/godot/sounds/footstep04.ogg.import b/godot/sounds/footstep04.ogg.import new file mode 100644 index 0000000..3c81384 --- /dev/null +++ b/godot/sounds/footstep04.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.oggstr" + +[deps] + +source_file="res://sounds/footstep04.ogg" +dest_files=[ "res://.import/footstep04.ogg-16226c305e1322a536cb96a2c537b228.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/godot/sounds/footstep05.ogg b/godot/sounds/footstep05.ogg Binary files differnew file mode 100644 index 0000000..62b8dcc --- /dev/null +++ b/godot/sounds/footstep05.ogg diff --git a/godot/sounds/footstep05.ogg.import b/godot/sounds/footstep05.ogg.import new file mode 100644 index 0000000..6f85cf5 --- /dev/null +++ b/godot/sounds/footstep05.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.oggstr" + +[deps] + +source_file="res://sounds/footstep05.ogg" +dest_files=[ "res://.import/footstep05.ogg-ce0f0381235ebdd22319464e329eef5f.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/godot/sounds/footstep06.ogg b/godot/sounds/footstep06.ogg Binary files differnew file mode 100644 index 0000000..9a0ec19 --- /dev/null +++ b/godot/sounds/footstep06.ogg diff --git a/godot/sounds/footstep06.ogg.import b/godot/sounds/footstep06.ogg.import new file mode 100644 index 0000000..6970d5d --- /dev/null +++ b/godot/sounds/footstep06.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.oggstr" + +[deps] + +source_file="res://sounds/footstep06.ogg" +dest_files=[ "res://.import/footstep06.ogg-64d7f3763b27a0bf60b51adc0e13f809.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/godot/theming/menu_font.tres b/godot/theming/menu_font.tres index 5c850e4..b44cf0e 100644 --- a/godot/theming/menu_font.tres +++ b/godot/theming/menu_font.tres @@ -3,4 +3,5 @@ [ext_resource path="res://theming/FreeMono.otf" type="DynamicFontData" id=1] [resource] +use_mipmaps = true font_data = ExtResource( 1 ) diff --git a/godot/ui/HUD.gd b/godot/ui/HUD.gd index 6c45113..9bbcae1 100644 --- a/godot/ui/HUD.gd +++ b/godot/ui/HUD.gd @@ -69,7 +69,6 @@ func update_characters(): for btn in character_list.get_children(): btn.queue_free() for character in world.get_node("PLAYERS").get_children(): - print(character.team) if world.player_team == character.team: var select_button = Button.new() select_button.connect("pressed", world, "select_character", [character.name]) diff --git a/godot/watershadertest.tscn b/godot/watershadertest.tscn new file mode 100644 index 0000000..2c370d9 --- /dev/null +++ b/godot/watershadertest.tscn @@ -0,0 +1,115 @@ +[gd_scene load_steps=10 format=2] + +[sub_resource type="Shader" id=1] +code = "shader_type spatial; +render_mode unshaded; + +uniform vec4 deep_color : hint_color; +uniform vec4 shallow_color : hint_color = vec4(1); + +uniform float refraction_speed = 0.25; +uniform float refraction_strength = 1.0; + +uniform float foam_amount = 1.0; +uniform float foam_cutoff = 1.0; +uniform vec4 foam_color : hint_color = vec4(1); + +uniform float displacement_strength = 0.25; + +uniform float depth_distance = 1.0; + +uniform vec2 movement_direction = vec2(1,0); + +uniform sampler2D refraction_noise : hint_normal; +uniform sampler2D foam_noise : hint_black_albedo; +uniform sampler2D displacement_noise : hint_black; + +void vertex() { + float displacement = textureLod( + displacement_noise, + UV + (TIME * movement_direction) * refraction_speed, + 0.0).r * 2.0 - 1.0; + + VERTEX.y += displacement * displacement_strength; +} + +void fragment() { + vec2 uv = SCREEN_UV + refraction_strength + * (texture(refraction_noise, UV + (TIME * movement_direction) * refraction_speed).rg + * 2.0 - 1.0); + + float real_depth = texture(DEPTH_TEXTURE, SCREEN_UV).r * 2.0 - 1.0; + real_depth = PROJECTION_MATRIX[3][2] / (real_depth + PROJECTION_MATRIX[2][2]) + VERTEX.z; + + // Get the raw linear depth from the depth texture into a [-1, 1] range + float depth = texture(DEPTH_TEXTURE, uv).r * 2.0 - 1.0; + // Recreate linear depth of the intersecting geometry using projection matrix, and subtract the vertex of the sphere + depth = PROJECTION_MATRIX[3][2] / (depth + PROJECTION_MATRIX[2][2]) + VERTEX.z; + + depth = max(depth, real_depth); + + float intersection = clamp(depth / foam_amount, 0, 1) * foam_cutoff; + + vec4 out_color = mix(shallow_color, deep_color, clamp((depth / depth_distance), 0, 1)); + vec4 scene_color = texture(SCREEN_TEXTURE, uv); + out_color = mix(scene_color, out_color, out_color.a); + + vec3 foam = step(intersection, + texture(foam_noise, UV + (TIME * movement_direction) * refraction_speed).rgb) + * foam_color.rgb; + + ALBEDO = out_color.rgb + foam; +}" + +[sub_resource type="OpenSimplexNoise" id=4] + +[sub_resource type="NoiseTexture" id=5] +flags = 3 +width = 1024 +height = 1024 +noise = SubResource( 4 ) + +[sub_resource type="OpenSimplexNoise" id=6] + +[sub_resource type="NoiseTexture" id=7] +width = 1024 +height = 1024 +noise = SubResource( 6 ) + +[sub_resource type="OpenSimplexNoise" id=8] + +[sub_resource type="NoiseTexture" id=9] +width = 1024 +height = 1024 +noise = SubResource( 8 ) + +[sub_resource type="ShaderMaterial" id=2] +shader = SubResource( 1 ) +shader_param/deep_color = Color( 0.00784314, 0, 0.196078, 1 ) +shader_param/shallow_color = Color( 0.65098, 1, 1, 1 ) +shader_param/refraction_speed = 0.25 +shader_param/refraction_strength = 1.0 +shader_param/foam_amount = 1.0 +shader_param/foam_cutoff = 1.0 +shader_param/foam_color = Color( 1, 1, 1, 1 ) +shader_param/displacement_strength = 0.25 +shader_param/depth_distance = 5.0 +shader_param/movement_direction = Vector2( 1, 0 ) +shader_param/refraction_noise = SubResource( 9 ) +shader_param/foam_noise = SubResource( 7 ) +shader_param/displacement_noise = SubResource( 5 ) + +[sub_resource type="PlaneMesh" id=3] +material = SubResource( 2 ) +subdivide_width = 512 +subdivide_depth = 512 + +[node name="Spatial" type="Spatial"] + +[node name="MeshInstance" type="MeshInstance" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.182733, -0.0156302 ) +mesh = SubResource( 3 ) + +[node name="OmniLight" type="OmniLight" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.336934, 0 ) +omni_range = 0.949787 diff --git a/godot/backup_stuff/Player.gd b/work/backup_stuff/Player.gd index 3555de5..3555de5 100644 --- a/godot/backup_stuff/Player.gd +++ b/work/backup_stuff/Player.gd diff --git a/godot/backup_stuff/Player.tscn b/work/backup_stuff/Player.tscn index a68f994..a68f994 100644 --- a/godot/backup_stuff/Player.tscn +++ b/work/backup_stuff/Player.tscn diff --git a/godot/backup_stuff/PlayerOld.tscn b/work/backup_stuff/PlayerOld.tscn index f79339e..f79339e 100644 --- a/godot/backup_stuff/PlayerOld.tscn +++ b/work/backup_stuff/PlayerOld.tscn diff --git a/godot/backup_stuff/Player_Other.gd b/work/backup_stuff/Player_Other.gd index 0116d71..0116d71 100644 --- a/godot/backup_stuff/Player_Other.gd +++ b/work/backup_stuff/Player_Other.gd diff --git a/godot/backup_stuff/Sailor.gd b/work/backup_stuff/Sailor.gd index 24b93f9..24b93f9 100644 --- a/godot/backup_stuff/Sailor.gd +++ b/work/backup_stuff/Sailor.gd diff --git a/godot/backup_stuff/Sailor.tscn b/work/backup_stuff/Sailor.tscn index 6458fec..6458fec 100644 --- a/godot/backup_stuff/Sailor.tscn +++ b/work/backup_stuff/Sailor.tscn diff --git a/godot/backup_stuff/player_controller.gd b/work/backup_stuff/player_controller.gd index f52decf..f52decf 100644 --- a/godot/backup_stuff/player_controller.gd +++ b/work/backup_stuff/player_controller.gd diff --git a/work/man.blend b/work/man.blend Binary files differnew file mode 100644 index 0000000..db5f065 --- /dev/null +++ b/work/man.blend diff --git a/work/man.blend1 b/work/man.blend1 Binary files differnew file mode 100644 index 0000000..4e7a2e2 --- /dev/null +++ b/work/man.blend1 |
