├── preview3D_BM.JPG ├── 3d_bomber ├── montserrat.otf ├── immages │ ├── shigle.png │ ├── MPB_3d_im.png │ ├── explosion.png │ ├── rock_bit.png │ ├── rockts1.jpg │ ├── shigleb.png │ ├── shingle.ico │ ├── redDirt_cc0.jpg │ ├── redDirt_cc0_NORM.png │ ├── seamless_brick-015-512x512.png │ ├── seamless_brick-015-512x512_AO.png │ ├── seamless_brick-015-512x512_DISP.png │ ├── seamless_brick-015-512x512_NORM.png │ ├── seamless_brick-015-512x512_SPEC.png │ ├── shigle.png.import │ ├── rock_bit.png.import │ ├── shigleb.png.import │ ├── MPB_3d_im.png.import │ ├── explosion.png.import │ ├── rockts1.jpg.import │ ├── redDirt_cc0.jpg.import │ ├── redDirt_cc0_NORM.png.import │ ├── seamless_brick-015-512x512.png.import │ ├── seamless_brick-015-512x512_AO.png.import │ ├── seamless_brick-015-512x512_DISP.png.import │ ├── seamless_brick-015-512x512_NORM.png.import │ └── seamless_brick-015-512x512_SPEC.png.import ├── materials │ ├── player_spatmat.tres │ ├── rock_spatmat.tres │ ├── bomb_spatmat.tres │ ├── bombShell_spatmat.tres │ ├── floor_spatmat.tres │ └── wall3d_spatmat.tres ├── scripts │ ├── rock.gd │ ├── bomb3d.gd │ ├── score.gd │ ├── lobby.gd │ ├── Player3d.gd │ └── gamestate.gd ├── scenes │ ├── cube.obj.import │ ├── rock.obj.import │ ├── wall3d.tscn │ ├── floor3d.tscn │ ├── cube.obj │ ├── lobby.tscn │ ├── Player3d.tscn │ ├── level_3d.tscn │ ├── rock.obj │ └── rock.tscn ├── export_presets.cfg └── project.godot ├── README.md └── LICENSE /preview3D_BM.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/preview3D_BM.JPG -------------------------------------------------------------------------------- /3d_bomber/montserrat.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/montserrat.otf -------------------------------------------------------------------------------- /3d_bomber/immages/shigle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/shigle.png -------------------------------------------------------------------------------- /3d_bomber/immages/MPB_3d_im.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/MPB_3d_im.png -------------------------------------------------------------------------------- /3d_bomber/immages/explosion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/explosion.png -------------------------------------------------------------------------------- /3d_bomber/immages/rock_bit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/rock_bit.png -------------------------------------------------------------------------------- /3d_bomber/immages/rockts1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/rockts1.jpg -------------------------------------------------------------------------------- /3d_bomber/immages/shigleb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/shigleb.png -------------------------------------------------------------------------------- /3d_bomber/immages/shingle.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/shingle.ico -------------------------------------------------------------------------------- /3d_bomber/immages/redDirt_cc0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/redDirt_cc0.jpg -------------------------------------------------------------------------------- /3d_bomber/immages/redDirt_cc0_NORM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/redDirt_cc0_NORM.png -------------------------------------------------------------------------------- /3d_bomber/materials/player_spatmat.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="SpatialMaterial" format=2] 2 | 3 | [resource] 4 | albedo_color = Color( 0.945098, 1, 0, 1 ) 5 | -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/seamless_brick-015-512x512.png -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_AO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/seamless_brick-015-512x512_AO.png -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_DISP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/seamless_brick-015-512x512_DISP.png -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_NORM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/seamless_brick-015-512x512_NORM.png -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_SPEC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Prime-Eight/cautious-guacamole/HEAD/3d_bomber/immages/seamless_brick-015-512x512_SPEC.png -------------------------------------------------------------------------------- /3d_bomber/materials/rock_spatmat.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="SpatialMaterial" load_steps=2 format=2] 2 | 3 | [ext_resource path="res://immages/rockts1.jpg" type="Texture" id=1] 4 | 5 | [resource] 6 | albedo_texture = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /3d_bomber/materials/bomb_spatmat.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="SpatialMaterial" format=2] 2 | 3 | [resource] 4 | albedo_color = Color( 0, 0.0627451, 1, 1 ) 5 | metallic = 0.75 6 | metallic_specular = 0.58 7 | roughness = 0.31 8 | rim_enabled = true 9 | rim = 1.0 10 | rim_tint = 0.16 11 | -------------------------------------------------------------------------------- /3d_bomber/materials/bombShell_spatmat.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="SpatialMaterial" format=2] 2 | 3 | [resource] 4 | albedo_color = Color( 0, 0.321569, 1, 1 ) 5 | emission_enabled = true 6 | emission = Color( 0.449219, 0.724609, 1, 1 ) 7 | emission_energy = 1.0 8 | emission_operator = 0 9 | emission_on_uv2 = false 10 | -------------------------------------------------------------------------------- /3d_bomber/scripts/rock.gd: -------------------------------------------------------------------------------- 1 | extends StaticBody 2 | 3 | # Sent to everyone else 4 | puppet func do_explosion(): 5 | get_node("anim").play("explode") 6 | 7 | # Received by owner of the rock 8 | master func exploded(by_who): 9 | rpc("do_explosion") # Re-sent to slave rocks 10 | get_node("../../score").rpc("increase_score", by_who) 11 | do_explosion() 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # cautious-guacamole 2 | ![](3d_bomber/immages/shigleb.png) 3 | 4 | 3D Bomberman Multiplayer Demo made in Godot 3.1.1 5 | 6 | The original was 2D I wanted to have crack at making it 3D 7 | 8 | Original Demo here 9 | https://godotengine.org/asset-library/asset/139 10 | 11 | Video on youtube 12 | https://www.youtube.com/watch?v=Cbtzvp8zB5g 13 | 14 | ![](preview3D_BM.JPG) 15 | -------------------------------------------------------------------------------- /3d_bomber/materials/floor_spatmat.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="SpatialMaterial" load_steps=3 format=2] 2 | 3 | [ext_resource path="res://immages/redDirt_cc0.jpg" type="Texture" id=1] 4 | [ext_resource path="res://immages/redDirt_cc0_NORM.png" type="Texture" id=2] 5 | 6 | [resource] 7 | albedo_color = Color( 0.603922, 0.341176, 0, 1 ) 8 | albedo_texture = ExtResource( 1 ) 9 | metallic_specular = 0.39 10 | normal_enabled = true 11 | normal_scale = -0.31 12 | normal_texture = ExtResource( 2 ) 13 | uv1_scale = Vector3( 25, 25, 25 ) 14 | -------------------------------------------------------------------------------- /3d_bomber/scenes/cube.obj.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wavefront_obj" 4 | type="Mesh" 5 | path="res://.import/cube.obj-cc1732f10b9fe47066d7b0809a002f9b.mesh" 6 | 7 | [deps] 8 | 9 | files=[ "res://.import/cube.obj-cc1732f10b9fe47066d7b0809a002f9b.mesh" ] 10 | 11 | source_file="res://scenes/cube.obj" 12 | dest_files=[ "res://.import/cube.obj-cc1732f10b9fe47066d7b0809a002f9b.mesh", "res://.import/cube.obj-cc1732f10b9fe47066d7b0809a002f9b.mesh" ] 13 | 14 | [params] 15 | 16 | generate_tangents=true 17 | scale_mesh=Vector3( 1, 1, 1 ) 18 | optimize_mesh=true 19 | -------------------------------------------------------------------------------- /3d_bomber/scenes/rock.obj.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="wavefront_obj" 4 | type="Mesh" 5 | path="res://.import/rock.obj-fef09cd10f33fcf6ee6534836a514a28.mesh" 6 | 7 | [deps] 8 | 9 | files=[ "res://.import/rock.obj-fef09cd10f33fcf6ee6534836a514a28.mesh" ] 10 | 11 | source_file="res://scenes/rock.obj" 12 | dest_files=[ "res://.import/rock.obj-fef09cd10f33fcf6ee6534836a514a28.mesh", "res://.import/rock.obj-fef09cd10f33fcf6ee6534836a514a28.mesh" ] 13 | 14 | [params] 15 | 16 | generate_tangents=true 17 | scale_mesh=Vector3( 1, 1, 1 ) 18 | optimize_mesh=true 19 | -------------------------------------------------------------------------------- /3d_bomber/scenes/wall3d.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=2] 2 | 3 | [ext_resource path="res://scenes/cube.obj" type="ArrayMesh" id=1] 4 | [ext_resource path="res://materials/wall3d_spatmat.tres" type="Material" id=2] 5 | 6 | [sub_resource type="BoxShape" id=1] 7 | extents = Vector3( 0.5, 0.5, 0.5 ) 8 | 9 | [node name="wall_cube" type="StaticBody"] 10 | 11 | [node name="cube" type="MeshInstance" parent="."] 12 | mesh = ExtResource( 1 ) 13 | material/0 = ExtResource( 2 ) 14 | 15 | [node name="CollisionShape" type="CollisionShape" parent="."] 16 | shape = SubResource( 1 ) 17 | -------------------------------------------------------------------------------- /3d_bomber/scenes/floor3d.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=2] 2 | 3 | [ext_resource path="res://materials/floor_spatmat.tres" type="Material" id=1] 4 | 5 | [sub_resource type="PlaneMesh" id=1] 6 | 7 | [sub_resource type="BoxShape" id=2] 8 | extents = Vector3( 25, 0.1, 25 ) 9 | 10 | [node name="floor" type="StaticBody"] 11 | 12 | [node name="MeshInstance" type="MeshInstance" parent="."] 13 | transform = Transform( 11, 0, 0, 0, 1, 0, 0, 0, 7, 0, 0, 0 ) 14 | mesh = SubResource( 1 ) 15 | material/0 = ExtResource( 1 ) 16 | 17 | [node name="CollisionShape" type="CollisionShape" parent="."] 18 | transform = Transform( 1, 0, 5.96046e-008, 0, 1, 0, 5.96046e-008, 0, 1, 0, -0.1, 0 ) 19 | shape = SubResource( 2 ) 20 | -------------------------------------------------------------------------------- /3d_bomber/materials/wall3d_spatmat.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="SpatialMaterial" load_steps=5 format=2] 2 | 3 | [ext_resource path="res://immages/seamless_brick-015-512x512.png" type="Texture" id=1] 4 | [ext_resource path="res://immages/seamless_brick-015-512x512_AO.png" type="Texture" id=2] 5 | [ext_resource path="res://immages/seamless_brick-015-512x512_SPEC.png" type="Texture" id=3] 6 | [ext_resource path="res://immages/seamless_brick-015-512x512_NORM.png" type="Texture" id=4] 7 | 8 | [resource] 9 | albedo_texture = ExtResource( 1 ) 10 | metallic_specular = 0.31 11 | metallic_texture = ExtResource( 3 ) 12 | normal_enabled = true 13 | normal_scale = -1.0 14 | normal_texture = ExtResource( 4 ) 15 | ao_enabled = true 16 | ao_light_affect = 0.88 17 | ao_texture = ExtResource( 2 ) 18 | ao_on_uv2 = false 19 | ao_texture_channel = 0 20 | -------------------------------------------------------------------------------- /3d_bomber/immages/shigle.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/shigle.png-b530683f215f552e33234f49bdd7efa6.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://immages/shigle.png" 13 | dest_files=[ "res://.import/shigle.png-b530683f215f552e33234f49bdd7efa6.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=true 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /3d_bomber/immages/rock_bit.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/rock_bit.png-49d1b0f634f05efba4447c28ac5e7069.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://immages/rock_bit.png" 13 | dest_files=[ "res://.import/rock_bit.png-49d1b0f634f05efba4447c28ac5e7069.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=true 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /3d_bomber/immages/shigleb.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/shigleb.png-a2cfab5b0078e1fdceb6bbaf148955df.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://immages/shigleb.png" 13 | dest_files=[ "res://.import/shigleb.png-a2cfab5b0078e1fdceb6bbaf148955df.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=true 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /3d_bomber/immages/MPB_3d_im.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/MPB_3d_im.png-5cf0a6e8247a590b79dcadf6d0cf6f28.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://immages/MPB_3d_im.png" 13 | dest_files=[ "res://.import/MPB_3d_im.png-5cf0a6e8247a590b79dcadf6d0cf6f28.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=true 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /3d_bomber/immages/explosion.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/explosion.png-f4bdada73d05ad73813d051cb8b041f8.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://immages/explosion.png" 13 | dest_files=[ "res://.import/explosion.png-f4bdada73d05ad73813d051cb8b041f8.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=true 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /3d_bomber/export_presets.cfg: -------------------------------------------------------------------------------- 1 | [preset.0] 2 | 3 | name="Windows Desktop" 4 | platform="Windows Desktop" 5 | runnable=true 6 | custom_features="" 7 | export_filter="all_resources" 8 | include_filter="" 9 | exclude_filter="" 10 | export_path="E:/MY_Work_Area/GoDot_work/Tests/3d_bomber/BIN/BM3D.exe" 11 | patch_list=PoolStringArray( ) 12 | script_export_mode=1 13 | script_encryption_key="" 14 | 15 | [preset.0.options] 16 | 17 | texture_format/bptc=false 18 | texture_format/s3tc=true 19 | texture_format/etc=false 20 | texture_format/etc2=false 21 | texture_format/no_bptc_fallbacks=true 22 | binary_format/64_bits=true 23 | custom_template/release="" 24 | custom_template/debug="" 25 | application/icon="res://immages/shingle.ico" 26 | application/file_version="" 27 | application/product_version="" 28 | application/company_name="" 29 | application/product_name="" 30 | application/file_description="" 31 | application/copyright="" 32 | application/trademarks="" 33 | -------------------------------------------------------------------------------- /3d_bomber/immages/rockts1.jpg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/rockts1.jpg-c6a242325a841d3d80780095905d5842.s3tc.stex" 6 | path.etc2="res://.import/rockts1.jpg-c6a242325a841d3d80780095905d5842.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/rockts1.jpg" 15 | dest_files=[ "res://.import/rockts1.jpg-c6a242325a841d3d80780095905d5842.s3tc.stex", "res://.import/rockts1.jpg-c6a242325a841d3d80780095905d5842.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=0 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=1 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/immages/redDirt_cc0.jpg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/redDirt_cc0.jpg-03cb8980361a9769b880eb781e437757.s3tc.stex" 6 | path.etc2="res://.import/redDirt_cc0.jpg-03cb8980361a9769b880eb781e437757.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/redDirt_cc0.jpg" 15 | dest_files=[ "res://.import/redDirt_cc0.jpg-03cb8980361a9769b880eb781e437757.s3tc.stex", "res://.import/redDirt_cc0.jpg-03cb8980361a9769b880eb781e437757.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=0 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=1 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/immages/redDirt_cc0_NORM.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/redDirt_cc0_NORM.png-fe17d17e2a809e0f90f280a18326cdce.s3tc.stex" 6 | path.etc2="res://.import/redDirt_cc0_NORM.png-fe17d17e2a809e0f90f280a18326cdce.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/redDirt_cc0_NORM.png" 15 | dest_files=[ "res://.import/redDirt_cc0_NORM.png-fe17d17e2a809e0f90f280a18326cdce.s3tc.stex", "res://.import/redDirt_cc0_NORM.png-fe17d17e2a809e0f90f280a18326cdce.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=1 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=2 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Prime-Eight 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/seamless_brick-015-512x512.png-73d5159599ec23449181a5edf0f8a64f.s3tc.stex" 6 | path.etc2="res://.import/seamless_brick-015-512x512.png-73d5159599ec23449181a5edf0f8a64f.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/seamless_brick-015-512x512.png" 15 | dest_files=[ "res://.import/seamless_brick-015-512x512.png-73d5159599ec23449181a5edf0f8a64f.s3tc.stex", "res://.import/seamless_brick-015-512x512.png-73d5159599ec23449181a5edf0f8a64f.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=0 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=1 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_AO.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/seamless_brick-015-512x512_AO.png-8adfb73c964bb0c2c093a3958fec249b.s3tc.stex" 6 | path.etc2="res://.import/seamless_brick-015-512x512_AO.png-8adfb73c964bb0c2c093a3958fec249b.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/seamless_brick-015-512x512_AO.png" 15 | dest_files=[ "res://.import/seamless_brick-015-512x512_AO.png-8adfb73c964bb0c2c093a3958fec249b.s3tc.stex", "res://.import/seamless_brick-015-512x512_AO.png-8adfb73c964bb0c2c093a3958fec249b.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=0 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=2 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_DISP.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/seamless_brick-015-512x512_DISP.png-4616cd4cba371ac8ebeba34ebdfed8be.s3tc.stex" 6 | path.etc2="res://.import/seamless_brick-015-512x512_DISP.png-4616cd4cba371ac8ebeba34ebdfed8be.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/seamless_brick-015-512x512_DISP.png" 15 | dest_files=[ "res://.import/seamless_brick-015-512x512_DISP.png-4616cd4cba371ac8ebeba34ebdfed8be.s3tc.stex", "res://.import/seamless_brick-015-512x512_DISP.png-4616cd4cba371ac8ebeba34ebdfed8be.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=0 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=1 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_NORM.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/seamless_brick-015-512x512_NORM.png-2f0d9ec00325fe2a6aa3b97adbb1aecc.s3tc.stex" 6 | path.etc2="res://.import/seamless_brick-015-512x512_NORM.png-2f0d9ec00325fe2a6aa3b97adbb1aecc.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/seamless_brick-015-512x512_NORM.png" 15 | dest_files=[ "res://.import/seamless_brick-015-512x512_NORM.png-2f0d9ec00325fe2a6aa3b97adbb1aecc.s3tc.stex", "res://.import/seamless_brick-015-512x512_NORM.png-2f0d9ec00325fe2a6aa3b97adbb1aecc.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=1 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=2 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/immages/seamless_brick-015-512x512_SPEC.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/seamless_brick-015-512x512_SPEC.png-87456c5d0c49b56fb03133e919b419b6.s3tc.stex" 6 | path.etc2="res://.import/seamless_brick-015-512x512_SPEC.png-87456c5d0c49b56fb03133e919b419b6.etc2.stex" 7 | metadata={ 8 | "imported_formats": [ "s3tc", "etc2" ], 9 | "vram_texture": true 10 | } 11 | 12 | [deps] 13 | 14 | source_file="res://immages/seamless_brick-015-512x512_SPEC.png" 15 | dest_files=[ "res://.import/seamless_brick-015-512x512_SPEC.png-87456c5d0c49b56fb03133e919b419b6.s3tc.stex", "res://.import/seamless_brick-015-512x512_SPEC.png-87456c5d0c49b56fb03133e919b419b6.etc2.stex" ] 16 | 17 | [params] 18 | 19 | compress/mode=2 20 | compress/lossy_quality=0.7 21 | compress/hdr_mode=0 22 | compress/bptc_ldr=0 23 | compress/normal_map=0 24 | flags/repeat=true 25 | flags/filter=true 26 | flags/mipmaps=true 27 | flags/anisotropic=false 28 | flags/srgb=2 29 | process/fix_alpha_border=true 30 | process/premult_alpha=false 31 | process/HDR_as_SRGB=false 32 | process/invert_color=false 33 | stream=false 34 | size_limit=0 35 | detect_3d=false 36 | svg/scale=1.0 37 | -------------------------------------------------------------------------------- /3d_bomber/scripts/bomb3d.gd: -------------------------------------------------------------------------------- 1 | extends Spatial 2 | 3 | # Declare member variables here. Examples: 4 | var in_area = [] 5 | var from_player 6 | 7 | var animplayer : AnimationPlayer = null 8 | var animSpeed : float = 1.0 9 | # Called when the node enters the scene tree for the first time. 10 | func _ready(): 11 | animplayer = get_node("AnimationPlayer") 12 | animplayer.play("flash") 13 | 14 | # Called every frame. 'delta' is the elapsed time since the previous frame. 15 | func _physics_process(delta): 16 | 17 | animSpeed += 0.6 * delta 18 | if animSpeed >= 5: 19 | print("boom") 20 | explode() 21 | queue_free() 22 | animplayer.set_speed_scale(animSpeed) 23 | 24 | func _on_Area_body_entered(body): 25 | if (not body in in_area): 26 | in_area.append(body) 27 | #print("bomb gonan get you " + str( in_area.size() ) ) 28 | 29 | func _on_Area_body_exited(body): 30 | # if body in in_area: 31 | # print("Safe from bomb") 32 | in_area.erase(body) 33 | 34 | 35 | func done(): 36 | queue_free() 37 | # 38 | # Called from the animation 39 | func explode(): 40 | if (not is_network_master()): 41 | # But will call explosion only on master 42 | return 43 | for p in in_area: 44 | if (p.has_method("exploded")): 45 | p.rpc("exploded", from_player) # Exploded has a master keyword, so it will only be received by the master 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /3d_bomber/scripts/score.gd: -------------------------------------------------------------------------------- 1 | extends HBoxContainer 2 | 3 | var player_labels = {} 4 | 5 | func _process(delta): 6 | var rocks_left = get_node("../rocks").get_child_count() 7 | if (rocks_left == 0): 8 | var winner_name = "" 9 | var winner_score = 0 10 | for p in player_labels: 11 | if (player_labels[p].score > winner_score): 12 | winner_score = player_labels[p].score 13 | winner_name = player_labels[p].name 14 | 15 | get_node("../winner").set_text("THE WINNER IS:\n" + winner_name) 16 | get_node("../winner").show() 17 | 18 | sync func increase_score(for_who): 19 | assert(for_who in player_labels) 20 | var pl = player_labels[for_who] 21 | pl.score += 1 22 | pl.label.set_text(pl.name + "\n" + str(pl.score)) 23 | 24 | func add_player(id, new_player_name): 25 | var l = Label.new() 26 | l.set_align(Label.ALIGN_CENTER) 27 | l.set_text(new_player_name + "\n" + "0") 28 | l.set_h_size_flags(SIZE_EXPAND_FILL) 29 | var font = DynamicFont.new() 30 | font.set_size(18) 31 | font.set_font_data(preload("res://montserrat.otf")) 32 | l.add_font_override("font", font) 33 | add_child(l) 34 | 35 | player_labels[id] = { name = new_player_name, label = l, score = 0 } 36 | 37 | func _ready(): 38 | get_node("../winner").hide() 39 | set_process(true) 40 | 41 | func _on_exit_game_pressed(): 42 | gamestate.end_game() 43 | 44 | 45 | func _on_Quit_pressed(): 46 | _on_exit_game_pressed() 47 | -------------------------------------------------------------------------------- /3d_bomber/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | _global_script_classes=[ ] 12 | _global_script_class_icons={ 13 | 14 | } 15 | 16 | [application] 17 | 18 | config/name="Bomber Man 3D" 19 | run/main_scene="res://scenes/lobby.tscn" 20 | config/icon="res://immages/shigleb.png" 21 | 22 | [autoload] 23 | 24 | gamestate="*res://scripts/gamestate.gd" 25 | 26 | [gdnative] 27 | 28 | singletons=[ ] 29 | 30 | [image_loader] 31 | 32 | filter=false 33 | gen_mipmaps=false 34 | 35 | [input] 36 | 37 | move_down={ 38 | "deadzone": 0.5, 39 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) 40 | ] 41 | } 42 | move_left={ 43 | "deadzone": 0.5, 44 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) 45 | ] 46 | } 47 | move_right={ 48 | "deadzone": 0.5, 49 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) 50 | ] 51 | } 52 | move_up={ 53 | "deadzone": 0.5, 54 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) 55 | ] 56 | } 57 | set_bomb={ 58 | "deadzone": 0.5, 59 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) 60 | ] 61 | } 62 | -------------------------------------------------------------------------------- /3d_bomber/scripts/lobby.gd: -------------------------------------------------------------------------------- 1 | extends Control 2 | 3 | func _ready(): 4 | # Called every time the node is added to the scene. 5 | gamestate.connect("connection_failed", self, "_on_connection_failed") 6 | gamestate.connect("connection_succeeded", self, "_on_connection_success") 7 | gamestate.connect("player_list_changed", self, "refresh_lobby") 8 | gamestate.connect("game_ended", self, "_on_game_ended") 9 | gamestate.connect("game_error", self, "_on_game_error") 10 | 11 | func _on_host_pressed(): 12 | if (get_node("connect/name").text == ""): 13 | get_node("connect/error_label").text="Invalid name!" 14 | return 15 | 16 | get_node("connect").hide() 17 | get_node("players").show() 18 | get_node("connect/error_label").text="" 19 | 20 | var player_name = get_node("connect/name").text 21 | var port = int(get_node("connect/port").value) 22 | gamestate.host_game(port, player_name) 23 | refresh_lobby() 24 | 25 | func _on_join_pressed(): 26 | if (get_node("connect/name").text == ""): 27 | get_node("connect/error_label").text="Invalid name!" 28 | return 29 | 30 | var ip = get_node("connect/ip").text 31 | if (not ip.is_valid_ip_address()): 32 | get_node("connect/error_label").text="Invalid IPv4 address!" 33 | return 34 | 35 | var port = int(get_node("connect/port").value) 36 | if (port == 0): 37 | get_node("connect/error_label").text="Port cannot be 0!" 38 | return 39 | 40 | get_node("connect/error_label").text="" 41 | get_node("connect/host").disabled=true 42 | get_node("connect/join").disabled=true 43 | 44 | var player_name = get_node("connect/name").text 45 | gamestate.join_game(port, ip, player_name) 46 | # refresh_lobby() gets called by the player_list_changed signal 47 | 48 | 49 | func _on_connection_success(): 50 | get_node("connect").hide() 51 | get_node("players").show() 52 | 53 | func _on_connection_failed(): 54 | get_node("connect/host").disabled=false 55 | get_node("connect/join").disabled=false 56 | get_node("connect/error_label").set_text("Connection failed.") 57 | 58 | func _on_game_ended(): 59 | show() 60 | get_node("connect").show() 61 | get_node("players").hide() 62 | get_node("connect/host").disabled=false 63 | get_node("connect/join").disabled 64 | 65 | func _on_game_error(errtxt): 66 | get_node("error").dialog_text = errtxt 67 | get_node("error").popup_centered_minsize() 68 | 69 | func refresh_lobby(): 70 | var players = gamestate.get_player_list() 71 | players.sort() 72 | get_node("players/list").clear() 73 | get_node("players/list").add_item(gamestate.get_player_name() + " (You)") 74 | for p in players: 75 | get_node("players/list").add_item(p) 76 | 77 | get_node("players/start").disabled=not get_tree().is_network_server() 78 | 79 | func _on_start_pressed(): 80 | gamestate.begin_game() 81 | 82 | func _on_Quit_pressed(): 83 | #reload a scene 84 | #var currentScene = get_tree().get_current_scene().get_filename() 85 | #print(currentScene) # for Debug 86 | #get_tree().change_scene(currentScene) 87 | 88 | gamestate.end_game() 89 | print("end game") 90 | get_tree().quit() 91 | 92 | -------------------------------------------------------------------------------- /3d_bomber/scenes/cube.obj: -------------------------------------------------------------------------------- 1 | # Wavefront OBJ file 2 | # Creator: Ultimate Unwrap3D v2.50.74 3 | # Website: http://www.unwrap3d.com 4 | # Time: Sat Jun 01 17:57:24 2019 5 | # num_vertices: 24 6 | # num_vertex_normals: 24 7 | # num_uvs: 36 8 | # num_faces: 12 9 | # num_groups: 1 10 | 11 | v -0.500000 0.500000 0.500000 12 | v -0.500000 0.500000 0.500000 13 | v -0.500000 0.500000 0.500000 14 | v 0.500000 0.500000 0.500000 15 | v 0.500000 0.500000 0.500000 16 | v 0.500000 0.500000 0.500000 17 | v -0.500000 -0.500000 0.500000 18 | v -0.500000 -0.500000 0.500000 19 | v -0.500000 -0.500000 0.500000 20 | v 0.500000 -0.500000 0.500000 21 | v 0.500000 -0.500000 0.500000 22 | v 0.500000 -0.500000 0.500000 23 | v -0.500000 0.500000 -0.500000 24 | v -0.500000 0.500000 -0.500000 25 | v -0.500000 0.500000 -0.500000 26 | v 0.500000 0.500000 -0.500000 27 | v 0.500000 0.500000 -0.500000 28 | v 0.500000 0.500000 -0.500000 29 | v -0.500000 -0.500000 -0.500000 30 | v -0.500000 -0.500000 -0.500000 31 | v -0.500000 -0.500000 -0.500000 32 | v 0.500000 -0.500000 -0.500000 33 | v 0.500000 -0.500000 -0.500000 34 | v 0.500000 -0.500000 -0.500000 35 | # num_vertices: 24 36 | 37 | vn -1.000000 0.000000 0.000000 38 | vn 0.000000 1.000000 0.000000 39 | vn 0.000000 0.000000 1.000000 40 | vn 0.000000 0.000000 1.000000 41 | vn 0.000000 1.000000 0.000000 42 | vn 1.000000 0.000000 0.000000 43 | vn 0.000000 0.000000 1.000000 44 | vn -1.000000 0.000000 0.000000 45 | vn 0.000000 -1.000000 0.000000 46 | vn 0.000000 0.000000 1.000000 47 | vn 0.000000 -1.000000 0.000000 48 | vn 1.000000 0.000000 0.000000 49 | vn -1.000000 0.000000 0.000000 50 | vn 0.000000 1.000000 0.000000 51 | vn 0.000000 0.000000 -1.000000 52 | vn 0.000000 0.000000 -1.000000 53 | vn 1.000000 0.000000 0.000000 54 | vn 0.000000 1.000000 0.000000 55 | vn 0.000000 0.000000 -1.000000 56 | vn 0.000000 -1.000000 0.000000 57 | vn -1.000000 0.000000 0.000000 58 | vn 0.000000 0.000000 -1.000000 59 | vn 0.000000 -1.000000 0.000000 60 | vn 1.000000 0.000000 0.000000 61 | # num_vertex_normals: 24 62 | 63 | vt 1.000000 1.000000 64 | vt 0.000000 1.000000 65 | vt 1.000000 0.000000 66 | vt 0.000000 1.000000 67 | vt 0.000000 0.000000 68 | vt 1.000000 0.000000 69 | vt 1.000000 1.000000 70 | vt 0.000000 1.000000 71 | vt 1.000000 0.000000 72 | vt 0.000000 1.000000 73 | vt 0.000000 0.000000 74 | vt 1.000000 0.000000 75 | vt 1.000000 1.000000 76 | vt 0.000000 1.000000 77 | vt 1.000000 0.000000 78 | vt 0.000000 1.000000 79 | vt 0.000000 0.000000 80 | vt 1.000000 0.000000 81 | vt 1.000000 1.000000 82 | vt 0.000000 1.000000 83 | vt 1.000000 0.000000 84 | vt 0.000000 1.000000 85 | vt 0.000000 0.000000 86 | vt 1.000000 0.000000 87 | vt 0.000000 1.000000 88 | vt 0.000000 0.000000 89 | vt 1.000000 1.000000 90 | vt 0.000000 0.000000 91 | vt 1.000000 0.000000 92 | vt 1.000000 1.000000 93 | vt 0.000000 1.000000 94 | vt 0.000000 0.000000 95 | vt 1.000000 1.000000 96 | vt 0.000000 0.000000 97 | vt 1.000000 0.000000 98 | vt 1.000000 1.000000 99 | # num_uvs: 36 100 | 101 | g Box 102 | 103 | f 4/1/4 3/2/3 10/3/10 104 | f 3/4/3 7/5/7 10/6/10 105 | f 15/7/15 16/8/16 19/9/19 106 | f 16/10/16 22/11/22 19/12/19 107 | f 17/13/17 6/14/6 24/15/24 108 | f 6/16/6 12/17/12 24/18/24 109 | f 1/19/1 13/20/13 8/21/8 110 | f 13/22/13 21/23/21 8/24/8 111 | f 14/25/14 2/26/2 18/27/18 112 | f 2/28/2 5/29/5 18/30/18 113 | f 9/31/9 20/32/20 11/33/11 114 | f 20/34/20 23/35/23 11/36/11 115 | # num_faces: 12 116 | 117 | -------------------------------------------------------------------------------- /3d_bomber/scripts/Player3d.gd: -------------------------------------------------------------------------------- 1 | extends KinematicBody 2 | 3 | # Declare member variables here. Examples: 4 | puppet var slave_pos : Vector3 = Vector3() 5 | puppet var slave_dir : Vector3 = Vector3() 6 | puppet var slave_motion : Vector3 = Vector3() 7 | 8 | export var stunned = false 9 | 10 | var current_anim = "" 11 | var prev_bombing = false 12 | var bomb_index = 0 13 | 14 | var gravity : Vector3 = Vector3.DOWN * 12.0 15 | var speed : float = 4.0 16 | 17 | var velocity : Vector3 = Vector3() 18 | 19 | 20 | # Use sync because it will be called everywhere 21 | sync func setup_bomb(bomb_name, pos, by_who): 22 | var bomb = preload("res://scenes/bomb3d.tscn").instance() 23 | bomb.set_name(bomb_name) # Ensure unique name for the bomb 24 | bomb.set_translation(pos) 25 | bomb.from_player = by_who 26 | # No need to set network mode to bomb, will be owned by master by default 27 | get_node("../..").add_child(bomb) 28 | 29 | 30 | # Called when the node enters the scene tree for the first time. 31 | func _ready(): 32 | slave_pos = self.get_translation() 33 | pass # Replace with function body. 34 | 35 | # Called every frame. 'delta' is the elapsed time since the previous frame. 36 | func _physics_process(delta): 37 | var sink = velocity.y # we want to stor eonly the downward velocity for this game ( you would not normaly do this 38 | # This removes any latteral movements we dont want 39 | velocity = Vector3( 0.0, sink , 0.0 ) 40 | if is_on_floor(): 41 | velocity += gravity * 0.1 * delta 42 | else: 43 | velocity += gravity * delta 44 | 45 | if (is_network_master()): 46 | # get teh imput here 47 | 48 | var bombing = Input.is_action_pressed("set_bomb") 49 | if (stunned): 50 | bombing = false 51 | velocity = Vector3() 52 | 53 | else: 54 | if (Input.is_action_pressed("move_left")): 55 | velocity += Vector3.LEFT * speed 56 | self.set_rotation( Vector3( 0 , -.5*PI , 0 ) ) 57 | if (Input.is_action_pressed("move_right")): 58 | velocity += Vector3.RIGHT * speed 59 | self.set_rotation( Vector3( 0 , .5*PI , 0 )) 60 | if (Input.is_action_pressed("move_up")): 61 | velocity += Vector3.FORWARD * speed 62 | self.set_rotation( Vector3( 0 , PI , 0 ) ) 63 | if (Input.is_action_pressed("move_down")): 64 | velocity += Vector3.BACK * speed 65 | self.set_rotation( Vector3( 0 ,2*PI , 0 ) ) 66 | 67 | 68 | if (bombing and not prev_bombing): 69 | var bomb_name = get_name() + str(bomb_index) 70 | var bomb_pos = self.get_translation() 71 | #todo make this: 72 | rpc("setup_bomb", bomb_name, bomb_pos, get_tree().get_network_unique_id()) 73 | 74 | prev_bombing = bombing 75 | 76 | rset("slave_motion", velocity) 77 | #var mpos : Vector3 = self.get_translation() 78 | rset("slave_pos", self.get_translation() ) 79 | rset("slave_dir" , self.get_rotation() ) 80 | else: 81 | self.set_translation(slave_pos) 82 | self.set_rotation(slave_dir) 83 | velocity = slave_motion 84 | 85 | var new_anim = "standing" 86 | if (velocity.z < 0): 87 | new_anim = "walk_up" 88 | elif (velocity.z > 0): 89 | new_anim = "walk_down" 90 | elif (velocity.x < 0): 91 | new_anim = "walk_left" 92 | elif (velocity.x > 0): 93 | new_anim = "walk_right" 94 | 95 | if (stunned): 96 | new_anim = "stunned" 97 | 98 | # possibly add the animations for the directions 99 | if (new_anim != current_anim): 100 | current_anim = new_anim 101 | if ( current_anim == "stunned" ): # or ( current_anim == "standing" ): 102 | get_node("AnimationPlayer").play(current_anim) 103 | else: 104 | get_node("AnimationPlayer").stop() 105 | print(current_anim) 106 | 107 | velocity = move_and_slide( velocity , Vector3.UP) 108 | if (not is_network_master() ): 109 | slave_pos = self.get_translation() # To avoid jitter 110 | # 111 | var pos = get_translation() 112 | var cam = get_tree().get_root().get_camera() 113 | var screenpos = cam.unproject_position(pos) 114 | get_node("PlayerName").set_position(Vector2(screenpos.x , screenpos.y ) ) 115 | 116 | func set_player_name(new_name): 117 | get_node("PlayerName/label").set_text(new_name) 118 | 119 | puppet func stun(): 120 | stunned = true 121 | 122 | master func exploded(by_who): 123 | if (stunned): 124 | return 125 | print("stunned by: "+ str(by_who) ) 126 | rpc("stun") # Stun slaves 127 | stun() # Stun master - could use sync to do both at once 128 | -------------------------------------------------------------------------------- /3d_bomber/scenes/lobby.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://scripts/lobby.gd" type="Script" id=1] 4 | [ext_resource path="res://immages/MPB_3d_im.png" type="Texture" id=2] 5 | 6 | [node name="lobby" type="Control"] 7 | anchor_right = 1.0 8 | anchor_bottom = 1.0 9 | margin_left = 1.0 10 | margin_right = 1.0 11 | size_flags_horizontal = 2 12 | size_flags_vertical = 2 13 | script = ExtResource( 1 ) 14 | __meta__ = { 15 | "_edit_lock_": true 16 | } 17 | 18 | [node name="players" type="Panel" parent="."] 19 | editor/display_folded = true 20 | visible = false 21 | margin_left = 393.0 22 | margin_top = 113.0 23 | margin_right = 645.0 24 | margin_bottom = 468.0 25 | size_flags_horizontal = 2 26 | size_flags_vertical = 2 27 | 28 | [node name="label" type="Label" parent="players"] 29 | margin_left = 26.0 30 | margin_top = 18.0 31 | margin_right = 142.0 32 | margin_bottom = 32.0 33 | size_flags_horizontal = 2 34 | size_flags_vertical = 0 35 | text = "Awaiting Players..." 36 | 37 | [node name="start" type="Button" parent="players"] 38 | margin_left = 68.0 39 | margin_top = 307.0 40 | margin_right = 193.0 41 | margin_bottom = 336.0 42 | size_flags_horizontal = 2 43 | size_flags_vertical = 2 44 | text = "START!" 45 | 46 | [node name="list" type="ItemList" parent="players"] 47 | margin_left = 25.0 48 | margin_top = 37.0 49 | margin_right = 229.0 50 | margin_bottom = 296.0 51 | size_flags_horizontal = 2 52 | size_flags_vertical = 2 53 | 54 | [node name="connect" type="Panel" parent="."] 55 | margin_left = 370.0 56 | margin_top = 97.0 57 | margin_right = 647.0 58 | margin_bottom = 501.0 59 | size_flags_horizontal = 2 60 | size_flags_vertical = 2 61 | 62 | [node name="ColorRect" type="TextureRect" parent="connect"] 63 | margin_left = 14.3515 64 | margin_top = 13.41 65 | margin_right = 264.352 66 | margin_bottom = 122.41 67 | texture = ExtResource( 2 ) 68 | 69 | [node name="name_label" type="Label" parent="connect"] 70 | margin_left = 14.0 71 | margin_top = 169.0 72 | margin_right = 56.0 73 | margin_bottom = 183.0 74 | size_flags_horizontal = 2 75 | size_flags_vertical = 0 76 | text = "Name:" 77 | 78 | [node name="name" type="LineEdit" parent="connect"] 79 | margin_left = 17.0 80 | margin_top = 188.0 81 | margin_right = 173.0 82 | margin_bottom = 212.0 83 | size_flags_horizontal = 2 84 | size_flags_vertical = 2 85 | text = "The Warrior" 86 | 87 | [node name="ip_label" type="Label" parent="connect"] 88 | margin_left = 14.0 89 | margin_top = 224.0 90 | margin_right = 56.0 91 | margin_bottom = 238.0 92 | size_flags_horizontal = 2 93 | size_flags_vertical = 0 94 | text = "IP:" 95 | 96 | [node name="ip" type="LineEdit" parent="connect"] 97 | margin_left = 17.0 98 | margin_top = 243.0 99 | margin_right = 173.0 100 | margin_bottom = 267.0 101 | size_flags_horizontal = 2 102 | size_flags_vertical = 2 103 | text = "127.0.0.1" 104 | 105 | [node name="port_label" type="Label" parent="connect"] 106 | margin_left = 15.0 107 | margin_top = 279.0 108 | margin_right = 54.0 109 | margin_bottom = 293.0 110 | size_flags_horizontal = 2 111 | size_flags_vertical = 0 112 | text = "Port:" 113 | 114 | [node name="port" type="SpinBox" parent="connect"] 115 | margin_left = 17.0 116 | margin_top = 298.0 117 | margin_right = 173.0 118 | margin_bottom = 322.0 119 | size_flags_horizontal = 2 120 | size_flags_vertical = 2 121 | min_value = 1024.0 122 | max_value = 65536.0 123 | value = 10567.0 124 | 125 | [node name="host" type="Button" parent="connect"] 126 | margin_left = 181.0 127 | margin_top = 189.0 128 | margin_right = 246.0 129 | margin_bottom = 209.0 130 | size_flags_horizontal = 2 131 | size_flags_vertical = 2 132 | text = "Host" 133 | 134 | [node name="join" type="Button" parent="connect"] 135 | margin_left = 181.0 136 | margin_top = 244.226 137 | margin_right = 246.0 138 | margin_bottom = 264.226 139 | size_flags_horizontal = 2 140 | size_flags_vertical = 2 141 | text = "Join" 142 | 143 | [node name="error_label" type="Label" parent="connect"] 144 | margin_left = 16.0 145 | margin_top = 340.0 146 | margin_right = 261.0 147 | margin_bottom = 354.0 148 | size_flags_horizontal = 2 149 | size_flags_vertical = 0 150 | custom_colors/font_color = Color( 0.820312, 0.291595, 0.291595, 1 ) 151 | align = 1 152 | 153 | [node name="Quit" type="Button" parent="connect"] 154 | margin_left = 108.146 155 | margin_top = 365.287 156 | margin_right = 167.146 157 | margin_bottom = 385.287 158 | text = "Quit" 159 | 160 | [node name="Label" type="Label" parent="connect"] 161 | margin_left = 17.0 162 | margin_top = 123.0 163 | margin_right = 262.0 164 | margin_bottom = 145.0 165 | text = "Bomber Man 3D" 166 | align = 1 167 | valign = 1 168 | 169 | [node name="error" type="AcceptDialog" parent="."] 170 | visible = true 171 | margin_right = 83.0 172 | margin_bottom = 58.0 173 | size_flags_horizontal = 2 174 | size_flags_vertical = 2 175 | [connection signal="pressed" from="players/start" to="." method="_on_start_pressed"] 176 | [connection signal="pressed" from="connect/host" to="." method="_on_host_pressed"] 177 | [connection signal="pressed" from="connect/join" to="." method="_on_join_pressed"] 178 | [connection signal="pressed" from="connect/Quit" to="." method="_on_Quit_pressed"] 179 | -------------------------------------------------------------------------------- /3d_bomber/scripts/gamestate.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | # Default game port 4 | var DEFAULT_PORT : int = 10567 5 | 6 | # Max number of players 7 | const MAX_PEERS = 12 8 | 9 | # Name for my player 10 | var player_name = "The Warrior" 11 | 12 | # Names for remote players in id:name format 13 | var players = {} 14 | 15 | # Signals to let lobby GUI know what's going on 16 | signal player_list_changed() 17 | signal connection_failed() 18 | signal connection_succeeded() 19 | signal game_ended() 20 | signal game_error(what) 21 | 22 | # Callback from SceneTree 23 | func _player_connected(id): 24 | # This is not used in this demo, because _connected_ok is called for clients 25 | # on success and will do the job. 26 | pass 27 | 28 | # Callback from SceneTree 29 | func _player_disconnected(id): 30 | if (get_tree().is_network_server()): 31 | if (has_node("/root/level_3d")): # Game is in progress 32 | emit_signal("game_error", "Player " + players[id] + " disconnected") 33 | end_game() 34 | else: # Game is not in progress 35 | # If we are the server, send to the new dude all the already registered players 36 | unregister_player(id) 37 | for p_id in players: 38 | # Erase in the server 39 | rpc_id(p_id, "unregister_player", id) 40 | 41 | # Callback from SceneTree, only for clients (not server) 42 | func _connected_ok(): 43 | # Registration of a client beings here, tell everyone that we are here 44 | rpc("register_player", get_tree().get_network_unique_id(), player_name) 45 | emit_signal("connection_succeeded") 46 | 47 | # Callback from SceneTree, only for clients (not server) 48 | func _server_disconnected(): 49 | emit_signal("game_error", "Server disconnected") 50 | end_game() 51 | 52 | # Callback from SceneTree, only for clients (not server) 53 | func _connected_fail(): 54 | get_tree().set_network_peer(null) # Remove peer 55 | emit_signal("connection_failed") 56 | 57 | # Lobby management functions 58 | 59 | remote func register_player(id, new_player_name): 60 | if (get_tree().is_network_server()): 61 | # If we are the server, let everyone know about the new player 62 | rpc_id(id, "register_player", 1, player_name) # Send myself to new dude 63 | for p_id in players: # Then, for each remote player 64 | rpc_id(id, "register_player", p_id, players[p_id]) # Send player to new dude 65 | rpc_id(p_id, "register_player", id, new_player_name) # Send new dude to player 66 | 67 | players[id] = new_player_name 68 | emit_signal("player_list_changed") 69 | 70 | remote func unregister_player(id): 71 | players.erase(id) 72 | emit_signal("player_list_changed") 73 | 74 | remote func pre_start_game(spawn_points): 75 | # Change scene 76 | var level_3d = load("res://scenes/level_3d.tscn").instance() 77 | get_tree().get_root().add_child(level_3d) 78 | 79 | get_tree().get_root().get_node("lobby").hide() 80 | 81 | var player_scene = load("res://scenes/Player3d.tscn") 82 | 83 | for p_id in spawn_points: 84 | var spawn_pos = level_3d.get_node("spawn_points/" + str(spawn_points[p_id])).get_translation() 85 | var player = player_scene.instance() 86 | 87 | player.set_name(str(p_id)) # Use unique ID as node name 88 | player.set_translation(spawn_pos) 89 | player.set_network_master(p_id) #set unique id as master 90 | 91 | if (p_id == get_tree().get_network_unique_id()): 92 | # If node for this peer id, set name 93 | player.set_player_name(player_name) 94 | else: 95 | # Otherwise set name from peer 96 | player.set_player_name(players[p_id]) 97 | 98 | level_3d.get_node("players").add_child(player) 99 | 100 | # Set up score 101 | level_3d.get_node("score").add_player(get_tree().get_network_unique_id(), player_name) 102 | for pn in players: 103 | level_3d.get_node("score").add_player(pn, players[pn]) 104 | 105 | if (not get_tree().is_network_server()): 106 | # Tell server we are ready to start 107 | rpc_id(1, "ready_to_start", get_tree().get_network_unique_id()) 108 | elif players.size() == 0: 109 | post_start_game() 110 | 111 | remote func post_start_game(): 112 | get_tree().set_pause(false) # Unpause and unleash the game! 113 | 114 | var players_ready = [] 115 | 116 | remote func ready_to_start(id): 117 | assert(get_tree().is_network_server()) 118 | 119 | if (not id in players_ready): 120 | players_ready.append(id) 121 | 122 | if (players_ready.size() == players.size()): 123 | for p in players: 124 | rpc_id(p, "post_start_game") 125 | post_start_game() 126 | 127 | func host_game(port, new_player_name): 128 | player_name = new_player_name 129 | DEFAULT_PORT = port 130 | var host = NetworkedMultiplayerENet.new() 131 | host.create_server(DEFAULT_PORT, MAX_PEERS) 132 | get_tree().set_network_peer(host) 133 | 134 | func join_game(port, ip, new_player_name): 135 | player_name = new_player_name 136 | DEFAULT_PORT = port 137 | var host = NetworkedMultiplayerENet.new() 138 | host.create_client(ip, DEFAULT_PORT) 139 | get_tree().set_network_peer(host) 140 | 141 | func get_player_list(): 142 | return players.values() 143 | 144 | func get_player_name(): 145 | return player_name 146 | 147 | func begin_game(): 148 | assert(get_tree().is_network_server()) 149 | 150 | # Create a dictionary with peer id and respective spawn points, could be improved by randomizing 151 | var spawn_points = {} 152 | spawn_points[1] = 0 # Server in spawn point 0 153 | var spawn_point_idx = 1 154 | for p in players: 155 | spawn_points[p] = spawn_point_idx 156 | spawn_point_idx += 1 157 | # Call to pre-start game with the spawn points 158 | for p in players: 159 | rpc_id(p, "pre_start_game", spawn_points) 160 | 161 | pre_start_game(spawn_points) 162 | 163 | func end_game(): 164 | if (has_node("/root/level_3d")): # Game is in progress 165 | # End it 166 | get_node("/root/level_3d").queue_free() 167 | 168 | emit_signal("game_ended") 169 | players.clear() 170 | get_tree().set_network_peer(null) # End networking 171 | 172 | func _ready(): 173 | get_tree().connect("network_peer_connected", self, "_player_connected") 174 | get_tree().connect("network_peer_disconnected", self,"_player_disconnected") 175 | get_tree().connect("connected_to_server", self, "_connected_ok") 176 | get_tree().connect("connection_failed", self, "_connected_fail") 177 | get_tree().connect("server_disconnected", self, "_server_disconnected") 178 | -------------------------------------------------------------------------------- /3d_bomber/scenes/Player3d.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=17 format=2] 2 | 3 | [ext_resource path="res://scripts/Player3d.gd" type="Script" id=1] 4 | [ext_resource path="res://materials/player_spatmat.tres" type="Material" id=2] 5 | 6 | [sub_resource type="SphereMesh" id=1] 7 | radius = 0.5 8 | height = 0.5 9 | radial_segments = 16 10 | rings = 16 11 | is_hemisphere = true 12 | 13 | [sub_resource type="SphereShape" id=2] 14 | radius = 0.5 15 | 16 | [sub_resource type="BoxShape" id=3] 17 | extents = Vector3( 0.3, 0.25, 0.3 ) 18 | 19 | [sub_resource type="SphereMesh" id=4] 20 | radius = 0.1 21 | height = 0.2 22 | radial_segments = 16 23 | rings = 16 24 | 25 | [sub_resource type="SpatialMaterial" id=5] 26 | metallic = 0.01 27 | metallic_specular = 0.68 28 | roughness = 0.08 29 | 30 | [sub_resource type="CubeMesh" id=6] 31 | size = Vector3( 0.05, 0.05, 0.01 ) 32 | 33 | [sub_resource type="SpatialMaterial" id=7] 34 | albedo_color = Color( 0, 0, 0, 1 ) 35 | 36 | [sub_resource type="SphereMesh" id=8] 37 | radius = 0.49 38 | height = 0.9 39 | radial_segments = 16 40 | rings = 16 41 | 42 | [sub_resource type="SpatialMaterial" id=9] 43 | albedo_color = Color( 0.94902, 0.768627, 0.560784, 1 ) 44 | 45 | [sub_resource type="CubeMesh" id=10] 46 | size = Vector3( 0.2, 0.1, 0.4 ) 47 | 48 | [sub_resource type="SpatialMaterial" id=11] 49 | albedo_color = Color( 0.00784314, 0.168627, 0.356863, 1 ) 50 | 51 | [sub_resource type="SphereMesh" id=12] 52 | radius = 0.3 53 | height = 0.1 54 | radial_segments = 16 55 | rings = 16 56 | is_hemisphere = true 57 | 58 | [sub_resource type="Animation" id=13] 59 | resource_name = "standing" 60 | length = 1.5 61 | loop = true 62 | tracks/0/type = "transform" 63 | tracks/0/path = NodePath(".") 64 | tracks/0/interp = 1 65 | tracks/0/loop_wrap = true 66 | tracks/0/imported = false 67 | tracks/0/enabled = true 68 | tracks/0/keys = PoolRealArray( ) 69 | tracks/1/type = "value" 70 | tracks/1/path = NodePath(".:rotation_degrees") 71 | tracks/1/interp = 1 72 | tracks/1/loop_wrap = true 73 | tracks/1/imported = false 74 | tracks/1/enabled = true 75 | tracks/1/keys = { 76 | "times": PoolRealArray( 0, 0.5, 1, 1.5 ), 77 | "transitions": PoolRealArray( 1, 1, 1, 1 ), 78 | "update": 0, 79 | "values": [ Vector3( 0, 0, 0 ), Vector3( 0, -2, 0 ), Vector3( 0, 2, 0 ), Vector3( 0, 0, 0 ) ] 80 | } 81 | 82 | [sub_resource type="Animation" id=14] 83 | length = 4.0 84 | tracks/0/type = "transform" 85 | tracks/0/path = NodePath(".") 86 | tracks/0/interp = 1 87 | tracks/0/loop_wrap = true 88 | tracks/0/imported = false 89 | tracks/0/enabled = true 90 | tracks/0/keys = PoolRealArray( ) 91 | tracks/1/type = "value" 92 | tracks/1/path = NodePath(".:rotation_degrees") 93 | tracks/1/interp = 1 94 | tracks/1/loop_wrap = true 95 | tracks/1/imported = false 96 | tracks/1/enabled = true 97 | tracks/1/keys = { 98 | "times": PoolRealArray( 0, 4 ), 99 | "transitions": PoolRealArray( 1, 1 ), 100 | "update": 0, 101 | "values": [ Vector3( 0, 0, 0 ), Vector3( 0, 720, 0 ) ] 102 | } 103 | tracks/2/type = "value" 104 | tracks/2/path = NodePath(".:stunned") 105 | tracks/2/interp = 1 106 | tracks/2/loop_wrap = true 107 | tracks/2/imported = false 108 | tracks/2/enabled = true 109 | tracks/2/keys = { 110 | "times": PoolRealArray( 4 ), 111 | "transitions": PoolRealArray( 1 ), 112 | "update": 1, 113 | "values": [ false ] 114 | } 115 | 116 | [node name="Player3d" type="KinematicBody"] 117 | transform = Transform( 0.999643, 0, 0.0267094, 0, 1, 0, -0.0267094, 0, 0.999643, 0, 0, 0 ) 118 | script = ExtResource( 1 ) 119 | 120 | [node name="PlayerName" type="Control" parent="."] 121 | margin_right = 1.0 122 | margin_bottom = 1.0 123 | 124 | [node name="label" type="Label" parent="PlayerName"] 125 | margin_left = -30.5348 126 | margin_top = -37.2211 127 | margin_right = 30.4652 128 | margin_bottom = -23.2211 129 | text = "My Name" 130 | align = 1 131 | valign = 1 132 | 133 | [node name="DirectionalLight" type="DirectionalLight" parent="."] 134 | transform = Transform( 0.993897, -0.0533923, 0.0965258, 0, 0.875053, 0.484027, -0.110308, -0.481074, 0.869713, 2.3227, 1.41276, 0 ) 135 | visible = false 136 | 137 | [node name="Hair" type="MeshInstance" parent="."] 138 | transform = Transform( 1, 0, 0, 0, 0.540926, 0.84107, 0, -0.84107, 0.540926, 0, 0, 0 ) 139 | mesh = SubResource( 1 ) 140 | material/0 = ExtResource( 2 ) 141 | 142 | [node name="CollisionShape" type="CollisionShape" parent="."] 143 | shape = SubResource( 2 ) 144 | 145 | [node name="CollisionShape2" type="CollisionShape" parent="."] 146 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.250649, 0 ) 147 | shape = SubResource( 3 ) 148 | 149 | [node name="eye" type="MeshInstance" parent="."] 150 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.13421, 0.182863, 0.357002 ) 151 | mesh = SubResource( 4 ) 152 | material/0 = SubResource( 5 ) 153 | 154 | [node name="pupil" type="MeshInstance" parent="eye"] 155 | transform = Transform( 1, 0, 0, 0, 0.884396, 0.466738, 0, -0.466738, 0.884396, 0, 0.0494748, 0.0879685 ) 156 | mesh = SubResource( 6 ) 157 | material/0 = SubResource( 7 ) 158 | 159 | [node name="eye2" type="MeshInstance" parent="."] 160 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.134, 0.182615, 0.357287 ) 161 | mesh = SubResource( 4 ) 162 | material/0 = SubResource( 5 ) 163 | 164 | [node name="pupil2" type="MeshInstance" parent="eye2"] 165 | transform = Transform( 1, 0, 0, 0, 0.884396, 0.466738, 0, -0.466738, 0.884396, 0, 0.0494748, 0.0877536 ) 166 | mesh = SubResource( 6 ) 167 | material/0 = SubResource( 7 ) 168 | 169 | [node name="face" type="MeshInstance" parent="."] 170 | mesh = SubResource( 8 ) 171 | material/0 = SubResource( 9 ) 172 | 173 | [node name="foot" type="MeshInstance" parent="."] 174 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.174658, -0.448545, 0.123665 ) 175 | mesh = SubResource( 10 ) 176 | material/0 = SubResource( 11 ) 177 | 178 | [node name="foot2" type="MeshInstance" parent="."] 179 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.171, -0.449, 0.124 ) 180 | mesh = SubResource( 10 ) 181 | material/0 = SubResource( 11 ) 182 | 183 | [node name="smile" type="MeshInstance" parent="."] 184 | transform = Transform( 1, 0, 0, 0, -0.999743, 0.0226582, 0, -0.0226582, -0.999743, 0, -0.0248641, 0.235383 ) 185 | mesh = SubResource( 12 ) 186 | material/0 = null 187 | 188 | [node name="AnimationPlayer" type="AnimationPlayer" parent="."] 189 | anims/standing = SubResource( 13 ) 190 | anims/stunned = SubResource( 14 ) 191 | -------------------------------------------------------------------------------- /3d_bomber/scenes/level_3d.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=9 format=2] 2 | 3 | [ext_resource path="res://scripts/score.gd" type="Script" id=1] 4 | [ext_resource path="res://montserrat.otf" type="DynamicFontData" id=2] 5 | [ext_resource path="res://scenes/floor3d.tscn" type="PackedScene" id=3] 6 | [ext_resource path="res://scenes/wall3d.tscn" type="PackedScene" id=4] 7 | [ext_resource path="res://scenes/rock.tscn" type="PackedScene" id=5] 8 | [ext_resource path="res://scenes/bomb3d.tscn" type="PackedScene" id=6] 9 | 10 | [sub_resource type="DynamicFont" id=1] 11 | size = 44 12 | outline_size = 4 13 | outline_color = Color( 0, 0, 0, 1 ) 14 | font_data = ExtResource( 2 ) 15 | 16 | [sub_resource type="DynamicFont" id=2] 17 | size = 40 18 | outline_size = 4 19 | outline_color = Color( 0, 0, 0, 1 ) 20 | font_data = ExtResource( 2 ) 21 | 22 | [node name="level_3d" type="Spatial"] 23 | 24 | [node name="players" type="Spatial" parent="."] 25 | 26 | [node name="score" type="HBoxContainer" parent="."] 27 | anchor_right = 1.0 28 | margin_right = -3.0 29 | margin_bottom = 40.0 30 | size_flags_horizontal = 2 31 | size_flags_vertical = 2 32 | script = ExtResource( 1 ) 33 | 34 | [node name="winner" type="Label" parent="."] 35 | visible = false 36 | margin_left = 337.643 37 | margin_top = 217.057 38 | margin_right = 664.643 39 | margin_bottom = 330.057 40 | custom_fonts/font = SubResource( 1 ) 41 | text = "The winner is : 42 | you" 43 | align = 1 44 | valign = 1 45 | 46 | [node name="Quit" type="Button" parent="winner"] 47 | margin_left = 8.50732 48 | margin_top = 144.0 49 | margin_right = 325.507 50 | margin_bottom = 202.0 51 | custom_fonts/font = SubResource( 2 ) 52 | text = "Done" 53 | 54 | [node name="DirectionalLight" type="DirectionalLight" parent="."] 55 | transform = Transform( 0.947817, 0.106915, -0.300353, 0.241415, 0.374644, 0.895188, 0.208234, -0.920984, 0.329283, -16.3809, 5.48587, 0 ) 56 | shadow_enabled = true 57 | shadow_bias = 0.05 58 | shadow_contact = 0.25 59 | 60 | [node name="Camera" type="Camera" parent="."] 61 | transform = Transform( 1, 0, 0, 0, 0.5, 0.866025, 0, -0.866025, 0.5, 0, 10.3464, 8.8791 ) 62 | 63 | [node name="floor" parent="." instance=ExtResource( 3 )] 64 | 65 | [node name="walls" type="Spatial" parent="floor"] 66 | editor/display_folded = true 67 | 68 | [node name="wall_cube" parent="floor/walls" instance=ExtResource( 4 )] 69 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 0 ) 70 | 71 | [node name="wall_cube23" parent="floor/walls" instance=ExtResource( 4 )] 72 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 0 ) 73 | 74 | [node name="wall_cube11" parent="floor/walls" instance=ExtResource( 4 )] 75 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.5, 7 ) 76 | 77 | [node name="wall_cube64" parent="floor/walls" instance=ExtResource( 4 )] 78 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.5, -7 ) 79 | 80 | [node name="wall_cube44" parent="floor/walls" instance=ExtResource( 4 )] 81 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, 7 ) 82 | 83 | [node name="wall_cube66" parent="floor/walls" instance=ExtResource( 4 )] 84 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, -7 ) 85 | 86 | [node name="wall_cube36" parent="floor/walls" instance=ExtResource( 4 )] 87 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, 7 ) 88 | 89 | [node name="wall_cube54" parent="floor/walls" instance=ExtResource( 4 )] 90 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, -7 ) 91 | 92 | [node name="wall_cube40" parent="floor/walls" instance=ExtResource( 4 )] 93 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, 7 ) 94 | 95 | [node name="wall_cube61" parent="floor/walls" instance=ExtResource( 4 )] 96 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, -7 ) 97 | 98 | [node name="wall_cube47" parent="floor/walls" instance=ExtResource( 4 )] 99 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, 7 ) 100 | 101 | [node name="wall_cube67" parent="floor/walls" instance=ExtResource( 4 )] 102 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, -7 ) 103 | 104 | [node name="wall_cube32" parent="floor/walls" instance=ExtResource( 4 )] 105 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 7 ) 106 | 107 | [node name="wall_cube52" parent="floor/walls" instance=ExtResource( 4 )] 108 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, -7 ) 109 | 110 | [node name="wall_cube38" parent="floor/walls" instance=ExtResource( 4 )] 111 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 7 ) 112 | 113 | [node name="wall_cube60" parent="floor/walls" instance=ExtResource( 4 )] 114 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -7 ) 115 | 116 | [node name="wall_cube34" parent="floor/walls" instance=ExtResource( 4 )] 117 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 7 ) 118 | 119 | [node name="wall_cube56" parent="floor/walls" instance=ExtResource( 4 )] 120 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, -7 ) 121 | 122 | [node name="wall_cube42" parent="floor/walls" instance=ExtResource( 4 )] 123 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, 7 ) 124 | 125 | [node name="wall_cube72" parent="floor/walls" instance=ExtResource( 4 )] 126 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, -7 ) 127 | 128 | [node name="wall_cube6" parent="floor/walls" instance=ExtResource( 4 )] 129 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -4 ) 130 | 131 | [node name="wall_cube24" parent="floor/walls" instance=ExtResource( 4 )] 132 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -4 ) 133 | 134 | [node name="wall_cube12" parent="floor/walls" instance=ExtResource( 4 )] 135 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 4 ) 136 | 137 | [node name="wall_cube21" parent="floor/walls" instance=ExtResource( 4 )] 138 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 4 ) 139 | 140 | [node name="wall_cube3" parent="floor/walls" instance=ExtResource( 4 )] 141 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -2 ) 142 | 143 | [node name="wall_cube27" parent="floor/walls" instance=ExtResource( 4 )] 144 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -2 ) 145 | 146 | [node name="wall_cube14" parent="floor/walls" instance=ExtResource( 4 )] 147 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 6 ) 148 | 149 | [node name="wall_cube26" parent="floor/walls" instance=ExtResource( 4 )] 150 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 6 ) 151 | 152 | [node name="wall_cube7" parent="floor/walls" instance=ExtResource( 4 )] 153 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -6 ) 154 | 155 | [node name="wall_cube22" parent="floor/walls" instance=ExtResource( 4 )] 156 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -6 ) 157 | 158 | [node name="wall_cube10" parent="floor/walls" instance=ExtResource( 4 )] 159 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 2 ) 160 | 161 | [node name="wall_cube17" parent="floor/walls" instance=ExtResource( 4 )] 162 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 2 ) 163 | 164 | [node name="wall_cube2" parent="floor/walls" instance=ExtResource( 4 )] 165 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -1 ) 166 | 167 | [node name="wall_cube29" parent="floor/walls" instance=ExtResource( 4 )] 168 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -1 ) 169 | 170 | [node name="wall_cube15" parent="floor/walls" instance=ExtResource( 4 )] 171 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 7 ) 172 | 173 | [node name="wall_cube65" parent="floor/walls" instance=ExtResource( 4 )] 174 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, -5 ) 175 | 176 | [node name="wall_cube84" parent="floor/walls" instance=ExtResource( 4 )] 177 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, -5 ) 178 | 179 | [node name="wall_cube91" parent="floor/walls" instance=ExtResource( 4 )] 180 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, -5 ) 181 | 182 | [node name="wall_cube89" parent="floor/walls" instance=ExtResource( 4 )] 183 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, -3 ) 184 | 185 | [node name="wall_cube86" parent="floor/walls" instance=ExtResource( 4 )] 186 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, -4 ) 187 | 188 | [node name="wall_cube88" parent="floor/walls" instance=ExtResource( 4 )] 189 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, -2 ) 190 | 191 | [node name="wall_cube77" parent="floor/walls" instance=ExtResource( 4 )] 192 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 1 ) 193 | 194 | [node name="wall_cube79" parent="floor/walls" instance=ExtResource( 4 )] 195 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 1 ) 196 | 197 | [node name="wall_cube80" parent="floor/walls" instance=ExtResource( 4 )] 198 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, 1 ) 199 | 200 | [node name="wall_cube92" parent="floor/walls" instance=ExtResource( 4 )] 201 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, 1 ) 202 | 203 | [node name="wall_cube93" parent="floor/walls" instance=ExtResource( 4 )] 204 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, 3 ) 205 | 206 | [node name="wall_cube97" parent="floor/walls" instance=ExtResource( 4 )] 207 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, 3 ) 208 | 209 | [node name="wall_cube130" parent="floor/walls" instance=ExtResource( 4 )] 210 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, 5 ) 211 | 212 | [node name="wall_cube135" parent="floor/walls" instance=ExtResource( 4 )] 213 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 5 ) 214 | 215 | [node name="wall_cube141" parent="floor/walls" instance=ExtResource( 4 )] 216 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, 5 ) 217 | 218 | [node name="wall_cube142" parent="floor/walls" instance=ExtResource( 4 )] 219 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, 5 ) 220 | 221 | [node name="wall_cube138" parent="floor/walls" instance=ExtResource( 4 )] 222 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 5 ) 223 | 224 | [node name="wall_cube143" parent="floor/walls" instance=ExtResource( 4 )] 225 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, 5 ) 226 | 227 | [node name="wall_cube156" parent="floor/walls" instance=ExtResource( 4 )] 228 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, 5 ) 229 | 230 | [node name="wall_cube145" parent="floor/walls" instance=ExtResource( 4 )] 231 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, 5 ) 232 | 233 | [node name="wall_cube98" parent="floor/walls" instance=ExtResource( 4 )] 234 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, 2 ) 235 | 236 | [node name="wall_cube132" parent="floor/walls" instance=ExtResource( 4 )] 237 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, 4 ) 238 | 239 | [node name="wall_cube133" parent="floor/walls" instance=ExtResource( 4 )] 240 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 4 ) 241 | 242 | [node name="wall_cube137" parent="floor/walls" instance=ExtResource( 4 )] 243 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 4 ) 244 | 245 | [node name="wall_cube99" parent="floor/walls" instance=ExtResource( 4 )] 246 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, 1 ) 247 | 248 | [node name="wall_cube131" parent="floor/walls" instance=ExtResource( 4 )] 249 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, 3 ) 250 | 251 | [node name="wall_cube134" parent="floor/walls" instance=ExtResource( 4 )] 252 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 3 ) 253 | 254 | [node name="wall_cube139" parent="floor/walls" instance=ExtResource( 4 )] 255 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, 3 ) 256 | 257 | [node name="wall_cube140" parent="floor/walls" instance=ExtResource( 4 )] 258 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, 3 ) 259 | 260 | [node name="wall_cube136" parent="floor/walls" instance=ExtResource( 4 )] 261 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 3 ) 262 | 263 | [node name="wall_cube144" parent="floor/walls" instance=ExtResource( 4 )] 264 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, 3 ) 265 | 266 | [node name="wall_cube146" parent="floor/walls" instance=ExtResource( 4 )] 267 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, 3 ) 268 | 269 | [node name="wall_cube100" parent="floor/walls" instance=ExtResource( 4 )] 270 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, -1 ) 271 | 272 | [node name="wall_cube155" parent="floor/walls" instance=ExtResource( 4 )] 273 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, -1 ) 274 | 275 | [node name="wall_cube101" parent="floor/walls" instance=ExtResource( 4 )] 276 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, -3 ) 277 | 278 | [node name="wall_cube112" parent="floor/walls" instance=ExtResource( 4 )] 279 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -3 ) 280 | 281 | [node name="wall_cube114" parent="floor/walls" instance=ExtResource( 4 )] 282 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, -3 ) 283 | 284 | [node name="wall_cube150" parent="floor/walls" instance=ExtResource( 4 )] 285 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, -3 ) 286 | 287 | [node name="wall_cube152" parent="floor/walls" instance=ExtResource( 4 )] 288 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, -4 ) 289 | 290 | [node name="wall_cube153" parent="floor/walls" instance=ExtResource( 4 )] 291 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, -5 ) 292 | 293 | [node name="wall_cube151" parent="floor/walls" instance=ExtResource( 4 )] 294 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, -3 ) 295 | 296 | [node name="wall_cube148" parent="floor/walls" instance=ExtResource( 4 )] 297 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, -1 ) 298 | 299 | [node name="wall_cube116" parent="floor/walls" instance=ExtResource( 4 )] 300 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, -2 ) 301 | 302 | [node name="wall_cube149" parent="floor/walls" instance=ExtResource( 4 )] 303 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, 0 ) 304 | 305 | [node name="wall_cube117" parent="floor/walls" instance=ExtResource( 4 )] 306 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, -1 ) 307 | 308 | [node name="wall_cube147" parent="floor/walls" instance=ExtResource( 4 )] 309 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, 1 ) 310 | 311 | [node name="wall_cube118" parent="floor/walls" instance=ExtResource( 4 )] 312 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -1 ) 313 | 314 | [node name="wall_cube119" parent="floor/walls" instance=ExtResource( 4 )] 315 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, -1 ) 316 | 317 | [node name="wall_cube120" parent="floor/walls" instance=ExtResource( 4 )] 318 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, -1 ) 319 | 320 | [node name="wall_cube126" parent="floor/walls" instance=ExtResource( 4 )] 321 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, 1 ) 322 | 323 | [node name="wall_cube128" parent="floor/walls" instance=ExtResource( 4 )] 324 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 1 ) 325 | 326 | [node name="wall_cube129" parent="floor/walls" instance=ExtResource( 4 )] 327 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, 1 ) 328 | 329 | [node name="wall_cube121" parent="floor/walls" instance=ExtResource( 4 )] 330 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, -1 ) 331 | 332 | [node name="wall_cube124" parent="floor/walls" instance=ExtResource( 4 )] 333 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, 1 ) 334 | 335 | [node name="wall_cube122" parent="floor/walls" instance=ExtResource( 4 )] 336 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, -1 ) 337 | 338 | [node name="wall_cube125" parent="floor/walls" instance=ExtResource( 4 )] 339 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 1 ) 340 | 341 | [node name="wall_cube123" parent="floor/walls" instance=ExtResource( 4 )] 342 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, -1 ) 343 | 344 | [node name="wall_cube127" parent="floor/walls" instance=ExtResource( 4 )] 345 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, 1 ) 346 | 347 | [node name="wall_cube103" parent="floor/walls" instance=ExtResource( 4 )] 348 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, -3 ) 349 | 350 | [node name="wall_cube104" parent="floor/walls" instance=ExtResource( 4 )] 351 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, -4 ) 352 | 353 | [node name="wall_cube105" parent="floor/walls" instance=ExtResource( 4 )] 354 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, -5 ) 355 | 356 | [node name="wall_cube106" parent="floor/walls" instance=ExtResource( 4 )] 357 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -5 ) 358 | 359 | [node name="wall_cube107" parent="floor/walls" instance=ExtResource( 4 )] 360 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, -5 ) 361 | 362 | [node name="wall_cube109" parent="floor/walls" instance=ExtResource( 4 )] 363 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, -3 ) 364 | 365 | [node name="wall_cube110" parent="floor/walls" instance=ExtResource( 4 )] 366 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, -3 ) 367 | 368 | [node name="wall_cube108" parent="floor/walls" instance=ExtResource( 4 )] 369 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, -5 ) 370 | 371 | [node name="wall_cube111" parent="floor/walls" instance=ExtResource( 4 )] 372 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, -5 ) 373 | 374 | [node name="wall_cube102" parent="floor/walls" instance=ExtResource( 4 )] 375 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, -5 ) 376 | 377 | [node name="wall_cube113" parent="floor/walls" instance=ExtResource( 4 )] 378 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -5 ) 379 | 380 | [node name="wall_cube115" parent="floor/walls" instance=ExtResource( 4 )] 381 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, -5 ) 382 | 383 | [node name="wall_cube94" parent="floor/walls" instance=ExtResource( 4 )] 384 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, 4 ) 385 | 386 | [node name="wall_cube95" parent="floor/walls" instance=ExtResource( 4 )] 387 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, 5 ) 388 | 389 | [node name="wall_cube96" parent="floor/walls" instance=ExtResource( 4 )] 390 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, 5 ) 391 | 392 | [node name="wall_cube45" parent="floor/walls" instance=ExtResource( 4 )] 393 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, 7 ) 394 | 395 | [node name="wall_cube73" parent="floor/walls" instance=ExtResource( 4 )] 396 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, -7 ) 397 | 398 | [node name="wall_cube37" parent="floor/walls" instance=ExtResource( 4 )] 399 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, 7 ) 400 | 401 | [node name="wall_cube58" parent="floor/walls" instance=ExtResource( 4 )] 402 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, -7 ) 403 | 404 | [node name="wall_cube43" parent="floor/walls" instance=ExtResource( 4 )] 405 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 7 ) 406 | 407 | [node name="wall_cube68" parent="floor/walls" instance=ExtResource( 4 )] 408 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, -7 ) 409 | 410 | [node name="wall_cube48" parent="floor/walls" instance=ExtResource( 4 )] 411 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, 7 ) 412 | 413 | [node name="wall_cube71" parent="floor/walls" instance=ExtResource( 4 )] 414 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, -7 ) 415 | 416 | [node name="wall_cube33" parent="floor/walls" instance=ExtResource( 4 )] 417 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 7 ) 418 | 419 | [node name="wall_cube55" parent="floor/walls" instance=ExtResource( 4 )] 420 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, -7 ) 421 | 422 | [node name="wall_cube41" parent="floor/walls" instance=ExtResource( 4 )] 423 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, 7 ) 424 | 425 | [node name="wall_cube69" parent="floor/walls" instance=ExtResource( 4 )] 426 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.5, -7 ) 427 | 428 | [node name="wall_cube35" parent="floor/walls" instance=ExtResource( 4 )] 429 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, 7 ) 430 | 431 | [node name="wall_cube53" parent="floor/walls" instance=ExtResource( 4 )] 432 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, -7 ) 433 | 434 | [node name="wall_cube39" parent="floor/walls" instance=ExtResource( 4 )] 435 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, 7 ) 436 | 437 | [node name="wall_cube59" parent="floor/walls" instance=ExtResource( 4 )] 438 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, -7 ) 439 | 440 | [node name="wall_cube49" parent="floor/walls" instance=ExtResource( 4 )] 441 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, 7 ) 442 | 443 | [node name="wall_cube75" parent="floor/walls" instance=ExtResource( 4 )] 444 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, -7 ) 445 | 446 | [node name="wall_cube50" parent="floor/walls" instance=ExtResource( 4 )] 447 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, 7 ) 448 | 449 | [node name="wall_cube70" parent="floor/walls" instance=ExtResource( 4 )] 450 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, -7 ) 451 | 452 | [node name="wall_cube51" parent="floor/walls" instance=ExtResource( 4 )] 453 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 7 ) 454 | 455 | [node name="wall_cube74" parent="floor/walls" instance=ExtResource( 4 )] 456 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -7 ) 457 | 458 | [node name="wall_cube46" parent="floor/walls" instance=ExtResource( 4 )] 459 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, 7 ) 460 | 461 | [node name="wall_cube76" parent="floor/walls" instance=ExtResource( 4 )] 462 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, -7 ) 463 | 464 | [node name="wall_cube28" parent="floor/walls" instance=ExtResource( 4 )] 465 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 7 ) 466 | 467 | [node name="wall_cube62" parent="floor/walls" instance=ExtResource( 4 )] 468 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, -1 ) 469 | 470 | [node name="wall_cube87" parent="floor/walls" instance=ExtResource( 4 )] 471 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, -1 ) 472 | 473 | [node name="wall_cube63" parent="floor/walls" instance=ExtResource( 4 )] 474 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 5 ) 475 | 476 | [node name="wall_cube82" parent="floor/walls" instance=ExtResource( 4 )] 477 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 5 ) 478 | 479 | [node name="wall_cube83" parent="floor/walls" instance=ExtResource( 4 )] 480 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, 5 ) 481 | 482 | [node name="wall_cube8" parent="floor/walls" instance=ExtResource( 4 )] 483 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -5 ) 484 | 485 | [node name="wall_cube25" parent="floor/walls" instance=ExtResource( 4 )] 486 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -5 ) 487 | 488 | [node name="wall_cube13" parent="floor/walls" instance=ExtResource( 4 )] 489 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 3 ) 490 | 491 | [node name="wall_cube20" parent="floor/walls" instance=ExtResource( 4 )] 492 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 3 ) 493 | 494 | [node name="wall_cube4" parent="floor/walls" instance=ExtResource( 4 )] 495 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -3 ) 496 | 497 | [node name="wall_cube30" parent="floor/walls" instance=ExtResource( 4 )] 498 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -3 ) 499 | 500 | [node name="wall_cube16" parent="floor/walls" instance=ExtResource( 4 )] 501 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 5 ) 502 | 503 | [node name="wall_cube31" parent="floor/walls" instance=ExtResource( 4 )] 504 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 5 ) 505 | 506 | [node name="wall_cube57" parent="floor/walls" instance=ExtResource( 4 )] 507 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, -3 ) 508 | 509 | [node name="wall_cube85" parent="floor/walls" instance=ExtResource( 4 )] 510 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, -3 ) 511 | 512 | [node name="wall_cube90" parent="floor/walls" instance=ExtResource( 4 )] 513 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, -1 ) 514 | 515 | [node name="wall_cube78" parent="floor/walls" instance=ExtResource( 4 )] 516 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 3 ) 517 | 518 | [node name="wall_cube154" parent="floor/walls" instance=ExtResource( 4 )] 519 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 2 ) 520 | 521 | [node name="wall_cube81" parent="floor/walls" instance=ExtResource( 4 )] 522 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, 3 ) 523 | 524 | [node name="wall_cube5" parent="floor/walls" instance=ExtResource( 4 )] 525 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, -7 ) 526 | 527 | [node name="wall_cube19" parent="floor/walls" instance=ExtResource( 4 )] 528 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, -7 ) 529 | 530 | [node name="wall_cube9" parent="floor/walls" instance=ExtResource( 4 )] 531 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -11, 0.5, 1 ) 532 | 533 | [node name="wall_cube18" parent="floor/walls" instance=ExtResource( 4 )] 534 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 0.5, 1 ) 535 | 536 | [node name="spawn_points" type="Spatial" parent="."] 537 | editor/display_folded = true 538 | 539 | [node name="0" type="Position3D" parent="spawn_points"] 540 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.6, -5 ) 541 | 542 | [node name="1" type="Position3D" parent="spawn_points"] 543 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.6, -5 ) 544 | 545 | [node name="2" type="Position3D" parent="spawn_points"] 546 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.6, 0 ) 547 | 548 | [node name="3" type="Position3D" parent="spawn_points"] 549 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.6, 4 ) 550 | 551 | [node name="4" type="Position3D" parent="spawn_points"] 552 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.6, 5 ) 553 | 554 | [node name="5" type="Position3D" parent="spawn_points"] 555 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.6, -2 ) 556 | 557 | [node name="6" type="Position3D" parent="spawn_points"] 558 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.6, 4 ) 559 | 560 | [node name="7" type="Position3D" parent="spawn_points"] 561 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.6, 0 ) 562 | 563 | [node name="rocks" type="Spatial" parent="."] 564 | editor/display_folded = true 565 | 566 | [node name="rock" parent="rocks" instance=ExtResource( 5 )] 567 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, -6 ) 568 | 569 | [node name="rock2" parent="rocks" instance=ExtResource( 5 )] 570 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, -6 ) 571 | 572 | [node name="rock3" parent="rocks" instance=ExtResource( 5 )] 573 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, -6 ) 574 | 575 | [node name="rock5" parent="rocks" instance=ExtResource( 5 )] 576 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, -5 ) 577 | 578 | [node name="rock6" parent="rocks" instance=ExtResource( 5 )] 579 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, -4 ) 580 | 581 | [node name="rock30" parent="rocks" instance=ExtResource( 5 )] 582 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, -3 ) 583 | 584 | [node name="rock31" parent="rocks" instance=ExtResource( 5 )] 585 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, -2 ) 586 | 587 | [node name="rock32" parent="rocks" instance=ExtResource( 5 )] 588 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.5, -2 ) 589 | 590 | [node name="rock33" parent="rocks" instance=ExtResource( 5 )] 591 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.5, -1 ) 592 | 593 | [node name="rock34" parent="rocks" instance=ExtResource( 5 )] 594 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.5, 0 ) 595 | 596 | [node name="rock35" parent="rocks" instance=ExtResource( 5 )] 597 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 0 ) 598 | 599 | [node name="rock36" parent="rocks" instance=ExtResource( 5 )] 600 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 0 ) 601 | 602 | [node name="rock37" parent="rocks" instance=ExtResource( 5 )] 603 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, 0.5, 0 ) 604 | 605 | [node name="rock38" parent="rocks" instance=ExtResource( 5 )] 606 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, -1 ) 607 | 608 | [node name="rock39" parent="rocks" instance=ExtResource( 5 )] 609 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 0 ) 610 | 611 | [node name="rock40" parent="rocks" instance=ExtResource( 5 )] 612 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, 0 ) 613 | 614 | [node name="rock41" parent="rocks" instance=ExtResource( 5 )] 615 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, -2 ) 616 | 617 | [node name="rock42" parent="rocks" instance=ExtResource( 5 )] 618 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, 0 ) 619 | 620 | [node name="rock49" parent="rocks" instance=ExtResource( 5 )] 621 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, 0 ) 622 | 623 | [node name="rock50" parent="rocks" instance=ExtResource( 5 )] 624 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0.5, 0 ) 625 | 626 | [node name="rock51" parent="rocks" instance=ExtResource( 5 )] 627 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, 2 ) 628 | 629 | [node name="rock77" parent="rocks" instance=ExtResource( 5 )] 630 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 2 ) 631 | 632 | [node name="rock53" parent="rocks" instance=ExtResource( 5 )] 633 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, 3 ) 634 | 635 | [node name="rock54" parent="rocks" instance=ExtResource( 5 )] 636 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, 3 ) 637 | 638 | [node name="rock64" parent="rocks" instance=ExtResource( 5 )] 639 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, 1 ) 640 | 641 | [node name="rock55" parent="rocks" instance=ExtResource( 5 )] 642 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, 2 ) 643 | 644 | [node name="rock56" parent="rocks" instance=ExtResource( 5 )] 645 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, 2 ) 646 | 647 | [node name="rock57" parent="rocks" instance=ExtResource( 5 )] 648 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, 4 ) 649 | 650 | [node name="rock58" parent="rocks" instance=ExtResource( 5 )] 651 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 0.5, 4 ) 652 | 653 | [node name="rock59" parent="rocks" instance=ExtResource( 5 )] 654 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, 4 ) 655 | 656 | [node name="rock60" parent="rocks" instance=ExtResource( 5 )] 657 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, 5 ) 658 | 659 | [node name="rock61" parent="rocks" instance=ExtResource( 5 )] 660 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 6 ) 661 | 662 | [node name="rock65" parent="rocks" instance=ExtResource( 5 )] 663 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, 6 ) 664 | 665 | [node name="rock66" parent="rocks" instance=ExtResource( 5 )] 666 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 6 ) 667 | 668 | [node name="rock67" parent="rocks" instance=ExtResource( 5 )] 669 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 5 ) 670 | 671 | [node name="rock68" parent="rocks" instance=ExtResource( 5 )] 672 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 4 ) 673 | 674 | [node name="rock69" parent="rocks" instance=ExtResource( 5 )] 675 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, 4 ) 676 | 677 | [node name="rock70" parent="rocks" instance=ExtResource( 5 )] 678 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, 3 ) 679 | 680 | [node name="rock71" parent="rocks" instance=ExtResource( 5 )] 681 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, 5 ) 682 | 683 | [node name="rock72" parent="rocks" instance=ExtResource( 5 )] 684 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 5 ) 685 | 686 | [node name="rock73" parent="rocks" instance=ExtResource( 5 )] 687 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 6 ) 688 | 689 | [node name="rock74" parent="rocks" instance=ExtResource( 5 )] 690 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 4 ) 691 | 692 | [node name="rock62" parent="rocks" instance=ExtResource( 5 )] 693 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, 6 ) 694 | 695 | [node name="rock63" parent="rocks" instance=ExtResource( 5 )] 696 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0.5, 6 ) 697 | 698 | [node name="rock52" parent="rocks" instance=ExtResource( 5 )] 699 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, 2 ) 700 | 701 | [node name="rock43" parent="rocks" instance=ExtResource( 5 )] 702 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 2 ) 703 | 704 | [node name="rock75" parent="rocks" instance=ExtResource( 5 )] 705 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, 2 ) 706 | 707 | [node name="rock76" parent="rocks" instance=ExtResource( 5 )] 708 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.5, 2 ) 709 | 710 | [node name="rock44" parent="rocks" instance=ExtResource( 5 )] 711 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 3 ) 712 | 713 | [node name="rock45" parent="rocks" instance=ExtResource( 5 )] 714 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 4 ) 715 | 716 | [node name="rock46" parent="rocks" instance=ExtResource( 5 )] 717 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.5, 6 ) 718 | 719 | [node name="rock47" parent="rocks" instance=ExtResource( 5 )] 720 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9, 0.5, 6 ) 721 | 722 | [node name="rock48" parent="rocks" instance=ExtResource( 5 )] 723 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.5, 5 ) 724 | 725 | [node name="rock7" parent="rocks" instance=ExtResource( 5 )] 726 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, -4 ) 727 | 728 | [node name="rock8" parent="rocks" instance=ExtResource( 5 )] 729 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, -3 ) 730 | 731 | [node name="rock9" parent="rocks" instance=ExtResource( 5 )] 732 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.5, -6 ) 733 | 734 | [node name="rock10" parent="rocks" instance=ExtResource( 5 )] 735 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, -5 ) 736 | 737 | [node name="rock11" parent="rocks" instance=ExtResource( 5 )] 738 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, -6 ) 739 | 740 | [node name="rock12" parent="rocks" instance=ExtResource( 5 )] 741 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -6 ) 742 | 743 | [node name="rock13" parent="rocks" instance=ExtResource( 5 )] 744 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, -6 ) 745 | 746 | [node name="rock14" parent="rocks" instance=ExtResource( 5 )] 747 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, -5 ) 748 | 749 | [node name="rock15" parent="rocks" instance=ExtResource( 5 )] 750 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -4 ) 751 | 752 | [node name="rock16" parent="rocks" instance=ExtResource( 5 )] 753 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, -4 ) 754 | 755 | [node name="rock17" parent="rocks" instance=ExtResource( 5 )] 756 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -4 ) 757 | 758 | [node name="rock18" parent="rocks" instance=ExtResource( 5 )] 759 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, -4 ) 760 | 761 | [node name="rock19" parent="rocks" instance=ExtResource( 5 )] 762 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -3 ) 763 | 764 | [node name="rock20" parent="rocks" instance=ExtResource( 5 )] 765 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, -3 ) 766 | 767 | [node name="rock21" parent="rocks" instance=ExtResource( 5 )] 768 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, -2 ) 769 | 770 | [node name="rock27" parent="rocks" instance=ExtResource( 5 )] 771 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.5, -2 ) 772 | 773 | [node name="rock28" parent="rocks" instance=ExtResource( 5 )] 774 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, -2 ) 775 | 776 | [node name="rock29" parent="rocks" instance=ExtResource( 5 )] 777 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0.5, -2 ) 778 | 779 | [node name="rock26" parent="rocks" instance=ExtResource( 5 )] 780 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, -1 ) 781 | 782 | [node name="rock22" parent="rocks" instance=ExtResource( 5 )] 783 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0.5, -2 ) 784 | 785 | [node name="rock23" parent="rocks" instance=ExtResource( 5 )] 786 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, -2 ) 787 | 788 | [node name="rock24" parent="rocks" instance=ExtResource( 5 )] 789 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, -3 ) 790 | 791 | [node name="rock25" parent="rocks" instance=ExtResource( 5 )] 792 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, -6 ) 793 | 794 | [node name="rock4" parent="rocks" instance=ExtResource( 5 )] 795 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.5, -6 ) 796 | 797 | [node name="bomb" parent="." instance=ExtResource( 6 )] 798 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.51, 0 ) 799 | [connection signal="pressed" from="winner/Quit" to="score" method="_on_Quit_pressed"] 800 | -------------------------------------------------------------------------------- /3d_bomber/scenes/rock.obj: -------------------------------------------------------------------------------- 1 | # Wavefront OBJ file 2 | # Creator: Ultimate Unwrap3D v2.50.74 3 | # Website: http://www.unwrap3d.com 4 | # Time: Sun Jun 02 23:50:13 2019 5 | # num_vertices: 358 6 | # num_vertex_normals: 358 7 | # num_uvs: 480 8 | # num_faces: 128 9 | # num_groups: 1 10 | 11 | v -3.414214 -0.831355 -1.727039 12 | v -4.000000 1.677618 0.087151 13 | v 0.000000 2.087665 -4.374289 14 | v 0.000000 2.087665 -4.374289 15 | v 0.000000 2.087665 -4.374289 16 | v 0.000000 2.087665 -4.374289 17 | v 0.000000 2.087665 -4.374289 18 | v 0.000000 2.087665 -4.374289 19 | v 0.000000 2.087665 -4.374289 20 | v 0.000000 2.087665 -4.374289 21 | v 0.000000 2.087665 -4.374289 22 | v 0.000000 2.087665 -4.374289 23 | v 0.000000 2.087665 -4.374289 24 | v 0.000000 3.099310 -4.790715 25 | v 0.000000 3.099310 -4.790715 26 | v 0.000000 3.099310 -4.790715 27 | v 0.585787 2.584126 -4.217638 28 | v 0.585787 2.584126 -4.217638 29 | v 1.082392 1.747682 -4.182786 30 | v 1.414214 0.571734 -3.505520 31 | v 1.414214 0.571734 -3.505520 32 | v 1.414214 0.571734 -3.505520 33 | v 1.530734 1.487733 -5.014416 34 | v 1.530734 1.487733 -5.014416 35 | v 1.530734 1.487733 -5.014416 36 | v 1.530734 1.487733 -5.014416 37 | v 1.414214 0.351087 -3.660858 38 | v 1.414214 0.351087 -3.660858 39 | v 1.414214 0.351087 -3.660858 40 | v 1.082392 -1.392933 -4.388969 41 | v 1.082392 -1.392933 -4.388969 42 | v 1.082392 -1.392933 -4.388969 43 | v 0.585786 0.828547 -4.642395 44 | v 0.585786 0.828547 -4.642395 45 | v 0.585786 0.828547 -4.642395 46 | v -0.000000 0.284859 -4.247668 47 | v -0.000000 0.284859 -4.247668 48 | v -0.000000 0.284859 -4.247668 49 | v -0.585786 -1.012818 -4.299184 50 | v -0.585786 -1.012818 -4.299184 51 | v -0.585786 -1.012818 -4.299184 52 | v -1.082392 0.642439 -4.650635 53 | v -1.082392 0.642439 -4.650635 54 | v -1.082392 0.642439 -4.650635 55 | v -1.414214 -0.056243 -3.753330 56 | v -1.414214 -0.056243 -3.753330 57 | v -1.530734 0.738076 -3.949686 58 | v -1.414214 1.987976 -3.920449 59 | v -1.414214 1.987976 -3.920449 60 | v -1.082392 2.148329 -4.109115 61 | v -1.082392 2.148329 -4.109115 62 | v -1.082392 2.148329 -4.109115 63 | v -1.082392 2.148329 -4.109115 64 | v -0.585786 1.944672 -4.899666 65 | v -0.585786 1.944672 -4.899666 66 | v -0.585786 1.944672 -4.899666 67 | v -0.585786 1.944672 -4.899666 68 | v 0.000000 2.326475 -3.613678 69 | v 0.000000 2.326475 -3.613678 70 | v 1.082392 4.939111 -3.944498 71 | v 1.082392 4.939111 -3.944498 72 | v 1.082392 4.939111 -3.944498 73 | v 1.082392 4.939111 -3.944498 74 | v 2.000000 2.206901 -3.931803 75 | v 2.000000 2.206901 -3.931803 76 | v 2.000000 2.206901 -3.931803 77 | v 2.613126 1.883122 -3.424158 78 | v 2.613126 1.883122 -3.424158 79 | v 2.613126 1.883122 -3.424158 80 | v 2.613126 1.883122 -3.424158 81 | v 2.828427 0.318629 -2.403741 82 | v 2.828427 0.318629 -2.403741 83 | v 2.828427 0.318629 -2.403741 84 | v 2.828427 0.318629 -2.403741 85 | v 2.613126 0.755204 -2.637086 86 | v 2.613126 0.755204 -2.637086 87 | v 2.613126 0.755204 -2.637086 88 | v 2.000000 -1.849132 -2.794562 89 | v 2.000000 -1.849132 -2.794562 90 | v 2.000000 -1.849132 -2.794562 91 | v 1.082392 -2.276521 -3.627778 92 | v 1.082392 -2.276521 -3.627778 93 | v 1.082392 -2.276521 -3.627778 94 | v 1.082392 -2.276521 -3.627778 95 | v -0.000000 -1.635077 -2.577513 96 | v -0.000000 -1.635077 -2.577513 97 | v -0.000000 -1.635077 -2.577513 98 | v -0.000000 -1.635077 -2.577513 99 | v -1.082392 -0.604443 -2.281362 100 | v -1.082392 -0.604443 -2.281362 101 | v -1.082392 -0.604443 -2.281362 102 | v -1.082392 -0.604443 -2.281362 103 | v -2.000000 -1.474852 -3.806067 104 | v -2.000000 -1.474852 -3.806067 105 | v -2.000000 -1.474852 -3.806067 106 | v -2.000000 -1.474852 -3.806067 107 | v -2.613126 -0.351396 -3.435633 108 | v -2.613126 -0.351396 -3.435633 109 | v -2.613126 -0.351396 -3.435633 110 | v -2.828427 0.919539 -2.599243 111 | v -2.828427 0.919539 -2.599243 112 | v -2.828427 0.919539 -2.599243 113 | v -2.828427 0.919539 -2.599243 114 | v -2.613126 1.801578 -3.962199 115 | v -2.613126 1.801578 -3.962199 116 | v -2.613126 1.801578 -3.962199 117 | v -2.613126 1.801578 -3.962199 118 | v -1.999999 3.875349 -3.279438 119 | v -1.999999 3.875349 -3.279438 120 | v -1.999999 3.875349 -3.279438 121 | v -1.999999 3.875349 -3.279438 122 | v -1.082392 3.403602 -2.206286 123 | v -1.082392 3.403602 -2.206286 124 | v -1.082392 3.403602 -2.206286 125 | v 0.000000 5.443114 -1.201875 126 | v 0.000000 5.443114 -1.201875 127 | v 0.000000 5.443114 -1.201875 128 | v 1.414214 3.621969 -0.970545 129 | v 1.414214 3.621969 -0.970545 130 | v 1.414214 3.621969 -0.970545 131 | v 1.414214 3.621969 -0.970545 132 | v 2.613126 3.127562 -1.108550 133 | v 2.613126 3.127562 -1.108550 134 | v 2.613126 3.127562 -1.108550 135 | v 2.613126 3.127562 -1.108550 136 | v 3.414213 2.901824 -1.193453 137 | v 3.414213 2.901824 -1.193453 138 | v 3.414213 2.901824 -1.193453 139 | v 3.695518 1.023515 -1.949152 140 | v 3.695518 1.023515 -1.949152 141 | v 3.414213 0.231482 -2.130859 142 | v 3.414213 0.231482 -2.130859 143 | v 3.414213 0.231482 -2.130859 144 | v 2.613126 -1.310886 -2.800985 145 | v 2.613126 -1.310886 -2.800985 146 | v 2.613126 -1.310886 -2.800985 147 | v 2.613126 -1.310886 -2.800985 148 | v 1.414213 -2.289653 -2.460155 149 | v 1.414213 -2.289653 -2.460155 150 | v -0.000000 -2.497621 -1.527631 151 | v -1.414214 -1.805445 -2.029050 152 | v -1.414214 -1.805445 -2.029050 153 | v -2.613126 -1.885183 -0.896874 154 | v -2.613126 -1.885183 -0.896874 155 | v -3.695518 1.577609 -2.285771 156 | v -3.695518 1.577609 -2.285771 157 | v -3.414213 2.737116 -2.410104 158 | v -3.414213 2.737116 -2.410104 159 | v -3.414213 2.737116 -2.410104 160 | v -2.613125 3.287114 -2.791219 161 | v -2.613125 3.287114 -2.791219 162 | v -1.414214 4.947814 -1.919732 163 | v -1.414214 4.947814 -1.919732 164 | v -1.414214 4.947814 -1.919732 165 | v -1.414214 4.947814 -1.919732 166 | v 0.000000 4.194236 0.414982 167 | v 0.000000 4.194236 0.414982 168 | v 0.000000 4.194236 0.414982 169 | v 0.000000 4.194236 0.414982 170 | v 1.530734 4.254022 -1.059734 171 | v 1.530734 4.254022 -1.059734 172 | v 1.530734 4.254022 -1.059734 173 | v 1.530734 4.254022 -1.059734 174 | v 2.828427 5.062275 -0.024546 175 | v 2.828427 5.062275 -0.024546 176 | v 2.828427 5.062275 -0.024546 177 | v 2.828427 5.062275 -0.024546 178 | v 3.695518 2.014621 -0.232072 179 | v 3.695518 2.014621 -0.232072 180 | v 4.000000 0.165151 0.502447 181 | v 3.695518 -1.483079 0.546211 182 | v 3.695518 -1.483079 0.546211 183 | v 3.695518 -1.483079 0.546211 184 | v 2.828427 -2.869337 -1.076154 185 | v 2.828427 -2.869337 -1.076154 186 | v 2.828427 -2.869337 -1.076154 187 | v 2.828427 -2.869337 -1.076154 188 | v 1.530733 -3.161307 -0.488856 189 | v 1.530733 -3.161307 -0.488856 190 | v 1.530733 -3.161307 -0.488856 191 | v -0.000000 -3.078661 -0.153030 192 | v -0.000000 -3.078661 -0.153030 193 | v -1.530734 -3.395444 -0.229692 194 | v -1.530734 -3.395444 -0.229692 195 | v -1.530734 -3.395444 -0.229692 196 | v -2.828428 -1.915908 0.537055 197 | v -2.828428 -1.915908 0.537055 198 | v -3.695519 0.190955 -0.360738 199 | v -3.695518 3.223490 0.594186 200 | v -3.695518 3.223490 0.594186 201 | v -3.695518 3.223490 0.594186 202 | v -2.828426 4.727457 -0.821995 203 | v -2.828426 4.727457 -0.821995 204 | v -2.828426 4.727457 -0.821995 205 | v -1.530734 4.519595 -0.859899 206 | v -1.530734 4.519595 -0.859899 207 | v -1.530734 4.519595 -0.859899 208 | v 0.000000 5.215721 0.558466 209 | v 0.000000 5.215721 0.558466 210 | v 0.000000 5.215721 0.558466 211 | v 0.000000 5.215721 0.558466 212 | v 1.414214 4.121190 1.828769 213 | v 1.414214 4.121190 1.828769 214 | v 1.414214 4.121190 1.828769 215 | v 1.414214 4.121190 1.828769 216 | v 2.613126 3.866200 1.453940 217 | v 2.613126 3.866200 1.453940 218 | v 2.613126 3.866200 1.453940 219 | v 2.613126 3.866200 1.453940 220 | v 3.414213 1.914672 0.564447 221 | v 3.414213 1.914672 0.564447 222 | v 3.414213 1.914672 0.564447 223 | v 3.695518 1.486267 1.392659 224 | v 3.695518 1.486267 1.392659 225 | v 3.414213 -0.223428 1.074229 226 | v 3.414213 -0.223428 1.074229 227 | v 2.613126 -3.058406 0.594660 228 | v 2.613126 -3.058406 0.594660 229 | v 2.613126 -3.058406 0.594660 230 | v 2.613126 -3.058406 0.594660 231 | v 1.414213 -0.772578 2.147565 232 | v 1.414213 -0.772578 2.147565 233 | v 1.414213 -0.772578 2.147565 234 | v 1.414213 -0.772578 2.147565 235 | v -0.000000 -1.685004 0.717406 236 | v -0.000000 -1.685004 0.717406 237 | v -1.414214 -2.896939 1.608302 238 | v -1.414214 -2.896939 1.608302 239 | v -1.414214 -2.896939 1.608302 240 | v -1.414214 -2.896939 1.608302 241 | v -2.613126 -2.962638 1.275772 242 | v -2.613126 -2.962638 1.275772 243 | v -2.613126 -2.962638 1.275772 244 | v -3.414214 -0.606800 1.828463 245 | v -3.414214 -0.606800 1.828463 246 | v -3.414214 -0.606800 1.828463 247 | v -3.414214 -0.606800 1.828463 248 | v -3.695518 1.114338 0.779542 249 | v -3.695518 1.114338 0.779542 250 | v -3.414213 2.933197 1.275712 251 | v -3.414213 2.933197 1.275712 252 | v -2.613125 3.967462 1.208205 253 | v -2.613125 3.967462 1.208205 254 | v -1.414214 5.039064 1.738983 255 | v -1.414214 5.039064 1.738983 256 | v -1.414214 5.039064 1.738983 257 | v 0.000000 3.540470 1.687025 258 | v 0.000000 3.540470 1.687025 259 | v 0.000000 3.540470 1.687025 260 | v 1.082392 4.681471 2.325168 261 | v 1.082392 4.681471 2.325168 262 | v 1.082392 4.681471 2.325168 263 | v 1.082392 4.681471 2.325168 264 | v 2.000000 2.202414 1.690932 265 | v 2.000000 2.202414 1.690932 266 | v 2.000000 2.202414 1.690932 267 | v 2.000000 2.202414 1.690932 268 | v 2.613126 2.103984 1.609386 269 | v 2.613126 2.103984 1.609386 270 | v 2.613126 2.103984 1.609386 271 | v 2.828427 1.408933 3.237487 272 | v 2.828427 1.408933 3.237487 273 | v 2.828427 1.408933 3.237487 274 | v 2.613126 0.100887 2.910879 275 | v 2.613126 0.100887 2.910879 276 | v 2.000000 -0.360866 3.094051 277 | v 2.000000 -0.360866 3.094051 278 | v 1.082392 -1.441872 3.306581 279 | v 1.082392 -1.441872 3.306581 280 | v 1.082392 -1.441872 3.306581 281 | v 1.082392 -1.441872 3.306581 282 | v -0.000000 -1.661476 2.266755 283 | v -0.000000 -1.661476 2.266755 284 | v -1.082392 -2.082424 1.941549 285 | v -1.082392 -2.082424 1.941549 286 | v -1.082392 -2.082424 1.941549 287 | v -2.000000 0.005906 2.204863 288 | v -2.000000 0.005906 2.204863 289 | v -2.613126 -0.058724 1.689101 290 | v -2.613126 -0.058724 1.689101 291 | v -2.613126 -0.058724 1.689101 292 | v -2.613126 -0.058724 1.689101 293 | v -2.828427 0.212516 3.000786 294 | v -2.828427 0.212516 3.000786 295 | v -2.828427 0.212516 3.000786 296 | v -2.828427 0.212516 3.000786 297 | v -2.613126 1.285234 3.012017 298 | v -2.613126 1.285234 3.012017 299 | v -2.613126 1.285234 3.012017 300 | v -1.999999 3.711188 2.422094 301 | v -1.082392 2.909965 3.013604 302 | v -1.082392 2.909965 3.013604 303 | v 0.000000 4.092013 3.181028 304 | v 0.000000 4.092013 3.181028 305 | v 0.000000 4.092013 3.181028 306 | v 0.000000 4.092013 3.181028 307 | v 0.585786 4.057375 2.435339 308 | v 0.585786 4.057375 2.435339 309 | v 0.585786 4.057375 2.435339 310 | v 0.585786 4.057375 2.435339 311 | v 1.082392 3.036752 3.066461 312 | v 1.082392 3.036752 3.066461 313 | v 1.082392 3.036752 3.066461 314 | v 1.414213 1.390727 3.409917 315 | v 1.414213 1.390727 3.409917 316 | v 1.414213 1.390727 3.409917 317 | v 1.414213 1.390727 3.409917 318 | v 1.530733 1.535218 2.412450 319 | v 1.530733 1.535218 2.412450 320 | v 1.530733 1.535218 2.412450 321 | v 1.530733 1.535218 2.412450 322 | v 1.414213 1.008669 4.076502 323 | v 1.414213 1.008669 4.076502 324 | v 1.414213 1.008669 4.076502 325 | v 1.414213 1.008669 4.076502 326 | v 1.082392 -0.702727 3.758011 327 | v 1.082392 -0.702727 3.758011 328 | v 0.585786 -0.418226 3.627148 329 | v 0.585786 -0.418226 3.627148 330 | v 0.585786 -0.418226 3.627148 331 | v -0.000000 -1.883848 3.474921 332 | v -0.000000 -1.883848 3.474921 333 | v -0.000000 -1.883848 3.474921 334 | v -0.000000 -1.883848 3.474921 335 | v -0.585786 -0.467636 3.977134 336 | v -0.585786 -0.467636 3.977134 337 | v -0.585786 -0.467636 3.977134 338 | v -1.082392 0.952262 4.100856 339 | v -1.082392 0.952262 4.100856 340 | v -1.082392 0.952262 4.100856 341 | v -1.414213 0.991396 2.539162 342 | v -1.414213 0.991396 2.539162 343 | v -1.414213 0.991396 2.539162 344 | v -1.414213 0.991396 2.539162 345 | v -1.530733 -0.773751 2.694685 346 | v -1.530733 -0.773751 2.694685 347 | v -1.530733 -0.773751 2.694685 348 | v -1.414213 2.942441 3.118465 349 | v -1.414213 2.942441 3.118465 350 | v -1.414213 2.942441 3.118465 351 | v -1.082391 1.090464 4.271088 352 | v -1.082391 1.090464 4.271088 353 | v -1.082391 1.090464 4.271088 354 | v -0.585786 2.514238 3.257263 355 | v -0.585786 2.514238 3.257263 356 | v -0.585786 2.514238 3.257263 357 | v 0.000000 1.163839 3.123315 358 | v 0.000000 1.163839 3.123315 359 | v 0.000000 1.163839 3.123315 360 | v 0.000000 1.163839 3.123315 361 | v 0.000000 1.163839 3.123315 362 | v 0.000000 1.163839 3.123315 363 | v 0.000000 1.163839 3.123315 364 | v 0.000000 1.163839 3.123315 365 | v 0.000000 1.163839 3.123315 366 | v 0.000000 1.163839 3.123315 367 | v 0.000000 1.163839 3.123315 368 | v 0.000000 1.163839 3.123315 369 | # num_vertices: 358 370 | 371 | vn -0.929686 -0.288971 -0.228430 372 | vn -0.997703 -0.024615 0.063110 373 | vn 0.477910 -0.186418 -0.858400 374 | vn 0.008077 -0.967114 0.254215 375 | vn -0.204088 -0.240105 -0.949051 376 | vn -0.003780 -0.499875 -0.866089 377 | vn 0.780627 0.240325 0.576946 378 | vn -0.518987 -0.059888 -0.852681 379 | vn 0.486825 0.729501 0.480448 380 | vn -0.496006 -0.643460 -0.583042 381 | vn 0.297456 -0.079247 -0.951441 382 | vn -0.804915 0.574253 0.149483 383 | vn 0.623668 0.197138 -0.756422 384 | vn 0.590345 -0.307239 -0.746389 385 | vn 0.194434 0.819963 0.538383 386 | vn -0.805827 0.445619 -0.389958 387 | vn 0.304394 -0.062510 -0.950493 388 | vn 0.194434 0.819963 0.538383 389 | vn 0.208871 -0.187799 -0.959742 390 | vn 0.208740 -0.443189 -0.871786 391 | vn 0.486825 0.729501 0.480448 392 | vn -0.707744 0.626823 0.325870 393 | vn 0.486825 0.729501 0.480448 394 | vn -0.496006 -0.643460 -0.583042 395 | vn -0.707744 0.626823 0.325870 396 | vn 0.467917 -0.696218 -0.544366 397 | vn 0.467917 -0.696218 -0.544366 398 | vn 0.608144 0.204520 -0.767028 399 | vn -0.496006 -0.643460 -0.583042 400 | vn 0.608144 0.204520 -0.767028 401 | vn -0.874945 -0.142809 0.462684 402 | vn 0.780627 0.240325 0.576946 403 | vn -0.410816 -0.202727 -0.888894 404 | vn 0.780627 0.240325 0.576946 405 | vn -0.874945 -0.142809 0.462684 406 | vn -0.410816 -0.202727 -0.888894 407 | vn 0.236068 -0.068082 -0.969349 408 | vn 0.835465 -0.360678 -0.414620 409 | vn 0.297456 -0.079247 -0.951441 410 | vn 0.835465 -0.360678 -0.414620 411 | vn -0.934263 -0.315555 -0.166068 412 | vn -0.873526 0.483808 0.053686 413 | vn 0.357590 -0.090077 -0.929524 414 | vn -0.934263 -0.315555 -0.166068 415 | vn -0.119038 -0.254692 -0.959668 416 | vn -0.873526 0.483808 0.053686 417 | vn -0.331697 -0.098657 -0.938213 418 | vn -0.447279 -0.130816 -0.884776 419 | vn 0.151472 -0.868582 -0.471829 420 | vn -0.232371 -0.500423 -0.834015 421 | vn 0.151472 -0.868582 -0.471829 422 | vn 0.008077 -0.967114 0.254215 423 | vn -0.850333 -0.222756 -0.476774 424 | vn 0.008077 -0.967114 0.254215 425 | vn 0.677962 -0.279812 -0.679759 426 | vn -0.850333 -0.222756 -0.476774 427 | vn -0.805827 0.445619 -0.389958 428 | vn 0.194434 0.819963 0.538383 429 | vn -0.852410 0.234826 -0.467176 430 | vn 0.194434 0.819963 0.538383 431 | vn 0.191770 0.073076 -0.978716 432 | vn -0.864373 0.307746 -0.397683 433 | vn 0.947326 0.318322 0.035284 434 | vn 0.311792 -0.150988 -0.938077 435 | vn 0.650775 0.668808 -0.359427 436 | vn 0.947326 0.318322 0.035284 437 | vn 0.411154 -0.365048 -0.835280 438 | vn 0.650775 0.668808 -0.359427 439 | vn -0.707744 0.626823 0.325870 440 | vn 0.948625 -0.070616 -0.308421 441 | vn 0.467917 -0.696218 -0.544366 442 | vn -0.557471 0.160443 0.814546 443 | vn 0.948625 -0.070616 -0.308421 444 | vn -0.707744 0.626823 0.325870 445 | vn 0.467917 -0.696218 -0.544366 446 | vn -0.557471 0.160443 0.814546 447 | vn 0.553555 0.073769 -0.829539 448 | vn 0.553555 0.073769 -0.829539 449 | vn -0.623101 0.713606 0.320174 450 | vn -0.874945 -0.142809 0.462684 451 | vn -0.623101 0.713606 0.320174 452 | vn -0.425012 -0.898396 0.110678 453 | vn -0.874945 -0.142809 0.462684 454 | vn -0.288916 -0.338791 -0.895404 455 | vn -0.425012 -0.898396 0.110678 456 | vn -0.672804 -0.571642 -0.469639 457 | vn 0.835465 -0.360678 -0.414620 458 | vn -0.288916 -0.338791 -0.895404 459 | vn -0.672804 -0.571642 -0.469639 460 | vn 0.881629 -0.317029 -0.349605 461 | vn 0.835465 -0.360678 -0.414620 462 | vn -0.934263 -0.315555 -0.166068 463 | vn -0.922863 0.382687 -0.043295 464 | vn -0.882951 -0.401825 -0.242762 465 | vn -0.934263 -0.315555 -0.166068 466 | vn 0.881629 -0.317029 -0.349605 467 | vn -0.922863 0.382687 -0.043295 468 | vn -0.186575 -0.261470 -0.947008 469 | vn -0.930802 -0.152915 -0.332002 470 | vn -0.911439 0.107037 -0.397268 471 | vn -0.632633 -0.600770 -0.488724 472 | vn -0.186575 -0.261470 -0.947008 473 | vn -0.712997 0.082755 -0.696266 474 | vn -0.712997 0.082755 -0.696266 475 | vn 0.151472 -0.868582 -0.471829 476 | vn -0.632633 -0.600770 -0.488724 477 | vn -0.692081 0.402001 -0.599515 478 | vn -0.692081 0.402001 -0.599515 479 | vn -0.278600 0.768482 0.576036 480 | vn -0.850333 -0.222756 -0.476774 481 | vn 0.151472 -0.868582 -0.471829 482 | vn -0.850333 -0.222756 -0.476774 483 | vn -0.278600 0.768482 0.576036 484 | vn -0.842730 0.195970 -0.501400 485 | vn -0.858973 0.122287 -0.497203 486 | vn -0.445081 0.846209 0.292973 487 | vn 0.676712 0.582671 0.450061 488 | vn 0.676712 0.582671 0.450061 489 | vn -0.158053 -0.109341 -0.981358 490 | vn 0.947326 0.318322 0.035284 491 | vn -0.864373 0.307746 -0.397683 492 | vn 0.650775 0.668808 -0.359427 493 | vn 0.043963 0.484597 -0.873632 494 | vn 0.947326 0.318322 0.035284 495 | vn -0.158053 -0.109341 -0.981358 496 | vn 0.650775 0.668808 -0.359427 497 | vn 0.043963 0.484597 -0.873632 498 | vn 0.975381 0.060667 -0.212019 499 | vn -0.557471 0.160443 0.814546 500 | vn 0.974823 -0.055574 -0.215945 501 | vn -0.557471 0.160443 0.814546 502 | vn 0.915198 -0.307243 -0.260797 503 | vn 0.501846 -0.065998 -0.862435 504 | vn 0.501846 -0.065998 -0.862435 505 | vn -0.623101 0.713606 0.320174 506 | vn 0.361454 -0.668932 -0.649524 507 | vn 0.892781 -0.330870 -0.305723 508 | vn -0.623101 0.713606 0.320174 509 | vn -0.071631 -0.933335 -0.351787 510 | vn -0.404027 -0.864646 -0.298580 511 | vn -0.507272 -0.710153 -0.488218 512 | vn 0.881629 -0.317029 -0.349605 513 | vn -0.740025 -0.585523 -0.330948 514 | vn 0.881629 -0.317029 -0.349605 515 | vn -0.974609 0.064346 -0.214468 516 | vn -0.632633 -0.600770 -0.488724 517 | vn -0.680293 0.609542 -0.407014 518 | vn -0.632633 -0.600770 -0.488724 519 | vn -0.966320 0.220146 -0.133272 520 | vn -0.629304 0.630126 -0.454883 521 | vn -0.278600 0.768482 0.576036 522 | vn -0.522022 0.660233 -0.539986 523 | vn -0.445081 0.846209 0.292973 524 | vn -0.278600 0.768482 0.576036 525 | vn -0.815497 -0.068593 -0.574683 526 | vn -0.692333 0.100372 -0.714563 527 | vn 0.359071 0.911982 -0.198387 528 | vn -0.445081 0.846209 0.292973 529 | vn 0.676712 0.582671 0.450061 530 | vn 0.676712 0.582671 0.450061 531 | vn -0.158053 -0.109341 -0.981358 532 | vn -0.538355 0.842546 0.017029 533 | vn -0.692333 0.100372 -0.714563 534 | vn -0.158053 -0.109341 -0.981358 535 | vn -0.538355 0.842546 0.017029 536 | vn 0.914936 0.238119 0.325871 537 | vn 0.043963 0.484597 -0.873632 538 | vn 0.950241 0.244049 0.193603 539 | vn 0.043963 0.484597 -0.873632 540 | vn 0.989528 0.013514 0.143704 541 | vn 0.851257 -0.143856 0.504646 542 | vn -0.601628 -0.419335 0.679855 543 | vn 0.915198 -0.307243 -0.260797 544 | vn 0.361454 -0.668932 -0.649524 545 | vn 0.180779 -0.979618 -0.087558 546 | vn -0.601628 -0.419335 0.679855 547 | vn 0.892781 -0.330870 -0.305723 548 | vn 0.123133 -0.827696 -0.547501 549 | vn 0.180779 -0.979618 -0.087558 550 | vn 0.107374 -0.734411 0.670158 551 | vn -0.213372 -0.898027 -0.384734 552 | vn 0.088016 -0.637485 0.765419 553 | vn -0.413703 -0.768003 -0.488897 554 | vn 0.066999 -0.528546 0.846257 555 | vn -0.667576 -0.706807 0.234023 556 | vn -0.667576 -0.706807 0.234023 557 | vn -0.667928 -0.614532 -0.419789 558 | vn -0.897707 -0.401147 -0.182218 559 | vn -0.978786 0.134943 0.154171 560 | vn -0.456177 0.735166 0.501431 561 | vn -0.613898 0.768156 -0.181841 562 | vn -0.578795 0.727819 -0.367799 563 | vn 0.158655 0.930075 0.331344 564 | vn -0.456177 0.735166 0.501431 565 | vn -0.522022 0.660233 -0.539986 566 | vn -0.445081 0.846209 0.292973 567 | vn 0.269924 0.960383 0.069319 568 | vn -0.692333 0.100372 -0.714563 569 | vn 0.359071 0.911982 -0.198387 570 | vn 0.518540 0.497248 0.695601 571 | vn -0.298318 0.533272 0.791598 572 | vn -0.298318 0.533272 0.791598 573 | vn -0.110192 0.621751 -0.775424 574 | vn -0.538355 0.842546 0.017029 575 | vn -0.692333 0.100372 -0.714563 576 | vn -0.538355 0.842546 0.017029 577 | vn -0.110192 0.621751 -0.775424 578 | vn 0.605321 -0.110791 0.788233 579 | vn 0.914936 0.238119 0.325871 580 | vn 0.903692 0.262234 0.338487 581 | vn 0.517158 0.819153 0.248065 582 | vn 0.605321 -0.110791 0.788233 583 | vn 0.901094 -0.027200 0.432770 584 | vn 0.517158 0.819153 0.248065 585 | vn 0.865190 -0.226603 0.447322 586 | vn -0.601628 -0.419335 0.679855 587 | vn -0.601628 -0.419335 0.679855 588 | vn 0.180779 -0.979618 -0.087558 589 | vn 0.849424 -0.312017 0.425587 590 | vn -0.485360 -0.651038 0.583588 591 | vn -0.485360 -0.651038 0.583588 592 | vn 0.673782 -0.706871 -0.215294 593 | vn 0.107374 -0.734411 0.670158 594 | vn 0.180779 -0.979618 -0.087558 595 | vn 0.668850 -0.736282 -0.102606 596 | vn 0.088016 -0.637485 0.765419 597 | vn 0.654830 -0.755689 0.011476 598 | vn -0.242136 -0.281271 0.928578 599 | vn -0.667576 -0.706807 0.234023 600 | vn 0.066999 -0.528546 0.846257 601 | vn -0.667576 -0.706807 0.234023 602 | vn -0.189681 -0.276080 0.942232 603 | vn -0.695361 -0.504343 -0.511967 604 | vn -0.136663 -0.270071 0.953092 605 | vn -0.186250 0.488926 0.852211 606 | vn -0.975665 -0.214091 0.047354 607 | vn -0.695361 -0.504343 -0.511967 608 | vn -0.955720 -0.046484 0.290582 609 | vn -0.186250 0.488926 0.852211 610 | vn -0.914489 0.038871 0.402739 611 | vn -0.508244 0.610475 0.607461 612 | vn -0.574990 0.592929 0.563756 613 | vn 0.158655 0.930075 0.331344 614 | vn 0.269924 0.960383 0.069319 615 | vn -0.695249 0.546738 0.466591 616 | vn 0.518540 0.497248 0.695601 617 | vn -0.617342 0.738010 -0.272452 618 | vn 0.415137 0.629868 0.656451 619 | vn -0.298318 0.533272 0.791598 620 | vn -0.617342 0.738010 -0.272452 621 | vn 0.345585 -0.110489 0.931860 622 | vn -0.298318 0.533272 0.791598 623 | vn -0.110192 0.621751 -0.775424 624 | vn 0.605321 -0.110791 0.788233 625 | vn 0.076629 0.874343 -0.479221 626 | vn -0.110192 0.621751 -0.775424 627 | vn 0.345585 -0.110489 0.931860 628 | vn 0.605321 -0.110791 0.788233 629 | vn 0.076629 0.874343 -0.479221 630 | vn 0.285851 0.899954 0.329200 631 | vn 0.886058 -0.221622 0.407167 632 | vn -0.540928 -0.118865 0.832627 633 | vn 0.285851 0.899954 0.329200 634 | vn 0.770768 -0.305288 0.559210 635 | vn -0.540928 -0.118865 0.832627 636 | vn 0.675704 -0.364637 0.640675 637 | vn -0.485360 -0.651038 0.583588 638 | vn 0.630219 -0.404687 0.662611 639 | vn -0.554404 -0.481533 0.678795 640 | vn -0.485360 -0.651038 0.583588 641 | vn 0.673782 -0.706871 -0.215294 642 | vn 0.585715 -0.800782 -0.125242 643 | vn -0.554404 -0.481533 0.678795 644 | vn 0.535499 -0.840893 -0.078360 645 | vn -0.242136 -0.281271 0.928578 646 | vn -0.765530 -0.399922 0.504010 647 | vn -0.189681 -0.276080 0.942232 648 | vn -0.597024 -0.586382 0.547466 649 | vn -0.136663 -0.270071 0.953092 650 | vn -0.389682 -0.734697 0.555309 651 | vn -0.186250 0.488926 0.852211 652 | vn 0.528928 -0.809686 0.254251 653 | vn -0.925165 0.040123 0.377440 654 | vn 0.193767 -0.049148 0.979816 655 | vn -0.186250 0.488926 0.852211 656 | vn 0.528928 -0.809686 0.254251 657 | vn -0.925165 0.040123 0.377440 658 | vn 0.193767 -0.049148 0.979816 659 | vn -0.533426 0.397139 0.746818 660 | vn -0.469685 0.499659 0.727831 661 | vn 0.271118 0.625596 0.731522 662 | vn -0.695249 0.546738 0.466591 663 | vn -0.617342 0.738010 -0.272452 664 | vn 0.786043 -0.012181 0.618052 665 | vn 0.299358 0.743709 0.597730 666 | vn 0.180193 -0.019383 0.983440 667 | vn -0.617342 0.738010 -0.272452 668 | vn 0.345585 -0.110489 0.931860 669 | vn 0.786043 -0.012181 0.618052 670 | vn -0.462360 0.292615 0.837018 671 | vn 0.345585 -0.110489 0.931860 672 | vn -0.345332 0.227215 0.910560 673 | vn 0.076629 0.874343 -0.479221 674 | vn 0.035503 0.920805 0.388405 675 | vn 0.180972 -0.976108 -0.120257 676 | vn -0.220230 0.156502 0.962812 677 | vn 0.076629 0.874343 -0.479221 678 | vn 0.035503 0.920805 0.388405 679 | vn 0.180972 -0.976108 -0.120257 680 | vn -0.540928 -0.118865 0.832627 681 | vn -0.094044 0.951058 0.294355 682 | vn -0.094044 0.951058 0.294355 683 | vn -0.561722 -0.044828 0.826111 684 | vn -0.540928 -0.118865 0.832627 685 | vn 0.501442 -0.352368 0.790185 686 | vn 0.568365 -0.380223 0.729652 687 | vn -0.344691 0.116833 0.931417 688 | vn 0.630219 -0.404687 0.662611 689 | vn -0.295252 0.188937 0.936552 690 | vn -0.554404 -0.481533 0.678795 691 | vn -0.554404 -0.481533 0.678795 692 | vn 0.400332 -0.901232 -0.165879 693 | vn -0.478478 0.100637 0.872314 694 | vn 0.748509 0.075999 0.658755 695 | vn -0.765530 -0.399922 0.504010 696 | vn 0.698609 0.118448 0.705631 697 | vn 0.400332 -0.901232 -0.165879 698 | vn 0.644176 0.160128 0.747928 699 | vn -0.143293 0.988139 0.055208 700 | vn -0.597024 -0.586382 0.547466 701 | vn -0.143293 0.988139 0.055208 702 | vn 0.390657 -0.106351 -0.914372 703 | vn -0.389682 -0.734697 0.555309 704 | vn 0.528928 -0.809686 0.254251 705 | vn 0.528928 -0.809686 0.254251 706 | vn 0.027747 -0.079668 0.996435 707 | vn 0.390657 -0.106351 -0.914372 708 | vn 0.027747 -0.079668 0.996435 709 | vn -0.517398 0.323423 0.792273 710 | vn -0.617253 -0.492467 -0.613575 711 | vn -0.617253 -0.492467 -0.613575 712 | vn 0.699307 0.236437 0.674587 713 | vn -0.286370 0.463209 0.838707 714 | vn 0.136066 0.672316 0.727652 715 | vn 0.699307 0.236437 0.674587 716 | vn 0.180193 -0.019383 0.983440 717 | vn -0.345332 0.227215 0.910560 718 | vn 0.180972 -0.976108 -0.120257 719 | vn 0.698609 0.118448 0.705631 720 | vn -0.143293 0.988139 0.055208 721 | vn 0.699307 0.236437 0.674587 722 | vn 0.180193 -0.019383 0.983440 723 | vn 0.390657 -0.106351 -0.914372 724 | vn -0.617253 -0.492467 -0.613575 725 | vn -0.094044 0.951058 0.294355 726 | vn -0.391533 0.111551 0.913378 727 | vn -0.139072 -0.107895 0.984387 728 | vn 0.786043 -0.012181 0.618052 729 | # num_vertex_normals: 358 730 | 731 | vt 0.995000 0.611553 732 | vt 0.995000 0.672910 733 | vt 0.971184 0.653180 734 | vt 0.995000 0.611553 735 | vt 0.971184 0.653180 736 | vt 0.951399 0.584498 737 | vt 0.995000 0.611553 738 | vt 0.951399 0.584498 739 | vt 0.928207 0.477923 740 | vt 0.995000 0.611553 741 | vt 0.928207 0.477923 742 | vt 0.944819 0.555036 743 | vt 0.995000 0.611553 744 | vt 0.944819 0.555036 745 | vt 0.931020 0.459106 746 | vt 0.995000 0.611553 747 | vt 0.931020 0.459106 748 | vt 0.953532 0.342592 749 | vt 0.995000 0.611553 750 | vt 0.953532 0.342592 751 | vt 0.973522 0.507170 752 | vt 0.995000 0.611553 753 | vt 0.973522 0.507170 754 | vt 0.995000 0.458197 755 | vt 0.005000 0.611553 756 | vt 0.005000 0.458197 757 | vt 0.028328 0.360500 758 | vt 0.005000 0.611553 759 | vt 0.028328 0.360500 760 | vt 0.044038 0.493167 761 | vt 0.005000 0.611553 762 | vt 0.044038 0.493167 763 | vt 0.067410 0.424608 764 | vt 0.005000 0.611553 765 | vt 0.067410 0.424608 766 | vt 0.068696 0.497581 767 | vt 0.005000 0.611553 768 | vt 0.068696 0.497581 769 | vt 0.064751 0.607256 770 | vt 0.005000 0.611553 771 | vt 0.064751 0.607256 772 | vt 0.049416 0.618929 773 | vt 0.005000 0.611553 774 | vt 0.049416 0.618929 775 | vt 0.025271 0.590761 776 | vt 0.005000 0.611553 777 | vt 0.025271 0.590761 778 | vt 0.005000 0.672910 779 | vt 0.995000 0.672910 780 | vt 0.995000 0.653395 781 | vt 0.948651 0.799556 782 | vt 0.971184 0.653180 783 | vt 0.971184 0.653180 784 | vt 0.948651 0.799556 785 | vt 0.914353 0.619158 786 | vt 0.951399 0.584498 787 | vt 0.951399 0.584498 788 | vt 0.914353 0.619158 789 | vt 0.883445 0.594751 790 | vt 0.928207 0.477923 791 | vt 0.928207 0.477923 792 | vt 0.883445 0.594751 793 | vt 0.845662 0.454298 794 | vt 0.944819 0.555036 795 | vt 0.944819 0.555036 796 | vt 0.845662 0.454298 797 | vt 0.860039 0.496136 798 | vt 0.931020 0.459106 799 | vt 0.931020 0.459106 800 | vt 0.860039 0.496136 801 | vt 0.886270 0.269192 802 | vt 0.953532 0.342592 803 | vt 0.953532 0.342592 804 | vt 0.886270 0.269192 805 | vt 0.944434 0.260567 806 | vt 0.973522 0.507170 807 | vt 0.973522 0.507170 808 | vt 0.944434 0.260567 809 | vt 0.995000 0.222135 810 | vt 0.995000 0.458197 811 | vt 0.005000 0.458197 812 | vt 0.005000 0.222135 813 | vt 0.086246 0.304275 814 | vt 0.028328 0.360500 815 | vt 0.028328 0.360500 816 | vt 0.086246 0.304275 817 | vt 0.088089 0.330607 818 | vt 0.044038 0.493167 819 | vt 0.044038 0.493167 820 | vt 0.088089 0.330607 821 | vt 0.116263 0.410053 822 | vt 0.067410 0.424608 823 | vt 0.067410 0.424608 824 | vt 0.116263 0.410053 825 | vt 0.147387 0.512752 826 | vt 0.068696 0.497581 827 | vt 0.068696 0.497581 828 | vt 0.147387 0.512752 829 | vt 0.104128 0.581989 830 | vt 0.064751 0.607256 831 | vt 0.064751 0.607256 832 | vt 0.104128 0.581989 833 | vt 0.099932 0.755205 834 | vt 0.049416 0.618929 835 | vt 0.049416 0.618929 836 | vt 0.099932 0.755205 837 | vt 0.088984 0.810334 838 | vt 0.025271 0.590761 839 | vt 0.025271 0.590761 840 | vt 0.088984 0.810334 841 | vt 0.005000 0.653395 842 | vt 0.005000 0.672910 843 | vt 0.995000 0.653395 844 | vt 0.995000 0.996619 845 | vt 0.810616 0.877484 846 | vt 0.948651 0.799556 847 | vt 0.948651 0.799556 848 | vt 0.810616 0.877484 849 | vt 0.790807 0.748233 850 | vt 0.914353 0.619158 851 | vt 0.914353 0.619158 852 | vt 0.790807 0.748233 853 | vt 0.784717 0.690701 854 | vt 0.883445 0.594751 855 | vt 0.883445 0.594751 856 | vt 0.784717 0.690701 857 | vt 0.811069 0.522635 858 | vt 0.845662 0.454298 859 | vt 0.845662 0.454298 860 | vt 0.811069 0.522635 861 | vt 0.822465 0.453046 862 | vt 0.860039 0.496136 863 | vt 0.860039 0.496136 864 | vt 0.822465 0.453046 865 | vt 0.865509 0.324388 866 | vt 0.886270 0.269192 867 | vt 0.886270 0.269192 868 | vt 0.865509 0.324388 869 | vt 0.901215 0.207799 870 | vt 0.944434 0.260567 871 | vt 0.944434 0.260567 872 | vt 0.901215 0.207799 873 | vt 0.995000 0.093696 874 | vt 0.995000 0.222135 875 | vt 0.005000 0.222135 876 | vt 0.005000 0.093696 877 | vt 0.116302 0.209710 878 | vt 0.086246 0.304275 879 | vt 0.086246 0.304275 880 | vt 0.116302 0.209710 881 | vt 0.221248 0.238966 882 | vt 0.088089 0.330607 883 | vt 0.088089 0.330607 884 | vt 0.221248 0.238966 885 | vt 0.192957 0.362634 886 | vt 0.116263 0.410053 887 | vt 0.116263 0.410053 888 | vt 0.192957 0.362634 889 | vt 0.177199 0.567927 890 | vt 0.147387 0.512752 891 | vt 0.147387 0.512752 892 | vt 0.177199 0.567927 893 | vt 0.167692 0.661869 894 | vt 0.104128 0.581989 895 | vt 0.104128 0.581989 896 | vt 0.167692 0.661869 897 | vt 0.134807 0.716383 898 | vt 0.099932 0.755205 899 | vt 0.099932 0.755205 900 | vt 0.134807 0.716383 901 | vt 0.121635 0.892235 902 | vt 0.088984 0.810334 903 | vt 0.088984 0.810334 904 | vt 0.121635 0.892235 905 | vt 0.005000 0.996619 906 | vt 0.005000 0.653395 907 | vt 0.995000 0.996619 908 | vt 0.500000 0.976939 909 | vt 0.814061 0.896197 910 | vt 0.810616 0.877484 911 | vt 0.810616 0.877484 912 | vt 0.814061 0.896197 913 | vt 0.728259 0.849892 914 | vt 0.790807 0.748233 915 | vt 0.790807 0.748233 916 | vt 0.728259 0.849892 917 | vt 0.741551 0.612234 918 | vt 0.784717 0.690701 919 | vt 0.784717 0.690701 920 | vt 0.741551 0.612234 921 | vt 0.713601 0.451924 922 | vt 0.811069 0.522635 923 | vt 0.811069 0.522635 924 | vt 0.713601 0.451924 925 | vt 0.709141 0.323432 926 | vt 0.822465 0.453046 927 | vt 0.822465 0.453046 928 | vt 0.709141 0.323432 929 | vt 0.785962 0.205074 930 | vt 0.865509 0.324388 931 | vt 0.865509 0.324388 932 | vt 0.785962 0.205074 933 | vt 0.759539 0.105468 934 | vt 0.901215 0.207799 935 | vt 0.901215 0.207799 936 | vt 0.759539 0.105468 937 | vt 0.500000 0.003381 938 | vt 0.995000 0.093696 939 | vt 0.005000 0.093696 940 | vt 0.500000 0.003381 941 | vt 0.267072 0.099714 942 | vt 0.116302 0.209710 943 | vt 0.116302 0.209710 944 | vt 0.267072 0.099714 945 | vt 0.301481 0.255711 946 | vt 0.221248 0.238966 947 | vt 0.221248 0.238966 948 | vt 0.301481 0.255711 949 | vt 0.252966 0.446810 950 | vt 0.192957 0.362634 951 | vt 0.192957 0.362634 952 | vt 0.252966 0.446810 953 | vt 0.270494 0.577745 954 | vt 0.177199 0.567927 955 | vt 0.177199 0.567927 956 | vt 0.270494 0.577745 957 | vt 0.292779 0.701451 958 | vt 0.167692 0.661869 959 | vt 0.167692 0.661869 960 | vt 0.292779 0.701451 961 | vt 0.227622 0.834918 962 | vt 0.134807 0.716383 963 | vt 0.134807 0.716383 964 | vt 0.227622 0.834918 965 | vt 0.203852 0.912742 966 | vt 0.121635 0.892235 967 | vt 0.121635 0.892235 968 | vt 0.203852 0.912742 969 | vt 0.500000 0.976939 970 | vt 0.005000 0.996619 971 | vt 0.500000 0.976939 972 | vt 0.500000 0.985446 973 | vt 0.590004 0.820192 974 | vt 0.814061 0.896197 975 | vt 0.814061 0.896197 976 | vt 0.590004 0.820192 977 | vt 0.651417 0.771838 978 | vt 0.728259 0.849892 979 | vt 0.728259 0.849892 980 | vt 0.651417 0.771838 981 | vt 0.705335 0.607015 982 | vt 0.741551 0.612234 983 | vt 0.741551 0.612234 984 | vt 0.705335 0.607015 985 | vt 0.677318 0.561139 986 | vt 0.713601 0.451924 987 | vt 0.713601 0.451924 988 | vt 0.677318 0.561139 989 | vt 0.684381 0.411623 990 | vt 0.709141 0.323432 991 | vt 0.709141 0.323432 992 | vt 0.684381 0.411623 993 | vt 0.691691 0.190087 994 | vt 0.785962 0.205074 995 | vt 0.785962 0.205074 996 | vt 0.691691 0.190087 997 | vt 0.580598 0.332306 998 | vt 0.759539 0.105468 999 | vt 0.759539 0.105468 1000 | vt 0.580598 0.332306 1001 | vt 0.500000 0.115967 1002 | vt 0.500000 0.003381 1003 | vt 0.500000 0.003381 1004 | vt 0.500000 0.115967 1005 | vt 0.402274 0.175216 1006 | vt 0.267072 0.099714 1007 | vt 0.267072 0.099714 1008 | vt 0.402274 0.175216 1009 | vt 0.341130 0.210744 1010 | vt 0.301481 0.255711 1011 | vt 0.301481 0.255711 1012 | vt 0.341130 0.210744 1013 | vt 0.342694 0.392027 1014 | vt 0.252966 0.446810 1015 | vt 0.252966 0.446810 1016 | vt 0.342694 0.392027 1017 | vt 0.300082 0.530661 1018 | vt 0.270494 0.577745 1019 | vt 0.270494 0.577745 1020 | vt 0.300082 0.530661 1021 | vt 0.323333 0.682318 1022 | vt 0.292779 0.701451 1023 | vt 0.292779 0.701451 1024 | vt 0.323333 0.682318 1025 | vt 0.338181 0.785138 1026 | vt 0.227622 0.834918 1027 | vt 0.227622 0.834918 1028 | vt 0.338181 0.785138 1029 | vt 0.406985 0.867118 1030 | vt 0.203852 0.912742 1031 | vt 0.203852 0.912742 1032 | vt 0.406985 0.867118 1033 | vt 0.500000 0.985446 1034 | vt 0.500000 0.976939 1035 | vt 0.500000 0.985446 1036 | vt 0.500000 0.825547 1037 | vt 0.560138 0.830431 1038 | vt 0.590004 0.820192 1039 | vt 0.590004 0.820192 1040 | vt 0.560138 0.830431 1041 | vt 0.621323 0.655869 1042 | vt 0.651417 0.771838 1043 | vt 0.651417 0.771838 1044 | vt 0.621323 0.655869 1045 | vt 0.645293 0.631546 1046 | vt 0.705335 0.607015 1047 | vt 0.705335 0.607015 1048 | vt 0.645293 0.631546 1049 | vt 0.604734 0.551332 1050 | vt 0.677318 0.561139 1051 | vt 0.677318 0.561139 1052 | vt 0.604734 0.551332 1053 | vt 0.605936 0.448569 1054 | vt 0.684381 0.411623 1055 | vt 0.684381 0.411623 1056 | vt 0.605936 0.448569 1057 | vt 0.582468 0.408662 1058 | vt 0.691691 0.190087 1059 | vt 0.691691 0.190087 1060 | vt 0.582468 0.408662 1061 | vt 0.545093 0.327105 1062 | vt 0.580598 0.332306 1063 | vt 0.580598 0.332306 1064 | vt 0.545093 0.327105 1065 | vt 0.500000 0.250898 1066 | vt 0.500000 0.115967 1067 | vt 0.500000 0.115967 1068 | vt 0.500000 0.250898 1069 | vt 0.431042 0.220626 1070 | vt 0.402274 0.175216 1071 | vt 0.402274 0.175216 1072 | vt 0.431042 0.220626 1073 | vt 0.395995 0.419148 1074 | vt 0.341130 0.210744 1075 | vt 0.341130 0.210744 1076 | vt 0.395995 0.419148 1077 | vt 0.357715 0.415046 1078 | vt 0.342694 0.392027 1079 | vt 0.342694 0.392027 1080 | vt 0.357715 0.415046 1081 | vt 0.390038 0.460288 1082 | vt 0.300082 0.530661 1083 | vt 0.300082 0.530661 1084 | vt 0.390038 0.460288 1085 | vt 0.396386 0.543558 1086 | vt 0.323333 0.682318 1087 | vt 0.323333 0.682318 1088 | vt 0.396386 0.543558 1089 | vt 0.402105 0.749790 1090 | vt 0.338181 0.785138 1091 | vt 0.338181 0.785138 1092 | vt 0.402105 0.749790 1093 | vt 0.451240 0.689612 1094 | vt 0.406985 0.867118 1095 | vt 0.406985 0.867118 1096 | vt 0.451240 0.689612 1097 | vt 0.500000 0.825547 1098 | vt 0.500000 0.985446 1099 | vt 0.500000 0.825547 1100 | vt 0.500000 0.766415 1101 | vt 0.532416 0.801039 1102 | vt 0.560138 0.830431 1103 | vt 0.560138 0.830431 1104 | vt 0.532416 0.801039 1105 | vt 0.548056 0.696938 1106 | vt 0.621323 0.655869 1107 | vt 0.621323 0.655869 1108 | vt 0.548056 0.696938 1109 | vt 0.556387 0.553672 1110 | vt 0.645293 0.631546 1111 | vt 0.645293 0.631546 1112 | vt 0.556387 0.553672 1113 | vt 0.579207 0.577270 1114 | vt 0.604734 0.551332 1115 | vt 0.604734 0.551332 1116 | vt 0.579207 0.577270 1117 | vt 0.548502 0.521550 1118 | vt 0.605936 0.448569 1119 | vt 0.605936 0.448569 1120 | vt 0.548502 0.521550 1121 | vt 0.540389 0.391155 1122 | vt 0.582468 0.408662 1123 | vt 0.582468 0.408662 1124 | vt 0.540389 0.391155 1125 | vt 0.522918 0.405385 1126 | vt 0.545093 0.327105 1127 | vt 0.545093 0.327105 1128 | vt 0.522918 0.405385 1129 | vt 0.500000 0.301175 1130 | vt 0.500000 0.250898 1131 | vt 0.500000 0.250898 1132 | vt 0.500000 0.301175 1133 | vt 0.478903 0.410548 1134 | vt 0.431042 0.220626 1135 | vt 0.431042 0.220626 1136 | vt 0.478903 0.410548 1137 | vt 0.462587 0.517340 1138 | vt 0.395995 0.419148 1139 | vt 0.395995 0.419148 1140 | vt 0.462587 0.517340 1141 | vt 0.428740 0.519232 1142 | vt 0.357715 0.415046 1143 | vt 0.357715 0.415046 1144 | vt 0.428740 0.519232 1145 | vt 0.427046 0.357367 1146 | vt 0.390038 0.460288 1147 | vt 0.390038 0.460288 1148 | vt 0.427046 0.357367 1149 | vt 0.439341 0.683901 1150 | vt 0.396386 0.543558 1151 | vt 0.396386 0.543558 1152 | vt 0.439341 0.683901 1153 | vt 0.463911 0.527444 1154 | vt 0.402105 0.749790 1155 | vt 0.402105 0.749790 1156 | vt 0.463911 0.527444 1157 | vt 0.474783 0.654470 1158 | vt 0.451240 0.689612 1159 | vt 0.451240 0.689612 1160 | vt 0.474783 0.654470 1161 | vt 0.500000 0.766415 1162 | vt 0.500000 0.825547 1163 | vt 0.500000 0.536362 1164 | vt 0.532416 0.801039 1165 | vt 0.500000 0.766415 1166 | vt 0.500000 0.536362 1167 | vt 0.548056 0.696938 1168 | vt 0.532416 0.801039 1169 | vt 0.500000 0.536362 1170 | vt 0.556387 0.553672 1171 | vt 0.548056 0.696938 1172 | vt 0.500000 0.536362 1173 | vt 0.579207 0.577270 1174 | vt 0.556387 0.553672 1175 | vt 0.500000 0.536362 1176 | vt 0.548502 0.521550 1177 | vt 0.579207 0.577270 1178 | vt 0.500000 0.536362 1179 | vt 0.540389 0.391155 1180 | vt 0.548502 0.521550 1181 | vt 0.500000 0.536362 1182 | vt 0.522918 0.405385 1183 | vt 0.540389 0.391155 1184 | vt 0.500000 0.536362 1185 | vt 0.500000 0.301175 1186 | vt 0.522918 0.405385 1187 | vt 0.500000 0.536362 1188 | vt 0.478903 0.410548 1189 | vt 0.500000 0.301175 1190 | vt 0.500000 0.536362 1191 | vt 0.462587 0.517340 1192 | vt 0.478903 0.410548 1193 | vt 0.500000 0.536362 1194 | vt 0.428740 0.519232 1195 | vt 0.462587 0.517340 1196 | vt 0.500000 0.536362 1197 | vt 0.427046 0.357367 1198 | vt 0.428740 0.519232 1199 | vt 0.500000 0.536362 1200 | vt 0.439341 0.683901 1201 | vt 0.427046 0.357367 1202 | vt 0.500000 0.536362 1203 | vt 0.463911 0.527444 1204 | vt 0.439341 0.683901 1205 | vt 0.500000 0.536362 1206 | vt 0.474783 0.654470 1207 | vt 0.463911 0.527444 1208 | vt 0.500000 0.536362 1209 | vt 0.500000 0.766415 1210 | vt 0.474783 0.654470 1211 | # num_uvs: 480 1212 | 1213 | g Sphere 1214 | 1215 | f 3/1/3 14/2/14 17/3/17 1216 | f 3/4/3 17/5/17 19/6/19 1217 | f 6/7/6 19/8/19 20/9/20 1218 | f 9/10/9 21/11/21 23/12/23 1219 | f 10/13/10 24/14/24 29/15/29 1220 | f 13/16/13 28/17/28 30/18/30 1221 | f 7/19/7 32/20/32 34/21/34 1222 | f 8/22/8 33/23/33 36/24/36 1223 | f 11/25/11 37/26/37 39/27/39 1224 | f 11/28/11 39/29/39 43/30/43 1225 | f 12/31/12 42/32/42 46/33/46 1226 | f 5/34/5 45/35/45 47/36/47 1227 | f 5/37/5 47/38/47 48/39/48 1228 | f 5/40/5 48/41/48 50/42/50 1229 | f 4/43/4 52/44/52 54/45/54 1230 | f 3/46/3 55/47/55 14/48/14 1231 | f 15/49/15 58/50/58 60/51/60 18/52/18 1232 | f 17/53/17 61/54/61 64/55/64 19/56/19 1233 | f 19/57/19 64/58/64 67/59/67 20/60/20 1234 | f 22/61/22 69/62/69 74/63/74 25/64/25 1235 | f 26/65/26 71/66/71 75/67/75 27/68/27 1236 | f 28/69/28 77/70/77 78/71/78 30/72/30 1237 | f 31/73/31 80/74/80 83/75/83 35/76/35 1238 | f 33/77/33 84/78/84 88/79/88 36/80/36 1239 | f 38/81/38 87/82/87 91/83/91 40/84/40 1240 | f 41/85/41 92/86/92 95/87/95 44/88/44 1241 | f 42/89/42 93/90/93 97/91/97 46/92/46 1242 | f 45/93/45 98/94/98 102/95/102 47/96/47 1243 | f 47/97/47 103/98/103 104/99/104 48/100/48 1244 | f 49/101/49 105/102/105 111/103/111 51/104/51 1245 | f 53/105/53 110/106/110 112/107/112 56/108/56 1246 | f 57/109/57 114/110/114 59/111/59 16/112/16 1247 | f 59/113/59 115/114/115 121/115/121 62/116/62 1248 | f 63/117/63 120/118/120 124/119/124 66/120/66 1249 | f 65/121/65 122/122/122 126/123/126 68/124/68 1250 | f 70/125/70 128/126/128 130/127/130 73/128/73 1251 | f 72/129/72 129/130/129 131/131/131 76/132/76 1252 | f 77/133/77 133/134/133 134/135/134 78/136/78 1253 | f 79/137/79 135/138/135 138/139/138 81/140/81 1254 | f 82/141/82 139/142/139 140/143/140 85/144/85 1255 | f 86/145/86 140/146/140 141/147/141 89/148/89 1256 | f 90/149/90 142/150/142 144/151/144 96/152/96 1257 | f 94/153/94 143/154/143 1/155/1 99/156/99 1258 | f 99/157/99 1/158/1 145/159/145 100/160/100 1259 | f 101/161/101 146/162/146 148/163/148 106/164/106 1260 | f 107/165/107 147/166/147 150/167/150 108/168/108 1261 | f 109/169/109 151/170/151 154/171/154 113/172/113 1262 | f 114/173/114 155/174/155 115/175/115 59/176/59 1263 | f 117/177/117 159/178/159 160/179/160 118/180/118 1264 | f 119/181/119 161/182/161 164/183/164 125/184/125 1265 | f 123/185/123 167/186/167 169/187/169 127/188/127 1266 | f 128/189/128 168/190/168 170/191/170 130/192/130 1267 | f 130/193/130 170/194/170 173/195/173 132/196/132 1268 | f 132/197/132 173/198/173 177/199/177 137/200/137 1269 | f 136/201/136 174/202/174 178/203/178 139/204/139 1270 | f 139/205/139 178/206/178 181/207/181 140/208/140 1271 | f 140/209/140 181/210/181 183/211/183 141/212/141 1272 | f 141/213/141 183/214/183 187/215/187 143/216/143 1273 | f 143/217/143 187/218/187 188/219/188 1/220/1 1274 | f 1/221/1 188/222/188 2/223/2 145/224/145 1275 | f 145/225/145 2/226/2 189/227/189 149/228/149 1276 | f 147/229/147 191/230/191 192/231/192 150/232/150 1277 | f 150/233/150 192/234/192 195/235/195 152/236/152 1278 | f 153/237/153 196/238/196 158/239/158 116/240/116 1279 | f 156/241/156 198/242/198 205/243/205 163/244/163 1280 | f 162/245/162 204/246/204 206/247/206 165/248/165 1281 | f 166/249/166 209/250/209 210/251/210 168/252/168 1282 | f 168/253/168 210/254/210 213/255/213 170/256/170 1283 | f 170/257/170 213/258/213 215/259/215 171/260/171 1284 | f 172/261/172 216/262/216 217/263/217 176/264/176 1285 | f 175/265/175 218/266/218 224/267/224 179/268/179 1286 | f 180/269/180 223/270/223 226/271/226 182/272/182 1287 | f 182/273/182 226/274/226 230/275/230 184/276/184 1288 | f 185/277/185 229/278/229 231/279/231 186/280/186 1289 | f 187/281/187 233/282/233 237/283/237 188/284/188 1290 | f 188/285/188 236/286/236 238/287/238 2/288/2 1291 | f 2/289/2 238/290/238 240/291/240 189/292/189 1292 | f 190/293/190 241/294/241 242/295/242 194/296/194 1293 | f 193/297/193 243/298/243 244/299/244 197/300/197 1294 | f 197/301/197 244/302/244 199/303/199 157/304/157 1295 | f 201/305/201 249/306/249 252/307/252 202/308/202 1296 | f 203/309/203 253/310/253 256/311/256 207/312/207 1297 | f 208/313/208 254/314/254 258/315/258 212/316/212 1298 | f 211/317/211 260/318/260 263/319/263 214/320/214 1299 | f 213/321/213 261/322/261 264/323/264 215/324/215 1300 | f 215/325/215 264/326/264 266/327/266 219/328/219 1301 | f 220/329/220 267/330/267 270/331/270 221/332/221 1302 | f 222/333/222 271/334/271 272/335/272 225/336/225 1303 | f 225/337/225 272/338/272 274/339/274 227/340/227 1304 | f 228/341/228 275/342/275 277/343/277 232/344/232 1305 | f 232/345/232 277/346/277 279/347/279 234/348/234 1306 | f 235/349/235 281/350/281 285/351/285 239/352/239 1307 | f 238/353/238 283/354/283 287/355/287 240/356/240 1308 | f 241/357/241 289/358/289 290/359/290 242/360/242 1309 | f 242/361/242 290/362/290 292/363/292 245/364/245 1310 | f 246/365/246 291/366/291 248/367/248 200/368/200 1311 | f 247/369/247 293/370/293 297/371/297 250/372/250 1312 | f 251/373/251 298/374/298 301/375/301 257/376/257 1313 | f 255/377/255 303/378/303 307/379/307 259/380/259 1314 | f 260/381/260 304/382/304 308/383/308 263/384/263 1315 | f 262/385/262 310/386/310 314/387/314 265/388/265 1316 | f 264/389/264 315/390/315 316/391/316 266/392/266 1317 | f 266/393/266 316/394/316 318/395/318 268/396/268 1318 | f 269/397/269 320/398/320 321/399/321 273/400/273 1319 | f 272/401/272 322/402/322 327/403/327 274/404/274 1320 | f 276/405/276 325/406/325 330/407/330 278/408/278 1321 | f 278/409/278 330/410/330 333/411/333 280/412/280 1322 | f 282/413/282 334/414/334 335/415/335 286/416/286 1323 | f 284/417/284 336/418/336 338/419/338 288/420/288 1324 | f 289/421/289 339/422/339 343/423/343 290/424/290 1325 | f 290/425/290 343/426/343 344/427/344 291/428/291 1326 | f 291/429/291 344/430/344 295/431/295 248/432/248 1327 | f 358/433/358 299/434/299 294/435/294 1328 | f 347/436/347 302/437/302 300/438/300 1329 | f 347/439/347 306/440/306 302/441/302 1330 | f 348/442/348 309/443/309 305/444/305 1331 | f 355/445/355 312/446/312 311/447/311 1332 | f 356/448/356 317/449/317 313/450/313 1333 | f 356/451/356 319/452/319 317/453/317 1334 | f 356/454/356 323/455/323 319/456/319 1335 | f 349/457/349 326/458/326 324/459/324 1336 | f 349/460/349 328/461/328 326/462/326 1337 | f 350/463/350 331/464/331 329/465/329 1338 | f 353/466/353 337/467/337 332/468/332 1339 | f 357/469/357 338/470/338 336/471/336 1340 | f 354/472/354 341/473/341 340/474/340 1341 | f 351/475/351 345/476/345 342/477/342 1342 | f 352/478/352 296/479/296 346/480/346 1343 | # num_faces: 128 1344 | 1345 | -------------------------------------------------------------------------------- /3d_bomber/scenes/rock.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=8 format=2] 2 | 3 | [ext_resource path="res://scripts/rock.gd" type="Script" id=1] 4 | [ext_resource path="res://scenes/rock.obj" type="ArrayMesh" id=2] 5 | [ext_resource path="res://materials/rock_spatmat.tres" type="Material" id=3] 6 | 7 | [sub_resource type="ArrayMesh" id=1] 8 | surfaces/0 = { 9 | "aabb": AABB( -4.09893, -3.4831, -5.08894, 8.19888, 9.0223, 9.45902 ), 10 | "array_data": PoolByteArray( 184, 195, 129, 189, 115, 58, 73, 64, 194, 81, 155, 192, 74, 217, 162, 0, 165, 28, 173, 127, 245, 59, 59, 53, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 60, 233, 147, 0, 148, 14, 193, 127, 245, 59, 55, 54, 29, 223, 33, 63, 70, 144, 35, 64, 147, 165, 137, 192, 38, 249, 136, 0, 136, 4, 218, 127, 196, 59, 140, 53, 119, 181, 140, 63, 191, 123, 223, 63, 175, 0, 137, 192, 25, 233, 135, 0, 132, 0, 229, 127, 156, 59, 165, 54, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 0, 193, 147, 0, 130, 5, 254, 127, 245, 59, 55, 54, 153, 208, 187, 63, 82, 250, 39, 63, 245, 209, 96, 192, 25, 200, 146, 0, 134, 6, 224, 127, 108, 59, 45, 56, 153, 208, 187, 63, 82, 250, 39, 63, 245, 209, 96, 192, 61, 92, 61, 0, 170, 253, 93, 129, 108, 59, 45, 56, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 61, 92, 61, 0, 170, 253, 93, 129, 245, 59, 55, 54, 85, 115, 198, 63, 44, 70, 182, 63, 151, 216, 162, 192, 61, 92, 61, 0, 170, 253, 93, 129, 142, 59, 30, 55, 85, 115, 198, 63, 44, 70, 182, 63, 151, 216, 162, 192, 194, 175, 182, 0, 162, 252, 84, 127, 142, 59, 30, 55, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 194, 175, 182, 0, 162, 252, 84, 127, 245, 59, 55, 54, 168, 216, 183, 63, 58, 69, 165, 62, 185, 68, 112, 192, 194, 175, 182, 0, 162, 252, 84, 127, 114, 59, 83, 56, 168, 216, 183, 63, 58, 69, 165, 62, 185, 68, 112, 192, 77, 25, 159, 0, 161, 234, 175, 127, 114, 59, 83, 56, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 79, 25, 160, 0, 164, 229, 173, 127, 245, 59, 55, 54, 218, 205, 130, 63, 45, 106, 180, 191, 138, 240, 142, 192, 77, 25, 159, 0, 167, 218, 175, 127, 160, 59, 66, 57, 218, 205, 130, 63, 45, 106, 180, 191, 138, 240, 142, 192, 99, 30, 73, 0, 191, 221, 102, 129, 160, 59, 66, 57, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 99, 30, 73, 0, 191, 221, 102, 129, 245, 59, 55, 54, 134, 22, 10, 63, 144, 51, 82, 63, 178, 97, 151, 192, 99, 30, 73, 0, 191, 221, 102, 129, 201, 59, 226, 55, 134, 22, 10, 63, 144, 51, 82, 63, 178, 97, 151, 192, 205, 231, 144, 0, 141, 11, 50, 127, 201, 59, 226, 55, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 191, 249, 148, 0, 148, 5, 65, 127, 245, 59, 55, 54, 155, 235, 136, 61, 38, 160, 106, 62, 61, 128, 137, 192, 205, 231, 144, 0, 144, 240, 55, 127, 245, 59, 85, 56, 155, 235, 136, 61, 38, 160, 106, 62, 61, 128, 137, 192, 29, 248, 133, 0, 136, 226, 229, 127, 30, 29, 85, 56, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 37, 246, 136, 0, 135, 250, 219, 127, 30, 29, 55, 54, 209, 255, 5, 191, 231, 7, 136, 191, 204, 127, 139, 192, 37, 246, 136, 0, 135, 248, 219, 127, 64, 39, 29, 57, 210, 54, 145, 191, 71, 162, 57, 63, 104, 127, 149, 192, 45, 245, 138, 0, 138, 2, 211, 127, 163, 41, 13, 56, 210, 54, 145, 191, 71, 162, 57, 63, 104, 127, 149, 192, 146, 61, 6, 0, 20, 23, 123, 127, 163, 41, 13, 56, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 154, 71, 17, 0, 33, 15, 121, 127, 30, 29, 55, 54, 218, 248, 189, 191, 92, 219, 7, 60, 190, 45, 114, 192, 146, 61, 6, 0, 20, 23, 123, 127, 80, 44, 154, 56, 218, 248, 189, 191, 92, 219, 7, 60, 190, 45, 114, 192, 241, 224, 135, 0, 132, 239, 19, 127, 80, 44, 154, 56, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 231, 226, 136, 0, 133, 251, 28, 127, 30, 29, 55, 54, 255, 173, 198, 191, 188, 240, 53, 63, 230, 99, 129, 192, 214, 244, 137, 0, 137, 254, 42, 127, 101, 44, 4, 56, 100, 232, 184, 191, 242, 31, 254, 63, 130, 128, 128, 192, 200, 240, 144, 0, 143, 7, 56, 127, 36, 44, 72, 54, 106, 59, 136, 191, 153, 94, 10, 64, 185, 155, 134, 192, 227, 193, 151, 0, 135, 253, 36, 127, 83, 42, 24, 54, 106, 59, 136, 191, 153, 94, 10, 64, 185, 155, 134, 192, 1, 134, 32, 0, 130, 0, 7, 129, 83, 42, 24, 54, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 1, 134, 32, 0, 130, 0, 7, 129, 30, 29, 55, 54, 89, 134, 36, 191, 211, 126, 255, 63, 22, 216, 158, 192, 1, 134, 32, 0, 130, 0, 7, 129, 120, 38, 140, 54, 89, 134, 36, 191, 211, 126, 255, 63, 22, 216, 158, 192, 86, 221, 170, 0, 175, 27, 163, 127, 120, 38, 140, 54, 207, 240, 178, 188, 176, 253, 0, 64, 40, 20, 142, 192, 60, 233, 147, 0, 154, 35, 191, 127, 30, 29, 55, 54, 184, 195, 129, 189, 115, 58, 73, 64, 194, 81, 155, 192, 74, 217, 162, 0, 167, 31, 172, 127, 30, 29, 59, 53, 61, 239, 198, 188, 124, 235, 26, 64, 128, 197, 104, 192, 24, 103, 68, 0, 247, 71, 152, 129, 245, 59, 139, 53, 184, 195, 129, 189, 115, 58, 73, 64, 194, 81, 155, 192, 24, 103, 68, 0, 247, 71, 152, 129, 245, 59, 59, 53, 102, 34, 140, 63, 107, 11, 161, 64, 125, 145, 126, 192, 24, 103, 68, 0, 247, 71, 152, 129, 150, 59, 106, 50, 102, 34, 140, 63, 107, 11, 161, 64, 125, 145, 126, 192, 24, 103, 68, 0, 169, 64, 190, 129, 150, 59, 106, 50, 184, 195, 129, 189, 115, 58, 73, 64, 194, 81, 155, 192, 24, 103, 68, 0, 169, 64, 190, 129, 245, 59, 59, 53, 29, 223, 33, 63, 70, 144, 35, 64, 147, 165, 137, 192, 24, 103, 68, 0, 169, 64, 190, 129, 196, 59, 140, 53, 102, 34, 140, 63, 107, 11, 161, 64, 125, 145, 126, 192, 24, 8, 132, 0, 133, 243, 231, 127, 150, 59, 106, 50, 205, 247, 2, 64, 32, 235, 14, 64, 168, 134, 128, 192, 39, 237, 137, 0, 136, 254, 217, 127, 80, 59, 23, 54, 48, 21, 43, 64, 255, 175, 239, 63, 33, 56, 96, 192, 51, 210, 150, 0, 143, 0, 200, 127, 17, 59, 123, 54, 48, 21, 43, 64, 255, 175, 239, 63, 33, 56, 96, 192, 167, 79, 41, 0, 181, 221, 161, 129, 17, 59, 123, 54, 153, 208, 187, 63, 82, 250, 39, 63, 245, 209, 96, 192, 167, 79, 41, 0, 181, 221, 161, 129, 108, 59, 45, 56, 114, 215, 50, 64, 240, 69, 189, 62, 5, 201, 20, 192, 167, 79, 41, 0, 181, 221, 161, 129, 195, 58, 93, 56, 114, 215, 50, 64, 240, 69, 189, 62, 5, 201, 20, 192, 167, 79, 41, 0, 174, 207, 173, 129, 195, 58, 93, 56, 153, 208, 187, 63, 82, 250, 39, 63, 245, 209, 96, 192, 167, 79, 41, 0, 174, 207, 173, 129, 108, 59, 45, 56, 85, 115, 198, 63, 44, 70, 182, 63, 151, 216, 162, 192, 167, 79, 41, 0, 174, 207, 173, 129, 142, 59, 30, 55, 114, 215, 50, 64, 240, 69, 189, 62, 5, 201, 20, 192, 59, 168, 187, 0, 190, 35, 154, 127, 195, 58, 93, 56, 85, 115, 198, 63, 44, 70, 182, 63, 151, 216, 162, 192, 59, 168, 187, 0, 190, 35, 154, 127, 142, 59, 30, 55, 25, 208, 42, 64, 10, 3, 57, 63, 181, 168, 45, 192, 59, 168, 187, 0, 190, 35, 154, 127, 225, 58, 7, 56, 25, 208, 42, 64, 10, 3, 57, 63, 181, 168, 45, 192, 59, 168, 187, 0, 171, 15, 164, 127, 225, 58, 7, 56, 85, 115, 198, 63, 44, 70, 182, 63, 151, 216, 162, 192, 59, 168, 187, 0, 171, 15, 164, 127, 142, 59, 30, 55, 168, 216, 183, 63, 58, 69, 165, 62, 185, 68, 112, 192, 59, 168, 187, 0, 171, 15, 164, 127, 114, 59, 83, 56, 25, 208, 42, 64, 10, 3, 57, 63, 181, 168, 45, 192, 70, 8, 151, 0, 151, 3, 186, 127, 225, 58, 7, 56, 220, 139, 4, 64, 230, 69, 241, 191, 210, 186, 54, 192, 70, 8, 151, 0, 151, 249, 186, 127, 23, 59, 216, 57, 220, 139, 4, 64, 230, 69, 241, 191, 210, 186, 54, 192, 145, 239, 58, 0, 202, 229, 145, 129, 23, 59, 216, 57, 218, 205, 130, 63, 45, 106, 180, 191, 138, 240, 142, 192, 145, 239, 58, 0, 35, 80, 91, 127, 160, 59, 66, 57, 139, 249, 135, 63, 249, 134, 22, 192, 217, 44, 108, 192, 145, 239, 58, 0, 200, 238, 144, 129, 142, 59, 234, 57, 134, 22, 10, 63, 144, 51, 82, 63, 178, 97, 151, 192, 145, 239, 58, 0, 40, 69, 98, 127, 201, 59, 226, 55, 139, 249, 135, 63, 249, 134, 22, 192, 217, 44, 108, 192, 221, 213, 143, 0, 148, 64, 10, 127, 142, 59, 234, 57, 99, 90, 95, 189, 158, 40, 215, 191, 178, 115, 41, 192, 221, 213, 143, 0, 144, 57, 14, 127, 245, 59, 57, 58, 99, 90, 95, 189, 158, 40, 215, 191, 178, 115, 41, 192, 106, 211, 205, 0, 32, 204, 110, 129, 30, 29, 57, 58, 155, 235, 136, 61, 38, 160, 106, 62, 61, 128, 137, 192, 106, 211, 205, 0, 32, 204, 110, 129, 30, 29, 85, 56, 173, 246, 137, 191, 51, 24, 44, 191, 213, 179, 22, 192, 106, 211, 205, 0, 32, 204, 110, 129, 133, 45, 144, 57, 173, 246, 137, 191, 51, 24, 44, 191, 213, 179, 22, 192, 106, 211, 205, 0, 67, 43, 98, 129, 133, 45, 144, 57, 155, 235, 136, 61, 38, 160, 106, 62, 61, 128, 137, 192, 106, 211, 205, 0, 67, 43, 98, 129, 30, 29, 85, 56, 209, 255, 5, 191, 231, 7, 136, 191, 204, 127, 139, 192, 106, 211, 205, 0, 67, 43, 98, 129, 64, 39, 29, 57, 173, 246, 137, 191, 51, 24, 44, 191, 213, 179, 22, 192, 138, 216, 235, 0, 40, 188, 158, 129, 133, 45, 144, 57, 209, 255, 5, 191, 231, 7, 136, 191, 204, 127, 139, 192, 138, 216, 235, 0, 219, 55, 107, 127, 64, 39, 29, 57, 72, 64, 0, 192, 157, 190, 198, 191, 32, 153, 119, 192, 138, 216, 235, 0, 41, 182, 163, 129, 163, 45, 90, 57, 210, 54, 145, 191, 71, 162, 57, 63, 104, 127, 149, 192, 138, 216, 235, 0, 218, 57, 106, 127, 163, 41, 13, 56, 72, 64, 0, 192, 157, 190, 198, 191, 32, 153, 119, 192, 139, 48, 251, 0, 234, 216, 118, 127, 163, 45, 90, 57, 210, 54, 145, 191, 71, 162, 57, 63, 104, 127, 149, 192, 146, 61, 6, 0, 230, 197, 108, 127, 163, 41, 13, 56, 189, 180, 43, 192, 238, 79, 147, 190, 215, 250, 93, 192, 139, 48, 251, 0, 234, 216, 118, 127, 112, 47, 184, 56, 189, 180, 43, 192, 238, 79, 147, 190, 215, 250, 93, 192, 139, 48, 251, 0, 208, 145, 36, 129, 112, 47, 184, 56, 210, 54, 145, 191, 71, 162, 57, 63, 104, 127, 149, 192, 146, 61, 6, 0, 196, 146, 14, 129, 163, 41, 13, 56, 218, 248, 189, 191, 92, 219, 7, 60, 190, 45, 114, 192, 146, 61, 6, 0, 196, 146, 14, 129, 80, 44, 154, 56, 189, 180, 43, 192, 238, 79, 147, 190, 215, 250, 93, 192, 233, 223, 136, 0, 134, 241, 28, 127, 112, 47, 184, 56, 132, 126, 56, 192, 160, 68, 110, 63, 150, 173, 43, 192, 233, 223, 136, 0, 134, 239, 29, 127, 183, 48, 203, 55, 132, 126, 56, 192, 160, 68, 110, 63, 150, 173, 43, 192, 166, 10, 168, 0, 168, 0, 90, 127, 183, 48, 203, 55, 222, 13, 42, 192, 194, 181, 226, 63, 166, 126, 129, 192, 166, 10, 168, 0, 168, 2, 90, 127, 170, 46, 176, 54, 222, 13, 42, 192, 194, 181, 226, 63, 166, 126, 129, 192, 19, 146, 197, 0, 131, 240, 247, 127, 170, 46, 176, 54, 100, 232, 184, 191, 242, 31, 254, 63, 130, 128, 128, 192, 19, 146, 197, 0, 138, 220, 29, 127, 36, 44, 72, 54, 63, 118, 0, 192, 231, 92, 123, 64, 206, 82, 87, 192, 19, 146, 197, 0, 132, 231, 7, 127, 101, 46, 213, 51, 106, 59, 136, 191, 153, 94, 10, 64, 185, 155, 134, 192, 19, 146, 197, 0, 149, 211, 49, 127, 83, 42, 24, 54, 63, 118, 0, 192, 231, 92, 123, 64, 206, 82, 87, 192, 149, 228, 196, 0, 232, 123, 242, 129, 101, 46, 213, 51, 106, 59, 136, 191, 153, 94, 10, 64, 185, 155, 134, 192, 149, 228, 196, 0, 190, 29, 104, 127, 83, 42, 24, 54, 138, 9, 135, 191, 216, 247, 94, 64, 110, 151, 16, 192, 149, 228, 196, 0, 228, 123, 249, 129, 177, 45, 17, 50, 89, 134, 36, 191, 211, 126, 255, 63, 22, 216, 158, 192, 149, 228, 196, 0, 192, 10, 109, 127, 120, 38, 140, 54, 138, 9, 135, 191, 216, 247, 94, 64, 110, 151, 16, 192, 149, 24, 193, 0, 189, 197, 89, 127, 177, 45, 17, 50, 89, 134, 36, 191, 211, 126, 255, 63, 22, 216, 158, 192, 154, 56, 207, 0, 231, 151, 190, 127, 120, 38, 140, 54, 61, 239, 198, 188, 124, 235, 26, 64, 128, 197, 104, 192, 148, 29, 197, 0, 255, 142, 202, 127, 30, 29, 139, 53, 61, 239, 198, 188, 124, 235, 26, 64, 128, 197, 104, 192, 148, 29, 197, 0, 66, 38, 155, 129, 30, 29, 139, 53, 89, 134, 36, 191, 211, 126, 255, 63, 22, 216, 158, 192, 154, 56, 207, 0, 62, 17, 147, 129, 120, 38, 140, 54, 184, 195, 129, 189, 115, 58, 73, 64, 194, 81, 155, 192, 154, 56, 207, 0, 62, 17, 147, 129, 30, 29, 59, 53, 92, 46, 73, 60, 35, 65, 177, 64, 158, 4, 157, 191, 147, 15, 193, 0, 36, 116, 221, 129, 245, 59, 236, 26, 61, 239, 198, 188, 124, 235, 26, 64, 128, 197, 104, 192, 148, 29, 197, 0, 59, 94, 196, 129, 245, 59, 139, 53, 212, 55, 181, 63, 59, 30, 107, 64, 61, 46, 135, 191, 147, 39, 206, 0, 62, 49, 158, 129, 124, 58, 215, 47, 212, 55, 181, 63, 59, 30, 107, 64, 61, 46, 135, 191, 147, 39, 206, 0, 63, 72, 174, 129, 124, 58, 215, 47, 61, 239, 198, 188, 124, 235, 26, 64, 128, 197, 104, 192, 148, 29, 197, 0, 63, 77, 179, 129, 245, 59, 139, 53, 102, 34, 140, 63, 107, 11, 161, 64, 125, 145, 126, 192, 147, 39, 206, 0, 63, 72, 174, 129, 150, 59, 106, 50, 212, 55, 181, 63, 59, 30, 107, 64, 61, 46, 135, 191, 120, 40, 4, 0, 238, 66, 150, 127, 124, 58, 215, 47, 102, 34, 140, 63, 107, 11, 161, 64, 125, 145, 126, 192, 120, 40, 4, 0, 241, 57, 144, 127, 150, 59, 106, 50, 254, 200, 42, 64, 204, 81, 77, 64, 87, 150, 144, 191, 120, 40, 4, 0, 240, 61, 147, 127, 83, 58, 7, 52, 205, 247, 2, 64, 32, 235, 14, 64, 168, 134, 128, 192, 120, 40, 4, 0, 242, 54, 143, 127, 80, 59, 23, 54, 254, 200, 42, 64, 204, 81, 77, 64, 87, 150, 144, 191, 82, 84, 211, 0, 190, 6, 149, 127, 83, 58, 7, 52, 205, 247, 2, 64, 32, 235, 14, 64, 168, 134, 128, 192, 82, 84, 211, 0, 187, 11, 151, 127, 80, 59, 23, 54, 0, 202, 93, 64, 61, 11, 63, 64, 13, 119, 155, 191, 82, 84, 211, 0, 189, 7, 149, 127, 71, 58, 242, 52, 48, 21, 43, 64, 255, 175, 239, 63, 33, 56, 96, 192, 82, 84, 211, 0, 186, 12, 152, 127, 17, 59, 123, 54, 0, 202, 93, 64, 61, 11, 63, 64, 13, 119, 155, 191, 123, 7, 231, 0, 229, 2, 132, 127, 71, 58, 242, 52, 48, 21, 43, 64, 255, 175, 239, 63, 33, 56, 96, 192, 120, 248, 217, 0, 217, 1, 136, 127, 17, 59, 123, 54, 235, 226, 113, 64, 129, 61, 133, 63, 241, 9, 0, 192, 123, 249, 229, 0, 229, 3, 133, 127, 125, 58, 163, 55, 114, 215, 50, 64, 240, 69, 189, 62, 5, 201, 20, 192, 120, 248, 217, 0, 217, 1, 136, 127, 195, 58, 93, 56, 235, 226, 113, 64, 129, 61, 133, 63, 241, 9, 0, 192, 186, 20, 103, 0, 153, 10, 184, 129, 125, 58, 163, 55, 114, 215, 50, 64, 240, 69, 189, 62, 5, 201, 20, 192, 186, 20, 103, 0, 153, 10, 184, 129, 195, 58, 93, 56, 144, 39, 95, 64, 86, 73, 141, 62, 253, 187, 11, 192, 186, 20, 103, 0, 153, 10, 184, 129, 148, 58, 96, 56, 144, 39, 95, 64, 86, 73, 141, 62, 253, 187, 11, 192, 186, 20, 103, 0, 153, 11, 184, 129, 148, 58, 96, 56, 114, 215, 50, 64, 240, 69, 189, 62, 5, 201, 20, 192, 186, 20, 103, 0, 153, 11, 184, 129, 195, 58, 93, 56, 25, 208, 42, 64, 10, 3, 57, 63, 181, 168, 45, 192, 186, 20, 103, 0, 153, 11, 184, 129, 225, 58, 7, 56, 144, 39, 95, 64, 86, 73, 141, 62, 253, 187, 11, 192, 63, 248, 147, 0, 147, 1, 193, 127, 148, 58, 96, 56, 53, 150, 43, 64, 92, 16, 173, 191, 215, 38, 55, 192, 63, 248, 147, 0, 149, 20, 192, 127, 236, 58, 103, 57, 53, 150, 43, 64, 92, 16, 173, 191, 215, 38, 55, 192, 177, 90, 40, 0, 184, 240, 154, 129, 236, 58, 103, 57, 220, 139, 4, 64, 230, 69, 241, 191, 210, 186, 54, 192, 177, 90, 40, 0, 180, 234, 158, 129, 23, 59, 216, 57, 222, 37, 187, 63, 169, 39, 24, 192, 1, 81, 29, 192, 177, 90, 40, 0, 173, 224, 167, 129, 53, 59, 86, 58, 139, 249, 135, 63, 249, 134, 22, 192, 217, 44, 108, 192, 177, 90, 40, 0, 171, 221, 169, 129, 142, 59, 234, 57, 222, 37, 187, 63, 169, 39, 24, 192, 1, 81, 29, 192, 248, 138, 212, 0, 152, 32, 192, 127, 53, 59, 86, 58, 139, 249, 135, 63, 249, 134, 22, 192, 217, 44, 108, 192, 203, 142, 14, 0, 144, 49, 225, 127, 142, 59, 234, 57, 48, 32, 172, 188, 224, 245, 37, 192, 192, 53, 198, 191, 205, 147, 219, 0, 151, 61, 220, 127, 245, 59, 64, 59, 99, 90, 95, 189, 158, 40, 215, 191, 178, 115, 41, 192, 203, 142, 14, 0, 160, 53, 62, 127, 245, 59, 57, 58, 48, 32, 172, 188, 224, 245, 37, 192, 192, 53, 198, 191, 205, 147, 219, 0, 170, 8, 93, 127, 30, 29, 64, 59, 99, 90, 95, 189, 158, 40, 215, 191, 178, 115, 41, 192, 171, 185, 197, 0, 167, 37, 82, 127, 30, 29, 57, 58, 46, 70, 184, 191, 104, 173, 239, 191, 32, 82, 6, 192, 192, 166, 194, 0, 169, 255, 92, 127, 113, 47, 82, 58, 173, 246, 137, 191, 51, 24, 44, 191, 213, 179, 22, 192, 171, 185, 197, 0, 167, 37, 82, 127, 133, 45, 144, 57, 46, 70, 184, 191, 104, 173, 239, 191, 32, 82, 6, 192, 111, 216, 212, 0, 252, 157, 78, 129, 113, 47, 82, 58, 173, 246, 137, 191, 51, 24, 44, 191, 213, 179, 22, 192, 111, 216, 212, 0, 200, 153, 208, 127, 133, 45, 144, 57, 190, 206, 40, 192, 221, 114, 252, 191, 68, 132, 112, 191, 111, 216, 212, 0, 207, 141, 236, 127, 20, 51, 22, 58, 72, 64, 0, 192, 157, 190, 198, 191, 32, 153, 119, 192, 111, 216, 212, 0, 197, 166, 189, 127, 163, 45, 90, 57, 190, 206, 40, 192, 221, 114, 252, 191, 68, 132, 112, 191, 163, 182, 214, 0, 235, 217, 118, 127, 20, 51, 22, 58, 72, 64, 0, 192, 157, 190, 198, 191, 32, 153, 119, 192, 144, 205, 226, 0, 214, 23, 117, 127, 163, 45, 90, 57, 207, 39, 95, 192, 145, 11, 101, 191, 10, 125, 224, 191, 138, 221, 227, 0, 223, 12, 121, 127, 44, 50, 25, 57, 189, 180, 43, 192, 238, 79, 147, 190, 215, 250, 93, 192, 138, 237, 214, 0, 212, 12, 118, 127, 112, 47, 184, 56, 235, 95, 112, 192, 70, 4, 204, 63, 39, 73, 23, 192, 133, 8, 229, 0, 229, 0, 124, 127, 171, 49, 233, 54, 132, 126, 56, 192, 160, 68, 110, 63, 150, 173, 43, 192, 141, 12, 206, 0, 206, 192, 97, 127, 183, 48, 203, 55, 235, 95, 112, 192, 70, 4, 204, 63, 39, 73, 23, 192, 176, 180, 194, 0, 163, 33, 79, 127, 171, 49, 233, 54, 132, 126, 56, 192, 160, 68, 110, 63, 150, 173, 43, 192, 176, 180, 194, 0, 183, 250, 103, 127, 183, 48, 203, 55, 119, 178, 94, 192, 0, 241, 46, 64, 183, 20, 31, 192, 176, 180, 194, 0, 179, 0, 100, 127, 93, 49, 104, 53, 222, 13, 42, 192, 194, 181, 226, 63, 166, 126, 129, 192, 176, 180, 194, 0, 194, 234, 108, 127, 170, 46, 176, 54, 119, 178, 94, 192, 0, 241, 46, 64, 183, 20, 31, 192, 170, 77, 205, 0, 193, 2, 110, 127, 93, 49, 104, 53, 222, 13, 42, 192, 194, 181, 226, 63, 166, 126, 129, 192, 169, 51, 180, 0, 172, 252, 94, 127, 170, 46, 176, 54, 241, 221, 42, 192, 251, 55, 86, 64, 140, 63, 54, 192, 177, 80, 199, 0, 180, 254, 101, 127, 80, 48, 137, 52, 63, 118, 0, 192, 231, 92, 123, 64, 206, 82, 87, 192, 169, 51, 180, 0, 170, 244, 91, 127, 101, 46, 213, 51, 241, 221, 42, 192, 251, 55, 86, 64, 140, 63, 54, 192, 221, 97, 73, 0, 211, 175, 86, 127, 80, 48, 137, 52, 63, 118, 0, 192, 231, 92, 123, 64, 206, 82, 87, 192, 221, 97, 73, 0, 187, 178, 71, 127, 101, 46, 213, 51, 126, 176, 184, 191, 109, 39, 161, 64, 129, 127, 250, 191, 221, 97, 73, 0, 168, 32, 171, 129, 200, 47, 229, 46, 138, 9, 135, 191, 216, 247, 94, 64, 110, 151, 16, 192, 221, 97, 73, 0, 197, 52, 158, 129, 177, 45, 17, 50, 126, 176, 184, 191, 109, 39, 161, 64, 129, 127, 250, 191, 153, 248, 185, 0, 218, 113, 40, 127, 200, 47, 229, 46, 92, 46, 73, 60, 35, 65, 177, 64, 158, 4, 157, 191, 147, 15, 193, 0, 194, 10, 110, 127, 30, 29, 236, 26, 63, 36, 143, 61, 84, 126, 136, 64, 36, 240, 208, 62, 85, 73, 57, 0, 16, 64, 148, 127, 0, 56, 231, 37, 92, 46, 73, 60, 35, 65, 177, 64, 158, 4, 157, 191, 85, 73, 57, 0, 14, 66, 149, 127, 245, 59, 236, 26, 16, 253, 193, 63, 118, 24, 139, 64, 179, 7, 140, 191, 85, 73, 57, 0, 217, 215, 113, 129, 131, 58, 164, 46, 212, 55, 181, 63, 59, 30, 107, 64, 61, 46, 135, 191, 85, 73, 57, 0, 226, 205, 112, 129, 124, 58, 215, 47, 16, 253, 193, 63, 118, 24, 139, 64, 179, 7, 140, 191, 236, 244, 132, 0, 191, 150, 22, 127, 131, 58, 164, 46, 212, 55, 181, 63, 59, 30, 107, 64, 61, 46, 135, 191, 236, 244, 132, 0, 188, 152, 22, 127, 124, 58, 215, 47, 118, 166, 55, 64, 29, 230, 164, 64, 184, 49, 136, 188, 236, 244, 132, 0, 188, 152, 22, 127, 211, 57, 205, 48, 254, 200, 42, 64, 204, 81, 77, 64, 87, 150, 144, 191, 236, 244, 132, 0, 186, 153, 22, 127, 83, 58, 7, 52, 118, 166, 55, 64, 29, 230, 164, 64, 184, 49, 136, 188, 5, 61, 146, 0, 192, 162, 201, 127, 211, 57, 205, 48, 254, 200, 42, 64, 204, 81, 77, 64, 87, 150, 144, 191, 5, 61, 146, 0, 200, 158, 199, 127, 83, 58, 7, 52, 28, 33, 113, 64, 59, 94, 5, 64, 93, 205, 110, 190, 5, 61, 146, 0, 236, 147, 195, 127, 238, 57, 52, 54, 0, 202, 93, 64, 61, 11, 63, 64, 13, 119, 155, 191, 5, 61, 146, 0, 126, 251, 3, 129, 71, 58, 242, 52, 28, 33, 113, 64, 59, 94, 5, 64, 93, 205, 110, 190, 120, 30, 24, 0, 24, 4, 132, 127, 238, 57, 52, 54, 214, 50, 131, 64, 240, 170, 39, 62, 6, 76, 1, 63, 125, 1, 17, 0, 18, 248, 131, 127, 181, 57, 98, 56, 87, 143, 114, 64, 195, 153, 192, 191, 23, 34, 18, 63, 116, 217, 223, 0, 223, 4, 134, 127, 172, 57, 105, 57, 144, 39, 95, 64, 86, 73, 141, 62, 253, 187, 11, 192, 116, 217, 223, 0, 224, 6, 134, 127, 148, 58, 96, 56, 175, 0, 53, 64, 120, 227, 61, 192, 90, 126, 140, 191, 113, 214, 218, 0, 217, 5, 136, 127, 73, 58, 92, 58, 53, 150, 43, 64, 92, 16, 173, 191, 215, 38, 55, 192, 113, 214, 218, 0, 217, 3, 136, 127, 236, 58, 103, 57, 175, 0, 53, 64, 120, 227, 61, 192, 90, 126, 140, 191, 45, 172, 174, 0, 172, 38, 170, 127, 73, 58, 92, 58, 53, 150, 43, 64, 92, 16, 173, 191, 215, 38, 55, 192, 45, 172, 174, 0, 167, 33, 173, 127, 236, 58, 103, 57, 59, 174, 198, 63, 74, 146, 80, 192, 130, 182, 248, 190, 15, 151, 187, 0, 166, 39, 177, 127, 19, 58, 40, 59, 222, 37, 187, 63, 169, 39, 24, 192, 1, 81, 29, 192, 248, 138, 212, 0, 183, 41, 162, 127, 53, 59, 86, 58, 59, 174, 198, 63, 74, 146, 80, 192, 130, 182, 248, 190, 15, 151, 187, 0, 82, 212, 85, 129, 19, 58, 40, 59, 222, 37, 187, 63, 169, 39, 24, 192, 1, 81, 29, 192, 248, 138, 212, 0, 84, 217, 86, 129, 53, 59, 86, 58, 128, 199, 79, 60, 55, 24, 75, 192, 126, 232, 252, 189, 229, 142, 208, 0, 82, 203, 80, 129, 0, 56, 249, 59, 128, 199, 79, 60, 55, 24, 75, 192, 126, 232, 252, 189, 229, 142, 208, 0, 153, 48, 201, 127, 0, 56, 249, 59, 128, 199, 79, 60, 55, 24, 75, 192, 126, 232, 252, 189, 229, 142, 208, 0, 175, 235, 95, 127, 0, 56, 249, 59, 254, 161, 197, 191, 23, 235, 94, 192, 70, 74, 141, 190, 205, 159, 194, 0, 192, 225, 104, 127, 69, 52, 51, 59, 171, 136, 56, 192, 136, 8, 255, 191, 41, 229, 0, 63, 172, 178, 203, 0, 231, 207, 113, 127, 210, 52, 244, 57, 7, 65, 114, 192, 232, 243, 23, 62, 246, 205, 190, 190, 142, 206, 233, 0, 236, 246, 124, 127, 12, 52, 108, 56, 109, 42, 131, 192, 39, 243, 212, 63, 138, 168, 169, 61, 130, 253, 8, 0, 8, 255, 126, 127, 83, 52, 193, 54, 2, 175, 114, 192, 99, 0, 80, 64, 32, 69, 24, 63, 132, 17, 19, 0, 19, 252, 125, 127, 175, 52, 198, 52, 119, 178, 94, 192, 0, 241, 46, 64, 183, 20, 31, 192, 134, 27, 240, 0, 239, 0, 125, 127, 93, 49, 104, 53, 2, 175, 114, 192, 99, 0, 80, 64, 32, 69, 24, 63, 179, 97, 233, 0, 231, 8, 124, 127, 175, 52, 198, 52, 185, 219, 56, 192, 164, 131, 153, 64, 55, 106, 92, 191, 183, 92, 210, 0, 209, 20, 115, 127, 72, 51, 72, 49, 52, 160, 195, 191, 98, 15, 147, 64, 66, 192, 108, 191, 190, 83, 188, 0, 175, 14, 96, 127, 133, 50, 149, 45, 126, 176, 184, 191, 109, 39, 161, 64, 129, 127, 250, 191, 190, 83, 188, 0, 157, 242, 78, 127, 200, 47, 229, 46, 52, 160, 195, 191, 98, 15, 147, 64, 66, 192, 108, 191, 200, 107, 37, 0, 71, 65, 175, 129, 133, 50, 149, 45, 126, 176, 184, 191, 109, 39, 161, 64, 129, 127, 250, 191, 200, 107, 37, 0, 71, 65, 175, 129, 200, 47, 229, 46, 63, 36, 143, 61, 84, 126, 136, 64, 36, 240, 208, 62, 200, 107, 37, 0, 71, 65, 175, 129, 0, 56, 231, 37, 63, 36, 143, 61, 84, 126, 136, 64, 36, 240, 208, 62, 200, 107, 37, 0, 0, 215, 120, 127, 0, 56, 231, 37, 126, 176, 184, 191, 109, 39, 161, 64, 129, 127, 250, 191, 200, 107, 37, 0, 0, 215, 120, 127, 200, 47, 229, 46, 92, 46, 73, 60, 35, 65, 177, 64, 158, 4, 157, 191, 200, 107, 37, 0, 0, 215, 120, 127, 30, 29, 236, 26, 187, 2, 145, 187, 9, 24, 170, 64, 66, 138, 16, 63, 169, 12, 166, 0, 0, 125, 17, 129, 0, 56, 115, 35, 63, 36, 143, 61, 84, 126, 136, 64, 36, 240, 208, 62, 169, 12, 166, 0, 0, 125, 17, 129, 0, 56, 231, 37, 237, 81, 190, 63, 215, 211, 133, 64, 17, 38, 238, 63, 169, 12, 166, 0, 0, 125, 17, 129, 184, 56, 192, 49, 237, 81, 190, 63, 215, 211, 133, 64, 17, 38, 238, 63, 169, 12, 166, 0, 91, 0, 168, 127, 184, 56, 192, 49, 63, 36, 143, 61, 84, 126, 136, 64, 36, 240, 208, 62, 169, 12, 166, 0, 91, 0, 168, 127, 0, 56, 231, 37, 16, 253, 193, 63, 118, 24, 139, 64, 179, 7, 140, 191, 169, 12, 166, 0, 91, 0, 168, 127, 131, 58, 164, 46, 237, 81, 190, 63, 215, 211, 133, 64, 17, 38, 238, 63, 188, 107, 2, 0, 42, 29, 141, 127, 184, 56, 192, 49, 16, 253, 193, 63, 118, 24, 139, 64, 179, 7, 140, 191, 188, 107, 2, 0, 42, 29, 141, 127, 131, 58, 164, 46, 247, 126, 41, 64, 194, 177, 124, 64, 113, 215, 191, 63, 188, 107, 2, 0, 42, 29, 141, 127, 54, 57, 77, 51, 247, 126, 41, 64, 194, 177, 124, 64, 113, 215, 191, 63, 188, 107, 2, 0, 150, 188, 247, 129, 54, 57, 77, 51, 16, 253, 193, 63, 118, 24, 139, 64, 179, 7, 140, 191, 188, 107, 2, 0, 150, 188, 247, 129, 131, 58, 164, 46, 118, 166, 55, 64, 29, 230, 164, 64, 184, 49, 136, 188, 188, 107, 2, 0, 150, 188, 247, 129, 211, 57, 205, 48, 247, 126, 41, 64, 194, 177, 124, 64, 113, 215, 191, 63, 116, 30, 41, 0, 38, 17, 137, 127, 54, 57, 77, 51, 118, 166, 55, 64, 29, 230, 164, 64, 184, 49, 136, 188, 116, 30, 41, 0, 39, 13, 136, 127, 211, 57, 205, 48, 106, 9, 96, 64, 46, 255, 249, 63, 70, 218, 24, 63, 114, 33, 42, 0, 42, 7, 137, 127, 164, 57, 73, 54, 144, 96, 113, 64, 25, 36, 197, 63, 185, 232, 182, 63, 114, 253, 54, 0, 54, 254, 142, 127, 107, 57, 5, 55, 163, 53, 95, 64, 150, 233, 127, 190, 46, 128, 145, 63, 109, 228, 56, 0, 58, 255, 144, 127, 121, 57, 180, 56, 87, 143, 114, 64, 195, 153, 192, 191, 23, 34, 18, 63, 108, 239, 64, 0, 61, 238, 147, 127, 172, 57, 105, 57, 163, 53, 95, 64, 150, 233, 127, 190, 46, 128, 145, 63, 180, 203, 86, 0, 78, 157, 7, 127, 121, 57, 180, 56, 87, 143, 114, 64, 195, 153, 192, 191, 23, 34, 18, 63, 180, 203, 86, 0, 71, 152, 0, 127, 172, 57, 105, 57, 107, 29, 36, 64, 96, 233, 72, 192, 39, 166, 32, 63, 180, 203, 86, 0, 196, 193, 164, 129, 136, 57, 122, 58, 175, 0, 53, 64, 120, 227, 61, 192, 90, 126, 140, 191, 180, 203, 86, 0, 188, 203, 163, 129, 73, 58, 92, 58, 107, 29, 36, 64, 96, 233, 72, 192, 39, 166, 32, 63, 22, 132, 245, 0, 20, 14, 132, 129, 136, 57, 122, 58, 175, 0, 53, 64, 120, 227, 61, 192, 90, 126, 140, 191, 22, 132, 245, 0, 20, 14, 132, 129, 73, 58, 92, 58, 34, 52, 176, 63, 108, 87, 93, 191, 112, 32, 10, 64, 22, 132, 245, 0, 20, 14, 132, 129, 165, 56, 87, 57, 34, 52, 176, 63, 108, 87, 93, 191, 112, 32, 10, 64, 22, 132, 245, 0, 71, 22, 154, 127, 165, 56, 87, 57, 175, 0, 53, 64, 120, 227, 61, 192, 90, 126, 140, 191, 22, 132, 245, 0, 71, 22, 154, 127, 73, 58, 92, 58, 59, 174, 198, 63, 74, 146, 80, 192, 130, 182, 248, 190, 22, 132, 245, 0, 71, 22, 154, 127, 19, 58, 40, 59, 34, 52, 176, 63, 108, 87, 93, 191, 112, 32, 10, 64, 12, 163, 85, 0, 82, 198, 179, 127, 165, 56, 87, 57, 59, 174, 198, 63, 74, 146, 80, 192, 130, 182, 248, 190, 12, 163, 85, 0, 82, 198, 179, 127, 19, 58, 40, 59, 7, 120, 71, 60, 241, 9, 225, 191, 88, 215, 72, 63, 11, 176, 97, 0, 117, 228, 219, 127, 0, 56, 18, 59, 128, 199, 79, 60, 55, 24, 75, 192, 126, 232, 252, 189, 11, 176, 97, 0, 126, 5, 247, 127, 0, 56, 249, 59, 119, 155, 175, 191, 1, 70, 61, 192, 218, 128, 214, 63, 8, 189, 107, 0, 84, 83, 45, 127, 111, 54, 153, 58, 254, 161, 197, 191, 23, 235, 94, 192, 70, 74, 141, 190, 8, 189, 107, 0, 76, 88, 49, 127, 69, 52, 51, 59, 119, 155, 175, 191, 1, 70, 61, 192, 218, 128, 214, 63, 172, 167, 29, 0, 59, 237, 110, 127, 111, 54, 153, 58, 254, 161, 197, 191, 23, 235, 94, 192, 70, 74, 141, 190, 172, 167, 29, 0, 56, 241, 112, 127, 69, 52, 51, 59, 118, 99, 41, 192, 140, 160, 66, 192, 249, 250, 169, 63, 172, 167, 29, 0, 55, 241, 113, 127, 117, 53, 80, 58, 171, 136, 56, 192, 136, 8, 255, 191, 41, 229, 0, 63, 172, 167, 29, 0, 52, 245, 115, 127, 210, 52, 244, 57, 118, 99, 41, 192, 140, 160, 66, 192, 249, 250, 169, 63, 168, 192, 191, 0, 238, 181, 100, 127, 117, 53, 80, 58, 8, 111, 92, 192, 249, 5, 41, 191, 117, 39, 244, 63, 168, 192, 191, 0, 219, 199, 107, 127, 123, 53, 221, 56, 8, 111, 92, 192, 249, 5, 41, 191, 117, 39, 244, 63, 133, 229, 6, 0, 8, 247, 126, 127, 123, 53, 221, 56, 5, 215, 114, 192, 225, 100, 141, 63, 72, 133, 74, 63, 135, 251, 35, 0, 37, 254, 121, 127, 205, 52, 130, 55, 86, 54, 96, 192, 19, 99, 60, 64, 207, 242, 168, 63, 140, 4, 51, 0, 51, 254, 116, 127, 44, 53, 21, 53, 86, 54, 96, 192, 19, 99, 60, 64, 207, 242, 168, 63, 192, 77, 77, 0, 87, 239, 90, 127, 44, 53, 21, 53, 2, 175, 114, 192, 99, 0, 80, 64, 32, 69, 24, 63, 199, 93, 63, 0, 65, 226, 104, 127, 175, 52, 198, 52, 243, 159, 39, 192, 103, 240, 129, 64, 90, 63, 159, 63, 183, 75, 71, 0, 77, 238, 98, 127, 105, 53, 224, 50, 185, 219, 56, 192, 164, 131, 153, 64, 55, 106, 92, 191, 199, 93, 63, 0, 57, 219, 107, 127, 72, 51, 72, 49, 243, 159, 39, 192, 103, 240, 129, 64, 90, 63, 159, 63, 20, 118, 42, 0, 43, 210, 110, 127, 105, 53, 224, 50, 185, 219, 56, 192, 164, 131, 153, 64, 55, 106, 92, 191, 20, 118, 42, 0, 37, 210, 112, 127, 72, 51, 72, 49, 108, 167, 183, 191, 67, 27, 164, 64, 27, 185, 227, 63, 34, 121, 8, 0, 32, 239, 121, 127, 131, 54, 64, 48, 52, 160, 195, 191, 98, 15, 147, 64, 66, 192, 108, 191, 34, 121, 8, 0, 29, 239, 122, 127, 133, 50, 149, 45, 187, 2, 145, 187, 9, 24, 170, 64, 66, 138, 16, 63, 45, 115, 231, 0, 29, 14, 122, 127, 0, 56, 115, 35, 187, 2, 145, 187, 9, 24, 170, 64, 66, 138, 16, 63, 45, 115, 231, 0, 111, 205, 224, 129, 0, 56, 115, 35, 52, 160, 195, 191, 98, 15, 147, 64, 66, 192, 108, 191, 34, 121, 8, 0, 119, 221, 23, 129, 133, 50, 149, 45, 63, 36, 143, 61, 84, 126, 136, 64, 36, 240, 208, 62, 45, 115, 231, 0, 111, 205, 224, 129, 0, 56, 231, 37, 16, 97, 245, 188, 156, 142, 103, 64, 222, 10, 223, 63, 219, 67, 100, 0, 113, 57, 4, 127, 0, 56, 149, 49, 187, 2, 145, 187, 9, 24, 170, 64, 66, 138, 16, 63, 219, 67, 100, 0, 114, 54, 6, 127, 0, 56, 115, 35, 176, 111, 141, 63, 202, 199, 152, 64, 14, 175, 22, 64, 219, 67, 100, 0, 61, 176, 77, 129, 123, 56, 109, 49, 237, 81, 190, 63, 215, 211, 133, 64, 17, 38, 238, 63, 219, 67, 100, 0, 12, 154, 73, 129, 184, 56, 192, 49, 176, 111, 141, 63, 202, 199, 152, 64, 14, 175, 22, 64, 244, 78, 158, 0, 53, 171, 180, 129, 123, 56, 109, 49, 237, 81, 190, 63, 215, 211, 133, 64, 17, 38, 238, 63, 244, 78, 158, 0, 80, 186, 188, 129, 184, 56, 192, 49, 161, 182, 4, 64, 23, 188, 14, 64, 14, 85, 224, 63, 244, 78, 158, 0, 126, 7, 244, 129, 248, 56, 129, 53, 247, 126, 41, 64, 194, 177, 124, 64, 113, 215, 191, 63, 244, 78, 158, 0, 126, 11, 248, 129, 54, 57, 77, 51, 161, 182, 4, 64, 23, 188, 14, 64, 14, 85, 224, 63, 76, 242, 100, 0, 95, 49, 190, 127, 248, 56, 129, 53, 247, 126, 41, 64, 194, 177, 124, 64, 113, 215, 191, 63, 76, 242, 100, 0, 100, 22, 182, 127, 54, 57, 77, 51, 18, 17, 42, 64, 127, 73, 8, 64, 253, 2, 217, 63, 76, 242, 100, 0, 100, 27, 184, 127, 41, 57, 229, 53, 106, 9, 96, 64, 46, 255, 249, 63, 70, 218, 24, 63, 76, 242, 100, 0, 101, 7, 180, 127, 164, 57, 73, 54, 18, 17, 42, 64, 127, 73, 8, 64, 253, 2, 217, 63, 35, 114, 41, 0, 92, 2, 170, 127, 41, 57, 229, 53, 106, 9, 96, 64, 46, 255, 249, 63, 70, 218, 24, 63, 65, 103, 31, 0, 57, 255, 143, 127, 164, 57, 73, 54, 88, 71, 57, 64, 72, 128, 187, 63, 238, 92, 82, 64, 35, 114, 41, 0, 116, 237, 209, 127, 214, 56, 45, 55, 144, 96, 113, 64, 25, 36, 197, 63, 185, 232, 182, 63, 65, 103, 31, 0, 59, 253, 145, 127, 107, 57, 5, 55, 88, 71, 57, 64, 72, 128, 187, 63, 238, 92, 82, 64, 112, 228, 51, 0, 52, 254, 141, 127, 214, 56, 45, 55, 205, 188, 44, 64, 82, 175, 145, 61, 148, 246, 60, 64, 97, 218, 71, 0, 75, 3, 154, 127, 216, 56, 105, 56, 129, 211, 2, 64, 66, 110, 227, 190, 163, 37, 72, 64, 85, 210, 81, 0, 90, 11, 168, 127, 168, 56, 187, 56, 107, 29, 36, 64, 96, 233, 72, 192, 39, 166, 32, 63, 107, 217, 54, 0, 59, 9, 145, 127, 136, 57, 122, 58, 129, 211, 2, 64, 66, 110, 227, 190, 163, 37, 72, 64, 195, 174, 74, 0, 66, 161, 206, 127, 168, 56, 187, 56, 107, 29, 36, 64, 96, 233, 72, 192, 39, 166, 32, 63, 195, 174, 74, 0, 66, 161, 206, 127, 136, 57, 122, 58, 153, 4, 138, 63, 206, 169, 195, 191, 73, 203, 86, 64, 195, 174, 74, 0, 66, 161, 206, 127, 92, 56, 98, 57, 153, 4, 138, 63, 206, 169, 195, 191, 73, 203, 86, 64, 195, 174, 74, 0, 204, 204, 154, 129, 92, 56, 98, 57, 107, 29, 36, 64, 96, 233, 72, 192, 39, 166, 32, 63, 195, 174, 74, 0, 204, 204, 154, 129, 136, 57, 122, 58, 34, 52, 176, 63, 108, 87, 93, 191, 112, 32, 10, 64, 195, 174, 74, 0, 204, 204, 154, 129, 165, 56, 87, 57, 153, 4, 138, 63, 206, 169, 195, 191, 73, 203, 86, 64, 85, 167, 229, 0, 24, 57, 146, 127, 92, 56, 98, 57, 34, 52, 176, 63, 108, 87, 93, 191, 112, 32, 10, 64, 85, 167, 229, 0, 45, 72, 162, 127, 165, 56, 87, 57, 191, 109, 0, 189, 30, 175, 224, 191, 144, 39, 16, 64, 74, 155, 241, 0, 97, 75, 226, 127, 0, 56, 254, 57, 7, 120, 71, 60, 241, 9, 225, 191, 88, 215, 72, 63, 84, 163, 244, 0, 88, 84, 224, 127, 0, 56, 18, 59, 255, 242, 138, 191, 70, 98, 10, 192, 219, 27, 0, 64, 68, 150, 248, 0, 106, 68, 245, 127, 229, 54, 60, 58, 119, 155, 175, 191, 1, 70, 61, 192, 218, 128, 214, 63, 83, 161, 1, 0, 94, 82, 237, 127, 111, 54, 153, 58, 255, 242, 138, 191, 70, 98, 10, 192, 219, 27, 0, 64, 226, 221, 117, 0, 100, 63, 45, 127, 229, 54, 60, 58, 119, 155, 175, 191, 1, 70, 61, 192, 218, 128, 214, 63, 226, 221, 117, 0, 107, 52, 43, 127, 111, 54, 153, 58, 111, 0, 4, 192, 105, 247, 55, 59, 25, 26, 18, 64, 232, 221, 119, 0, 118, 32, 33, 127, 85, 54, 165, 56, 118, 99, 41, 192, 140, 160, 66, 192, 249, 250, 169, 63, 232, 221, 119, 0, 114, 40, 35, 127, 117, 53, 80, 58, 212, 221, 36, 192, 36, 44, 27, 190, 223, 201, 215, 63, 239, 222, 121, 0, 123, 20, 23, 127, 185, 53, 173, 56, 8, 111, 92, 192, 249, 5, 41, 191, 117, 39, 244, 63, 239, 222, 121, 0, 123, 20, 23, 127, 123, 53, 221, 56, 212, 221, 36, 192, 36, 44, 27, 190, 223, 201, 215, 63, 233, 62, 108, 0, 166, 172, 28, 127, 185, 53, 173, 56, 8, 111, 92, 192, 249, 5, 41, 191, 117, 39, 244, 63, 233, 62, 108, 0, 166, 172, 28, 127, 123, 53, 221, 56, 134, 131, 56, 192, 47, 116, 44, 62, 230, 155, 68, 64, 233, 62, 108, 0, 166, 172, 28, 127, 61, 54, 81, 56, 134, 131, 56, 192, 47, 116, 44, 62, 230, 155, 68, 64, 233, 62, 108, 0, 93, 193, 57, 127, 61, 54, 81, 56, 8, 111, 92, 192, 249, 5, 41, 191, 117, 39, 244, 63, 233, 62, 108, 0, 93, 193, 57, 127, 123, 53, 221, 56, 5, 215, 114, 192, 225, 100, 141, 63, 72, 133, 74, 63, 233, 62, 108, 0, 93, 193, 57, 127, 205, 52, 130, 55, 134, 131, 56, 192, 47, 116, 44, 62, 230, 155, 68, 64, 139, 5, 47, 0, 47, 0, 117, 127, 61, 54, 81, 56, 128, 38, 44, 192, 247, 184, 164, 63, 87, 223, 68, 64, 139, 5, 47, 0, 48, 0, 117, 127, 87, 54, 77, 55, 128, 38, 44, 192, 247, 184, 164, 63, 87, 223, 68, 64, 189, 50, 94, 0, 102, 252, 75, 127, 87, 54, 77, 55, 43, 161, 5, 192, 156, 210, 106, 64, 92, 152, 25, 64, 197, 63, 92, 0, 104, 249, 72, 127, 111, 54, 0, 52, 43, 161, 5, 192, 156, 210, 106, 64, 92, 152, 25, 64, 197, 63, 92, 0, 92, 225, 81, 127, 111, 54, 0, 52, 243, 159, 39, 192, 103, 240, 129, 64, 90, 63, 159, 63, 183, 75, 71, 0, 74, 233, 100, 127, 105, 53, 224, 50, 134, 185, 150, 191, 142, 225, 57, 64, 223, 206, 66, 64, 168, 69, 59, 0, 66, 249, 107, 127, 56, 55, 247, 52, 134, 185, 150, 191, 142, 225, 57, 64, 223, 206, 66, 64, 168, 69, 59, 0, 80, 21, 95, 127, 56, 55, 247, 52, 243, 159, 39, 192, 103, 240, 129, 64, 90, 63, 159, 63, 183, 75, 71, 0, 93, 10, 84, 127, 105, 53, 224, 50, 108, 167, 183, 191, 67, 27, 164, 64, 27, 185, 227, 63, 168, 69, 59, 0, 80, 21, 95, 127, 131, 54, 64, 48, 134, 185, 150, 191, 142, 225, 57, 64, 223, 206, 66, 64, 34, 79, 92, 0, 82, 170, 42, 129, 56, 55, 247, 52, 108, 167, 183, 191, 67, 27, 164, 64, 27, 185, 227, 63, 65, 63, 88, 0, 101, 183, 233, 127, 131, 54, 64, 48, 16, 97, 245, 188, 156, 142, 103, 64, 222, 10, 223, 63, 51, 79, 83, 0, 110, 194, 247, 127, 0, 56, 149, 49, 187, 2, 145, 187, 9, 24, 170, 64, 66, 138, 16, 63, 65, 63, 88, 0, 100, 183, 234, 127, 0, 56, 115, 35, 128, 215, 77, 60, 197, 220, 132, 64, 53, 165, 80, 64, 178, 93, 222, 0, 93, 84, 15, 127, 0, 56, 121, 51, 16, 97, 245, 188, 156, 142, 103, 64, 222, 10, 223, 63, 178, 93, 222, 0, 89, 85, 29, 127, 0, 56, 149, 49, 8, 54, 27, 63, 167, 33, 132, 64, 141, 31, 32, 64, 178, 93, 222, 0, 86, 85, 36, 127, 66, 56, 93, 50, 176, 111, 141, 63, 202, 199, 152, 64, 14, 175, 22, 64, 178, 93, 222, 0, 78, 85, 51, 127, 123, 56, 109, 49, 8, 54, 27, 63, 167, 33, 132, 64, 141, 31, 32, 64, 43, 242, 118, 0, 103, 67, 226, 127, 66, 56, 93, 50, 176, 111, 141, 63, 202, 199, 152, 64, 14, 175, 22, 64, 43, 242, 118, 0, 118, 12, 214, 127, 123, 56, 109, 49, 108, 22, 142, 63, 191, 225, 68, 64, 253, 219, 73, 64, 43, 242, 118, 0, 116, 235, 211, 127, 98, 56, 217, 52, 161, 182, 4, 64, 23, 188, 14, 64, 14, 85, 224, 63, 43, 242, 118, 0, 111, 218, 210, 127, 248, 56, 129, 53, 108, 22, 142, 63, 191, 225, 68, 64, 253, 219, 73, 64, 8, 111, 196, 0, 60, 199, 161, 127, 98, 56, 217, 52, 161, 182, 4, 64, 23, 188, 14, 64, 14, 85, 224, 63, 8, 111, 196, 0, 110, 219, 205, 127, 248, 56, 129, 53, 83, 73, 189, 63, 63, 86, 172, 63, 68, 54, 94, 64, 8, 111, 196, 0, 66, 200, 164, 127, 115, 56, 36, 55, 18, 17, 42, 64, 127, 73, 8, 64, 253, 2, 217, 63, 8, 111, 196, 0, 111, 220, 208, 127, 41, 57, 229, 53, 83, 73, 189, 63, 63, 86, 172, 63, 68, 54, 94, 64, 4, 116, 49, 0, 66, 212, 98, 127, 115, 56, 36, 55, 18, 17, 42, 64, 127, 73, 8, 64, 253, 2, 217, 63, 35, 114, 41, 0, 48, 203, 104, 127, 41, 57, 229, 53, 116, 108, 198, 63, 194, 255, 203, 63, 76, 111, 31, 64, 4, 116, 49, 0, 66, 212, 98, 127, 162, 56, 195, 54, 116, 108, 198, 63, 194, 255, 203, 63, 76, 111, 31, 64, 4, 116, 49, 0, 124, 243, 20, 127, 162, 56, 195, 54, 116, 108, 198, 63, 194, 255, 203, 63, 76, 111, 31, 64, 188, 241, 105, 0, 106, 3, 69, 127, 162, 56, 195, 54, 88, 71, 57, 64, 72, 128, 187, 63, 238, 92, 82, 64, 188, 241, 105, 0, 106, 235, 65, 127, 214, 56, 45, 55, 47, 101, 183, 63, 40, 172, 134, 63, 167, 68, 133, 64, 188, 241, 105, 0, 106, 247, 67, 127, 99, 56, 167, 55, 205, 188, 44, 64, 82, 175, 145, 61, 148, 246, 60, 64, 188, 241, 105, 0, 105, 225, 63, 127, 216, 56, 105, 56, 47, 101, 183, 63, 40, 172, 134, 63, 167, 68, 133, 64, 63, 212, 100, 0, 107, 1, 189, 127, 99, 56, 167, 55, 160, 117, 135, 63, 95, 229, 68, 191, 233, 10, 117, 64, 71, 208, 92, 0, 101, 6, 181, 127, 82, 56, 222, 56, 160, 117, 135, 63, 95, 229, 68, 191, 233, 10, 117, 64, 71, 208, 92, 0, 103, 15, 184, 127, 82, 56, 222, 56, 129, 211, 2, 64, 66, 110, 227, 190, 163, 37, 72, 64, 85, 210, 81, 0, 92, 22, 172, 127, 168, 56, 187, 56, 143, 20, 26, 63, 106, 133, 238, 190, 111, 171, 109, 64, 80, 205, 84, 0, 96, 21, 177, 127, 46, 56, 193, 56, 143, 20, 26, 63, 106, 133, 238, 190, 111, 171, 109, 64, 80, 205, 84, 0, 96, 20, 177, 127, 46, 56, 193, 56, 129, 211, 2, 64, 66, 110, 227, 190, 163, 37, 72, 64, 85, 210, 81, 0, 92, 21, 172, 127, 168, 56, 187, 56, 153, 4, 138, 63, 206, 169, 195, 191, 73, 203, 86, 64, 80, 205, 84, 0, 96, 20, 177, 127, 92, 56, 98, 57, 143, 20, 26, 63, 106, 133, 238, 190, 111, 171, 109, 64, 186, 195, 86, 0, 105, 207, 50, 127, 46, 56, 193, 56, 153, 4, 138, 63, 206, 169, 195, 191, 73, 203, 86, 64, 186, 195, 86, 0, 105, 208, 51, 127, 92, 56, 98, 57, 75, 37, 85, 59, 165, 104, 249, 191, 209, 69, 99, 64, 186, 195, 86, 0, 105, 212, 55, 127, 0, 56, 151, 57, 191, 109, 0, 189, 30, 175, 224, 191, 144, 39, 16, 64, 186, 195, 86, 0, 105, 215, 56, 127, 0, 56, 254, 57, 75, 37, 85, 59, 165, 104, 249, 191, 209, 69, 99, 64, 50, 142, 235, 0, 254, 232, 124, 129, 0, 56, 151, 57, 62, 139, 18, 191, 54, 32, 6, 191, 221, 224, 129, 64, 50, 142, 235, 0, 111, 40, 45, 127, 169, 55, 183, 56, 62, 139, 18, 191, 54, 32, 6, 191, 221, 224, 129, 64, 159, 206, 64, 0, 80, 214, 88, 127, 169, 55, 183, 56, 255, 242, 138, 191, 70, 98, 10, 192, 219, 27, 0, 64, 159, 206, 64, 0, 76, 236, 99, 127, 229, 54, 60, 58, 58, 29, 141, 191, 98, 204, 127, 63, 150, 250, 133, 64, 181, 182, 69, 0, 89, 250, 90, 127, 102, 55, 184, 55, 111, 0, 4, 192, 105, 247, 55, 59, 25, 26, 18, 64, 181, 182, 69, 0, 85, 0, 93, 127, 85, 54, 165, 56, 13, 211, 179, 191, 10, 158, 135, 63, 221, 219, 29, 64, 207, 163, 70, 0, 61, 44, 101, 127, 220, 54, 177, 55, 212, 221, 36, 192, 36, 44, 27, 190, 223, 201, 215, 63, 207, 163, 70, 0, 98, 7, 79, 127, 185, 53, 173, 56, 13, 211, 179, 191, 10, 158, 135, 63, 221, 219, 29, 64, 67, 154, 32, 0, 70, 70, 78, 129, 220, 54, 177, 55, 212, 221, 36, 192, 36, 44, 27, 190, 223, 201, 215, 63, 67, 154, 32, 0, 70, 70, 78, 129, 185, 53, 173, 56, 74, 223, 192, 191, 191, 19, 92, 191, 149, 90, 47, 64, 67, 154, 32, 0, 70, 70, 78, 129, 213, 54, 36, 57, 74, 223, 192, 191, 191, 19, 92, 191, 149, 90, 47, 64, 67, 154, 32, 0, 3, 39, 120, 127, 213, 54, 36, 57, 212, 221, 36, 192, 36, 44, 27, 190, 223, 201, 215, 63, 67, 154, 32, 0, 3, 39, 120, 127, 185, 53, 173, 56, 134, 131, 56, 192, 47, 116, 44, 62, 230, 155, 68, 64, 67, 154, 32, 0, 3, 39, 120, 127, 61, 54, 81, 56, 74, 223, 192, 191, 191, 19, 92, 191, 149, 90, 47, 64, 3, 246, 126, 0, 126, 7, 254, 127, 213, 54, 36, 57, 134, 131, 56, 192, 47, 116, 44, 62, 230, 155, 68, 64, 24, 250, 124, 0, 124, 12, 233, 127, 61, 54, 81, 56, 143, 143, 182, 191, 242, 246, 53, 64, 3, 110, 71, 64, 3, 246, 126, 0, 126, 0, 253, 127, 7, 55, 14, 53, 128, 38, 44, 192, 247, 184, 164, 63, 87, 223, 68, 64, 24, 250, 124, 0, 122, 235, 231, 127, 87, 54, 77, 55, 143, 143, 182, 191, 242, 246, 53, 64, 3, 110, 71, 64, 191, 41, 100, 0, 105, 253, 70, 127, 7, 55, 14, 53, 128, 38, 44, 192, 247, 184, 164, 63, 87, 223, 68, 64, 189, 50, 94, 0, 102, 255, 74, 127, 87, 54, 77, 55, 242, 206, 138, 191, 75, 95, 141, 63, 180, 215, 139, 64, 221, 58, 106, 0, 115, 239, 49, 127, 108, 55, 143, 55, 242, 206, 138, 191, 75, 95, 141, 63, 180, 215, 139, 64, 221, 58, 106, 0, 118, 249, 44, 127, 108, 55, 143, 55, 121, 136, 23, 191, 232, 111, 31, 64, 43, 174, 86, 64, 17, 85, 92, 0, 125, 235, 253, 127, 152, 55, 135, 53, 128, 215, 77, 60, 197, 220, 132, 64, 53, 165, 80, 64, 38, 94, 75, 0, 66, 174, 69, 127, 0, 56, 121, 51, 8, 54, 27, 63, 167, 33, 132, 64, 141, 31, 32, 64, 99, 255, 78, 0, 69, 200, 167, 127, 66, 56, 93, 50, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 99, 255, 78, 0, 69, 200, 167, 127, 0, 56, 107, 55, 128, 215, 77, 60, 197, 220, 132, 64, 53, 165, 80, 64, 99, 255, 78, 0, 69, 200, 167, 127, 0, 56, 121, 51, 108, 22, 142, 63, 191, 225, 68, 64, 253, 219, 73, 64, 213, 28, 115, 0, 119, 12, 42, 127, 98, 56, 217, 52, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 213, 28, 115, 0, 119, 8, 43, 127, 0, 56, 107, 55, 8, 54, 27, 63, 167, 33, 132, 64, 141, 31, 32, 64, 198, 37, 106, 0, 112, 18, 55, 127, 66, 56, 93, 50, 83, 73, 189, 63, 63, 86, 172, 63, 68, 54, 94, 64, 229, 19, 122, 0, 123, 2, 27, 127, 115, 56, 36, 55, 116, 108, 198, 63, 194, 255, 203, 63, 76, 111, 31, 64, 22, 133, 241, 0, 100, 9, 77, 129, 162, 56, 195, 54, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 22, 133, 241, 0, 100, 9, 77, 129, 0, 56, 107, 55, 83, 73, 189, 63, 63, 86, 172, 63, 68, 54, 94, 64, 22, 133, 241, 0, 100, 9, 77, 129, 115, 56, 36, 55, 47, 101, 183, 63, 40, 172, 134, 63, 167, 68, 133, 64, 245, 120, 37, 0, 119, 255, 42, 127, 99, 56, 167, 55, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 245, 120, 37, 0, 119, 255, 42, 127, 0, 56, 107, 55, 116, 108, 198, 63, 194, 255, 203, 63, 76, 111, 31, 64, 245, 120, 37, 0, 119, 255, 42, 127, 162, 56, 195, 54, 160, 117, 135, 63, 95, 229, 68, 191, 233, 10, 117, 64, 213, 14, 118, 0, 118, 245, 45, 127, 82, 56, 222, 56, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 207, 14, 115, 0, 116, 2, 49, 127, 0, 56, 107, 55, 47, 101, 183, 63, 40, 172, 134, 63, 167, 68, 133, 64, 185, 251, 103, 0, 104, 2, 71, 127, 99, 56, 167, 55, 143, 20, 26, 63, 106, 133, 238, 190, 111, 171, 109, 64, 219, 23, 118, 0, 120, 250, 39, 127, 46, 56, 193, 56, 75, 37, 85, 59, 165, 104, 249, 191, 209, 69, 99, 64, 196, 12, 110, 0, 110, 21, 58, 127, 0, 56, 151, 57, 62, 139, 18, 191, 54, 32, 6, 191, 221, 224, 129, 64, 88, 15, 89, 0, 90, 0, 167, 127, 169, 55, 183, 56, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 88, 15, 89, 0, 90, 254, 167, 127, 0, 56, 107, 55, 75, 37, 85, 59, 165, 104, 249, 191, 209, 69, 99, 64, 95, 8, 83, 0, 83, 0, 161, 127, 0, 56, 151, 57, 58, 29, 141, 191, 98, 204, 127, 63, 150, 250, 133, 64, 81, 20, 94, 0, 96, 253, 174, 127, 102, 55, 184, 55, 13, 211, 179, 191, 10, 158, 135, 63, 221, 219, 29, 64, 239, 125, 7, 0, 36, 255, 121, 127, 220, 54, 177, 55, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 239, 125, 7, 0, 36, 255, 121, 127, 0, 56, 107, 55, 58, 29, 141, 191, 98, 204, 127, 63, 150, 250, 133, 64, 239, 125, 7, 0, 36, 255, 121, 127, 102, 55, 184, 55, 74, 223, 192, 191, 191, 19, 92, 191, 149, 90, 47, 64, 49, 244, 140, 0, 116, 255, 50, 129, 213, 54, 36, 57, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 49, 244, 140, 0, 116, 255, 50, 129, 0, 56, 107, 55, 13, 211, 179, 191, 10, 158, 135, 63, 221, 219, 29, 64, 49, 244, 140, 0, 116, 255, 50, 129, 220, 54, 177, 55, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 239, 244, 125, 0, 125, 248, 16, 127, 0, 56, 107, 55, 242, 206, 138, 191, 75, 95, 141, 63, 180, 215, 139, 64, 178, 194, 179, 0, 90, 254, 168, 129, 108, 55, 143, 55, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 178, 194, 179, 0, 90, 254, 168, 129, 0, 56, 107, 55, 143, 143, 182, 191, 242, 246, 53, 64, 3, 110, 71, 64, 178, 194, 179, 0, 90, 254, 168, 129, 7, 55, 14, 53, 121, 136, 23, 191, 232, 111, 31, 64, 43, 174, 86, 64, 88, 30, 85, 0, 88, 254, 165, 127, 152, 55, 135, 53, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 88, 30, 85, 0, 88, 254, 165, 127, 0, 56, 107, 55, 242, 206, 138, 191, 75, 95, 141, 63, 180, 215, 139, 64, 88, 30, 85, 0, 88, 254, 165, 127, 108, 55, 143, 55, 128, 215, 77, 60, 197, 220, 132, 64, 53, 165, 80, 64, 22, 254, 124, 0, 121, 31, 235, 127, 0, 56, 121, 51, 33, 5, 129, 61, 0, 250, 144, 63, 135, 113, 76, 64, 22, 254, 124, 0, 121, 31, 235, 127, 0, 56, 107, 55, 121, 136, 23, 191, 232, 111, 31, 64, 43, 174, 86, 64, 22, 254, 124, 0, 121, 31, 235, 127, 152, 55, 135, 53 ), 11 | "array_index_data": PoolByteArray( 0, 0, 2, 0, 1, 0, 2, 0, 3, 0, 1, 0, 3, 0, 5, 0, 4, 0, 6, 0, 8, 0, 7, 0, 9, 0, 11, 0, 10, 0, 12, 0, 14, 0, 13, 0, 15, 0, 17, 0, 16, 0, 18, 0, 20, 0, 19, 0, 21, 0, 23, 0, 22, 0, 23, 0, 24, 0, 22, 0, 25, 0, 27, 0, 26, 0, 28, 0, 30, 0, 29, 0, 30, 0, 31, 0, 29, 0, 31, 0, 32, 0, 29, 0, 33, 0, 35, 0, 34, 0, 36, 0, 38, 0, 37, 0, 39, 0, 41, 0, 40, 0, 42, 0, 44, 0, 43, 0, 45, 0, 46, 0, 2, 0, 46, 0, 3, 0, 2, 0, 46, 0, 47, 0, 3, 0, 47, 0, 5, 0, 3, 0, 48, 0, 50, 0, 49, 0, 51, 0, 53, 0, 52, 0, 54, 0, 56, 0, 55, 0, 57, 0, 59, 0, 58, 0, 60, 0, 61, 0, 12, 0, 61, 0, 14, 0, 12, 0, 62, 0, 64, 0, 63, 0, 64, 0, 65, 0, 63, 0, 66, 0, 67, 0, 18, 0, 67, 0, 20, 0, 18, 0, 68, 0, 70, 0, 69, 0, 71, 0, 73, 0, 72, 0, 74, 0, 76, 0, 75, 0, 76, 0, 77, 0, 75, 0, 78, 0, 80, 0, 79, 0, 81, 0, 83, 0, 82, 0, 84, 0, 85, 0, 28, 0, 85, 0, 30, 0, 28, 0, 86, 0, 87, 0, 30, 0, 87, 0, 31, 0, 30, 0, 88, 0, 90, 0, 89, 0, 90, 0, 91, 0, 89, 0, 92, 0, 94, 0, 93, 0, 94, 0, 95, 0, 93, 0, 96, 0, 98, 0, 97, 0, 99, 0, 101, 0, 100, 0, 102, 0, 104, 0, 103, 0, 105, 0, 107, 0, 106, 0, 108, 0, 110, 0, 109, 0, 110, 0, 111, 0, 109, 0, 112, 0, 114, 0, 113, 0, 114, 0, 115, 0, 113, 0, 116, 0, 118, 0, 117, 0, 118, 0, 119, 0, 117, 0, 120, 0, 122, 0, 121, 0, 123, 0, 125, 0, 124, 0, 126, 0, 127, 0, 60, 0, 127, 0, 61, 0, 60, 0, 128, 0, 130, 0, 129, 0, 130, 0, 131, 0, 129, 0, 132, 0, 134, 0, 133, 0, 134, 0, 135, 0, 133, 0, 136, 0, 138, 0, 137, 0, 138, 0, 139, 0, 137, 0, 140, 0, 142, 0, 141, 0, 142, 0, 143, 0, 141, 0, 144, 0, 146, 0, 145, 0, 146, 0, 147, 0, 145, 0, 146, 0, 148, 0, 147, 0, 148, 0, 149, 0, 147, 0, 150, 0, 152, 0, 151, 0, 152, 0, 153, 0, 151, 0, 154, 0, 156, 0, 155, 0, 156, 0, 157, 0, 155, 0, 158, 0, 160, 0, 159, 0, 160, 0, 161, 0, 159, 0, 162, 0, 163, 0, 96, 0, 163, 0, 98, 0, 96, 0, 164, 0, 166, 0, 165, 0, 166, 0, 167, 0, 165, 0, 168, 0, 170, 0, 169, 0, 170, 0, 171, 0, 169, 0, 172, 0, 174, 0, 173, 0, 174, 0, 175, 0, 173, 0, 176, 0, 177, 0, 116, 0, 177, 0, 118, 0, 116, 0, 177, 0, 178, 0, 118, 0, 178, 0, 179, 0, 118, 0, 178, 0, 180, 0, 179, 0, 180, 0, 181, 0, 179, 0, 182, 0, 184, 0, 183, 0, 184, 0, 185, 0, 183, 0, 186, 0, 188, 0, 187, 0, 189, 0, 134, 0, 132, 0, 190, 0, 191, 0, 136, 0, 191, 0, 138, 0, 136, 0, 191, 0, 192, 0, 138, 0, 192, 0, 144, 0, 138, 0, 192, 0, 193, 0, 144, 0, 193, 0, 146, 0, 144, 0, 193, 0, 194, 0, 146, 0, 194, 0, 148, 0, 146, 0, 194, 0, 195, 0, 148, 0, 195, 0, 196, 0, 148, 0, 197, 0, 198, 0, 154, 0, 198, 0, 156, 0, 154, 0, 198, 0, 199, 0, 156, 0, 199, 0, 200, 0, 156, 0, 201, 0, 203, 0, 202, 0, 204, 0, 206, 0, 205, 0, 207, 0, 209, 0, 208, 0, 210, 0, 212, 0, 211, 0, 213, 0, 215, 0, 214, 0, 216, 0, 218, 0, 217, 0, 219, 0, 221, 0, 220, 0, 221, 0, 176, 0, 220, 0, 221, 0, 222, 0, 176, 0, 222, 0, 177, 0, 176, 0, 222, 0, 223, 0, 177, 0, 223, 0, 224, 0, 177, 0, 225, 0, 227, 0, 226, 0, 227, 0, 228, 0, 226, 0, 229, 0, 231, 0, 230, 0, 232, 0, 234, 0, 233, 0, 235, 0, 237, 0, 236, 0, 237, 0, 238, 0, 236, 0, 237, 0, 239, 0, 238, 0, 239, 0, 240, 0, 238, 0, 241, 0, 243, 0, 242, 0, 243, 0, 244, 0, 242, 0, 245, 0, 246, 0, 192, 0, 246, 0, 193, 0, 192, 0, 247, 0, 248, 0, 193, 0, 248, 0, 194, 0, 193, 0, 248, 0, 249, 0, 194, 0, 249, 0, 195, 0, 194, 0, 250, 0, 252, 0, 251, 0, 252, 0, 253, 0, 251, 0, 254, 0, 0, 1, 255, 0, 0, 1, 1, 1, 255, 0, 0, 1, 2, 1, 1, 1, 3, 1, 5, 1, 4, 1, 6, 1, 8, 1, 7, 1, 8, 1, 9, 1, 7, 1, 10, 1, 12, 1, 11, 1, 12, 1, 13, 1, 11, 1, 14, 1, 16, 1, 15, 1, 16, 1, 17, 1, 15, 1, 18, 1, 20, 1, 19, 1, 20, 1, 21, 1, 19, 1, 22, 1, 23, 1, 222, 0, 23, 1, 223, 0, 222, 0, 23, 1, 24, 1, 223, 0, 24, 1, 25, 1, 223, 0, 26, 1, 28, 1, 27, 1, 29, 1, 31, 1, 30, 1, 32, 1, 34, 1, 33, 1, 34, 1, 35, 1, 33, 1, 34, 1, 36, 1, 35, 1, 36, 1, 37, 1, 35, 1, 38, 1, 40, 1, 39, 1, 40, 1, 41, 1, 39, 1, 40, 1, 42, 1, 41, 1, 42, 1, 43, 1, 41, 1, 44, 1, 46, 1, 45, 1, 47, 1, 49, 1, 48, 1, 50, 1, 51, 1, 248, 0, 51, 1, 249, 0, 248, 0, 52, 1, 53, 1, 250, 0, 53, 1, 252, 0, 250, 0, 54, 1, 56, 1, 55, 1, 57, 1, 59, 1, 58, 1, 60, 1, 62, 1, 61, 1, 62, 1, 63, 1, 61, 1, 64, 1, 66, 1, 65, 1, 66, 1, 67, 1, 65, 1, 68, 1, 70, 1, 69, 1, 70, 1, 71, 1, 69, 1, 72, 1, 74, 1, 73, 1, 74, 1, 75, 1, 73, 1, 76, 1, 78, 1, 77, 1, 79, 1, 20, 1, 18, 1, 80, 1, 82, 1, 81, 1, 82, 1, 83, 1, 81, 1, 84, 1, 85, 1, 23, 1, 85, 1, 24, 1, 23, 1, 86, 1, 88, 1, 87, 1, 89, 1, 91, 1, 90, 1, 92, 1, 94, 1, 93, 1, 94, 1, 95, 1, 93, 1, 96, 1, 97, 1, 34, 1, 97, 1, 36, 1, 34, 1, 98, 1, 100, 1, 99, 1, 100, 1, 101, 1, 99, 1, 100, 1, 102, 1, 101, 1, 102, 1, 103, 1, 101, 1, 104, 1, 106, 1, 105, 1, 107, 1, 109, 1, 108, 1, 110, 1, 112, 1, 111, 1, 112, 1, 113, 1, 111, 1, 114, 1, 116, 1, 115, 1, 117, 1, 53, 1, 52, 1, 117, 1, 118, 1, 53, 1, 118, 1, 60, 1, 53, 1, 118, 1, 119, 1, 60, 1, 119, 1, 62, 1, 60, 1, 120, 1, 122, 1, 121, 1, 123, 1, 125, 1, 124, 1, 126, 1, 123, 1, 124, 1, 127, 1, 129, 1, 128, 1, 130, 1, 132, 1, 131, 1, 133, 1, 135, 1, 134, 1, 136, 1, 133, 1, 134, 1, 137, 1, 136, 1, 134, 1, 138, 1, 140, 1, 139, 1, 141, 1, 138, 1, 139, 1, 142, 1, 144, 1, 143, 1, 145, 1, 147, 1, 146, 1, 112, 1, 110, 1, 148, 1, 149, 1, 151, 1, 150, 1, 152, 1, 154, 1, 153, 1, 155, 1, 157, 1, 156, 1 ), 12 | "blend_shape_data": [ ], 13 | "format": 97559, 14 | "index_count": 672, 15 | "primitive": 4, 16 | "skeleton_aabb": [ ], 17 | "vertex_count": 414 18 | } 19 | 20 | [sub_resource type="SpatialMaterial" id=2] 21 | emission_enabled = true 22 | emission = Color( 1, 0.764706, 0.0117647, 1 ) 23 | emission_energy = 1.0 24 | emission_operator = 0 25 | emission_on_uv2 = false 26 | 27 | [sub_resource type="BoxShape" id=3] 28 | extents = Vector3( 0.5, 0.5, 0.5 ) 29 | 30 | [sub_resource type="Animation" id=4] 31 | length = 0.5 32 | loop = true 33 | tracks/0/type = "method" 34 | tracks/0/path = NodePath(".") 35 | tracks/0/interp = 1 36 | tracks/0/loop_wrap = true 37 | tracks/0/imported = false 38 | tracks/0/enabled = true 39 | tracks/0/keys = { 40 | "times": PoolRealArray( 0.5 ), 41 | "transitions": PoolRealArray( 1 ), 42 | "values": [ { 43 | "args": [ ], 44 | "method": "queue_free" 45 | } ] 46 | } 47 | tracks/1/type = "value" 48 | tracks/1/path = NodePath(".:rotation_degrees") 49 | tracks/1/interp = 1 50 | tracks/1/loop_wrap = true 51 | tracks/1/imported = false 52 | tracks/1/enabled = true 53 | tracks/1/keys = { 54 | "times": PoolRealArray( 0, 0.2, 0.4 ), 55 | "transitions": PoolRealArray( 1, 1, 1 ), 56 | "update": 0, 57 | "values": [ Vector3( 0, 0, 0 ), Vector3( 0, 90, 0 ), Vector3( 0, -126, 0 ) ] 58 | } 59 | tracks/2/type = "value" 60 | tracks/2/path = NodePath(".:scale") 61 | tracks/2/interp = 1 62 | tracks/2/loop_wrap = true 63 | tracks/2/imported = false 64 | tracks/2/enabled = true 65 | tracks/2/keys = { 66 | "times": PoolRealArray( 0, 0.2 ), 67 | "transitions": PoolRealArray( 1, 1 ), 68 | "update": 0, 69 | "values": [ Vector3( 1, 1, 1 ), Vector3( 1.5, 1.5, 1.5 ) ] 70 | } 71 | tracks/3/type = "value" 72 | tracks/3/path = NodePath("rock/shell:visible") 73 | tracks/3/interp = 1 74 | tracks/3/loop_wrap = true 75 | tracks/3/imported = false 76 | tracks/3/enabled = true 77 | tracks/3/keys = { 78 | "times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4 ), 79 | "transitions": PoolRealArray( 1, 1, 1, 1, 1 ), 80 | "update": 1, 81 | "values": [ true, false, true, false, true ] 82 | } 83 | 84 | [node name="rock" type="StaticBody"] 85 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0 ) 86 | script = ExtResource( 1 ) 87 | 88 | [node name="rock" type="MeshInstance" parent="."] 89 | transform = Transform( 0.13125, 0, 8.88178e-016, 0, 0.11, 0, 8.88178e-016, 0, 0.12075, 0, 0, 0 ) 90 | mesh = ExtResource( 2 ) 91 | material/0 = ExtResource( 3 ) 92 | 93 | [node name="shell" type="MeshInstance" parent="rock"] 94 | transform = Transform( 1.1, 0, 0, 0, 1.1, 0, 0, 0, 1.1, 0, 0, 0 ) 95 | visible = false 96 | mesh = SubResource( 1 ) 97 | material/0 = SubResource( 2 ) 98 | 99 | [node name="CollisionShape" type="CollisionShape" parent="."] 100 | shape = SubResource( 3 ) 101 | 102 | [node name="anim" type="AnimationPlayer" parent="."] 103 | anims/explode = SubResource( 4 ) 104 | --------------------------------------------------------------------------------