commit 6956b02bcff2d1e18b6e095ef33be47ee93c159e Author: Kenney Date: Mon Sep 25 19:51:51 2023 +0200 Initial commit diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..8ad74f7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0e0aed5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +# Godot 4+ specific ignores +.godot/ + +# Godot-specific ignores +.import/ +export.cfg +export_presets.cfg + +# Imported translations (automatically generated from CSV files) +*.translation + +# Mono-specific ignores +.mono/ +data_*/ +mono_crash.*.json + +# Kenney ignores +build/ \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..1a23246 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# Starter-Kit-FPS + diff --git a/actors/blaster.tscn b/actors/blaster.tscn new file mode 100644 index 0000000..0a0a0bb --- /dev/null +++ b/actors/blaster.tscn @@ -0,0 +1,8 @@ +[gd_scene load_steps=2 format=3 uid="uid://b411hfkru5vs7"] + +[ext_resource type="PackedScene" uid="uid://b2p7bbkuxf7m" path="res://models/blaster.glb" id="1_yqvvx"] + +[node name="blaster" instance=ExtResource("1_yqvvx")] + +[node name="blaster2" parent="." index="0"] +layers = 2 diff --git a/actors/enemy.tscn b/actors/enemy.tscn new file mode 100644 index 0000000..651547e --- /dev/null +++ b/actors/enemy.tscn @@ -0,0 +1,47 @@ +[gd_scene load_steps=6 format=3 uid="uid://d2g78tpqbyf5g"] + +[ext_resource type="PackedScene" uid="uid://lde2xq3vq635" path="res://models/enemy-flying.glb" id="1_3v8nl"] +[ext_resource type="Script" path="res://scripts/enemy.gd" id="1_jg24b"] +[ext_resource type="SpriteFrames" uid="uid://dbv3sy5qjatnl" path="res://sprites/burst_animation.tres" id="3_iblw5"] +[ext_resource type="Texture2D" uid="uid://diluv5007my5w" path="res://sprites/tracer.png" id="4_pknwg"] + +[sub_resource type="SphereShape3D" id="SphereShape3D_iix87"] +radius = 0.75 + +[node name="enemy-flying" type="Area3D"] +script = ExtResource("1_jg24b") + +[node name="enemy-flying" parent="." instance=ExtResource("1_3v8nl")] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.25, 0) +shape = SubResource("SphereShape3D_iix87") + +[node name="RayCast" type="RayCast3D" parent="."] +target_position = Vector3(0, 0, 5) + +[node name="BurstA" type="AnimatedSprite3D" parent="."] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, -0.45, 0.3, 0.4) +sprite_frames = ExtResource("3_iblw5") +frame = 2 + +[node name="BurstB" type="AnimatedSprite3D" parent="."] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0.45, 0.3, 0.4) +sprite_frames = ExtResource("3_iblw5") +frame = 2 + +[node name="Timer" type="Timer" parent="."] +wait_time = 0.25 +autostart = true + +[node name="Sprite3D" type="Sprite3D" parent="."] +transform = Transform3D(-4.37114e-08, -0.5, 4.37114e-08, 0, -2.18557e-08, -1, 1, -2.18557e-08, 1.91069e-15, -0.458562, 0.296903, 2.63393) +visible = false +texture = ExtResource("4_pknwg") + +[node name="Sprite3D2" type="Sprite3D" parent="."] +transform = Transform3D(-4.37114e-08, -0.5, 4.37114e-08, 0, -2.18557e-08, -1, 1, -2.18557e-08, 1.91069e-15, 0.452015, 0.296903, 2.63393) +visible = false +texture = ExtResource("4_pknwg") + +[connection signal="timeout" from="Timer" to="." method="_on_timer_timeout"] diff --git a/actors/player.gd b/actors/player.gd new file mode 100644 index 0000000..3ecbb6f --- /dev/null +++ b/actors/player.gd @@ -0,0 +1,270 @@ +extends CharacterBody3D + +@export_subgroup("Properties") +@export var movement_speed = 250 +@export var jump_strength = 7 + +@export_subgroup("Weapons") +@export var weapons: Array[Weapon] = [] + +var weapon: Weapon +var weapon_index := 0 + +var mouse_sensitivity = 700 +var mouse_captured := true + +var movement_velocity: Vector3 +var rotation_target: Vector3 + +var input: Vector3 +var input_mouse: Vector2 + +var gravity := 0.0 + +var previously_floored := false + +var jump_single := true +var jump_double := true + +var container_offset = Vector3(1.2, -1.1, -2.75) + +var tween:Tween + +@onready var sound_footsteps = $SoundFootsteps +@onready var item_container = $Head/Camera/SubViewportContainer/SubViewport/CameraItem/Container +@onready var camera = $Head/Camera +@onready var raycast = $Head/Camera/ShootCast +@onready var blaster_cooldown = $BlasterCooldown +@onready var burst = $Head/Camera/SubViewportContainer/SubViewport/CameraItem/Burst + +@export var crosshair:TextureRect + +# Functions + +func _ready(): + + Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + + change_weapon(weapon_index) + +func _process(delta): + + # Handle functions + + handle_controls(delta) + handle_gravity(delta) + + # Movement + + var applied_velocity: Vector3 + + movement_velocity = transform.basis * movement_velocity # Move forward + + applied_velocity = velocity.lerp(movement_velocity, delta * 10) + applied_velocity.y = -gravity + + velocity = applied_velocity + move_and_slide() + + # Rotation + + camera.rotation.z = lerp_angle(camera.rotation.z, -input_mouse.x * 1.25, delta * 5) + + camera.rotation.x = lerp_angle(camera.rotation.x, rotation_target.x, delta * 25) + rotation.y = lerp_angle(rotation.y, rotation_target.y, delta * 25) + + item_container.rotation.y = lerp_angle(item_container.rotation.y, -input_mouse.x * 4, delta * 5) + #item_container.rotation.x = lerp_angle(item_container.rotation.x, -rotation_target.x / 3, delta * 10) + + item_container.position = lerp(item_container.position, container_offset - (applied_velocity / 30), delta * 10) + + # Movement sound + + sound_footsteps.stream_paused = true + + if is_on_floor(): + if abs(velocity.x) > 1 or abs(velocity.z) > 1: + sound_footsteps.stream_paused = false + + # Landing after jump or falling + + camera.position.y = lerp(camera.position.y, 0.0, delta * 5) + + if is_on_floor() and gravity > 1 and !previously_floored: # Landed + Audio.play("sounds/land.ogg") + camera.position.y = -0.1 + + previously_floored = is_on_floor() + + input_mouse = Vector2.ZERO + +# Mouse movement + +func _input(event): + if event is InputEventMouseMotion and mouse_captured: + + input_mouse = event.relative / mouse_sensitivity + + rotation_target.y -= event.relative.x / mouse_sensitivity + rotation_target.x -= event.relative.y / mouse_sensitivity + rotation_target.x = clamp(rotation_target.x, deg_to_rad(-90), deg_to_rad(90)) + +func handle_controls(delta): + + # Mouse capture + + if Input.is_action_just_pressed("mouse_capture"): + Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + mouse_captured = true + + if Input.is_action_just_pressed("mouse_capture_exit"): + Input.mouse_mode = Input.MOUSE_MODE_VISIBLE + mouse_captured = false + + # Movement + + input.x = Input.get_axis("move_left", "move_right") + input.z = Input.get_axis("move_forward", "move_back") + + movement_velocity = input.normalized() * movement_speed * delta + + # Shooting + + if Input.is_action_pressed("shoot"): + shoot() + + # Jumping + + if Input.is_action_just_pressed("jump"): + + if jump_single or jump_double: + Audio.play_random("sounds/jump_a.ogg, sounds/jump_b.ogg, sounds/jump_c.ogg") + + if jump_double: + + gravity = -jump_strength + + jump_double = false + + if(jump_single): jump() + + # Weapon switching + + if Input.is_action_just_pressed("weapon_next"): + next_weapon() + +# Handle gravity + +func handle_gravity(delta): + + gravity += 20 * delta + + if gravity > 0 and is_on_floor(): + + jump_single = true + gravity = 0 + +# Jumping + +func jump(): + + gravity = -jump_strength + + jump_single = false; + jump_double = true; + +# Shooting + +func shoot(): + + if !blaster_cooldown.is_stopped(): return + + Audio.play_random(weapon.sound_shoot) + item_container.position.z += 0.25 + + burst.play("default") + burst.rotation_degrees.z = randf_range(-45, 45) + burst.scale = Vector3.ONE * randf_range(0.40, 0.75) + + burst.position = item_container.position - Vector3(0.1, -0.4, 1.5) + + blaster_cooldown.start(weapon.cooldown) + + # What or where the blaster hit + + for n in weapon.shot_count: + + raycast.target_position.x = randf_range(-weapon.spread, weapon.spread) + raycast.target_position.y = randf_range(-weapon.spread, weapon.spread) + + raycast.force_raycast_update() + + if !raycast.is_colliding(): + return + + var collider = raycast.get_collider() + + if collider.has_method("damage"): + collider.damage(weapon.damage) + + var impact = preload("res://objects/impact.tscn") + var impact_instance = impact.instantiate() + + impact_instance.play("shot") + + get_tree().root.add_child(impact_instance) + + impact_instance.position = raycast.get_collision_point() + (raycast.get_collision_normal() / 10) + impact_instance.look_at(position, Vector3.UP, true) + #impact_instance.rotation_degrees.z = randf_range(-45, 45) +# Weapons + +func next_weapon(): + + Audio.play("sounds/blaster_change.ogg") + + if weapon_index < weapons.size() - 1: + weapon_index += 1 + else: + weapon_index = 0 + + change_weapon(weapon_index) + +func change_weapon_apply(): + + weapon = weapons[weapon_index] + + # Step 1. Remove all children in (weapon) container + + for n in item_container.get_children(): + item_container.remove_child(n) + + # Step 2. Load new model into container + + var weapon_model = weapon.model.instantiate() + item_container.add_child(weapon_model) + + weapon_model.position = weapon.position + weapon_model.rotation_degrees = weapon.rotation + + # Step 3. Set model to only render on layer 2 + + for child in weapon_model.find_children("*", "MeshInstance3D"): + child.layers = 2 + + # Set weapon data + + raycast.target_position = Vector3(0, 0, -1) * weapon.max_distance + crosshair.texture = weapon.crosshair + +func change_weapon(index): + + weapon_index = index + + tween = get_tree().create_tween() + tween.set_ease(Tween.EASE_OUT_IN) + tween.tween_property(item_container, "position", container_offset - Vector3(0, 1, 0), 0.1) + tween.tween_callback(change_weapon_apply) + +func get_hurt(): + pass diff --git a/actors/player.tscn b/actors/player.tscn new file mode 100644 index 0000000..02945a6 --- /dev/null +++ b/actors/player.tscn @@ -0,0 +1,77 @@ +[gd_scene load_steps=8 format=3 uid="uid://dl2ed4gkybggf"] + +[ext_resource type="Script" path="res://actors/player.gd" id="1_ffboj"] +[ext_resource type="Resource" uid="uid://cu2gtxlcmbb34" path="res://weapons/blaster-repeater.tres" id="2_6epbw"] +[ext_resource type="Texture2D" uid="uid://8ggihh27mlrr" path="res://sprites/blob_shadow.png" id="2_b0fo8"] +[ext_resource type="Resource" uid="uid://c56y8pqoyk15f" path="res://weapons/blaster.tres" id="3_kr4p8"] +[ext_resource type="SpriteFrames" uid="uid://dbv3sy5qjatnl" path="res://sprites/burst_animation.tres" id="4_m6ukc"] +[ext_resource type="AudioStream" uid="uid://cydjn1ct3hps2" path="res://sounds/walking.ogg" id="5_ics1s"] + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_gdq8c"] +radius = 0.3 +height = 1.0 + +[node name="Player" type="CharacterBody3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0) +script = ExtResource("1_ffboj") +weapons = Array[Resource("res://scripts/weapon.gd")]([ExtResource("3_kr4p8"), ExtResource("2_6epbw")]) + +[node name="Collider" type="CollisionShape3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.55, 0) +shape = SubResource("CapsuleShape3D_gdq8c") + +[node name="Head" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) + +[node name="Camera" type="Camera3D" parent="Head"] +cull_mask = 1048573 +current = true +fov = 80.0 + +[node name="SubViewportContainer" type="SubViewportContainer" parent="Head/Camera"] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +stretch = true + +[node name="SubViewport" type="SubViewport" parent="Head/Camera/SubViewportContainer"] +transparent_bg = true +handle_input_locally = false +msaa_3d = 1 +size = Vector2i(1280, 720) +render_target_update_mode = 4 + +[node name="CameraItem" type="Camera3D" parent="Head/Camera/SubViewportContainer/SubViewport"] +cull_mask = 1047554 +fov = 40.0 + +[node name="Container" type="Node3D" parent="Head/Camera/SubViewportContainer/SubViewport/CameraItem"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.2, -1, -2.25) + +[node name="Burst" type="AnimatedSprite3D" parent="Head/Camera/SubViewportContainer/SubViewport/CameraItem"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5, -0.75, -6) +layers = 2 +sprite_frames = ExtResource("4_m6ukc") +frame = 2 + +[node name="ShootCast" type="RayCast3D" parent="Head/Camera"] +exclude_parent = false +target_position = Vector3(0, 0, -10) +collide_with_areas = true + +[node name="Shadow" type="Decal" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.9, 0) +size = Vector3(1, 2, 1) +texture_albedo = ExtResource("2_b0fo8") +modulate = Color(1, 1, 1, 0.705882) +normal_fade = 0.5 + +[node name="SoundFootsteps" type="AudioStreamPlayer" parent="."] +stream = ExtResource("5_ics1s") +volume_db = -5.0 +autoplay = true + +[node name="BlasterCooldown" type="Timer" parent="."] +one_shot = true diff --git a/icon.png b/icon.png new file mode 100644 index 0000000..fd519a6 Binary files /dev/null and b/icon.png differ diff --git a/icon.png.import b/icon.png.import new file mode 100644 index 0000000..9440934 --- /dev/null +++ b/icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpxour8a7ihec" +path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.png" +dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/models/Textures/colormap.png b/models/Textures/colormap.png new file mode 100644 index 0000000..971c13a Binary files /dev/null and b/models/Textures/colormap.png differ diff --git a/models/Textures/colormap.png.import b/models/Textures/colormap.png.import new file mode 100644 index 0000000..f3532b9 --- /dev/null +++ b/models/Textures/colormap.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b5hxnjwvrxuji" +path.bptc="res://.godot/imported/colormap.png-c1bc3c3aabeec406ff4b53328583776a.bptc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://models/Textures/colormap.png" +dest_files=["res://.godot/imported/colormap.png-c1bc3c3aabeec406ff4b53328583776a.bptc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=true +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/models/blaster-double.glb b/models/blaster-double.glb new file mode 100644 index 0000000..9db5ee0 Binary files /dev/null and b/models/blaster-double.glb differ diff --git a/models/blaster-double.glb.import b/models/blaster-double.glb.import new file mode 100644 index 0000000..cc37e9e --- /dev/null +++ b/models/blaster-double.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://c0fgu1f2whait" +path="res://.godot/imported/blaster-double.glb-432c9163e28f0aae29c58d0e5ca6594b.scn" + +[deps] + +source_file="res://models/blaster-double.glb" +dest_files=["res://.godot/imported/blaster-double.glb-432c9163e28f0aae29c58d0e5ca6594b.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/blaster.glb b/models/blaster.glb new file mode 100644 index 0000000..4665b47 Binary files /dev/null and b/models/blaster.glb differ diff --git a/models/blaster.glb.import b/models/blaster.glb.import new file mode 100644 index 0000000..dcfb72b --- /dev/null +++ b/models/blaster.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://b2p7bbkuxf7m" +path="res://.godot/imported/blaster.glb-865d95bc6d15a20a70b45829eaeb4dc5.scn" + +[deps] + +source_file="res://models/blaster.glb" +dest_files=["res://.godot/imported/blaster.glb-865d95bc6d15a20a70b45829eaeb4dc5.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/enemy-flying.glb b/models/enemy-flying.glb new file mode 100644 index 0000000..0ad4522 Binary files /dev/null and b/models/enemy-flying.glb differ diff --git a/models/enemy-flying.glb.import b/models/enemy-flying.glb.import new file mode 100644 index 0000000..d60b0fd --- /dev/null +++ b/models/enemy-flying.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://lde2xq3vq635" +path="res://.godot/imported/enemy-flying.glb-6120572f403485a0abe68ce33d56638b.scn" + +[deps] + +source_file="res://models/enemy-flying.glb" +dest_files=["res://.godot/imported/enemy-flying.glb-6120572f403485a0abe68ce33d56638b.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/grass-small.glb b/models/grass-small.glb new file mode 100644 index 0000000..95ae69f Binary files /dev/null and b/models/grass-small.glb differ diff --git a/models/grass-small.glb.import b/models/grass-small.glb.import new file mode 100644 index 0000000..842e2fc --- /dev/null +++ b/models/grass-small.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://das5fosq6auoe" +path="res://.godot/imported/grass-small.glb-0be1c06405ef2ce478dc00acb5be5be8.scn" + +[deps] + +source_file="res://models/grass-small.glb" +dest_files=["res://.godot/imported/grass-small.glb-0be1c06405ef2ce478dc00acb5be5be8.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/grass.glb b/models/grass.glb new file mode 100644 index 0000000..88e3d48 Binary files /dev/null and b/models/grass.glb differ diff --git a/models/grass.glb.import b/models/grass.glb.import new file mode 100644 index 0000000..ba4eec0 --- /dev/null +++ b/models/grass.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://beaer7x07yif6" +path="res://.godot/imported/grass.glb-0ce858eae1c69c894a569863f13e24f1.scn" + +[deps] + +source_file="res://models/grass.glb" +dest_files=["res://.godot/imported/grass.glb-0ce858eae1c69c894a569863f13e24f1.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/platform-large-grass.glb b/models/platform-large-grass.glb new file mode 100644 index 0000000..b6392e3 Binary files /dev/null and b/models/platform-large-grass.glb differ diff --git a/models/platform-large-grass.glb.import b/models/platform-large-grass.glb.import new file mode 100644 index 0000000..1fdd84e --- /dev/null +++ b/models/platform-large-grass.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://k065rxqtim8f" +path="res://.godot/imported/platform-large-grass.glb-eba1099445789c9c9ba0b37fc57bd13f.scn" + +[deps] + +source_file="res://models/platform-large-grass.glb" +dest_files=["res://.godot/imported/platform-large-grass.glb-eba1099445789c9c9ba0b37fc57bd13f.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/platform.glb b/models/platform.glb new file mode 100644 index 0000000..8dda693 Binary files /dev/null and b/models/platform.glb differ diff --git a/models/platform.glb.import b/models/platform.glb.import new file mode 100644 index 0000000..1fbcaba --- /dev/null +++ b/models/platform.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://dwvcy6wtanoyy" +path="res://.godot/imported/platform.glb-3476c7cd272116fb58fd5d0a0eddb703.scn" + +[deps] + +source_file="res://models/platform.glb" +dest_files=["res://.godot/imported/platform.glb-3476c7cd272116fb58fd5d0a0eddb703.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/wall-high.glb b/models/wall-high.glb new file mode 100644 index 0000000..042f128 Binary files /dev/null and b/models/wall-high.glb differ diff --git a/models/wall-high.glb.import b/models/wall-high.glb.import new file mode 100644 index 0000000..9bc69b0 --- /dev/null +++ b/models/wall-high.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://c743irj356lax" +path="res://.godot/imported/wall-high.glb-74f2e81af43ef5254fe14637810326a5.scn" + +[deps] + +source_file="res://models/wall-high.glb" +dest_files=["res://.godot/imported/wall-high.glb-74f2e81af43ef5254fe14637810326a5.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/models/wall-low.glb b/models/wall-low.glb new file mode 100644 index 0000000..1b406ed Binary files /dev/null and b/models/wall-low.glb differ diff --git a/models/wall-low.glb.import b/models/wall-low.glb.import new file mode 100644 index 0000000..f995656 --- /dev/null +++ b/models/wall-low.glb.import @@ -0,0 +1,32 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://x08pt5dvke58" +path="res://.godot/imported/wall-low.glb-de080c69f0eef8b51181d363ed18f581.scn" + +[deps] + +source_file="res://models/wall-low.glb" +dest_files=["res://.godot/imported/wall-low.glb-de080c69f0eef8b51181d363ed18f581.scn"] + +[params] + +nodes/root_type="Node3D" +nodes/root_name="Scene Root" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +import_script/path="" +_subresources={} +gltf/embedded_image_handling=1 diff --git a/objects/impact.gd b/objects/impact.gd new file mode 100644 index 0000000..eb80b33 --- /dev/null +++ b/objects/impact.gd @@ -0,0 +1,4 @@ +extends Node + +func _on_animation_finished(): + queue_free() diff --git a/objects/impact.tscn b/objects/impact.tscn new file mode 100644 index 0000000..6e947a4 --- /dev/null +++ b/objects/impact.tscn @@ -0,0 +1,51 @@ +[gd_scene load_steps=8 format=3 uid="uid://b7070gfoko4mo"] + +[ext_resource type="Texture2D" uid="uid://dh0t42ubhuv0" path="res://sprites/hit.png" id="1_mdfft"] +[ext_resource type="Script" path="res://objects/impact.gd" id="2_k826h"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_8c04i"] +atlas = ExtResource("1_mdfft") +region = Rect2(0, 0, 128, 128) + +[sub_resource type="AtlasTexture" id="AtlasTexture_34j4g"] +atlas = ExtResource("1_mdfft") +region = Rect2(128, 0, 128, 128) + +[sub_resource type="AtlasTexture" id="AtlasTexture_tk4oq"] +atlas = ExtResource("1_mdfft") +region = Rect2(0, 128, 128, 128) + +[sub_resource type="AtlasTexture" id="AtlasTexture_q5m5l"] +atlas = ExtResource("1_mdfft") +region = Rect2(128, 128, 128, 128) + +[sub_resource type="SpriteFrames" id="SpriteFrames_nwydm"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_8c04i") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_34j4g") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_tk4oq") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_q5m5l") +}], +"loop": false, +"name": &"shot", +"speed": 30.0 +}] + +[node name="AnimatedSprite3D" type="AnimatedSprite3D"] +cast_shadow = 0 +pixel_size = 0.0025 +double_sided = false +no_depth_test = true +sprite_frames = SubResource("SpriteFrames_nwydm") +animation = &"shot" +script = ExtResource("2_k826h") + +[connection signal="animation_finished" from="." to="." method="_on_animation_finished"] diff --git a/objects/platform.tscn b/objects/platform.tscn new file mode 100644 index 0000000..8a34099 --- /dev/null +++ b/objects/platform.tscn @@ -0,0 +1,13 @@ +[gd_scene load_steps=3 format=3 uid="uid://dpm3l05d7fu35"] + +[ext_resource type="PackedScene" uid="uid://dwvcy6wtanoyy" path="res://models/platform.glb" id="1_0lm70"] + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_27lc5"] +data = PackedVector3Array(-0.9, 0, -0.72, -1, 0.2, -0.8, -1, 0.2, 0.8, -1, 0.2, 0.8, -0.9, 0, 0.72, -0.9, 0, -0.72, -0.95, 0.5, -0.95, -0.95, 0.2, -0.95, -0.8, 0.2, -1, -0.8, 0.2, -1, -0.8, 0.5, -1, -0.95, 0.5, -0.95, -1, 0.2, -0.8, -0.95, 0.2, -0.95, -0.95, 0.5, -0.95, -0.95, 0.5, -0.95, -1, 0.5, -0.8, -1, 0.2, -0.8, -1, 0.2, 0.8, -1, 0.2, -0.8, -1, 0.5, -0.8, -1, 0.5, -0.8, -1, 0.5, 0.8, -1, 0.2, 0.8, 0.8, 0.5, -1, 0.8, 0.2, -1, 0.95, 0.2, -0.95, 0.95, 0.2, -0.95, 0.95, 0.5, -0.95, 0.8, 0.5, -1, -0.8, 0.5, -1, -0.8, 0.2, -1, 0.8, 0.2, -1, 0.8, 0.2, -1, 0.8, 0.5, -1, -0.8, 0.5, -1, 1, 0.5, -0.8, 0.95, 0.5, -0.95, 0.95, 0.2, -0.95, 0.95, 0.2, -0.95, 1, 0.2, -0.8, 1, 0.5, -0.8, -0.8, 0.5, 1, -0.8, 0.2, 1, -0.95, 0.2, 0.95, -0.95, 0.2, 0.95, -0.95, 0.5, 0.95, -0.8, 0.5, 1, -0.95, 0.2, 0.95, -1, 0.2, 0.8, -1, 0.5, 0.8, -1, 0.5, 0.8, -0.95, 0.5, 0.95, -0.95, 0.2, 0.95, -0.8, 0.2, -1, -0.72, 0, -0.9, 0.72, 0, -0.9, 0.72, 0, -0.9, 0.8, 0.2, -1, -0.8, 0.2, -1, 1, 0.2, 0.8, 1, 0.2, -0.8, 0.9, 0, -0.72, 0.9, 0, -0.72, 0.9, 0, 0.72, 1, 0.2, 0.8, -0.95, 0.2, -0.95, -0.855, 0, -0.855, -0.72, 0, -0.9, -0.72, 0, -0.9, -0.8, 0.2, -1, -0.95, 0.2, -0.95, 1, 0.2, 0.8, 0.9, 0, 0.72, 0.855, 0, 0.855, 0.855, 0, 0.855, 0.95, 0.2, 0.95, 1, 0.2, 0.8, -0.855, 0, 0.855, -0.9, 0, 0.72, -1, 0.2, 0.8, -1, 0.2, 0.8, -0.95, 0.2, 0.95, -0.855, 0, 0.855, 0.8, 0.2, 1, 0.72, 0, 0.9, -0.72, 0, 0.9, -0.72, 0, 0.9, -0.8, 0.2, 1, 0.8, 0.2, 1, 0.95, 0.5, 0.95, 1, 0.5, 0.8, 1, 0.2, 0.8, 1, 0.2, 0.8, 0.95, 0.2, 0.95, 0.95, 0.5, 0.95, 1, 0.5, 0.8, 1, 0.5, -0.8, 1, 0.2, -0.8, 1, 0.2, -0.8, 1, 0.2, 0.8, 1, 0.5, 0.8, 1, 0.2, -0.8, 0.95, 0.2, -0.95, 0.855, 0, -0.855, 0.855, 0, -0.855, 0.9, 0, -0.72, 1, 0.2, -0.8, -0.855, 0, -0.855, -0.95, 0.2, -0.95, -1, 0.2, -0.8, -1, 0.2, -0.8, -0.9, 0, -0.72, -0.855, 0, -0.855, 0.8, 0.2, -1, 0.72, 0, -0.9, 0.855, 0, -0.855, 0.855, 0, -0.855, 0.95, 0.2, -0.95, 0.8, 0.2, -1, 0.95, 0.2, 0.95, 0.855, 0, 0.855, 0.72, 0, 0.9, 0.72, 0, 0.9, 0.8, 0.2, 1, 0.95, 0.2, 0.95, 0.855, 0, 0.855, 0.9, 0, 0.72, 0.9, 0, -0.72, 0.9, 0, -0.72, 0.855, 0, -0.855, 0.855, 0, 0.855, 0.855, 0, -0.855, 0.72, 0, 0.9, 0.855, 0, 0.855, 0.855, 0, -0.855, 0.72, 0, -0.9, 0.72, 0, 0.9, 0.72, 0, -0.9, -0.72, 0, 0.9, 0.72, 0, 0.9, 0.72, 0, -0.9, -0.72, 0, -0.9, -0.72, 0, 0.9, -0.72, 0, -0.9, -0.855, 0, -0.855, -0.72, 0, 0.9, -0.855, 0, -0.855, -0.855, 0, 0.855, -0.72, 0, 0.9, -0.855, 0, -0.855, -0.9, 0, -0.72, -0.855, 0, 0.855, -0.9, 0, -0.72, -0.9, 0, 0.72, -0.855, 0, 0.855, -0.8, 0.2, 1, -0.72, 0, 0.9, -0.855, 0, 0.855, -0.855, 0, 0.855, -0.95, 0.2, 0.95, -0.8, 0.2, 1, 0.95, 0.5, 0.95, 0.95, 0.2, 0.95, 0.8, 0.2, 1, 0.8, 0.2, 1, 0.8, 0.5, 1, 0.95, 0.5, 0.95, 0.8, 0.5, 1, 0.8, 0.2, 1, -0.8, 0.2, 1, -0.8, 0.2, 1, -0.8, 0.5, 1, 0.8, 0.5, 1, -0.95, 0.5, 0.95, -1, 0.5, 0.8, -1, 0.5, -0.8, -0.95, 0.5, 0.95, -1, 0.5, -0.8, -0.95, 0.5, -0.95, -0.8, 0.5, 1, -0.95, 0.5, 0.95, -0.95, 0.5, -0.95, -0.8, 0.5, 0.7675, -0.8, 0.5, 1, -0.95, 0.5, -0.95, -0.8, 0.5, -0.7675, -0.8, 0.5, 0.7675, -0.95, 0.5, -0.95, -0.8, 0.5, 1, -0.8, 0.5, 0.7675, -0.7919, 0.5, 0.7919, -0.8, 0.5, 1, -0.7919, 0.5, 0.7919, -0.7675, 0.5, 0.8, -0.8, 0.5, 1, -0.7675, 0.5, 0.8, 0.7675, 0.5, 0.8, -0.8, 0.5, -0.7675, -0.95, 0.5, -0.95, -0.8, 0.5, -1, 0.8, 0.5, 1, -0.8, 0.5, 1, 0.7675, 0.5, 0.8, -0.7919, 0.5, -0.7919, -0.8, 0.5, -0.7675, -0.8, 0.5, -1, -0.7675, 0.5, -0.8, -0.7919, 0.5, -0.7919, -0.8, 0.5, -1, 0.7675, 0.5, -0.8, -0.7675, 0.5, -0.8, -0.8, 0.5, -1, 0.8, 0.5, 1, 0.7675, 0.5, 0.8, 0.7919, 0.5, 0.7919, 0.7675, 0.5, -0.8, -0.8, 0.5, -1, 0.8, 0.5, -1, 0.7919, 0.5, -0.7919, 0.7675, 0.5, -0.8, 0.8, 0.5, -1, 0.8, 0.5, -0.7675, 0.7919, 0.5, -0.7919, 0.8, 0.5, -1, 0.8, 0.5, 0.7675, 0.8, 0.5, -0.7675, 0.8, 0.5, -1, 0.8, 0.5, 1, 0.7919, 0.5, 0.7919, 0.8, 0.5, 0.7675, 0.8, 0.5, -1, 0.95, 0.5, -0.95, 0.8, 0.5, 0.7675, 0.8, 0.5, 1, 0.8, 0.5, 0.7675, 0.95, 0.5, -0.95, 0.95, 0.5, 0.95, 0.8, 0.5, 1, 0.95, 0.5, -0.95, 0.95, 0.5, 0.95, 0.95, 0.5, -0.95, 1, 0.5, -0.8, 1, 0.5, -0.8, 1, 0.5, 0.8, 0.95, 0.5, 0.95, 0.8, 0.5, -0.7675, 0.8, 0.5, 0.7675, 0.7919, 0.5, 0.7919, 0.7919, 0.5, 0.7919, 0.7919, 0.5, -0.7919, 0.8, 0.5, -0.7675, 0.7919, 0.5, 0.7919, 0.7675, 0.5, 0.8, 0.7919, 0.5, -0.7919, 0.7675, 0.5, 0.8, 0.7675, 0.5, -0.8, 0.7919, 0.5, -0.7919, 0.7675, 0.5, 0.8, 0.6, 0.5, -0.6, 0.7675, 0.5, -0.8, 0.6, 0.5, -0.6, -0.7675, 0.5, -0.8, 0.7675, 0.5, -0.8, 0.7675, 0.5, 0.8, 0.6, 0.5, 0.6, 0.6, 0.5, -0.6, 0.6, 0.5, -0.6, -0.6, 0.5, -0.6, -0.7675, 0.5, -0.8, 0.6, 0.5, 0.6, 0.7675, 0.5, 0.8, -0.7675, 0.5, 0.8, -0.6, 0.5, -0.6, -0.6, 0.5, 0.6, -0.7675, 0.5, -0.8, -0.7675, 0.5, 0.8, -0.6, 0.5, 0.6, 0.6, 0.5, 0.6, -0.7675, 0.5, 0.8, -0.7675, 0.5, -0.8, -0.6, 0.5, 0.6, -0.7675, 0.5, 0.8, -0.7919, 0.5, -0.7919, -0.7675, 0.5, -0.8, -0.7675, 0.5, 0.8, -0.7919, 0.5, 0.7919, -0.7919, 0.5, -0.7919, -0.7919, 0.5, 0.7919, -0.8, 0.5, -0.7675, -0.7919, 0.5, -0.7919, -0.7919, 0.5, 0.7919, -0.8, 0.5, 0.7675, -0.8, 0.5, -0.7675, 0.6, 0.5, -0.6, 0.6, 0.5, 0.6, -0.6, 0.5, 0.6, -0.6, 0.5, 0.6, -0.6, 0.5, -0.6, 0.6, 0.5, -0.6, 0.7, 0.4, 0.7, 0.7, 0.2, 0.7, 1.1, 0.2, 0.7, 1.1, 0.2, 0.7, 1.1, 0.4, 0.7, 0.7, 0.4, 0.7, 0.7, 0.4, 0.7, 1.1, 0.4, 0.7, 1.1, 0.4, 0.8162, 1.1, 0.4, 0.8162, 1.0291, 0.4, 1.0291, 0.7, 0.4, 0.7, 1.0291, 0.4, 1.0291, 0.8162, 0.4, 1.1, 0.7, 0.4, 0.7, 0.8162, 0.4, 1.1, 0.7, 0.4, 1.1, 0.7, 0.4, 0.7, 1.1, 0.2, 0.8162, 1.1, 0.2, 0.7, 0.7, 0.2, 0.7, 0.7, 0.2, 0.7, 1.0291, 0.2, 1.0291, 1.1, 0.2, 0.8162, 0.7, 0.2, 0.7, 0.8162, 0.2, 1.1, 1.0291, 0.2, 1.0291, 0.7, 0.2, 0.7, 0.7, 0.2, 1.1, 0.8162, 0.2, 1.1, 1.0291, 0.4, 1.0291, 1.0291, 0.2, 1.0291, 0.8162, 0.2, 1.1, 0.8162, 0.2, 1.1, 0.8162, 0.4, 1.1, 1.0291, 0.4, 1.0291, 1.0291, 0.4, 1.0291, 1.1, 0.4, 0.8162, 1.1, 0.2, 0.8162, 1.1, 0.2, 0.8162, 1.0291, 0.2, 1.0291, 1.0291, 0.4, 1.0291, 1.1, 0.4, 0.8162, 1.1, 0.4, 0.7, 1.1, 0.2, 0.7, 1.1, 0.2, 0.7, 1.1, 0.2, 0.8162, 1.1, 0.4, 0.8162, 0.8162, 0.4, 1.1, 0.8162, 0.2, 1.1, 0.7, 0.2, 1.1, 0.7, 0.2, 1.1, 0.7, 0.4, 1.1, 0.8162, 0.4, 1.1, 0.7, 0.2, 1.1, 0.7, 0.2, 0.7, 0.7, 0.4, 0.7, 0.7, 0.4, 0.7, 0.7, 0.4, 1.1, 0.7, 0.2, 1.1, 1.1, 0.4, -0.7, 1.1, 0.2, -0.7, 0.7, 0.2, -0.7, 0.7, 0.2, -0.7, 0.7, 0.4, -0.7, 1.1, 0.4, -0.7, 1.1, 0.4, -0.8162, 1.1, 0.4, -0.7, 0.7, 0.4, -0.7, 0.7, 0.4, -0.7, 1.0291, 0.4, -1.0291, 1.1, 0.4, -0.8162, 0.7, 0.4, -0.7, 0.8162, 0.4, -1.1, 1.0291, 0.4, -1.0291, 0.7, 0.4, -0.7, 0.7, 0.4, -1.1, 0.8162, 0.4, -1.1, 0.7, 0.2, -0.7, 1.1, 0.2, -0.7, 1.1, 0.2, -0.8162, 1.1, 0.2, -0.8162, 1.0291, 0.2, -1.0291, 0.7, 0.2, -0.7, 1.0291, 0.2, -1.0291, 0.8162, 0.2, -1.1, 0.7, 0.2, -0.7, 0.8162, 0.2, -1.1, 0.7, 0.2, -1.1, 0.7, 0.2, -0.7, 0.7, 0.4, -1.1, 0.7, 0.2, -1.1, 0.8162, 0.2, -1.1, 0.8162, 0.2, -1.1, 0.8162, 0.4, -1.1, 0.7, 0.4, -1.1, 0.7, 0.2, -0.7, 0.7, 0.2, -1.1, 0.7, 0.4, -1.1, 0.7, 0.4, -1.1, 0.7, 0.4, -0.7, 0.7, 0.2, -0.7, 1.1, 0.4, -0.7, 1.1, 0.4, -0.8162, 1.1, 0.2, -0.8162, 1.1, 0.2, -0.8162, 1.1, 0.2, -0.7, 1.1, 0.4, -0.7, 1.1, 0.4, -0.8162, 1.0291, 0.4, -1.0291, 1.0291, 0.2, -1.0291, 1.0291, 0.2, -1.0291, 1.1, 0.2, -0.8162, 1.1, 0.4, -0.8162, 0.8162, 0.4, -1.1, 0.8162, 0.2, -1.1, 1.0291, 0.2, -1.0291, 1.0291, 0.2, -1.0291, 1.0291, 0.4, -1.0291, 0.8162, 0.4, -1.1, -1.1, 0.2, -0.7, -1.1, 0.2, -0.8162, -1.1, 0.4, -0.8162, -1.1, 0.4, -0.8162, -1.1, 0.4, -0.7, -1.1, 0.2, -0.7, -0.8162, 0.4, -1.1, -0.8162, 0.2, -1.1, -0.7, 0.2, -1.1, -0.7, 0.2, -1.1, -0.7, 0.4, -1.1, -0.8162, 0.4, -1.1, -0.8162, 0.4, -1.1, -0.7, 0.4, -1.1, -0.7, 0.4, -0.7, -0.7, 0.4, -0.7, -1.1, 0.4, -0.7, -0.8162, 0.4, -1.1, -1.1, 0.4, -0.7, -1.0291, 0.4, -1.0291, -0.8162, 0.4, -1.1, -1.1, 0.4, -0.7, -1.1, 0.4, -0.8162, -1.0291, 0.4, -1.0291, -0.7, 0.4, -0.7, -0.7, 0.4, -1.1, -0.7, 0.2, -1.1, -0.7, 0.2, -1.1, -0.7, 0.2, -0.7, -0.7, 0.4, -0.7, -0.7, 0.4, -0.7, -0.7, 0.2, -0.7, -1.1, 0.2, -0.7, -1.1, 0.2, -0.7, -1.1, 0.4, -0.7, -0.7, 0.4, -0.7, -1.0291, 0.4, -1.0291, -1.0291, 0.2, -1.0291, -0.8162, 0.2, -1.1, -0.8162, 0.2, -1.1, -0.8162, 0.4, -1.1, -1.0291, 0.4, -1.0291, -1.1, 0.2, -0.8162, -1.0291, 0.2, -1.0291, -1.0291, 0.4, -1.0291, -1.0291, 0.4, -1.0291, -1.1, 0.4, -0.8162, -1.1, 0.2, -0.8162, -0.7, 0.2, -0.7, -0.7, 0.2, -1.1, -0.8162, 0.2, -1.1, -0.8162, 0.2, -1.1, -1.1, 0.2, -0.7, -0.7, 0.2, -0.7, -0.8162, 0.2, -1.1, -1.0291, 0.2, -1.0291, -1.1, 0.2, -0.7, -1.0291, 0.2, -1.0291, -1.1, 0.2, -0.8162, -1.1, 0.2, -0.7, -0.8162, 0.2, 1.1, -0.7, 0.2, 1.1, -0.7, 0.2, 0.7, -0.7, 0.2, 0.7, -1.1, 0.2, 0.7, -0.8162, 0.2, 1.1, -1.1, 0.2, 0.7, -1.0291, 0.2, 1.0291, -0.8162, 0.2, 1.1, -1.1, 0.2, 0.7, -1.1, 0.2, 0.8162, -1.0291, 0.2, 1.0291, -1.1, 0.4, 0.7, -0.7, 0.4, 0.7, -0.7, 0.4, 1.1, -0.7, 0.4, 1.1, -0.8162, 0.4, 1.1, -1.1, 0.4, 0.7, -0.8162, 0.4, 1.1, -1.0291, 0.4, 1.0291, -1.1, 0.4, 0.7, -1.0291, 0.4, 1.0291, -1.1, 0.4, 0.8162, -1.1, 0.4, 0.7, -1.0291, 0.2, 1.0291, -1.1, 0.2, 0.8162, -1.1, 0.4, 0.8162, -1.1, 0.4, 0.8162, -1.0291, 0.4, 1.0291, -1.0291, 0.2, 1.0291, -1.1, 0.2, 0.8162, -1.1, 0.2, 0.7, -1.1, 0.4, 0.7, -1.1, 0.4, 0.7, -1.1, 0.4, 0.8162, -1.1, 0.2, 0.8162, -0.7, 0.4, 1.1, -0.7, 0.4, 0.7, -0.7, 0.2, 0.7, -0.7, 0.2, 0.7, -0.7, 0.2, 1.1, -0.7, 0.4, 1.1, -0.7, 0.4, 1.1, -0.7, 0.2, 1.1, -0.8162, 0.2, 1.1, -0.8162, 0.2, 1.1, -0.8162, 0.4, 1.1, -0.7, 0.4, 1.1, -0.8162, 0.4, 1.1, -0.8162, 0.2, 1.1, -1.0291, 0.2, 1.0291, -1.0291, 0.2, 1.0291, -1.0291, 0.4, 1.0291, -0.8162, 0.4, 1.1, -1.1, 0.4, 0.7, -1.1, 0.2, 0.7, -0.7, 0.2, 0.7, -0.7, 0.2, 0.7, -0.7, 0.4, 0.7, -1.1, 0.4, 0.7) + +[node name="platform-falling" instance=ExtResource("1_0lm70")] + +[node name="StaticBody3D" type="StaticBody3D" parent="platform-falling2" index="0"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="platform-falling2/StaticBody3D" index="0"] +shape = SubResource("ConcavePolygonShape3D_27lc5") diff --git a/objects/platform_large_grass.tscn b/objects/platform_large_grass.tscn new file mode 100644 index 0000000..fb6d9e3 --- /dev/null +++ b/objects/platform_large_grass.tscn @@ -0,0 +1,24 @@ +[gd_scene load_steps=5 format=3 uid="uid://bvx5cvigosg0s"] + +[ext_resource type="PackedScene" uid="uid://k065rxqtim8f" path="res://models/platform-large-grass.glb" id="1_aqto8"] +[ext_resource type="PackedScene" uid="uid://beaer7x07yif6" path="res://models/grass.glb" id="2_o8lrl"] +[ext_resource type="PackedScene" uid="uid://das5fosq6auoe" path="res://models/grass-small.glb" id="3_m33kb"] + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_k56ha"] +data = PackedVector3Array(2.5, 0.2, 2.3, 2.4, 0, 2.22, 2.355, 0, 2.355, 2.355, 0, 2.355, 2.45, 0.2, 2.45, 2.5, 0.2, 2.3, 2.45, 0.5, 2.45, 2.5, 0.5, 2.3, 2.5, 0.2, 2.3, 2.5, 0.2, 2.3, 2.45, 0.2, 2.45, 2.45, 0.5, 2.45, 2.45, 0.2, 2.45, 2.355, 0, 2.355, 2.22, 0, 2.4, 2.22, 0, 2.4, 2.3, 0.2, 2.5, 2.45, 0.2, 2.45, 2.45, 0.5, 2.45, 2.45, 0.2, 2.45, 2.3, 0.2, 2.5, 2.3, 0.2, 2.5, 2.3, 0.5, 2.5, 2.45, 0.5, 2.45, 2.3, 0.5, 2.5, 2.3, 0.2, 2.5, -2.3, 0.2, 2.5, -2.3, 0.2, 2.5, -2.3, 0.5, 2.5, 2.3, 0.5, 2.5, -2.45, 0.2, 2.45, -2.5, 0.2, 2.3, -2.5, 0.5, 2.3, -2.5, 0.5, 2.3, -2.45, 0.5, 2.45, -2.45, 0.2, 2.45, -2.3, 0.2, 2.5, -2.22, 0, 2.4, -2.355, 0, 2.355, -2.355, 0, 2.355, -2.45, 0.2, 2.45, -2.3, 0.2, 2.5, -2.3, 0.5, 2.5, -2.3, 0.2, 2.5, -2.45, 0.2, 2.45, -2.45, 0.2, 2.45, -2.45, 0.5, 2.45, -2.3, 0.5, 2.5, 2.3, 0.2, 2.5, 2.22, 0, 2.4, -2.22, 0, 2.4, -2.22, 0, 2.4, -2.3, 0.2, 2.5, 2.3, 0.2, 2.5, -2.355, 0, 2.355, -2.4, 0, 2.22, -2.5, 0.2, 2.3, -2.5, 0.2, 2.3, -2.45, 0.2, 2.45, -2.355, 0, 2.355, -2.45, 0.5, -2.45, -2.45, 0.2, -2.45, -2.3, 0.2, -2.5, -2.3, 0.2, -2.5, -2.3, 0.5, -2.5, -2.45, 0.5, -2.45, 2.355, 0, 2.355, 2.4, 0, 2.22, 2.4, 0, -2.22, 2.4, 0, -2.22, 2.355, 0, -2.355, 2.355, 0, 2.355, 2.355, 0, -2.355, 2.22, 0, 2.4, 2.355, 0, 2.355, 2.355, 0, -2.355, 2.22, 0, -2.4, 2.22, 0, 2.4, 2.22, 0, -2.4, -2.22, 0, 2.4, 2.22, 0, 2.4, 2.22, 0, -2.4, -2.22, 0, -2.4, -2.22, 0, 2.4, -2.22, 0, -2.4, -2.355, 0, -2.355, -2.22, 0, 2.4, -2.355, 0, -2.355, -2.355, 0, 2.355, -2.22, 0, 2.4, -2.355, 0, -2.355, -2.4, 0, -2.22, -2.355, 0, 2.355, -2.4, 0, -2.22, -2.4, 0, 2.22, -2.355, 0, 2.355, -2.355, 0, -2.355, -2.45, 0.2, -2.45, -2.5, 0.2, -2.3, -2.5, 0.2, -2.3, -2.4, 0, -2.22, -2.355, 0, -2.355, 2.5, 0.2, -2.3, 2.45, 0.2, -2.45, 2.355, 0, -2.355, 2.355, 0, -2.355, 2.4, 0, -2.22, 2.5, 0.2, -2.3, -2.3, 0.2, -2.5, -2.22, 0, -2.4, 2.22, 0, -2.4, 2.22, 0, -2.4, 2.3, 0.2, -2.5, -2.3, 0.2, -2.5, 2.5, 0.5, 2.3, 2.5, 0.5, -2.3, 2.5, 0.2, -2.3, 2.5, 0.2, -2.3, 2.5, 0.2, 2.3, 2.5, 0.5, 2.3, 2.5, 0.2, 2.3, 2.5, 0.2, -2.3, 2.4, 0, -2.22, 2.4, 0, -2.22, 2.4, 0, 2.22, 2.5, 0.2, 2.3, 2.3, 0.2, -2.5, 2.22, 0, -2.4, 2.355, 0, -2.355, 2.355, 0, -2.355, 2.45, 0.2, -2.45, 2.3, 0.2, -2.5, -2.5, 0.2, 2.3, -2.5, 0.2, -2.3, -2.5, 0.5, -2.3, -2.5, 0.5, -2.3, -2.5, 0.5, 2.3, -2.5, 0.2, 2.3, -2.5, 0.2, -2.3, -2.45, 0.2, -2.45, -2.45, 0.5, -2.45, -2.45, 0.5, -2.45, -2.5, 0.5, -2.3, -2.5, 0.2, -2.3, 2.3, 0.5, -2.5, 2.3, 0.2, -2.5, 2.45, 0.2, -2.45, 2.45, 0.2, -2.45, 2.45, 0.5, -2.45, 2.3, 0.5, -2.5, 2.5, 0.5, -2.3, 2.45, 0.5, -2.45, 2.45, 0.2, -2.45, 2.45, 0.2, -2.45, 2.5, 0.2, -2.3, 2.5, 0.5, -2.3, -2.45, 0.2, -2.45, -2.355, 0, -2.355, -2.22, 0, -2.4, -2.22, 0, -2.4, -2.3, 0.2, -2.5, -2.45, 0.2, -2.45, -2.4, 0, -2.22, -2.5, 0.2, -2.3, -2.5, 0.2, 2.3, -2.5, 0.2, 2.3, -2.4, 0, 2.22, -2.4, 0, -2.22, -2.3, 0.5, -2.5, -2.3, 0.2, -2.5, 2.3, 0.2, -2.5, 2.3, 0.2, -2.5, 2.3, 0.5, -2.5, -2.3, 0.5, -2.5, 2.5, 0.5, -2.3, 2.5, 0.5, 2.3, 2.45, 0.5, 2.45, 2.45, 0.5, 2.45, 2.45, 0.5, -2.45, 2.5, 0.5, -2.3, 2.45, 0.5, 2.45, 2.3, 0.5, -2.5, 2.45, 0.5, -2.45, 2.45, 0.5, 2.45, 2.3, 0.5, 2.2675, 2.3, 0.5, -2.5, 2.3, 0.5, 2.2675, 2.45, 0.5, 2.45, 2.3, 0.5, 2.5, 2.3, 0.5, 2.5, 2.2919, 0.5, 2.2919, 2.3, 0.5, 2.2675, 2.3, 0.5, 2.5, 2.2675, 0.5, 2.3, 2.2919, 0.5, 2.2919, 2.3, 0.5, 2.2675, 2.3, 0.5, -2.2675, 2.3, 0.5, -2.5, 2.3, 0.5, -2.2675, 2.2919, 0.5, -2.2919, 2.3, 0.5, -2.5, 2.2919, 0.5, -2.2919, 2.2675, 0.5, -2.3, 2.3, 0.5, -2.5, 2.3, 0.5, 2.5, -2.3, 0.5, 2.5, 2.2675, 0.5, 2.3, 2.2675, 0.5, -2.3, -2.3, 0.5, -2.5, 2.3, 0.5, -2.5, -2.3, 0.5, 2.5, -2.2675, 0.5, 2.3, 2.2675, 0.5, 2.3, 2.2675, 0.5, -2.3, -2.2675, 0.5, -2.3, -2.3, 0.5, -2.5, -2.2675, 0.5, -2.3, -2.2919, 0.5, -2.2919, -2.3, 0.5, -2.5, -2.2919, 0.5, -2.2919, -2.3, 0.5, -2.2675, -2.3, 0.5, -2.5, -2.3, 0.5, 2.5, -2.2919, 0.5, 2.2919, -2.2675, 0.5, 2.3, -2.3, 0.5, -2.2675, -2.45, 0.5, -2.45, -2.3, 0.5, -2.5, -2.3, 0.5, 2.5, -2.3, 0.5, 2.2675, -2.2919, 0.5, 2.2919, -2.3, 0.5, -2.2675, -2.3, 0.5, 2.2675, -2.45, 0.5, -2.45, -2.3, 0.5, 2.2675, -2.3, 0.5, 2.5, -2.45, 0.5, -2.45, -2.3, 0.5, 2.5, -2.45, 0.5, 2.45, -2.45, 0.5, -2.45, -2.45, 0.5, 2.45, -2.5, 0.5, -2.3, -2.45, 0.5, -2.45, -2.45, 0.5, 2.45, -2.5, 0.5, 2.3, -2.5, 0.5, -2.3, 2.3, 0.5, -2.2675, 2.3, 0.5, 2.2675, 2.2919, 0.5, 2.2919, 2.2919, 0.5, 2.2919, 2.2919, 0.5, -2.2919, 2.3, 0.5, -2.2675, 2.2919, 0.5, 2.2919, 2.2675, 0.5, 2.3, 2.2919, 0.5, -2.2919, 2.2675, 0.5, 2.3, 2.2675, 0.5, -2.3, 2.2919, 0.5, -2.2919, 2.2675, 0.5, 2.3, 2.1, 0.5, -2.1, 2.2675, 0.5, -2.3, 2.1, 0.5, -2.1, -2.2675, 0.5, -2.3, 2.2675, 0.5, -2.3, 2.1, 0.5, 2.1, 2.1, 0.5, -2.1, 2.2675, 0.5, 2.3, 2.1, 0.5, -2.1, -2.1, 0.5, -2.1, -2.2675, 0.5, -2.3, 2.2675, 0.5, 2.3, -2.2675, 0.5, 2.3, 2.1, 0.5, 2.1, -2.1, 0.5, -2.1, -2.1, 0.5, 2.1, -2.2675, 0.5, -2.3, -2.2675, 0.5, 2.3, -2.1, 0.5, 2.1, 2.1, 0.5, 2.1, -2.2675, 0.5, 2.3, -2.2675, 0.5, -2.3, -2.1, 0.5, 2.1, -2.2675, 0.5, 2.3, -2.2919, 0.5, -2.2919, -2.2675, 0.5, -2.3, -2.2675, 0.5, 2.3, -2.2919, 0.5, 2.2919, -2.2919, 0.5, -2.2919, -2.2919, 0.5, 2.2919, -2.3, 0.5, -2.2675, -2.2919, 0.5, -2.2919, -2.2919, 0.5, 2.2919, -2.3, 0.5, 2.2675, -2.3, 0.5, -2.2675, -2.1, 0.5, -2.1, 2.1, 0.5, -2.1, 2.1, 0.5, 2.1, 2.1, 0.5, 2.1, -2.1, 0.5, 2.1, -2.1, 0.5, -2.1) + +[node name="platform-large-grass" instance=ExtResource("1_aqto8")] + +[node name="StaticBody3D" type="StaticBody3D" parent="platform-large-grass2" index="0"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="platform-large-grass2/StaticBody3D" index="0"] +shape = SubResource("ConcavePolygonShape3D_k56ha") + +[node name="grass" parent="." index="1" instance=ExtResource("2_o8lrl")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.57788, 0.5, 1.72158) + +[node name="grass-small" parent="." index="2" instance=ExtResource("3_m33kb")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.88646, 0.5, -1.59607) + +[node name="grass2" parent="." index="3" instance=ExtResource("2_o8lrl")] +transform = Transform3D(0.782521, 0, 0.622624, 0, 1, 0, -0.622624, 0, 0.782521, 1.46331, 0.5, -1.52249) diff --git a/objects/road.tscn b/objects/road.tscn new file mode 100644 index 0000000..06f7a07 --- /dev/null +++ b/objects/road.tscn @@ -0,0 +1,13 @@ +[gd_scene load_steps=3 format=3 uid="uid://bjejhic8j8qly"] + +[ext_resource type="PackedScene" uid="uid://yq0iwmpxer1y" path="res://models/road.glb" id="1_wef6w"] + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_4i05p"] +data = PackedVector3Array(-2.5, 0, 2.5, 2.5, 0, 2.5, 2.5, 0, -2.5, 2.5, 0, -2.5, -2.5, 0, -2.5, -2.5, 0, 2.5, -2.5, 0.5, -2.5, -1.4, 0.5, -2.5, -1.4, 0.5, 2.5, -1.4, 0.5, 2.5, -2.5, 0.5, 2.5, -2.5, 0.5, -2.5, -2.5, 0.5, -2.5, -2.5, 0, -2.5, 2.5, 0, -2.5, 2.5, 0, -2.5, -1.4, 0.4, -2.5, -2.5, 0.5, -2.5, -1.4, 0.4, -2.5, -1.4, 0.5, -2.5, -2.5, 0.5, -2.5, 1.4, 0.4, -2.5, -1.4, 0.4, -2.5, 2.5, 0, -2.5, 2.5, 0, -2.5, 2.5, 0.5, -2.5, 1.4, 0.4, -2.5, 2.5, 0.5, -2.5, 1.4, 0.5, -2.5, 1.4, 0.4, -2.5, 2.5, 0.5, 2.5, 2.5, 0.5, -2.5, 2.5, 0, -2.5, 2.5, 0, -2.5, 2.5, 0, 2.5, 2.5, 0.5, 2.5, -2.5, 0, 2.5, -2.5, 0, -2.5, -2.5, 0.5, -2.5, -2.5, 0.5, -2.5, -2.5, 0.5, 2.5, -2.5, 0, 2.5, 2.5, 0.5, 2.5, 2.5, 0, 2.5, -2.5, 0, 2.5, -2.5, 0, 2.5, 1.4, 0.4, 2.5, 2.5, 0.5, 2.5, 1.4, 0.4, 2.5, 1.4, 0.5, 2.5, 2.5, 0.5, 2.5, -1.4, 0.4, 2.5, 1.4, 0.4, 2.5, -2.5, 0, 2.5, -2.5, 0, 2.5, -2.5, 0.5, 2.5, -1.4, 0.4, 2.5, -2.5, 0.5, 2.5, -1.4, 0.5, 2.5, -1.4, 0.4, 2.5, 1.4, 0.5, -2.5, 2.5, 0.5, -2.5, 2.5, 0.5, 2.5, 2.5, 0.5, 2.5, 1.4, 0.5, 2.5, 1.4, 0.5, -2.5, 1.4, 0.4, 2.5, 1.4, 0.4, -2.5, 1.4, 0.5, -2.5, 1.4, 0.5, -2.5, 1.4, 0.5, 2.5, 1.4, 0.4, 2.5, -1.4, 0.5, 2.5, -1.4, 0.5, -2.5, -1.4, 0.4, -2.5, -1.4, 0.4, -2.5, -1.4, 0.4, 2.5, -1.4, 0.5, 2.5, 1.6399, 0.5, -1.4376, 1.7434, 0.5, -1.824, 1.7434, 0.525, -1.824, 1.7434, 0.525, -1.824, 1.6399, 0.525, -1.4376, 1.6399, 0.5, -1.4376, 2.0263, 0.525, -1.3341, 2.0263, 0.5, -1.3341, 1.6399, 0.5, -1.4376, 1.6399, 0.5, -1.4376, 1.6399, 0.525, -1.4376, 2.0263, 0.525, -1.3341, 2.0263, 0.525, -1.3341, 2.1298, 0.525, -1.7204, 2.1298, 0.5, -1.7204, 2.1298, 0.5, -1.7204, 2.0263, 0.5, -1.3341, 2.0263, 0.525, -1.3341, 1.7611, 0.55, -1.7933, 2.0992, 0.55, -1.7028, 2.0086, 0.55, -1.3647, 2.0086, 0.55, -1.3647, 1.6705, 0.55, -1.4553, 1.7611, 0.55, -1.7933, 1.7434, 0.525, -1.824, 1.7434, 0.5, -1.824, 2.1298, 0.5, -1.7204, 2.1298, 0.5, -1.7204, 2.1298, 0.525, -1.7204, 1.7434, 0.525, -1.824, 2.0086, 0.55, -1.3647, 2.0211, 0.5427, -1.343, 1.6489, 0.5427, -1.4428, 1.6489, 0.5427, -1.4428, 1.6705, 0.55, -1.4553, 2.0086, 0.55, -1.3647, 2.0211, 0.5427, -1.343, 2.0263, 0.525, -1.3341, 1.6399, 0.525, -1.4376, 1.6399, 0.525, -1.4376, 1.6489, 0.5427, -1.4428, 2.0211, 0.5427, -1.343, 1.7486, 0.5427, -1.815, 1.7611, 0.55, -1.7933, 1.6705, 0.55, -1.4553, 1.6705, 0.55, -1.4553, 1.6489, 0.5427, -1.4428, 1.7486, 0.5427, -1.815, 1.6399, 0.525, -1.4376, 1.7434, 0.525, -1.824, 1.7486, 0.5427, -1.815, 1.7486, 0.5427, -1.815, 1.6489, 0.5427, -1.4428, 1.6399, 0.525, -1.4376, 1.7486, 0.5427, -1.815, 2.1208, 0.5427, -1.7153, 2.0992, 0.55, -1.7028, 2.0992, 0.55, -1.7028, 1.7611, 0.55, -1.7933, 1.7486, 0.5427, -1.815, 1.7486, 0.5427, -1.815, 1.7434, 0.525, -1.824, 2.1298, 0.525, -1.7204, 2.1298, 0.525, -1.7204, 2.1208, 0.5427, -1.7153, 1.7486, 0.5427, -1.815, 2.0992, 0.55, -1.7028, 2.1208, 0.5427, -1.7153, 2.0211, 0.5427, -1.343, 2.0211, 0.5427, -1.343, 2.0086, 0.55, -1.3647, 2.0992, 0.55, -1.7028, 2.1208, 0.5427, -1.7153, 2.1298, 0.525, -1.7204, 2.0263, 0.525, -1.3341, 2.0263, 0.525, -1.3341, 2.0211, 0.5427, -1.343, 2.1208, 0.5427, -1.7153, -2.2058, 0.5, 1.4467, -2.1023, 0.5, 1.0603, -2.1023, 0.525, 1.0603, -2.1023, 0.525, 1.0603, -2.2058, 0.525, 1.4467, -2.2058, 0.5, 1.4467, -1.8195, 0.525, 1.5502, -1.8195, 0.5, 1.5502, -2.2058, 0.5, 1.4467, -2.2058, 0.5, 1.4467, -2.2058, 0.525, 1.4467, -1.8195, 0.525, 1.5502, -1.8195, 0.525, 1.5502, -1.7159, 0.525, 1.1639, -1.7159, 0.5, 1.1639, -1.7159, 0.5, 1.1639, -1.8195, 0.5, 1.5502, -1.8195, 0.525, 1.5502, -2.0846, 0.55, 1.091, -1.7466, 0.55, 1.1815, -1.8372, 0.55, 1.5196, -1.8372, 0.55, 1.5196, -2.1752, 0.55, 1.429, -2.0846, 0.55, 1.091, -2.1023, 0.525, 1.0603, -2.1023, 0.5, 1.0603, -1.7159, 0.5, 1.1639, -1.7159, 0.5, 1.1639, -1.7159, 0.525, 1.1639, -2.1023, 0.525, 1.0603, -1.8372, 0.55, 1.5196, -1.8246, 0.5427, 1.5413, -2.1969, 0.5427, 1.4415, -2.1969, 0.5427, 1.4415, -2.1752, 0.55, 1.429, -1.8372, 0.55, 1.5196, -1.8246, 0.5427, 1.5413, -1.8195, 0.525, 1.5502, -2.2058, 0.525, 1.4467, -2.2058, 0.525, 1.4467, -2.1969, 0.5427, 1.4415, -1.8246, 0.5427, 1.5413, -2.0971, 0.5427, 1.0693, -2.0846, 0.55, 1.091, -2.1752, 0.55, 1.429, -2.1752, 0.55, 1.429, -2.1969, 0.5427, 1.4415, -2.0971, 0.5427, 1.0693, -2.2058, 0.525, 1.4467, -2.1023, 0.525, 1.0603, -2.0971, 0.5427, 1.0693, -2.0971, 0.5427, 1.0693, -2.1969, 0.5427, 1.4415, -2.2058, 0.525, 1.4467, -2.0971, 0.5427, 1.0693, -1.7249, 0.5427, 1.169, -1.7466, 0.55, 1.1815, -1.7466, 0.55, 1.1815, -2.0846, 0.55, 1.091, -2.0971, 0.5427, 1.0693, -2.0971, 0.5427, 1.0693, -2.1023, 0.525, 1.0603, -1.7159, 0.525, 1.1639, -1.7159, 0.525, 1.1639, -1.7249, 0.5427, 1.169, -2.0971, 0.5427, 1.0693, -1.7466, 0.55, 1.1815, -1.7249, 0.5427, 1.169, -1.8246, 0.5427, 1.5413, -1.8246, 0.5427, 1.5413, -1.8372, 0.55, 1.5196, -1.7466, 0.55, 1.1815, -1.7249, 0.5427, 1.169, -1.7159, 0.525, 1.1639, -1.8195, 0.525, 1.5502, -1.8195, 0.525, 1.5502, -1.8246, 0.5427, 1.5413, -1.7249, 0.5427, 1.169, -2.2406, 0.5, 2.1461, -2.3442, 0.5, 1.7598, -2.3442, 0.525, 1.7598, -2.3442, 0.525, 1.7598, -2.2406, 0.525, 2.1461, -2.2406, 0.5, 2.1461, -1.8543, 0.525, 2.0426, -1.8543, 0.5, 2.0426, -2.2406, 0.5, 2.1461, -2.2406, 0.5, 2.1461, -2.2406, 0.525, 2.1461, -1.8543, 0.525, 2.0426, -1.8543, 0.525, 2.0426, -1.9578, 0.525, 1.6562, -1.9578, 0.5, 1.6562, -1.9578, 0.5, 1.6562, -1.8543, 0.5, 2.0426, -1.8543, 0.525, 2.0426, -2.3136, 0.55, 1.7774, -1.9755, 0.55, 1.6869, -1.8849, 0.55, 2.0249, -1.8849, 0.55, 2.0249, -2.223, 0.55, 2.1155, -2.3136, 0.55, 1.7774, -2.3442, 0.525, 1.7598, -2.3442, 0.5, 1.7598, -1.9578, 0.5, 1.6562, -1.9578, 0.5, 1.6562, -1.9578, 0.525, 1.6562, -2.3442, 0.525, 1.7598, -1.8849, 0.55, 2.0249, -1.8632, 0.5427, 2.0374, -2.2355, 0.5427, 2.1372, -2.2355, 0.5427, 2.1372, -2.223, 0.55, 2.1155, -1.8849, 0.55, 2.0249, -1.8632, 0.5427, 2.0374, -1.8543, 0.525, 2.0426, -2.2406, 0.525, 2.1461, -2.2406, 0.525, 2.1461, -2.2355, 0.5427, 2.1372, -1.8632, 0.5427, 2.0374, -2.3352, 0.5427, 1.7649, -2.3136, 0.55, 1.7774, -2.223, 0.55, 2.1155, -2.223, 0.55, 2.1155, -2.2355, 0.5427, 2.1372, -2.3352, 0.5427, 1.7649, -2.2406, 0.525, 2.1461, -2.3442, 0.525, 1.7598, -2.3352, 0.5427, 1.7649, -2.3352, 0.5427, 1.7649, -2.2355, 0.5427, 2.1372, -2.2406, 0.525, 2.1461, -2.3352, 0.5427, 1.7649, -1.963, 0.5427, 1.6652, -1.9755, 0.55, 1.6869, -1.9755, 0.55, 1.6869, -2.3136, 0.55, 1.7774, -2.3352, 0.5427, 1.7649, -2.3352, 0.5427, 1.7649, -2.3442, 0.525, 1.7598, -1.9578, 0.525, 1.6562, -1.9578, 0.525, 1.6562, -1.963, 0.5427, 1.6652, -2.3352, 0.5427, 1.7649, -1.9755, 0.55, 1.6869, -1.963, 0.5427, 1.6652, -1.8632, 0.5427, 2.0374, -1.8632, 0.5427, 2.0374, -1.8849, 0.55, 2.0249, -1.9755, 0.55, 1.6869, -1.963, 0.5427, 1.6652, -1.9578, 0.525, 1.6562, -1.8543, 0.525, 2.0426, -1.8543, 0.525, 2.0426, -1.8632, 0.5427, 2.0374, -1.963, 0.5427, 1.6652, -1.4, 0.4, -2.5, 1.4, 0.4, -2.5, 1.4, 0.4, 2.5, 1.4, 0.4, 2.5, -1.4, 0.4, 2.5, -1.4, 0.4, -2.5) + +[node name="road" instance=ExtResource("1_wef6w")] + +[node name="StaticBody3D" type="StaticBody3D" parent="road2" index="0"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="road2/StaticBody3D" index="0"] +shape = SubResource("ConcavePolygonShape3D_4i05p") diff --git a/objects/wall_high.tscn b/objects/wall_high.tscn new file mode 100644 index 0000000..c2c9a68 --- /dev/null +++ b/objects/wall_high.tscn @@ -0,0 +1,13 @@ +[gd_scene load_steps=3 format=3 uid="uid://c71evdjblk5wp"] + +[ext_resource type="PackedScene" uid="uid://c743irj356lax" path="res://models/wall-high.glb" id="1_uytvm"] + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_os6w7"] +data = PackedVector3Array(-0.4221, 1.65, 0.3502, -0.4221, 1.7, 0.3002, -0.3221, 1.7, 0.3502, -0.5221, 1.7, 0.3502, -0.4221, 1.7, 0.3002, -0.4221, 1.65, 0.3502, -0.1041, 1.7, 0.2652, -0.1041, 1.615, 0.3502, -0.2146, 1.7, 0.3502, -0.1041, 1.7, 0.2652, 0.0064, 1.7, 0.3502, -0.1041, 1.615, 0.3502, -0.0163, 0.2, 0.2652, 0.0874, 0.2, 0.3502, -0.0163, 0.115, 0.3502, -0.0163, 0.2, 0.2652, -0.0163, 0.115, 0.3502, -0.12, 0.2, 0.3502, -0.0397, 1.7, -0.2648, -0.0397, 1.615, -0.3498, 0.0776, 1.7, -0.3498, -0.0397, 1.7, -0.2648, -0.157, 1.7, -0.3498, -0.0397, 1.615, -0.3498, -0.4406, 0.2, -0.2648, -0.6106, 0.2, -0.3498, -0.4406, 0.115, -0.3498, -0.4406, 0.2, -0.2648, -0.4406, 0.115, -0.3498, -0.2706, 0.2, -0.3498, -1.1, 0, 0.3002, -1.1, 0, -0.2998, -1.1, 0.2, -0.2998, -1.1, 0.2, -0.2998, -1.1, 0.2, 0.3002, -1.1, 0, 0.3002, -1.1, 0, -0.2998, -1.05, 0, -0.3498, -1.05, 0.2, -0.3498, -1.05, 0.2, -0.3498, -1.1, 0.2, -0.2998, -1.1, 0, -0.2998, -1.05, 0, 0.3502, -1.1, 0, 0.3002, -1.1, 0.2, 0.3002, -1.1, 0.2, 0.3002, -1.05, 0.2, 0.3502, -1.05, 0, 0.3502, -1.1, 1.5, -0.2998, -1.05, 1.5, -0.3498, -1.05, 1.7, -0.3498, -1.05, 1.7, -0.3498, -1.1, 1.7, -0.2998, -1.1, 1.5, -0.2998, -1.05, 1.5, 0.3502, -1.1, 1.5, 0.3002, -1.1, 1.7, 0.3002, -1.1, 1.7, 0.3002, -1.05, 1.7, 0.3502, -1.05, 1.5, 0.3502, -1.1, 1.5, 0.3002, -1.1, 1.5, -0.2998, -1.1, 1.7, -0.2998, -1.1, 1.7, -0.2998, -1.1, 1.7, 0.3002, -1.1, 1.5, 0.3002, -0.4221, 1.65, 0.3502, -0.3221, 1.7, 0.3502, -0.2146, 1.7, 0.3502, -0.2146, 1.7, 0.3502, -0.1041, 1.615, 0.3502, -0.4221, 1.65, 0.3502, -1.05, 1.7, 0.3502, -0.4221, 1.65, 0.3502, -0.1041, 1.615, 0.3502, -1.05, 1.7, 0.3502, -0.5221, 1.7, 0.3502, -0.4221, 1.65, 0.3502, -0.1041, 1.615, 0.3502, -1.05, 1.5, 0.3502, -1.05, 1.7, 0.3502, 0.35, 1.5, 0.3502, -1.05, 1.5, 0.3502, -0.1041, 1.615, 0.3502, -0.1041, 1.615, 0.3502, 0.35, 1.7, 0.3502, 0.35, 1.5, 0.3502, -0.1041, 1.615, 0.3502, 0.0064, 1.7, 0.3502, 0.35, 1.7, 0.3502, 0.35, 0.2, 0.3502, 0.4, 0.2, 0.3002, 0.4, 0, 0.3002, 0.4, 0, 0.3002, 0.35, 0, 0.3502, 0.35, 0.2, 0.3502, 0.35, 0.2, -0.3498, 0.4, 0.2, -0.2998, 0.4, 0.2, 0.3002, 0.4, 0.2, 0.3002, 0.35, 0.2, 0.3502, 0.35, 0.2, -0.3498, 0.35, 0.2, 0.3502, 0.3, 0.2, -0.2498, 0.35, 0.2, -0.3498, 0.3, 0.2, -0.2498, -0.2706, 0.2, -0.3498, 0.35, 0.2, -0.3498, 0.3, 0.2, -0.2498, -0.4406, 0.2, -0.2648, -0.2706, 0.2, -0.3498, 0.3, 0.2, 0.2502, 0.3, 0.2, -0.2498, 0.35, 0.2, 0.3502, 0.35, 0.2, 0.3502, 0.0874, 0.2, 0.3502, 0.3, 0.2, 0.2502, 0.0874, 0.2, 0.3502, -0.0163, 0.2, 0.2652, 0.3, 0.2, 0.2502, 0.3, 0.2, -0.2498, -1, 0.2, -0.2498, -0.4406, 0.2, -0.2648, -1, 0.2, -0.2498, -0.6106, 0.2, -0.3498, -0.4406, 0.2, -0.2648, -0.0163, 0.2, 0.2652, -1, 0.2, 0.2502, 0.3, 0.2, 0.2502, -1, 0.2, -0.2498, -1.05, 0.2, -0.3498, -0.6106, 0.2, -0.3498, -1, 0.2, -0.2498, -1, 0.2, 0.2502, -1.05, 0.2, -0.3498, -0.0163, 0.2, 0.2652, -0.12, 0.2, 0.3502, -1, 0.2, 0.2502, -0.12, 0.2, 0.3502, -1.05, 0.2, 0.3502, -1, 0.2, 0.2502, -1.05, 0.2, 0.3502, -1.05, 0.2, -0.3498, -1, 0.2, 0.2502, -1.05, 0.2, 0.3502, -1.1, 0.2, -0.2998, -1.05, 0.2, -0.3498, -1.05, 0.2, 0.3502, -1.1, 0.2, 0.3002, -1.1, 0.2, -0.2998, -1.05, 0.2, -0.3498, -1.05, 0, -0.3498, 0.35, 0, -0.3498, 0.35, 0, -0.3498, -0.4406, 0.115, -0.3498, -1.05, 0.2, -0.3498, -0.4406, 0.115, -0.3498, -0.6106, 0.2, -0.3498, -1.05, 0.2, -0.3498, -0.4406, 0.115, -0.3498, 0.35, 0, -0.3498, 0.35, 0.2, -0.3498, 0.35, 0.2, -0.3498, -0.2706, 0.2, -0.3498, -0.4406, 0.115, -0.3498, 0.4, 0.2, 0.3002, 0.4, 0.2, -0.2998, 0.4, 0, -0.2998, 0.4, 0, -0.2998, 0.4, 0, 0.3002, 0.4, 0.2, 0.3002, 0.35, 1.7, 0.3502, 0.4, 1.7, 0.3002, 0.4, 1.5, 0.3002, 0.4, 1.5, 0.3002, 0.35, 1.5, 0.3502, 0.35, 1.7, 0.3502, 0.4, 1.7, 0.3002, 0.4, 1.7, -0.2998, 0.4, 1.5, -0.2998, 0.4, 1.5, -0.2998, 0.4, 1.5, 0.3002, 0.4, 1.7, 0.3002, 0.35, 1.7, -0.3498, 0.4, 1.7, -0.2998, 0.4, 1.7, 0.3002, 0.4, 1.7, 0.3002, 0.35, 1.7, 0.3502, 0.35, 1.7, -0.3498, 0.35, 1.7, 0.3502, 0.0776, 1.7, -0.3498, 0.35, 1.7, -0.3498, 0.35, 1.7, 0.3502, 0.0064, 1.7, 0.3502, 0.0776, 1.7, -0.3498, 0.0064, 1.7, 0.3502, -0.0397, 1.7, -0.2648, 0.0776, 1.7, -0.3498, 0.0064, 1.7, 0.3502, -0.1041, 1.7, 0.2652, -0.0397, 1.7, -0.2648, -0.1041, 1.7, 0.2652, -0.157, 1.7, -0.3498, -0.0397, 1.7, -0.2648, -0.1041, 1.7, 0.2652, -0.2146, 1.7, 0.3502, -0.157, 1.7, -0.3498, -0.2146, 1.7, 0.3502, -1.05, 1.7, -0.3498, -0.157, 1.7, -0.3498, -0.2146, 1.7, 0.3502, -0.3221, 1.7, 0.3502, -1.05, 1.7, -0.3498, -0.3221, 1.7, 0.3502, -0.4221, 1.7, 0.3002, -1.05, 1.7, -0.3498, -0.4221, 1.7, 0.3002, -0.5221, 1.7, 0.3502, -1.05, 1.7, -0.3498, -0.5221, 1.7, 0.3502, -1.05, 1.7, 0.3502, -1.05, 1.7, -0.3498, -1.05, 1.7, 0.3502, -1.1, 1.7, -0.2998, -1.05, 1.7, -0.3498, -1.05, 1.7, 0.3502, -1.1, 1.7, 0.3002, -1.1, 1.7, -0.2998, 0.4, 1.7, -0.2998, 0.35, 1.7, -0.3498, 0.35, 1.5, -0.3498, 0.35, 1.5, -0.3498, 0.4, 1.5, -0.2998, 0.4, 1.7, -0.2998, 0.35, 1.5, 0.3502, 0.4, 1.5, 0.3002, 0.4, 1.5, -0.2998, 0.4, 1.5, -0.2998, 0.35, 1.5, -0.3498, 0.35, 1.5, 0.3502, 0.35, 1.5, -0.3498, 0.3, 1.5, 0.2502, 0.35, 1.5, 0.3502, 0.3, 1.5, 0.2502, -1.05, 1.5, 0.3502, 0.35, 1.5, 0.3502, 0.3, 1.5, -0.2498, 0.3, 1.5, 0.2502, 0.35, 1.5, -0.3498, 0.3, 1.5, 0.2502, -1, 1.5, 0.2502, -1.05, 1.5, 0.3502, 0.35, 1.5, -0.3498, -1.05, 1.5, -0.3498, 0.3, 1.5, -0.2498, -1, 1.5, 0.2502, -1, 1.5, -0.2498, -1.05, 1.5, 0.3502, -1.05, 1.5, -0.3498, -1, 1.5, -0.2498, 0.3, 1.5, -0.2498, -1.05, 1.5, -0.3498, -1.05, 1.5, 0.3502, -1, 1.5, -0.2498, -1.05, 1.5, -0.3498, -1.1, 1.5, 0.3002, -1.05, 1.5, 0.3502, -1.05, 1.5, -0.3498, -1.1, 1.5, -0.2998, -1.1, 1.5, 0.3002, -1.05, 1.7, -0.3498, -1.05, 1.5, -0.3498, 0.35, 1.5, -0.3498, 0.35, 1.5, -0.3498, -0.0397, 1.615, -0.3498, -1.05, 1.7, -0.3498, -0.0397, 1.615, -0.3498, -0.157, 1.7, -0.3498, -1.05, 1.7, -0.3498, -0.0397, 1.615, -0.3498, 0.35, 1.5, -0.3498, 0.35, 1.7, -0.3498, 0.35, 1.7, -0.3498, 0.0776, 1.7, -0.3498, -0.0397, 1.615, -0.3498, 0.35, 0, 0.3502, 0.4, 0, 0.3002, 0.4, 0, -0.2998, 0.4, 0, -0.2998, 0.35, 0, -0.3498, 0.35, 0, 0.3502, 0.35, 0, -0.3498, -1.05, 0, 0.3502, 0.35, 0, 0.3502, 0.35, 0, -0.3498, -1.05, 0, -0.3498, -1.05, 0, 0.3502, -1.05, 0, -0.3498, -1.1, 0, 0.3002, -1.05, 0, 0.3502, -1.05, 0, -0.3498, -1.1, 0, -0.2998, -1.1, 0, 0.3002, 0.4, 0.2, -0.2998, 0.35, 0.2, -0.3498, 0.35, 0, -0.3498, 0.35, 0, -0.3498, 0.4, 0, -0.2998, 0.4, 0.2, -0.2998, -0.0163, 0.115, 0.3502, 0.0874, 0.2, 0.3502, 0.35, 0.2, 0.3502, -0.0163, 0.115, 0.3502, 0.35, 0.2, 0.3502, 0.35, 0, 0.3502, 0.35, 0, 0.3502, -1.05, 0, 0.3502, -0.0163, 0.115, 0.3502, -0.0163, 0.115, 0.3502, -1.05, 0, 0.3502, -1.05, 0.2, 0.3502, -1.05, 0.2, 0.3502, -0.12, 0.2, 0.3502, -0.0163, 0.115, 0.3502, -1, 0.2, 0.2502, -1, 0.2, -0.2498, -1, 1.5, -0.2498, -1, 1.5, -0.2498, -1, 1.5, 0.2502, -1, 0.2, 0.2502, 0.3, 1.5, 0.2502, 0.3, 1.5, -0.2498, 0.3, 0.2, -0.2498, 0.3, 0.2, -0.2498, 0.3, 0.2, 0.2502, 0.3, 1.5, 0.2502, -1, 1.5, -0.2498, -1, 0.2, -0.2498, 0.3, 0.2, -0.2498, 0.3, 0.2, -0.2498, 0.3, 1.5, -0.2498, -1, 1.5, -0.2498, -1, 1.5, -0.2498, 0.3, 1.5, -0.2498, 0.3, 1.5, 0.2502, 0.3, 1.5, 0.2502, -1, 1.5, 0.2502, -1, 1.5, -0.2498, 0.3, 1.5, 0.2502, 0.3, 0.2, 0.2502, -1, 0.2, 0.2502, -1, 0.2, 0.2502, -1, 1.5, 0.2502, 0.3, 1.5, 0.2502, -0.062, 0.3863, 0.2817, -0.086, 0.3863, 0.2502, -0.086, 0.4948, 0.2502, -0.086, 0.4948, 0.2502, -0.062, 0.4948, 0.2817, -0.062, 0.3863, 0.2817, 0.0681, 0.4948, 0.2817, 0.0681, 0.3863, 0.2817, -0.062, 0.3863, 0.2817, -0.062, 0.3863, 0.2817, -0.062, 0.4948, 0.2817, 0.0681, 0.4948, 0.2817, 0.0681, 0.3863, 0.2817, 0.0921, 0.3863, 0.2502, -0.086, 0.3863, 0.2502, -0.086, 0.3863, 0.2502, -0.062, 0.3863, 0.2817, 0.0681, 0.3863, 0.2817, 0.0681, 0.4948, 0.2817, 0.0921, 0.4948, 0.2502, 0.0921, 0.3863, 0.2502, 0.0921, 0.3863, 0.2502, 0.0681, 0.3863, 0.2817, 0.0681, 0.4948, 0.2817, -0.086, 0.4948, 0.2502, 0.0921, 0.4948, 0.2502, 0.0681, 0.4948, 0.2817, 0.0681, 0.4948, 0.2817, -0.062, 0.4948, 0.2817, -0.086, 0.4948, 0.2502, -0.8279, 0.5479, 0.2817, -0.8518, 0.5479, 0.2502, -0.8518, 0.6564, 0.2502, -0.8518, 0.6564, 0.2502, -0.8279, 0.6564, 0.2817, -0.8279, 0.5479, 0.2817, -0.6977, 0.6564, 0.2817, -0.6977, 0.5479, 0.2817, -0.8279, 0.5479, 0.2817, -0.8279, 0.5479, 0.2817, -0.8279, 0.6564, 0.2817, -0.6977, 0.6564, 0.2817, -0.6977, 0.5479, 0.2817, -0.6738, 0.5479, 0.2502, -0.8518, 0.5479, 0.2502, -0.8518, 0.5479, 0.2502, -0.8279, 0.5479, 0.2817, -0.6977, 0.5479, 0.2817, -0.6977, 0.6564, 0.2817, -0.6738, 0.6564, 0.2502, -0.6738, 0.5479, 0.2502, -0.6738, 0.5479, 0.2502, -0.6977, 0.5479, 0.2817, -0.6977, 0.6564, 0.2817, -0.8518, 0.6564, 0.2502, -0.6738, 0.6564, 0.2502, -0.6977, 0.6564, 0.2817, -0.6977, 0.6564, 0.2817, -0.8279, 0.6564, 0.2817, -0.8518, 0.6564, 0.2502, -0.7079, 0.7066, 0.2817, -0.7319, 0.7066, 0.2502, -0.7319, 0.815, 0.2502, -0.7319, 0.815, 0.2502, -0.7079, 0.815, 0.2817, -0.7079, 0.7066, 0.2817, -0.5778, 0.815, 0.2817, -0.5778, 0.7066, 0.2817, -0.7079, 0.7066, 0.2817, -0.7079, 0.7066, 0.2817, -0.7079, 0.815, 0.2817, -0.5778, 0.815, 0.2817, -0.5778, 0.7066, 0.2817, -0.5539, 0.7066, 0.2502, -0.7319, 0.7066, 0.2502, -0.7319, 0.7066, 0.2502, -0.7079, 0.7066, 0.2817, -0.5778, 0.7066, 0.2817, -0.5778, 0.815, 0.2817, -0.5539, 0.815, 0.2502, -0.5539, 0.7066, 0.2502, -0.5539, 0.7066, 0.2502, -0.5778, 0.7066, 0.2817, -0.5778, 0.815, 0.2817, -0.7319, 0.815, 0.2502, -0.5539, 0.815, 0.2502, -0.5778, 0.815, 0.2817, -0.5778, 0.815, 0.2817, -0.7079, 0.815, 0.2817, -0.7319, 0.815, 0.2502, -0.2217, 1.252, 0.2817, -0.2456, 1.252, 0.2502, -0.2456, 1.3605, 0.2502, -0.2456, 1.3605, 0.2502, -0.2217, 1.3605, 0.2817, -0.2217, 1.252, 0.2817, -0.0915, 1.3605, 0.2817, -0.0915, 1.252, 0.2817, -0.2217, 1.252, 0.2817, -0.2217, 1.252, 0.2817, -0.2217, 1.3605, 0.2817, -0.0915, 1.3605, 0.2817, -0.0915, 1.252, 0.2817, -0.0676, 1.252, 0.2502, -0.2456, 1.252, 0.2502, -0.2456, 1.252, 0.2502, -0.2217, 1.252, 0.2817, -0.0915, 1.252, 0.2817, -0.0915, 1.3605, 0.2817, -0.0676, 1.3605, 0.2502, -0.0676, 1.252, 0.2502, -0.0676, 1.252, 0.2502, -0.0915, 1.252, 0.2817, -0.0915, 1.3605, 0.2817, -0.2456, 1.3605, 0.2502, -0.0676, 1.3605, 0.2502, -0.0915, 1.3605, 0.2817, -0.0915, 1.3605, 0.2817, -0.2217, 1.3605, 0.2817, -0.2456, 1.3605, 0.2502, -0.4736, 0.4737, -0.2813, -0.4496, 0.4737, -0.2498, -0.4496, 0.5822, -0.2498, -0.4496, 0.5822, -0.2498, -0.4736, 0.5822, -0.2813, -0.4736, 0.4737, -0.2813, -0.6037, 0.5822, -0.2813, -0.6037, 0.4737, -0.2813, -0.4736, 0.4737, -0.2813, -0.4736, 0.4737, -0.2813, -0.4736, 0.5822, -0.2813, -0.6037, 0.5822, -0.2813, -0.6037, 0.4737, -0.2813, -0.6276, 0.4737, -0.2498, -0.4496, 0.4737, -0.2498, -0.4496, 0.4737, -0.2498, -0.4736, 0.4737, -0.2813, -0.6037, 0.4737, -0.2813, -0.6037, 0.5822, -0.2813, -0.6276, 0.5822, -0.2498, -0.6276, 0.4737, -0.2498, -0.6276, 0.4737, -0.2498, -0.6037, 0.4737, -0.2813, -0.6037, 0.5822, -0.2813, -0.4496, 0.5822, -0.2498, -0.6276, 0.5822, -0.2498, -0.6037, 0.5822, -0.2813, -0.6037, 0.5822, -0.2813, -0.4736, 0.5822, -0.2813, -0.4496, 0.5822, -0.2498, -0.5935, 0.6338, -0.2813, -0.5696, 0.6338, -0.2498, -0.5696, 0.7423, -0.2498, -0.5696, 0.7423, -0.2498, -0.5935, 0.7423, -0.2813, -0.5935, 0.6338, -0.2813, -0.7237, 0.7423, -0.2813, -0.7237, 0.6338, -0.2813, -0.5935, 0.6338, -0.2813, -0.5935, 0.6338, -0.2813, -0.5935, 0.7423, -0.2813, -0.7237, 0.7423, -0.2813, -0.7237, 0.6338, -0.2813, -0.7476, 0.6338, -0.2498, -0.5696, 0.6338, -0.2498, -0.5696, 0.6338, -0.2498, -0.5935, 0.6338, -0.2813, -0.7237, 0.6338, -0.2813, -0.7237, 0.7423, -0.2813, -0.7476, 0.7423, -0.2498, -0.7476, 0.6338, -0.2498, -0.7476, 0.6338, -0.2498, -0.7237, 0.6338, -0.2813, -0.7237, 0.7423, -0.2813, -0.5696, 0.7423, -0.2498, -0.7476, 0.7423, -0.2498, -0.7237, 0.7423, -0.2813, -0.7237, 0.7423, -0.2813, -0.5935, 0.7423, -0.2813, -0.5696, 0.7423, -0.2498, 0.031, 1.1075, -0.2813, 0.0549, 1.1075, -0.2498, 0.0549, 1.216, -0.2498, 0.0549, 1.216, -0.2498, 0.031, 1.216, -0.2813, 0.031, 1.1075, -0.2813, -0.0992, 1.216, -0.2813, -0.0992, 1.1075, -0.2813, 0.031, 1.1075, -0.2813, 0.031, 1.1075, -0.2813, 0.031, 1.216, -0.2813, -0.0992, 1.216, -0.2813, -0.0992, 1.1075, -0.2813, -0.1231, 1.1075, -0.2498, 0.0549, 1.1075, -0.2498, 0.0549, 1.1075, -0.2498, 0.031, 1.1075, -0.2813, -0.0992, 1.1075, -0.2813, -0.0992, 1.216, -0.2813, -0.1231, 1.216, -0.2498, -0.1231, 1.1075, -0.2498, -0.1231, 1.1075, -0.2498, -0.0992, 1.1075, -0.2813, -0.0992, 1.216, -0.2813, 0.0549, 1.216, -0.2498, -0.1231, 1.216, -0.2498, -0.0992, 1.216, -0.2813, -0.0992, 1.216, -0.2813, 0.031, 1.216, -0.2813, 0.0549, 1.216, -0.2498, 0.3315, 0.5505, 0.0104, 0.3, 0.5505, 0.0343, 0.3, 0.659, 0.0343, 0.3, 0.659, 0.0343, 0.3315, 0.659, 0.0104, 0.3315, 0.5505, 0.0104, 0.3315, 0.659, -0.1198, 0.3315, 0.5505, -0.1198, 0.3315, 0.5505, 0.0104, 0.3315, 0.5505, 0.0104, 0.3315, 0.659, 0.0104, 0.3315, 0.659, -0.1198, 0.3315, 0.5505, -0.1198, 0.3, 0.5505, -0.1437, 0.3, 0.5505, 0.0343, 0.3, 0.5505, 0.0343, 0.3315, 0.5505, 0.0104, 0.3315, 0.5505, -0.1198, 0.3315, 0.659, -0.1198, 0.3, 0.659, -0.1437, 0.3, 0.5505, -0.1437, 0.3, 0.5505, -0.1437, 0.3315, 0.5505, -0.1198, 0.3315, 0.659, -0.1198, 0.3, 0.659, 0.0343, 0.3, 0.659, -0.1437, 0.3315, 0.659, -0.1198, 0.3315, 0.659, -0.1198, 0.3315, 0.659, 0.0104, 0.3, 0.659, 0.0343, -1.0315, 1.1149, -0.0418, -1, 1.1149, -0.0657, -1, 1.2233, -0.0657, -1, 1.2233, -0.0657, -1.0315, 1.2233, -0.0418, -1.0315, 1.1149, -0.0418, -1.0315, 1.2233, 0.0884, -1.0315, 1.1149, 0.0884, -1.0315, 1.1149, -0.0418, -1.0315, 1.1149, -0.0418, -1.0315, 1.2233, -0.0418, -1.0315, 1.2233, 0.0884, -1.0315, 1.1149, 0.0884, -1, 1.1149, 0.1123, -1, 1.1149, -0.0657, -1, 1.1149, -0.0657, -1.0315, 1.1149, -0.0418, -1.0315, 1.1149, 0.0884, -1.0315, 1.2233, 0.0884, -1, 1.2233, 0.1123, -1, 1.1149, 0.1123, -1, 1.1149, 0.1123, -1.0315, 1.1149, 0.0884, -1.0315, 1.2233, 0.0884, -1, 1.2233, -0.0657, -1, 1.2233, 0.1123, -1.0315, 1.2233, 0.0884, -1.0315, 1.2233, 0.0884, -1.0315, 1.2233, -0.0418, -1, 1.2233, -0.0657) + +[node name="wall-high" instance=ExtResource("1_uytvm")] + +[node name="StaticBody3D" type="StaticBody3D" parent="wall-high2" index="0"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="wall-high2/StaticBody3D" index="0"] +shape = SubResource("ConcavePolygonShape3D_os6w7") diff --git a/objects/wall_low.tscn b/objects/wall_low.tscn new file mode 100644 index 0000000..6a8211d --- /dev/null +++ b/objects/wall_low.tscn @@ -0,0 +1,13 @@ +[gd_scene load_steps=3 format=3 uid="uid://r7rt7pth4u7o"] + +[ext_resource type="PackedScene" uid="uid://x08pt5dvke58" path="res://models/wall-low.glb" id="1_6rbli"] + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_rbsb6"] +data = PackedVector3Array(-0.4221, 0.85, 0.3502, -0.4221, 0.9, 0.3002, -0.3221, 0.9, 0.3502, -0.5221, 0.9, 0.3502, -0.4221, 0.9, 0.3002, -0.4221, 0.85, 0.3502, -0.1041, 0.9, 0.2652, -0.1041, 0.815, 0.3502, -0.2146, 0.9, 0.3502, -0.1041, 0.9, 0.2652, 0.0064, 0.9, 0.3502, -0.1041, 0.815, 0.3502, 0.6837, 0.2, 0.2652, 0.7874, 0.2, 0.3502, 0.6837, 0.115, 0.3502, 0.6837, 0.2, 0.2652, 0.6837, 0.115, 0.3502, 0.58, 0.2, 0.3502, 0.6603, 0.9, -0.2648, 0.6603, 0.815, -0.3498, 0.7776, 0.9, -0.3498, 0.6603, 0.9, -0.2648, 0.543, 0.9, -0.3498, 0.6603, 0.815, -0.3498, -0.4406, 0.2, -0.2648, -0.6106, 0.2, -0.3498, -0.4406, 0.115, -0.3498, -0.4406, 0.2, -0.2648, -0.4406, 0.115, -0.3498, -0.2706, 0.2, -0.3498, -1.1, 0, 0.3002, -1.1, 0, -0.2998, -1.1, 0.2, -0.2998, -1.1, 0.2, -0.2998, -1.1, 0.2, 0.3002, -1.1, 0, 0.3002, 1.1, 0.2, 0.3002, 1.1, 0.2, -0.2998, 1.1, 0, -0.2998, 1.1, 0, -0.2998, 1.1, 0, 0.3002, 1.1, 0.2, 0.3002, -1.1, 0, -0.2998, -1.05, 0, -0.3498, -1.05, 0.2, -0.3498, -1.05, 0.2, -0.3498, -1.1, 0.2, -0.2998, -1.1, 0, -0.2998, -1.05, 0, 0.3502, -1.1, 0, 0.3002, -1.1, 0.2, 0.3002, -1.1, 0.2, 0.3002, -1.05, 0.2, 0.3502, -1.05, 0, 0.3502, 1.1, 0.2, -0.2998, 1.05, 0.2, -0.3498, 1.05, 0, -0.3498, 1.05, 0, -0.3498, 1.1, 0, -0.2998, 1.1, 0.2, -0.2998, 1.05, 0.2, 0.3502, 1.1, 0.2, 0.3002, 1.1, 0, 0.3002, 1.1, 0, 0.3002, 1.05, 0, 0.3502, 1.05, 0.2, 0.3502, 1.05, 0, 0.3502, 1.1, 0, 0.3002, 1.1, 0, -0.2998, 1.1, 0, -0.2998, 1.05, 0, -0.3498, 1.05, 0, 0.3502, 1.05, 0, -0.3498, -1.05, 0, 0.3502, 1.05, 0, 0.3502, 1.05, 0, -0.3498, -1.05, 0, -0.3498, -1.05, 0, 0.3502, -1.05, 0, -0.3498, -1.1, 0, 0.3002, -1.05, 0, 0.3502, -1.05, 0, -0.3498, -1.1, 0, -0.2998, -1.1, 0, 0.3002, 1.05, 0.9, 0.3502, 1.1, 0.9, 0.3002, 1.1, 0.7, 0.3002, 1.1, 0.7, 0.3002, 1.05, 0.7, 0.3502, 1.05, 0.9, 0.3502, 1.1, 0.9, 0.3002, 1.1, 0.9, -0.2998, 1.1, 0.7, -0.2998, 1.1, 0.7, -0.2998, 1.1, 0.7, 0.3002, 1.1, 0.9, 0.3002, 1.05, 0.9, -0.3498, 1.1, 0.9, -0.2998, 1.1, 0.9, 0.3002, 1.1, 0.9, 0.3002, 1.05, 0.9, 0.3502, 1.05, 0.9, -0.3498, 1.05, 0.9, 0.3502, 0.7776, 0.9, -0.3498, 1.05, 0.9, -0.3498, 1.05, 0.9, 0.3502, 0.0064, 0.9, 0.3502, 0.7776, 0.9, -0.3498, 0.0064, 0.9, 0.3502, 0.6603, 0.9, -0.2648, 0.7776, 0.9, -0.3498, 0.0064, 0.9, 0.3502, 0.543, 0.9, -0.3498, 0.6603, 0.9, -0.2648, 0.0064, 0.9, 0.3502, -0.1041, 0.9, 0.2652, 0.543, 0.9, -0.3498, -0.1041, 0.9, 0.2652, -1.05, 0.9, -0.3498, 0.543, 0.9, -0.3498, -0.1041, 0.9, 0.2652, -0.2146, 0.9, 0.3502, -1.05, 0.9, -0.3498, -0.2146, 0.9, 0.3502, -0.3221, 0.9, 0.3502, -1.05, 0.9, -0.3498, -0.3221, 0.9, 0.3502, -0.4221, 0.9, 0.3002, -1.05, 0.9, -0.3498, -0.4221, 0.9, 0.3002, -0.5221, 0.9, 0.3502, -1.05, 0.9, -0.3498, -0.5221, 0.9, 0.3502, -1.05, 0.9, 0.3502, -1.05, 0.9, -0.3498, -1.05, 0.9, 0.3502, -1.1, 0.9, -0.2998, -1.05, 0.9, -0.3498, -1.05, 0.9, 0.3502, -1.1, 0.9, 0.3002, -1.1, 0.9, -0.2998, -1.1, 0.7, -0.2998, -1.05, 0.7, -0.3498, -1.05, 0.9, -0.3498, -1.05, 0.9, -0.3498, -1.1, 0.9, -0.2998, -1.1, 0.7, -0.2998, 1.1, 0.9, -0.2998, 1.05, 0.9, -0.3498, 1.05, 0.7, -0.3498, 1.05, 0.7, -0.3498, 1.1, 0.7, -0.2998, 1.1, 0.9, -0.2998, 1.05, 0.7, 0.3502, 1.1, 0.7, 0.3002, 1.1, 0.7, -0.2998, 1.1, 0.7, -0.2998, 1.05, 0.7, -0.3498, 1.05, 0.7, 0.3502, 1.05, 0.7, -0.3498, 1, 0.7, 0.2502, 1.05, 0.7, 0.3502, 1, 0.7, 0.2502, -1.05, 0.7, 0.3502, 1.05, 0.7, 0.3502, 1, 0.7, -0.2498, 1, 0.7, 0.2502, 1.05, 0.7, -0.3498, 1, 0.7, 0.2502, -1, 0.7, 0.2502, -1.05, 0.7, 0.3502, 1.05, 0.7, -0.3498, -1.05, 0.7, -0.3498, 1, 0.7, -0.2498, -1, 0.7, 0.2502, -1, 0.7, -0.2498, -1.05, 0.7, 0.3502, -1.05, 0.7, -0.3498, -1, 0.7, -0.2498, 1, 0.7, -0.2498, -1.05, 0.7, -0.3498, -1.05, 0.7, 0.3502, -1, 0.7, -0.2498, -1.05, 0.7, -0.3498, -1.1, 0.7, 0.3002, -1.05, 0.7, 0.3502, -1.05, 0.7, -0.3498, -1.1, 0.7, -0.2998, -1.1, 0.7, 0.3002, -1.05, 0.7, 0.3502, -1.1, 0.7, 0.3002, -1.1, 0.9, 0.3002, -1.1, 0.9, 0.3002, -1.05, 0.9, 0.3502, -1.05, 0.7, 0.3502, -1.1, 0.7, 0.3002, -1.1, 0.7, -0.2998, -1.1, 0.9, -0.2998, -1.1, 0.9, -0.2998, -1.1, 0.9, 0.3002, -1.1, 0.7, 0.3002, -1.05, 0.9, -0.3498, -1.05, 0.7, -0.3498, 1.05, 0.7, -0.3498, 1.05, 0.7, -0.3498, 0.6603, 0.815, -0.3498, -1.05, 0.9, -0.3498, 0.6603, 0.815, -0.3498, 0.543, 0.9, -0.3498, -1.05, 0.9, -0.3498, 0.6603, 0.815, -0.3498, 1.05, 0.7, -0.3498, 1.05, 0.9, -0.3498, 1.05, 0.9, -0.3498, 0.7776, 0.9, -0.3498, 0.6603, 0.815, -0.3498, 1.05, 0.9, 0.3502, 1.05, 0.7, 0.3502, -1.05, 0.7, 0.3502, -1.05, 0.7, 0.3502, -0.1041, 0.815, 0.3502, 1.05, 0.9, 0.3502, -0.1041, 0.815, 0.3502, 0.0064, 0.9, 0.3502, 1.05, 0.9, 0.3502, -0.1041, 0.815, 0.3502, -1.05, 0.7, 0.3502, -1.05, 0.9, 0.3502, -1.05, 0.9, 0.3502, -0.4221, 0.85, 0.3502, -0.1041, 0.815, 0.3502, -1.05, 0.9, 0.3502, -0.5221, 0.9, 0.3502, -0.4221, 0.85, 0.3502, -0.2146, 0.9, 0.3502, -0.1041, 0.815, 0.3502, -0.4221, 0.85, 0.3502, -0.4221, 0.85, 0.3502, -0.3221, 0.9, 0.3502, -0.2146, 0.9, 0.3502, 0.6837, 0.115, 0.3502, 0.7874, 0.2, 0.3502, 1.05, 0.2, 0.3502, 0.6837, 0.115, 0.3502, 1.05, 0.2, 0.3502, 1.05, 0, 0.3502, 1.05, 0, 0.3502, -1.05, 0, 0.3502, 0.6837, 0.115, 0.3502, 0.6837, 0.115, 0.3502, -1.05, 0, 0.3502, -1.05, 0.2, 0.3502, -1.05, 0.2, 0.3502, 0.58, 0.2, 0.3502, 0.6837, 0.115, 0.3502, -0.4406, 0.115, -0.3498, -0.6106, 0.2, -0.3498, -1.05, 0.2, -0.3498, -0.4406, 0.115, -0.3498, -1.05, 0.2, -0.3498, -1.05, 0, -0.3498, -1.05, 0, -0.3498, 1.05, 0, -0.3498, -0.4406, 0.115, -0.3498, -0.4406, 0.115, -0.3498, 1.05, 0, -0.3498, 1.05, 0.2, -0.3498, 1.05, 0.2, -0.3498, -0.2706, 0.2, -0.3498, -0.4406, 0.115, -0.3498, 1.05, 0.2, -0.3498, 1.1, 0.2, -0.2998, 1.1, 0.2, 0.3002, 1.1, 0.2, 0.3002, 1.05, 0.2, 0.3502, 1.05, 0.2, -0.3498, 1.05, 0.2, 0.3502, 1, 0.2, -0.2498, 1.05, 0.2, -0.3498, 1, 0.2, -0.2498, -0.2706, 0.2, -0.3498, 1.05, 0.2, -0.3498, 1, 0.2, -0.2498, -0.4406, 0.2, -0.2648, -0.2706, 0.2, -0.3498, 1, 0.2, 0.2502, 1, 0.2, -0.2498, 1.05, 0.2, 0.3502, 1.05, 0.2, 0.3502, 0.7874, 0.2, 0.3502, 1, 0.2, 0.2502, 0.7874, 0.2, 0.3502, 0.6837, 0.2, 0.2652, 1, 0.2, 0.2502, 1, 0.2, -0.2498, -1, 0.2, -0.2498, -0.4406, 0.2, -0.2648, -1, 0.2, -0.2498, -0.6106, 0.2, -0.3498, -0.4406, 0.2, -0.2648, 0.6837, 0.2, 0.2652, -1, 0.2, 0.2502, 1, 0.2, 0.2502, -1, 0.2, -0.2498, -1.05, 0.2, -0.3498, -0.6106, 0.2, -0.3498, -1, 0.2, -0.2498, -1, 0.2, 0.2502, -1.05, 0.2, -0.3498, 0.6837, 0.2, 0.2652, 0.58, 0.2, 0.3502, -1, 0.2, 0.2502, 0.58, 0.2, 0.3502, -1.05, 0.2, 0.3502, -1, 0.2, 0.2502, -1.05, 0.2, 0.3502, -1.05, 0.2, -0.3498, -1, 0.2, 0.2502, -1.05, 0.2, 0.3502, -1.1, 0.2, -0.2998, -1.05, 0.2, -0.3498, -1.05, 0.2, 0.3502, -1.1, 0.2, 0.3002, -1.1, 0.2, -0.2998, -1, 0.7, -0.2498, 1, 0.7, -0.2498, 1, 0.7, 0.2502, 1, 0.7, 0.2502, -1, 0.7, 0.2502, -1, 0.7, -0.2498, -1, 0.2, 0.2502, -1, 0.2, -0.2498, -1, 0.7, -0.2498, -1, 0.7, -0.2498, -1, 0.7, 0.2502, -1, 0.2, 0.2502, 1, 0.7, 0.2502, 1, 0.7, -0.2498, 1, 0.2, -0.2498, 1, 0.2, -0.2498, 1, 0.2, 0.2502, 1, 0.7, 0.2502, -1, 0.2, -0.2498, 1, 0.2, -0.2498, -0.0568, 0.2737, -0.2498, -0.0568, 0.2737, -0.2498, -1, 0.7, -0.2498, -1, 0.2, -0.2498, 0.1282, 0.2737, -0.2498, -0.0568, 0.2737, -0.2498, 1, 0.2, -0.2498, -0.0568, 0.2737, -0.2498, -0.1123, 0.3292, -0.2498, -1, 0.7, -0.2498, 1, 0.2, -0.2498, 1, 0.7, -0.2498, 0.1282, 0.2737, -0.2498, -0.1123, 0.3292, -0.2498, -0.1123, 0.4402, -0.2498, -1, 0.7, -0.2498, -0.1123, 0.4402, -0.2498, -0.0568, 0.4957, -0.2498, -1, 0.7, -0.2498, -0.0568, 0.4957, -0.2498, 0.1282, 0.4957, -0.2498, -1, 0.7, -0.2498, 1, 0.7, -0.2498, -1, 0.7, -0.2498, 0.1282, 0.4957, -0.2498, 1, 0.7, -0.2498, 0.1837, 0.3292, -0.2498, 0.1282, 0.2737, -0.2498, 1, 0.7, -0.2498, 0.1282, 0.4957, -0.2498, 0.1837, 0.4402, -0.2498, 1, 0.7, -0.2498, 0.1837, 0.4402, -0.2498, 0.1837, 0.3292, -0.2498, -1, 0.7, 0.2502, -0.4665, 0.4698, 0.2502, -0.4665, 0.3588, 0.2502, -1, 0.7, 0.2502, -0.411, 0.5253, 0.2502, -0.4665, 0.4698, 0.2502, -1, 0.7, 0.2502, -0.4665, 0.3588, 0.2502, -0.411, 0.3033, 0.2502, -1, 0.2, 0.2502, -1, 0.7, 0.2502, -0.411, 0.3033, 0.2502, -0.411, 0.3033, 0.2502, -0.226, 0.3033, 0.2502, -1, 0.2, 0.2502, 1, 0.2, 0.2502, -1, 0.2, 0.2502, -0.226, 0.3033, 0.2502, -0.226, 0.3033, 0.2502, 0.1168, 0.3957, 0.2502, 1, 0.2, 0.2502, -0.226, 0.3033, 0.2502, -0.1705, 0.3588, 0.2502, 0.1168, 0.3957, 0.2502, 0.1168, 0.3957, 0.2502, 1, 0.7, 0.2502, 1, 0.2, 0.2502, -0.0682, 0.3957, 0.2502, 0.1168, 0.3957, 0.2502, -0.1705, 0.3588, 0.2502, 0.1168, 0.3957, 0.2502, 0.1723, 0.4512, 0.2502, 1, 0.7, 0.2502, -0.1705, 0.3588, 0.2502, -0.1705, 0.4698, 0.2502, -0.0682, 0.3957, 0.2502, -0.1705, 0.4698, 0.2502, -0.1237, 0.4512, 0.2502, -0.0682, 0.3957, 0.2502, 0.1723, 0.4512, 0.2502, 0.1723, 0.5622, 0.2502, 1, 0.7, 0.2502, 0.1723, 0.5622, 0.2502, 0.1168, 0.6177, 0.2502, 1, 0.7, 0.2502, 0.1168, 0.6177, 0.2502, -0.0682, 0.6177, 0.2502, 1, 0.7, 0.2502, -1, 0.7, 0.2502, 1, 0.7, 0.2502, -0.0682, 0.6177, 0.2502, -0.1705, 0.4698, 0.2502, -0.1237, 0.5622, 0.2502, -0.1237, 0.4512, 0.2502, -1, 0.7, 0.2502, -0.0682, 0.6177, 0.2502, -0.1237, 0.5622, 0.2502, -0.1705, 0.4698, 0.2502, -0.226, 0.5253, 0.2502, -0.1237, 0.5622, 0.2502, -1, 0.7, 0.2502, -0.1237, 0.5622, 0.2502, -0.411, 0.5253, 0.2502, -0.226, 0.5253, 0.2502, -0.411, 0.5253, 0.2502, -0.1237, 0.5622, 0.2502, 0.2365, 0, 0.6875, 0.2758, 0, 0.6195, 0.247, 0, 0.5123, 0.247, 0, 0.5123, 0.1791, 0, 0.4731, 0.2365, 0, 0.6875, 0.1791, 0, 0.4731, 0.0004, 0, 0.521, 0.2365, 0, 0.6875, 0.0004, 0, 0.521, 0.0578, 0, 0.7354, 0.2365, 0, 0.6875, 0.0004, 0, 0.521, -0.0101, 0, 0.6962, 0.0578, 0, 0.7354, 0.0004, 0, 0.521, -0.0389, 0, 0.5889, -0.0101, 0, 0.6962, 0.2758, 0.1, 0.6195, 0.247, 0.1, 0.5123, 0.247, 0, 0.5123, 0.247, 0, 0.5123, 0.2758, 0, 0.6195, 0.2758, 0.1, 0.6195, 0.2365, 0.1, 0.6875, 0.2365, 0, 0.6875, 0.0578, 0, 0.7354, 0.0578, 0, 0.7354, 0.0578, 0.1, 0.7354, 0.2365, 0.1, 0.6875, -0.0101, 0, 0.6962, -0.0389, 0, 0.5889, -0.0389, 0.1, 0.5889, -0.0389, 0.1, 0.5889, -0.0101, 0.1, 0.6962, -0.0101, 0, 0.6962, 0.1791, 0.1, 0.4731, 0.247, 0.1, 0.5123, 0.2758, 0.1, 0.6195, 0.2758, 0.1, 0.6195, 0.2365, 0.1, 0.6875, 0.1791, 0.1, 0.4731, 0.2365, 0.1, 0.6875, 0.0004, 0.1, 0.521, 0.1791, 0.1, 0.4731, 0.2365, 0.1, 0.6875, 0.0578, 0.1, 0.7354, 0.0004, 0.1, 0.521, 0.0578, 0.1, 0.7354, -0.0389, 0.1, 0.5889, 0.0004, 0.1, 0.521, 0.0578, 0.1, 0.7354, -0.0101, 0.1, 0.6962, -0.0389, 0.1, 0.5889, 0.0578, 0, 0.7354, -0.0101, 0, 0.6962, -0.0101, 0.1, 0.6962, -0.0101, 0.1, 0.6962, 0.0578, 0.1, 0.7354, 0.0578, 0, 0.7354, 0.2365, 0.1, 0.6875, 0.2758, 0.1, 0.6195, 0.2758, 0, 0.6195, 0.2758, 0, 0.6195, 0.2365, 0, 0.6875, 0.2365, 0.1, 0.6875, 0.247, 0.1, 0.5123, 0.1791, 0.1, 0.4731, 0.1791, 0, 0.4731, 0.1791, 0, 0.4731, 0.247, 0, 0.5123, 0.247, 0.1, 0.5123, 0.0004, 0.1, 0.521, 0.0004, 0, 0.521, 0.1791, 0, 0.4731, 0.1791, 0, 0.4731, 0.1791, 0.1, 0.4731, 0.0004, 0.1, 0.521, -0.0389, 0, 0.5889, 0.0004, 0, 0.521, 0.0004, 0.1, 0.521, 0.0004, 0.1, 0.521, -0.0389, 0.1, 0.5889, -0.0389, 0, 0.5889, 0.6656, 0.9, -0.1224, 0.6453, 0.9, -0.1983, 0.5491, 0.9, -0.2538, 0.5491, 0.9, -0.2538, 0.4733, 0.9, -0.2334, 0.6656, 0.9, -0.1224, 0.4733, 0.9, -0.2334, 0.3808, 0.9, -0.0732, 0.6656, 0.9, -0.1224, 0.3808, 0.9, -0.0732, 0.5731, 0.9, 0.0378, 0.6656, 0.9, -0.1224, 0.3808, 0.9, -0.0732, 0.4973, 0.9, 0.0581, 0.5731, 0.9, 0.0378, 0.3808, 0.9, -0.0732, 0.4011, 0.9, 0.0026, 0.4973, 0.9, 0.0581, 0.6453, 1, -0.1983, 0.5491, 1, -0.2538, 0.5491, 0.9, -0.2538, 0.5491, 0.9, -0.2538, 0.6453, 0.9, -0.1983, 0.6453, 1, -0.1983, 0.6656, 1, -0.1224, 0.6656, 0.9, -0.1224, 0.5731, 0.9, 0.0378, 0.5731, 0.9, 0.0378, 0.5731, 1, 0.0378, 0.6656, 1, -0.1224, 0.4973, 0.9, 0.0581, 0.4011, 0.9, 0.0026, 0.4011, 1, 0.0026, 0.4011, 1, 0.0026, 0.4973, 1, 0.0581, 0.4973, 0.9, 0.0581, 0.4733, 1, -0.2334, 0.5491, 1, -0.2538, 0.6453, 1, -0.1983, 0.6453, 1, -0.1983, 0.6656, 1, -0.1224, 0.4733, 1, -0.2334, 0.6656, 1, -0.1224, 0.3808, 1, -0.0732, 0.4733, 1, -0.2334, 0.6656, 1, -0.1224, 0.5731, 1, 0.0378, 0.3808, 1, -0.0732, 0.5731, 1, 0.0378, 0.4011, 1, 0.0026, 0.3808, 1, -0.0732, 0.5731, 1, 0.0378, 0.4973, 1, 0.0581, 0.4011, 1, 0.0026, 0.5731, 0.9, 0.0378, 0.4973, 0.9, 0.0581, 0.4973, 1, 0.0581, 0.4973, 1, 0.0581, 0.5731, 1, 0.0378, 0.5731, 0.9, 0.0378, 0.6656, 1, -0.1224, 0.6453, 1, -0.1983, 0.6453, 0.9, -0.1983, 0.6453, 0.9, -0.1983, 0.6656, 0.9, -0.1224, 0.6656, 1, -0.1224, 0.5491, 1, -0.2538, 0.4733, 1, -0.2334, 0.4733, 0.9, -0.2334, 0.4733, 0.9, -0.2334, 0.5491, 0.9, -0.2538, 0.5491, 1, -0.2538, 0.3808, 1, -0.0732, 0.3808, 0.9, -0.0732, 0.4733, 0.9, -0.2334, 0.4733, 0.9, -0.2334, 0.4733, 1, -0.2334, 0.3808, 1, -0.0732, 0.4011, 0.9, 0.0026, 0.3808, 0.9, -0.0732, 0.3808, 1, -0.0732, 0.3808, 1, -0.0732, 0.4011, 1, 0.0026, 0.4011, 0.9, 0.0026, 0.9165, 0.9, -0.1596, 0.8486, 0.9, -0.1988, 0.7413, 0.9, -0.1701, 0.7413, 0.9, -0.1701, 0.7021, 0.9, -0.1021, 0.9165, 0.9, -0.1596, 0.7021, 0.9, -0.1021, 0.75, 0.9, 0.0766, 0.9165, 0.9, -0.1596, 0.75, 0.9, 0.0766, 0.9644, 0.9, 0.0191, 0.9165, 0.9, -0.1596, 0.75, 0.9, 0.0766, 0.9252, 0.9, 0.0871, 0.9644, 0.9, 0.0191, 0.75, 0.9, 0.0766, 0.8179, 0.9, 0.1158, 0.9252, 0.9, 0.0871, 0.8486, 1, -0.1988, 0.7413, 1, -0.1701, 0.7413, 0.9, -0.1701, 0.7413, 0.9, -0.1701, 0.8486, 0.9, -0.1988, 0.8486, 1, -0.1988, 0.9165, 1, -0.1596, 0.9165, 0.9, -0.1596, 0.9644, 0.9, 0.0191, 0.9644, 0.9, 0.0191, 0.9644, 1, 0.0191, 0.9165, 1, -0.1596, 0.9252, 0.9, 0.0871, 0.8179, 0.9, 0.1158, 0.8179, 1, 0.1158, 0.8179, 1, 0.1158, 0.9252, 1, 0.0871, 0.9252, 0.9, 0.0871, 0.7021, 1, -0.1021, 0.7413, 1, -0.1701, 0.8486, 1, -0.1988, 0.8486, 1, -0.1988, 0.9165, 1, -0.1596, 0.7021, 1, -0.1021, 0.9165, 1, -0.1596, 0.75, 1, 0.0766, 0.7021, 1, -0.1021, 0.9165, 1, -0.1596, 0.9644, 1, 0.0191, 0.75, 1, 0.0766, 0.9644, 1, 0.0191, 0.8179, 1, 0.1158, 0.75, 1, 0.0766, 0.9644, 1, 0.0191, 0.9252, 1, 0.0871, 0.8179, 1, 0.1158, 0.9644, 0.9, 0.0191, 0.9252, 0.9, 0.0871, 0.9252, 1, 0.0871, 0.9252, 1, 0.0871, 0.9644, 1, 0.0191, 0.9644, 0.9, 0.0191, 0.9165, 1, -0.1596, 0.8486, 1, -0.1988, 0.8486, 0.9, -0.1988, 0.8486, 0.9, -0.1988, 0.9165, 0.9, -0.1596, 0.9165, 1, -0.1596, 0.7413, 1, -0.1701, 0.7021, 1, -0.1021, 0.7021, 0.9, -0.1021, 0.7021, 0.9, -0.1021, 0.7413, 0.9, -0.1701, 0.7413, 1, -0.1701, 0.75, 1, 0.0766, 0.75, 0.9, 0.0766, 0.7021, 0.9, -0.1021, 0.7021, 0.9, -0.1021, 0.7021, 1, -0.1021, 0.75, 1, 0.0766, 0.8179, 0.9, 0.1158, 0.75, 0.9, 0.0766, 0.75, 1, 0.0766, 0.75, 1, 0.0766, 0.8179, 1, 0.1158, 0.8179, 0.9, 0.1158, -0.226, 0.3033, 0.2502, -0.226, 0.3033, 0.3002, -0.1705, 0.3588, 0.3002, -0.1705, 0.3588, 0.3002, -0.1705, 0.3588, 0.2502, -0.226, 0.3033, 0.2502, -0.4665, 0.3588, 0.3002, -0.4665, 0.4698, 0.3002, -0.411, 0.5253, 0.3002, -0.411, 0.5253, 0.3002, -0.411, 0.3033, 0.3002, -0.4665, 0.3588, 0.3002, -0.411, 0.5253, 0.3002, -0.226, 0.5253, 0.3002, -0.411, 0.3033, 0.3002, -0.226, 0.5253, 0.3002, -0.226, 0.3033, 0.3002, -0.411, 0.3033, 0.3002, -0.226, 0.5253, 0.3002, -0.1705, 0.3588, 0.3002, -0.226, 0.3033, 0.3002, -0.226, 0.5253, 0.3002, -0.1705, 0.4698, 0.3002, -0.1705, 0.3588, 0.3002, -0.226, 0.5253, 0.3002, -0.226, 0.5253, 0.2502, -0.1705, 0.4698, 0.2502, -0.1705, 0.4698, 0.2502, -0.1705, 0.4698, 0.3002, -0.226, 0.5253, 0.3002, -0.4665, 0.4698, 0.3002, -0.4665, 0.3588, 0.3002, -0.4665, 0.3588, 0.2502, -0.4665, 0.3588, 0.2502, -0.4665, 0.4698, 0.2502, -0.4665, 0.4698, 0.3002, -0.411, 0.3033, 0.3002, -0.411, 0.3033, 0.2502, -0.4665, 0.3588, 0.2502, -0.4665, 0.3588, 0.2502, -0.4665, 0.3588, 0.3002, -0.411, 0.3033, 0.3002, -0.226, 0.3033, 0.3002, -0.226, 0.3033, 0.2502, -0.411, 0.3033, 0.2502, -0.411, 0.3033, 0.2502, -0.411, 0.3033, 0.3002, -0.226, 0.3033, 0.3002, -0.411, 0.5253, 0.3002, -0.411, 0.5253, 0.2502, -0.226, 0.5253, 0.2502, -0.226, 0.5253, 0.2502, -0.226, 0.5253, 0.3002, -0.411, 0.5253, 0.3002, -0.1705, 0.3588, 0.2502, -0.1705, 0.3588, 0.3002, -0.1705, 0.4698, 0.3002, -0.1705, 0.4698, 0.3002, -0.1705, 0.4698, 0.2502, -0.1705, 0.3588, 0.2502, -0.4665, 0.3588, 0.2502, -0.4665, 0.4698, 0.2502, -0.411, 0.5253, 0.2502, -0.411, 0.5253, 0.2502, -0.411, 0.3033, 0.2502, -0.4665, 0.3588, 0.2502, -0.411, 0.5253, 0.2502, -0.226, 0.5253, 0.2502, -0.411, 0.3033, 0.2502, -0.226, 0.5253, 0.2502, -0.226, 0.3033, 0.2502, -0.411, 0.3033, 0.2502, -0.226, 0.5253, 0.2502, -0.1705, 0.3588, 0.2502, -0.226, 0.3033, 0.2502, -0.226, 0.5253, 0.2502, -0.1705, 0.4698, 0.2502, -0.1705, 0.3588, 0.2502, -0.411, 0.5253, 0.3002, -0.4665, 0.4698, 0.3002, -0.4665, 0.4698, 0.2502, -0.4665, 0.4698, 0.2502, -0.411, 0.5253, 0.2502, -0.411, 0.5253, 0.3002, -0.1237, 0.5622, 0.3002, -0.1237, 0.4512, 0.3002, -0.1237, 0.4512, 0.2502, -0.1237, 0.4512, 0.2502, -0.1237, 0.5622, 0.2502, -0.1237, 0.5622, 0.3002, -0.0682, 0.3957, 0.3002, -0.0682, 0.3957, 0.2502, -0.1237, 0.4512, 0.2502, -0.1237, 0.4512, 0.2502, -0.1237, 0.4512, 0.3002, -0.0682, 0.3957, 0.3002, -0.1237, 0.4512, 0.2502, -0.1237, 0.5622, 0.2502, -0.0682, 0.6177, 0.2502, -0.0682, 0.6177, 0.2502, -0.0682, 0.3957, 0.2502, -0.1237, 0.4512, 0.2502, -0.0682, 0.6177, 0.2502, 0.1168, 0.6177, 0.2502, -0.0682, 0.3957, 0.2502, 0.1168, 0.6177, 0.2502, 0.1168, 0.3957, 0.2502, -0.0682, 0.3957, 0.2502, 0.1168, 0.6177, 0.2502, 0.1723, 0.4512, 0.2502, 0.1168, 0.3957, 0.2502, 0.1168, 0.6177, 0.2502, 0.1723, 0.5622, 0.2502, 0.1723, 0.4512, 0.2502, 0.1168, 0.3957, 0.3002, 0.1168, 0.3957, 0.2502, -0.0682, 0.3957, 0.2502, -0.0682, 0.3957, 0.2502, -0.0682, 0.3957, 0.3002, 0.1168, 0.3957, 0.3002, 0.1723, 0.4512, 0.2502, 0.1723, 0.4512, 0.3002, 0.1723, 0.5622, 0.3002, 0.1723, 0.5622, 0.3002, 0.1723, 0.5622, 0.2502, 0.1723, 0.4512, 0.2502, -0.0682, 0.6177, 0.3002, -0.1237, 0.5622, 0.3002, -0.1237, 0.5622, 0.2502, -0.1237, 0.5622, 0.2502, -0.0682, 0.6177, 0.2502, -0.0682, 0.6177, 0.3002, 0.1168, 0.6177, 0.3002, 0.1168, 0.6177, 0.2502, 0.1723, 0.5622, 0.2502, 0.1723, 0.5622, 0.2502, 0.1723, 0.5622, 0.3002, 0.1168, 0.6177, 0.3002, -0.1237, 0.4512, 0.3002, -0.1237, 0.5622, 0.3002, -0.0682, 0.6177, 0.3002, -0.0682, 0.6177, 0.3002, -0.0682, 0.3957, 0.3002, -0.1237, 0.4512, 0.3002, -0.0682, 0.6177, 0.3002, 0.1168, 0.6177, 0.3002, -0.0682, 0.3957, 0.3002, 0.1168, 0.6177, 0.3002, 0.1168, 0.3957, 0.3002, -0.0682, 0.3957, 0.3002, 0.1168, 0.6177, 0.3002, 0.1723, 0.4512, 0.3002, 0.1168, 0.3957, 0.3002, 0.1168, 0.6177, 0.3002, 0.1723, 0.5622, 0.3002, 0.1723, 0.4512, 0.3002, -0.0682, 0.6177, 0.3002, -0.0682, 0.6177, 0.2502, 0.1168, 0.6177, 0.2502, 0.1168, 0.6177, 0.2502, 0.1168, 0.6177, 0.3002, -0.0682, 0.6177, 0.3002, 0.1168, 0.3957, 0.2502, 0.1168, 0.3957, 0.3002, 0.1723, 0.4512, 0.3002, 0.1723, 0.4512, 0.3002, 0.1723, 0.4512, 0.2502, 0.1168, 0.3957, 0.2502, 0.1837, 0.4402, -0.2998, 0.1837, 0.3292, -0.2998, 0.1837, 0.3292, -0.2498, 0.1837, 0.3292, -0.2498, 0.1837, 0.4402, -0.2498, 0.1837, 0.4402, -0.2998, 0.1282, 0.2737, -0.2998, 0.1282, 0.2737, -0.2498, 0.1837, 0.3292, -0.2498, 0.1837, 0.3292, -0.2498, 0.1837, 0.3292, -0.2998, 0.1282, 0.2737, -0.2998, 0.1837, 0.3292, -0.2498, 0.1837, 0.4402, -0.2498, 0.1282, 0.4957, -0.2498, 0.1282, 0.4957, -0.2498, 0.1282, 0.2737, -0.2498, 0.1837, 0.3292, -0.2498, 0.1282, 0.4957, -0.2498, -0.0568, 0.4957, -0.2498, 0.1282, 0.2737, -0.2498, -0.0568, 0.4957, -0.2498, -0.0568, 0.2737, -0.2498, 0.1282, 0.2737, -0.2498, -0.0568, 0.4957, -0.2498, -0.1123, 0.3292, -0.2498, -0.0568, 0.2737, -0.2498, -0.0568, 0.4957, -0.2498, -0.1123, 0.4402, -0.2498, -0.1123, 0.3292, -0.2498, -0.0568, 0.2737, -0.2998, -0.0568, 0.2737, -0.2498, 0.1282, 0.2737, -0.2498, 0.1282, 0.2737, -0.2498, 0.1282, 0.2737, -0.2998, -0.0568, 0.2737, -0.2998, -0.1123, 0.3292, -0.2498, -0.1123, 0.3292, -0.2998, -0.1123, 0.4402, -0.2998, -0.1123, 0.4402, -0.2998, -0.1123, 0.4402, -0.2498, -0.1123, 0.3292, -0.2498, 0.1282, 0.4957, -0.2998, 0.1837, 0.4402, -0.2998, 0.1837, 0.4402, -0.2498, 0.1837, 0.4402, -0.2498, 0.1282, 0.4957, -0.2498, 0.1282, 0.4957, -0.2998, -0.0568, 0.4957, -0.2998, -0.0568, 0.4957, -0.2498, -0.1123, 0.4402, -0.2498, -0.1123, 0.4402, -0.2498, -0.1123, 0.4402, -0.2998, -0.0568, 0.4957, -0.2998, 0.1837, 0.3292, -0.2998, 0.1837, 0.4402, -0.2998, 0.1282, 0.4957, -0.2998, 0.1282, 0.4957, -0.2998, 0.1282, 0.2737, -0.2998, 0.1837, 0.3292, -0.2998, 0.1282, 0.4957, -0.2998, -0.0568, 0.4957, -0.2998, 0.1282, 0.2737, -0.2998, -0.0568, 0.4957, -0.2998, -0.0568, 0.2737, -0.2998, 0.1282, 0.2737, -0.2998, -0.0568, 0.4957, -0.2998, -0.1123, 0.3292, -0.2998, -0.0568, 0.2737, -0.2998, -0.0568, 0.4957, -0.2998, -0.1123, 0.4402, -0.2998, -0.1123, 0.3292, -0.2998, 0.1282, 0.4957, -0.2998, 0.1282, 0.4957, -0.2498, -0.0568, 0.4957, -0.2498, -0.0568, 0.4957, -0.2498, -0.0568, 0.4957, -0.2998, 0.1282, 0.4957, -0.2998, -0.0568, 0.2737, -0.2498, -0.0568, 0.2737, -0.2998, -0.1123, 0.3292, -0.2998, -0.1123, 0.3292, -0.2998, -0.1123, 0.3292, -0.2498, -0.0568, 0.2737, -0.2498) + +[node name="wall-low" instance=ExtResource("1_6rbli")] + +[node name="StaticBody3D" type="StaticBody3D" parent="wall-low2" index="0"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="wall-low2/StaticBody3D" index="0"] +shape = SubResource("ConcavePolygonShape3D_rbsb6") diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..ac23213 --- /dev/null +++ b/project.godot @@ -0,0 +1,110 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=5 + +[application] + +config/name="Starter Kit FPS" +config/tags=PackedStringArray("starterkit") +run/main_scene="res://scenes/main.tscn" +config/features=PackedStringArray("4.1", "Forward Plus") +boot_splash/bg_color=Color(0.92549, 0.92549, 0.960784, 1) +boot_splash/image="res://splash-screen.png" +config/icon="res://icon.png" + +[autoload] + +Audio="*res://scripts/audio.gd" + +[display] + +window/size/viewport_width=1280 +window/size/viewport_height=720 + +[input] + +move_right={ +"deadzone": 0.25, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null) +] +} +move_left={ +"deadzone": 0.25, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null) +] +} +move_forward={ +"deadzone": 0.25, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null) +] +} +move_back={ +"deadzone": 0.25, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) +] +} +jump={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":true,"script":null) +] +} +camera_left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":-1.0,"script":null) +] +} +camera_right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":1.0,"script":null) +] +} +camera_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":3,"axis_value":-1.0,"script":null) +] +} +camera_down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":3,"axis_value":1.0,"script":null) +] +} +mouse_capture={ +"deadzone": 0.5, +"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null) +] +} +mouse_capture_exit={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194305,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} +shoot={ +"deadzone": 0.5, +"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(92, 12),"global_position":Vector2(96, 55),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null) +] +} +weapon_next={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"echo":false,"script":null) +] +} + +[rendering] + +lights_and_shadows/directional_shadow/soft_shadow_filter_quality=5 +anti_aliasing/quality/msaa_3d=3 diff --git a/scenes/main-environment.tres b/scenes/main-environment.tres new file mode 100644 index 0000000..7f14462 --- /dev/null +++ b/scenes/main-environment.tres @@ -0,0 +1,28 @@ +[gd_resource type="Environment" load_steps=3 format=3 uid="uid://jvmpkdwaeaq"] + +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_lg8b7"] +sky_horizon_color = Color(0.67451, 0.682353, 0.698039, 1) +sky_curve = 0.0175 +ground_bottom_color = Color(1, 1, 1, 1) +ground_curve = 0.171484 + +[sub_resource type="Sky" id="Sky_7bk1c"] +sky_material = SubResource("ProceduralSkyMaterial_lg8b7") + +[resource] +background_mode = 1 +background_color = Color(0.360784, 0.392157, 0.462745, 1) +sky = SubResource("Sky_7bk1c") +ambient_light_source = 2 +ambient_light_color = Color(0.662745, 0.694118, 0.772549, 1) +ambient_light_energy = 1.15 +tonemap_mode = 2 +ssao_enabled = true +ssao_radius = 0.45 +ssao_intensity = 1.0 +ssao_power = 5.0 +glow_enabled = true +glow_levels/2 = 0.6 +glow_levels/3 = 0.6 +glow_levels/5 = 0.0 +glow_intensity = 2.0 diff --git a/scenes/main.tscn b/scenes/main.tscn new file mode 100644 index 0000000..908812a --- /dev/null +++ b/scenes/main.tscn @@ -0,0 +1,81 @@ +[gd_scene load_steps=8 format=3 uid="uid://dxvvlck8lej3f"] + +[ext_resource type="Environment" uid="uid://jvmpkdwaeaq" path="res://scenes/main-environment.tres" id="1_q8fpv"] +[ext_resource type="PackedScene" uid="uid://dl2ed4gkybggf" path="res://actors/player.tscn" id="2_elriq"] +[ext_resource type="PackedScene" uid="uid://dpm3l05d7fu35" path="res://objects/platform.tscn" id="5_3s40e"] +[ext_resource type="PackedScene" uid="uid://r7rt7pth4u7o" path="res://objects/wall_low.tscn" id="5_6vel1"] +[ext_resource type="PackedScene" uid="uid://c71evdjblk5wp" path="res://objects/wall_high.tscn" id="7_cabne"] +[ext_resource type="PackedScene" uid="uid://bvx5cvigosg0s" path="res://objects/platform_large_grass.tscn" id="7_wggef"] +[ext_resource type="PackedScene" uid="uid://d2g78tpqbyf5g" path="res://actors/enemy.tscn" id="8_7ty2f"] + +[node name="Main" type="Node3D"] + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = ExtResource("1_q8fpv") + +[node name="Player" parent="." node_paths=PackedStringArray("crosshair") instance=ExtResource("2_elriq")] +crosshair = NodePath("../Canvas/Crosshair") + +[node name="Sun" type="DirectionalLight3D" parent="."] +transform = Transform3D(-0.422618, -0.694272, 0.582563, 0, 0.642788, 0.766044, -0.906308, 0.323744, -0.271654, 0, 0, 0) +shadow_enabled = true +shadow_opacity = 0.75 + +[node name="Canvas" type="CanvasLayer" parent="."] + +[node name="Crosshair" type="TextureRect" parent="Canvas"] +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -20.0 +offset_top = -20.0 +offset_right = 20.0 +offset_bottom = 20.0 +grow_horizontal = 2 +grow_vertical = 2 +scale = Vector2(0.35, 0.35) +pivot_offset = Vector2(64, 64) + +[node name="wall-low" parent="." instance=ExtResource("5_6vel1")] +transform = Transform3D(0.965926, 0, 0.258819, 0, 1, 0, -0.258819, 0, 0.965926, -1.92088, 1.05, -6.90166) + +[node name="wall-low3" parent="." instance=ExtResource("5_6vel1")] +transform = Transform3D(-1, 0, -1.19209e-07, 0, 1, 0, 1.19209e-07, 0, -1, 6.07912, 1.05, 6.59834) + +[node name="platform-falling" parent="." instance=ExtResource("5_3s40e")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, 0, 6.5) + +[node name="platform-falling2" parent="." instance=ExtResource("5_3s40e")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.5, 2.5, -2.5) + +[node name="platform-falling3" parent="." instance=ExtResource("5_3s40e")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, 3, -3.5) + +[node name="wall-high" parent="." instance=ExtResource("7_cabne")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5, 0, -1.5) + +[node name="platform-large-grass" parent="." instance=ExtResource("7_wggef")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0) + +[node name="platform-large-grass2" parent="." instance=ExtResource("7_wggef")] +transform = Transform3D(0.965926, 0, 0.258819, 0, 1, 0, -0.258819, 0, 0.965926, -2, 0.5, -6) + +[node name="platform-large-grass3" parent="." instance=ExtResource("7_wggef")] +transform = Transform3D(0.965926, 0, -0.258819, 0, 1, 0, 0.258819, 0, 0.965926, -6, 1, 2.5) + +[node name="platform-large-grass4" parent="." instance=ExtResource("7_wggef")] +transform = Transform3D(0.965926, 0, 0.258819, 0, 1, 0, -0.258819, 0, 0.965926, 5, 0.5, 5.5) + +[node name="enemy-flying" parent="." node_paths=PackedStringArray("player") instance=ExtResource("8_7ty2f")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.5, 2.5, -6) +player = NodePath("../Player") + +[node name="enemy-flying2" parent="." node_paths=PackedStringArray("player") instance=ExtResource("8_7ty2f")] +transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -9.5, 2.5, 1.5) +player = NodePath("../Player") + +[node name="enemy-flying3" parent="." node_paths=PackedStringArray("player") instance=ExtResource("8_7ty2f")] +transform = Transform3D(-0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, -0.707107, 5.5, 3.5, 9) +player = NodePath("../Player") diff --git a/scripts/audio.gd b/scripts/audio.gd new file mode 100644 index 0000000..96ed3d0 --- /dev/null +++ b/scripts/audio.gd @@ -0,0 +1,43 @@ +extends Node + +# Code adapted from KidsCanCode + +var num_players = 12 +var bus = "master" + +var available = [] # The available players. +var queue = [] # The queue of sounds to play. + +func _ready(): + + for i in num_players: + var p = AudioStreamPlayer.new() + add_child(p) + + available.append(p) + + p.volume_db = -10 + p.finished.connect(_on_stream_finished.bind(p)) + p.bus = bus + + +func _on_stream_finished(stream): + available.append(stream) + +func play(sound_path): # Path + queue.append("res://" + sound_path) + +func play_random(sound_paths): # Multiple paths, separate by commas + var sounds = sound_paths.split(",") + + play(sounds[randi() % sounds.size()].strip_edges()) + +func _process(_delta): + + if not queue.is_empty() and not available.is_empty(): + + available[0].stream = load(queue.pop_front()) + available[0].play() + available[0].pitch_scale = randf_range(0.9, 1.1) + + available.pop_front() diff --git a/scripts/enemy.gd b/scripts/enemy.gd new file mode 100644 index 0000000..0321716 --- /dev/null +++ b/scripts/enemy.gd @@ -0,0 +1,58 @@ +extends Node3D + +@export var player:Node3D + +@onready var raycast = $RayCast +@onready var burst_a = $BurstA +@onready var burst_b = $BurstB + +var health := 100 +var target_position:Vector3 +var time := 0.0 +var destroyed := false + +func _ready(): + target_position = position + +func _process(delta): + self.look_at(player.position + Vector3(0, 0.5, 0), Vector3.UP, true) + + target_position.y += (cos(time * 5) * 1) * delta # Sine movement + + time += delta + + position = target_position + +func damage(amount): + health -= amount + Audio.play("sounds/enemy_hurt.ogg") + if health <= 0 and !destroyed: + destroy() + +func destroy(): + destroyed = true + Audio.play("sounds/enemy_destroy.ogg") + queue_free() + + +func _on_timer_timeout(): + shoot() + +func shoot(): + raycast.force_raycast_update() + + if raycast.is_colliding(): + + var collider = raycast.get_collider() + + if collider.has_method("get_hurt"): + + burst_a.frame = 0 + burst_a.play("default") + burst_a.rotation_degrees.z = randf_range(-45, 45) + + burst_b.frame = 0 + burst_b.play("default") + burst_b.rotation_degrees.z = randf_range(-45, 45) + + Audio.play("sounds/enemy_attack.ogg") diff --git a/scripts/weapon.gd b/scripts/weapon.gd new file mode 100644 index 0000000..c04ac38 --- /dev/null +++ b/scripts/weapon.gd @@ -0,0 +1,20 @@ +extends Resource +class_name Weapon + +@export_subgroup("Model") +@export var model:PackedScene +@export var position:Vector3 +@export var rotation:Vector3 + +@export_subgroup("Properties") +@export_range(0.1, 1) var cooldown: float = 0.1 +@export_range(1, 20) var max_distance: int = 10 +@export_range(0, 100) var damage: float = 25 +@export_range(0, 5) var spread: float = 0 +@export_range(1, 5) var shot_count: int = 1 + +@export_subgroup("Sounds") +@export var sound_shoot: String + +@export_subgroup("Crosshair") +@export var crosshair: Texture2D diff --git a/sounds/blaster.ogg b/sounds/blaster.ogg new file mode 100644 index 0000000..6565c45 Binary files /dev/null and b/sounds/blaster.ogg differ diff --git a/sounds/blaster.ogg.import b/sounds/blaster.ogg.import new file mode 100644 index 0000000..dd25a85 --- /dev/null +++ b/sounds/blaster.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dv8rfe827xc6j" +path="res://.godot/imported/blaster.ogg-1527ec84d518b60bb9fbaad97656d870.oggvorbisstr" + +[deps] + +source_file="res://sounds/blaster.ogg" +dest_files=["res://.godot/imported/blaster.ogg-1527ec84d518b60bb9fbaad97656d870.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/blaster_change.ogg b/sounds/blaster_change.ogg new file mode 100644 index 0000000..49d3d85 Binary files /dev/null and b/sounds/blaster_change.ogg differ diff --git a/sounds/blaster_change.ogg.import b/sounds/blaster_change.ogg.import new file mode 100644 index 0000000..e359c51 --- /dev/null +++ b/sounds/blaster_change.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cmc2ufr6o30gl" +path="res://.godot/imported/blaster_change.ogg-27f755a5dfe4b513b0b5bc81eb113dc3.oggvorbisstr" + +[deps] + +source_file="res://sounds/blaster_change.ogg" +dest_files=["res://.godot/imported/blaster_change.ogg-27f755a5dfe4b513b0b5bc81eb113dc3.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/enemy_attack.ogg b/sounds/enemy_attack.ogg new file mode 100644 index 0000000..da4af71 Binary files /dev/null and b/sounds/enemy_attack.ogg differ diff --git a/sounds/enemy_attack.ogg.import b/sounds/enemy_attack.ogg.import new file mode 100644 index 0000000..d88c0dc --- /dev/null +++ b/sounds/enemy_attack.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://blxqudiclpq84" +path="res://.godot/imported/enemy_attack.ogg-ad3c73e6e91698e3fc81bd6423d8fca2.oggvorbisstr" + +[deps] + +source_file="res://sounds/enemy_attack.ogg" +dest_files=["res://.godot/imported/enemy_attack.ogg-ad3c73e6e91698e3fc81bd6423d8fca2.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/enemy_destroy.ogg b/sounds/enemy_destroy.ogg new file mode 100644 index 0000000..056517c Binary files /dev/null and b/sounds/enemy_destroy.ogg differ diff --git a/sounds/enemy_destroy.ogg.import b/sounds/enemy_destroy.ogg.import new file mode 100644 index 0000000..2875007 --- /dev/null +++ b/sounds/enemy_destroy.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://br1ov3ld0er6r" +path="res://.godot/imported/enemy_destroy.ogg-feb8f111abab93d5fc30ec838c975232.oggvorbisstr" + +[deps] + +source_file="res://sounds/enemy_destroy.ogg" +dest_files=["res://.godot/imported/enemy_destroy.ogg-feb8f111abab93d5fc30ec838c975232.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/enemy_hurt.ogg b/sounds/enemy_hurt.ogg new file mode 100644 index 0000000..3e63ca9 Binary files /dev/null and b/sounds/enemy_hurt.ogg differ diff --git a/sounds/enemy_hurt.ogg.import b/sounds/enemy_hurt.ogg.import new file mode 100644 index 0000000..2775ab9 --- /dev/null +++ b/sounds/enemy_hurt.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cgnbyrnxj12ed" +path="res://.godot/imported/enemy_hurt.ogg-64e07bfa21b7ae57b8a0bf7357a95008.oggvorbisstr" + +[deps] + +source_file="res://sounds/enemy_hurt.ogg" +dest_files=["res://.godot/imported/enemy_hurt.ogg-64e07bfa21b7ae57b8a0bf7357a95008.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/jump-realistic.ogg b/sounds/jump-realistic.ogg new file mode 100644 index 0000000..df9e9d8 Binary files /dev/null and b/sounds/jump-realistic.ogg differ diff --git a/sounds/jump-realistic.ogg.import b/sounds/jump-realistic.ogg.import new file mode 100644 index 0000000..048e47a --- /dev/null +++ b/sounds/jump-realistic.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://x0s0tunvo0br" +path="res://.godot/imported/jump-realistic.ogg-0655f517427ef61af899d7c5ae700ab6.oggvorbisstr" + +[deps] + +source_file="res://sounds/jump-realistic.ogg" +dest_files=["res://.godot/imported/jump-realistic.ogg-0655f517427ef61af899d7c5ae700ab6.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/jump.ogg b/sounds/jump.ogg new file mode 100644 index 0000000..e52f6a0 Binary files /dev/null and b/sounds/jump.ogg differ diff --git a/sounds/jump.ogg.import b/sounds/jump.ogg.import new file mode 100644 index 0000000..134eaf3 --- /dev/null +++ b/sounds/jump.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dw2m5fxhfjykq" +path="res://.godot/imported/jump.ogg-de8df8640ff526968292c23fe5ec784f.oggvorbisstr" + +[deps] + +source_file="res://sounds/jump.ogg" +dest_files=["res://.godot/imported/jump.ogg-de8df8640ff526968292c23fe5ec784f.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/jump_a.ogg b/sounds/jump_a.ogg new file mode 100644 index 0000000..8706f47 Binary files /dev/null and b/sounds/jump_a.ogg differ diff --git a/sounds/jump_a.ogg.import b/sounds/jump_a.ogg.import new file mode 100644 index 0000000..a54fae9 --- /dev/null +++ b/sounds/jump_a.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://bvnum0u73y8sv" +path="res://.godot/imported/jump_a.ogg-df3a87b422b8537163b811137ab76d0c.oggvorbisstr" + +[deps] + +source_file="res://sounds/jump_a.ogg" +dest_files=["res://.godot/imported/jump_a.ogg-df3a87b422b8537163b811137ab76d0c.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/jump_b.ogg b/sounds/jump_b.ogg new file mode 100644 index 0000000..2c77105 Binary files /dev/null and b/sounds/jump_b.ogg differ diff --git a/sounds/jump_b.ogg.import b/sounds/jump_b.ogg.import new file mode 100644 index 0000000..fff5446 --- /dev/null +++ b/sounds/jump_b.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://5raj3p7xaecq" +path="res://.godot/imported/jump_b.ogg-f0989d7351debef348a67b21be8b7bd0.oggvorbisstr" + +[deps] + +source_file="res://sounds/jump_b.ogg" +dest_files=["res://.godot/imported/jump_b.ogg-f0989d7351debef348a67b21be8b7bd0.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/jump_c.ogg b/sounds/jump_c.ogg new file mode 100644 index 0000000..1565cad Binary files /dev/null and b/sounds/jump_c.ogg differ diff --git a/sounds/jump_c.ogg.import b/sounds/jump_c.ogg.import new file mode 100644 index 0000000..4b4860a --- /dev/null +++ b/sounds/jump_c.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://7tnsakv8pwa5" +path="res://.godot/imported/jump_c.ogg-6a4808f519ad4af845e78fe92b3da78c.oggvorbisstr" + +[deps] + +source_file="res://sounds/jump_c.ogg" +dest_files=["res://.godot/imported/jump_c.ogg-6a4808f519ad4af845e78fe92b3da78c.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/land.ogg b/sounds/land.ogg new file mode 100644 index 0000000..3d97f7b Binary files /dev/null and b/sounds/land.ogg differ diff --git a/sounds/land.ogg.import b/sounds/land.ogg.import new file mode 100644 index 0000000..f653ef6 --- /dev/null +++ b/sounds/land.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://xnxidwkp46un" +path="res://.godot/imported/land.ogg-7222ba872273a4a7535937ef5cfdffd0.oggvorbisstr" + +[deps] + +source_file="res://sounds/land.ogg" +dest_files=["res://.godot/imported/land.ogg-7222ba872273a4a7535937ef5cfdffd0.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/shoot_a.ogg b/sounds/shoot_a.ogg new file mode 100644 index 0000000..554f2f8 Binary files /dev/null and b/sounds/shoot_a.ogg differ diff --git a/sounds/shoot_a.ogg.import b/sounds/shoot_a.ogg.import new file mode 100644 index 0000000..05bbae3 --- /dev/null +++ b/sounds/shoot_a.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://br6iq2h671ery" +path="res://.godot/imported/shoot_a.ogg-527bbcaa6ffabc0e8a7820780cfc3b2c.oggvorbisstr" + +[deps] + +source_file="res://sounds/shoot_a.ogg" +dest_files=["res://.godot/imported/shoot_a.ogg-527bbcaa6ffabc0e8a7820780cfc3b2c.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/shoot_b.ogg b/sounds/shoot_b.ogg new file mode 100644 index 0000000..d275a51 Binary files /dev/null and b/sounds/shoot_b.ogg differ diff --git a/sounds/shoot_b.ogg.import b/sounds/shoot_b.ogg.import new file mode 100644 index 0000000..eb9df1f --- /dev/null +++ b/sounds/shoot_b.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cheg0i1wf285t" +path="res://.godot/imported/shoot_b.ogg-3fea18996921e1ae1337cf584b325ddc.oggvorbisstr" + +[deps] + +source_file="res://sounds/shoot_b.ogg" +dest_files=["res://.godot/imported/shoot_b.ogg-3fea18996921e1ae1337cf584b325ddc.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/shoot_c.ogg b/sounds/shoot_c.ogg new file mode 100644 index 0000000..99efbfe Binary files /dev/null and b/sounds/shoot_c.ogg differ diff --git a/sounds/shoot_c.ogg.import b/sounds/shoot_c.ogg.import new file mode 100644 index 0000000..af5655c --- /dev/null +++ b/sounds/shoot_c.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://k40c314uiym2" +path="res://.godot/imported/shoot_c.ogg-a309ac00957e32b88ef2a57e4294a4f4.oggvorbisstr" + +[deps] + +source_file="res://sounds/shoot_c.ogg" +dest_files=["res://.godot/imported/shoot_c.ogg-a309ac00957e32b88ef2a57e4294a4f4.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/shoot_d.ogg b/sounds/shoot_d.ogg new file mode 100644 index 0000000..7d847e5 Binary files /dev/null and b/sounds/shoot_d.ogg differ diff --git a/sounds/shoot_d.ogg.import b/sounds/shoot_d.ogg.import new file mode 100644 index 0000000..c91957d --- /dev/null +++ b/sounds/shoot_d.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dcatai5q4k77k" +path="res://.godot/imported/shoot_d.ogg-23fcf862043859225d1039fc76244edb.oggvorbisstr" + +[deps] + +source_file="res://sounds/shoot_d.ogg" +dest_files=["res://.godot/imported/shoot_d.ogg-23fcf862043859225d1039fc76244edb.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/shoot_shotgun.ogg b/sounds/shoot_shotgun.ogg new file mode 100644 index 0000000..d008e5f Binary files /dev/null and b/sounds/shoot_shotgun.ogg differ diff --git a/sounds/shoot_shotgun.ogg.import b/sounds/shoot_shotgun.ogg.import new file mode 100644 index 0000000..7047c0c --- /dev/null +++ b/sounds/shoot_shotgun.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://b0su3bm77yrvr" +path="res://.godot/imported/shoot_shotgun.ogg-b1cdcf7bc1f47b25f622a407aa93e4d7.oggvorbisstr" + +[deps] + +source_file="res://sounds/shoot_shotgun.ogg" +dest_files=["res://.godot/imported/shoot_shotgun.ogg-b1cdcf7bc1f47b25f622a407aa93e4d7.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/walking.ogg b/sounds/walking.ogg new file mode 100644 index 0000000..e677905 Binary files /dev/null and b/sounds/walking.ogg differ diff --git a/sounds/walking.ogg.import b/sounds/walking.ogg.import new file mode 100644 index 0000000..23c464b --- /dev/null +++ b/sounds/walking.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cydjn1ct3hps2" +path="res://.godot/imported/walking.ogg-bf61e9916135189ff0d5c06a148b02ab.oggvorbisstr" + +[deps] + +source_file="res://sounds/walking.ogg" +dest_files=["res://.godot/imported/walking.ogg-bf61e9916135189ff0d5c06a148b02ab.oggvorbisstr"] + +[params] + +loop=true +loop_offset=0.0 +bpm=0.0 +beat_count=0 +bar_beats=4 diff --git a/sounds/walking.ogg.sfk b/sounds/walking.ogg.sfk new file mode 100644 index 0000000..ff36c83 Binary files /dev/null and b/sounds/walking.ogg.sfk differ diff --git a/splash-screen.png b/splash-screen.png new file mode 100644 index 0000000..f1fef11 Binary files /dev/null and b/splash-screen.png differ diff --git a/splash-screen.png.import b/splash-screen.png.import new file mode 100644 index 0000000..8852920 --- /dev/null +++ b/splash-screen.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://biff4dkpfqi47" +path="res://.godot/imported/splash-screen.png-ae6c8b07e185ee8a074576008d9ccc5a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://splash-screen.png" +dest_files=["res://.godot/imported/splash-screen.png-ae6c8b07e185ee8a074576008d9ccc5a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/sprites/blob_shadow.png b/sprites/blob_shadow.png new file mode 100644 index 0000000..93d4e7d Binary files /dev/null and b/sprites/blob_shadow.png differ diff --git a/sprites/blob_shadow.png.import b/sprites/blob_shadow.png.import new file mode 100644 index 0000000..1abf03d --- /dev/null +++ b/sprites/blob_shadow.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://8ggihh27mlrr" +path="res://.godot/imported/blob_shadow.png-d19f4ffceb1d99dd3331acec2dc6d7df.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://sprites/blob_shadow.png" +dest_files=["res://.godot/imported/blob_shadow.png-d19f4ffceb1d99dd3331acec2dc6d7df.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/sprites/burst.png b/sprites/burst.png new file mode 100644 index 0000000..73fe5cc Binary files /dev/null and b/sprites/burst.png differ diff --git a/sprites/burst.png.import b/sprites/burst.png.import new file mode 100644 index 0000000..b338f57 --- /dev/null +++ b/sprites/burst.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cbfhj0tswcksm" +path="res://.godot/imported/burst.png-0ca3a873296b113f4396e0bdead4beff.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://sprites/burst.png" +dest_files=["res://.godot/imported/burst.png-0ca3a873296b113f4396e0bdead4beff.ctex"] + +[params] + +compress/mode=1 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=false +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/sprites/burst_animation.tres b/sprites/burst_animation.tres new file mode 100644 index 0000000..1948687 --- /dev/null +++ b/sprites/burst_animation.tres @@ -0,0 +1,28 @@ +[gd_resource type="SpriteFrames" load_steps=4 format=3 uid="uid://dbv3sy5qjatnl"] + +[ext_resource type="Texture2D" uid="uid://cbfhj0tswcksm" path="res://sprites/burst.png" id="1_bh1wj"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_mdaww"] +atlas = ExtResource("1_bh1wj") +region = Rect2(0, 0, 256, 256) + +[sub_resource type="AtlasTexture" id="AtlasTexture_3nr3w"] +atlas = ExtResource("1_bh1wj") +region = Rect2(256, 0, 256, 256) + +[resource] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_mdaww") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_3nr3w") +}, { +"duration": 1.0, +"texture": null +}], +"loop": false, +"name": &"default", +"speed": 30.0 +}] diff --git a/sprites/crosshair-repeater.png b/sprites/crosshair-repeater.png new file mode 100644 index 0000000..7f5fe57 Binary files /dev/null and b/sprites/crosshair-repeater.png differ diff --git a/sprites/crosshair-repeater.png.import b/sprites/crosshair-repeater.png.import new file mode 100644 index 0000000..77aa612 --- /dev/null +++ b/sprites/crosshair-repeater.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ce3lgq7foiusl" +path="res://.godot/imported/crosshair-repeater.png-ec408225e689b23875963003728cb016.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://sprites/crosshair-repeater.png" +dest_files=["res://.godot/imported/crosshair-repeater.png-ec408225e689b23875963003728cb016.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/sprites/crosshair.png b/sprites/crosshair.png new file mode 100644 index 0000000..b7e5b35 Binary files /dev/null and b/sprites/crosshair.png differ diff --git a/sprites/crosshair.png.import b/sprites/crosshair.png.import new file mode 100644 index 0000000..97306ed --- /dev/null +++ b/sprites/crosshair.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://2jld33y6h5pq" +path.s3tc="res://.godot/imported/crosshair.png-1281ee32d6777347e0f43a202c603c1b.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://sprites/crosshair.png" +dest_files=["res://.godot/imported/crosshair.png-1281ee32d6777347e0f43a202c603c1b.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/sprites/hit.png b/sprites/hit.png new file mode 100644 index 0000000..b2493e6 Binary files /dev/null and b/sprites/hit.png differ diff --git a/sprites/hit.png.import b/sprites/hit.png.import new file mode 100644 index 0000000..acdcac3 --- /dev/null +++ b/sprites/hit.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dh0t42ubhuv0" +path.s3tc="res://.godot/imported/hit.png-32857f07c817e04581303953f2545db0.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://sprites/hit.png" +dest_files=["res://.godot/imported/hit.png-32857f07c817e04581303953f2545db0.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/sprites/particle.png b/sprites/particle.png new file mode 100644 index 0000000..07e4c62 Binary files /dev/null and b/sprites/particle.png differ diff --git a/sprites/particle.png.import b/sprites/particle.png.import new file mode 100644 index 0000000..74d0216 --- /dev/null +++ b/sprites/particle.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bs6puxrivhkk2" +path.s3tc="res://.godot/imported/particle.png-9c8c1748211b697ea72e6a5d18d7f578.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://sprites/particle.png" +dest_files=["res://.godot/imported/particle.png-9c8c1748211b697ea72e6a5d18d7f578.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/sprites/tracer.png b/sprites/tracer.png new file mode 100644 index 0000000..e15a03b Binary files /dev/null and b/sprites/tracer.png differ diff --git a/sprites/tracer.png.import b/sprites/tracer.png.import new file mode 100644 index 0000000..b4b348c --- /dev/null +++ b/sprites/tracer.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://diluv5007my5w" +path.s3tc="res://.godot/imported/tracer.png-e5030356ca26a83ff0fd1b2d5a878c23.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://sprites/tracer.png" +dest_files=["res://.godot/imported/tracer.png-e5030356ca26a83ff0fd1b2d5a878c23.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/vector/.gdignore b/vector/.gdignore new file mode 100644 index 0000000..e69de29 diff --git a/vector/sprites.fla b/vector/sprites.fla new file mode 100644 index 0000000..7f3f2ec Binary files /dev/null and b/vector/sprites.fla differ diff --git a/weapons/blaster-repeater.tres b/weapons/blaster-repeater.tres new file mode 100644 index 0000000..e9322c0 --- /dev/null +++ b/weapons/blaster-repeater.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" script_class="Weapon" load_steps=4 format=3 uid="uid://cu2gtxlcmbb34"] + +[ext_resource type="PackedScene" uid="uid://c0fgu1f2whait" path="res://models/blaster-double.glb" id="1_1mdln"] +[ext_resource type="Texture2D" uid="uid://ce3lgq7foiusl" path="res://sprites/crosshair-repeater.png" id="1_hoqei"] +[ext_resource type="Script" path="res://scripts/weapon.gd" id="1_l1atd"] + +[resource] +script = ExtResource("1_l1atd") +model = ExtResource("1_1mdln") +position = Vector3(0, 0, 0) +rotation = Vector3(0, 180, 0) +cooldown = 0.1 +max_distance = 10 +damage = 10.0 +spread = 0.5 +shot_count = 1 +sound_shoot = "sounds/shoot_a.ogg" +crosshair = ExtResource("1_hoqei") diff --git a/weapons/blaster.tres b/weapons/blaster.tres new file mode 100644 index 0000000..2522489 --- /dev/null +++ b/weapons/blaster.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" script_class="Weapon" load_steps=4 format=3 uid="uid://c56y8pqoyk15f"] + +[ext_resource type="Texture2D" uid="uid://2jld33y6h5pq" path="res://sprites/crosshair.png" id="1_2onsr"] +[ext_resource type="PackedScene" uid="uid://b2p7bbkuxf7m" path="res://models/blaster.glb" id="1_x0glg"] +[ext_resource type="Script" path="res://scripts/weapon.gd" id="2_107w7"] + +[resource] +script = ExtResource("2_107w7") +model = ExtResource("1_x0glg") +position = Vector3(0, 0, 0) +rotation = Vector3(0, 180, 0) +cooldown = 0.5 +max_distance = 10 +damage = 25.0 +spread = 2.0 +shot_count = 3 +sound_shoot = "sounds/shoot_shotgun.ogg" +crosshair = ExtResource("1_2onsr")