add chaingun and grenade launcher, revert src folder for another MR

This commit is contained in:
anyreso 2024-05-01 10:04:14 -04:00
parent a1cc4dbfbd
commit fb1c5ecaea
128 changed files with 773 additions and 651 deletions

View file

@ -38,6 +38,22 @@ func _unhandled_input(event : InputEvent) -> void:
cycle(1)
if event.button_index == MOUSE_BUTTON_WHEEL_DOWN and event.pressed:
cycle(-1)
if event is InputEventKey:
match event.keycode:
KEY_1: select(0)
KEY_2: select(1)
KEY_3: select(2)
func select(index : int) -> void:
if selected:
selected.hide()
selected = get_child(index)
if selected:
selected.show()
else:
selected = get_child(index)
if selected:
selected.show()
## This method overrides [method Node.add_child] method to make sure not to exceed the inventory capacity
func _add_child(node: Node, force_readable_name: bool = false, internal: InternalMode = InternalMode.INTERNAL_MODE_DISABLED) -> void:

View file

@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://chuein4frnvwt"
path="res://.godot/imported/player_mesh.glb-e04f813b01e0d89f826988e7bd9bf90a.scn"
path="res://.godot/imported/player_mesh.glb-8a1e1c6070971fc6184d85747185f28c.scn"
[deps]
source_file="res://src/entities/target_dummy/assets/player_mesh.glb"
dest_files=["res://.godot/imported/player_mesh.glb-e04f813b01e0d89f826988e7bd9bf90a.scn"]
source_file="res://entities/dummy_target/assets/player_mesh.glb"
dest_files=["res://.godot/imported/player_mesh.glb-8a1e1c6070971fc6184d85747185f28c.scn"]
[params]

View file

@ -0,0 +1,68 @@
[gd_scene load_steps=5 format=3 uid="uid://dpnu1lvfncx6q"]
[ext_resource type="Script" path="res://entities/dummy_target/dummy_target.gd" id="1_iup5v"]
[ext_resource type="Shape3D" uid="uid://cb8esdlnottdn" path="res://entities/player/collision_shape.tres" id="2_i5k5j"]
[ext_resource type="PackedScene" uid="uid://chuein4frnvwt" path="res://entities/dummy_target/assets/player_mesh.glb" id="4_fuync"]
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_b0142"]
friction = 0.5
bounce = 0.5
[node name="DummyTarget" type="RigidBody3D"]
collision_layer = 2147483649
collision_mask = 2147483649
axis_lock_angular_x = true
axis_lock_angular_y = true
axis_lock_angular_z = true
mass = 75.0
physics_material_override = SubResource("PhysicsMaterial_b0142")
center_of_mass_mode = 1
center_of_mass = Vector3(0, 1, 0)
continuous_cd = true
script = ExtResource("1_iup5v")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
shape = ExtResource("2_i5k5j")
[node name="TargetMesh" parent="." instance=ExtResource("4_fuync")]
transform = Transform3D(0.75, 0, 0, 0, 0.75, 0, 0, 0, 0.75, 0, 0, 0)
[node name="playerrig" parent="TargetMesh" index="2"]
transform = Transform3D(2.56873e-07, 0, 1.31928, 0, 1.31928, 0, -1.31928, 0, 2.56873e-07, 0, 0, 0)
[node name="Skeleton3D" parent="TargetMesh/playerrig" index="0"]
bones/6/rotation = Quaternion(-0.605155, -0.345862, -0.356135, 0.622363)
bones/7/rotation = Quaternion(0.18188, 0.221628, -0.929157, 0.233384)
bones/8/rotation = Quaternion(0.128862, -0.709864, -0.133277, 0.679504)
bones/9/rotation = Quaternion(0.126866, -0.0346058, -0.00662176, 0.991294)
bones/11/rotation = Quaternion(-0.0630718, -0.16283, 0.0971492, 0.979832)
bones/13/rotation = Quaternion(0.0299552, -0.545663, -0.00259936, 0.837465)
bones/14/rotation = Quaternion(-0.0636278, -0.0624373, 0.0299354, 0.995569)
bones/17/rotation = Quaternion(0.0486079, -0.0407852, 0.014286, 0.997883)
bones/19/rotation = Quaternion(-0.12453, -0.526036, 0.129609, 0.831252)
bones/20/rotation = Quaternion(-0.0225172, -0.0668488, 0.0231689, 0.99724)
bones/21/rotation = Quaternion(-0.00114936, 0.0252308, -0.0174874, 0.999528)
bones/25/rotation = Quaternion(-0.608395, 0.196282, 0.258426, 0.724254)
bones/26/rotation = Quaternion(0.161981, -0.321612, 0.619315, 0.697694)
bones/27/rotation = Quaternion(0.426391, 0.0868582, 0.53013, 0.727742)
bones/28/rotation = Quaternion(-0.217102, 0.0422089, 0.0230506, 0.974963)
bones/33/rotation = Quaternion(-0.0636278, 0.0624373, -0.0299354, 0.995569)
bones/36/rotation = Quaternion(-0.4266, 0.0977703, 0.332942, 0.835226)
bones/37/rotation = Quaternion(-0.632018, -0.129105, 0.241206, 0.725055)
bones/39/rotation = Quaternion(-0.479327, 0.030236, 0.338389, 0.809212)
bones/40/rotation = Quaternion(-0.540176, -0.0581251, 0.395197, 0.740709)
bones/42/rotation = Quaternion(-0.451682, -0.0170105, 0.326969, 0.829931)
bones/43/rotation = Quaternion(-0.512965, -0.0942157, 0.391943, 0.757873)
bones/44/rotation = Quaternion(0.986515, -3.3762e-16, 1.34771e-25, 0.163672)
bones/46/rotation = Quaternion(-0.574131, 2.92207e-06, -4.58343e-06, 0.818763)
bones/49/rotation = Quaternion(0.986515, -3.3762e-16, 1.34771e-25, 0.163672)
bones/51/rotation = Quaternion(-0.574131, -2.92207e-06, 4.58343e-06, 0.818763)
[node name="AnimationPlayer" parent="TargetMesh" index="4"]
autoplay = "gunTwoHanded"
[node name="Marker3D" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0)
[editable path="TargetMesh"]

View file

@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://d3l7fvbdg6m5g"
path="res://.godot/imported/flag.glb-d872a6b5005907515bca9245eda66e81.scn"
path="res://.godot/imported/flag.glb-0a51d316969707bbb012f3287265227f.scn"
[deps]
source_file="res://src/entities/flag/assets/flag.glb"
dest_files=["res://.godot/imported/flag.glb-d872a6b5005907515bca9245eda66e81.scn"]
source_file="res://entities/flag/assets/flag.glb"
dest_files=["res://.godot/imported/flag.glb-0a51d316969707bbb012f3287265227f.scn"]
[params]

View file

@ -1,9 +1,9 @@
[gd_scene load_steps=8 format=3 uid="uid://c88l3h0ph00c7"]
[ext_resource type="Script" path="res://src/entities/flag/flag.gd" id="1_y7d3d"]
[ext_resource type="Script" path="res://entities/flag/flag.gd" id="1_y7d3d"]
[ext_resource type="Script" path="res://addons/smoothing/smoothing.gd" id="2_es4ce"]
[ext_resource type="PackedScene" uid="uid://d3l7fvbdg6m5g" path="res://src/entities/flag/assets/flag.glb" id="2_i78em"]
[ext_resource type="PackedScene" uid="uid://bcgkc5fhhyauv" path="res://src/entities/flag/waypoint.tscn" id="3_tu6jg"]
[ext_resource type="PackedScene" uid="uid://d3l7fvbdg6m5g" path="res://entities/flag/assets/flag.glb" id="2_i78em"]
[ext_resource type="PackedScene" uid="uid://bcgkc5fhhyauv" path="res://entities/flag/waypoint.tscn" id="3_tu6jg"]
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_4ymrw"]
friction = 0.5

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://bcgkc5fhhyauv"]
[ext_resource type="Script" path="res://src/entities/flag/waypoint.gd" id="1_gmnl6"]
[ext_resource type="Script" path="res://entities/flag/waypoint.gd" id="1_gmnl6"]
[node name="IFF" type="Control"]
layout_mode = 3

View file

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dmf12llra7aq5"
path.s3tc="res://.godot/imported/Particle01.png-91a221b05ac784633d634ee4ff59bc49.s3tc.ctex"
path.s3tc="res://.godot/imported/Particle01.png-789728e4e363d58f11747b3cf3c5d5a3.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/entities/player/assets/jetpackfx/Particle01.png"
dest_files=["res://.godot/imported/Particle01.png-91a221b05ac784633d634ee4ff59bc49.s3tc.ctex"]
source_file="res://entities/player/assets/jetpackfx/Particle01.png"
dest_files=["res://.godot/imported/Particle01.png-789728e4e363d58f11747b3cf3c5d5a3.s3tc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 95 KiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://ct1v5iadtpadm"
path.s3tc="res://.godot/imported/smoke_01.png-947639cde10498cdb127ff45ce477e02.s3tc.ctex"
path.s3tc="res://.godot/imported/smoke_01.png-5c3d69bc74b2f317eac64d37cd67aed3.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/entities/player/assets/jetpackfx/smoke_01.png"
dest_files=["res://.godot/imported/smoke_01.png-947639cde10498cdb127ff45ce477e02.s3tc.ctex"]
source_file="res://entities/player/assets/jetpackfx/smoke_01.png"
dest_files=["res://.godot/imported/smoke_01.png-5c3d69bc74b2f317eac64d37cd67aed3.s3tc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 95 KiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://doxo4vfn0bjlp"
path.s3tc="res://.godot/imported/smoke_02.png-ecd8b2fbdcf6dc556befc84f1840a170.s3tc.ctex"
path.s3tc="res://.godot/imported/smoke_02.png-a5343a97ff1cefeebcd82e41218739ca.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/entities/player/assets/jetpackfx/smoke_02.png"
dest_files=["res://.godot/imported/smoke_02.png-ecd8b2fbdcf6dc556befc84f1840a170.s3tc.ctex"]
source_file="res://entities/player/assets/jetpackfx/smoke_02.png"
dest_files=["res://.godot/imported/smoke_02.png-a5343a97ff1cefeebcd82e41218739ca.s3tc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dg8jhudb2pp5"
path="res://.godot/imported/smoke_05.png-70d6db4430021c614703a9482bb52d05.ctex"
path="res://.godot/imported/smoke_05.png-0e09dd48bb034f353433668dafb91bd9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://src/entities/player/assets/jetpackfx/smoke_05.png"
dest_files=["res://.godot/imported/smoke_05.png-70d6db4430021c614703a9482bb52d05.ctex"]
source_file="res://entities/player/assets/jetpackfx/smoke_05.png"
dest_files=["res://.godot/imported/smoke_05.png-0e09dd48bb034f353433668dafb91bd9.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 61 KiB

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bj3byo4v71rub"
path="res://.godot/imported/smoke_06.png-ac5fb056c885382926cf2257132d24c1.ctex"
path="res://.godot/imported/smoke_06.png-551015dc27729e05438bc76194d0b9c3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://src/entities/player/assets/jetpackfx/smoke_06.png"
dest_files=["res://.godot/imported/smoke_06.png-ac5fb056c885382926cf2257132d24c1.ctex"]
source_file="res://entities/player/assets/jetpackfx/smoke_06.png"
dest_files=["res://.godot/imported/smoke_06.png-551015dc27729e05438bc76194d0b9c3.ctex"]
[params]

View file

@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://4naw661fqmjg"
path="res://.godot/imported/vanguard.glb-fc8e6f96ea4fae530d4397b5c8b98a01.scn"
path="res://.godot/imported/vanguard.glb-cadeef0df4a787cdbb2a53b5a94a5c23.scn"
[deps]
source_file="res://src/entities/player/assets/vanguard.glb"
dest_files=["res://.godot/imported/vanguard.glb-fc8e6f96ea4fae530d4397b5c8b98a01.scn"]
source_file="res://entities/player/assets/vanguard.glb"
dest_files=["res://.godot/imported/vanguard.glb-cadeef0df4a787cdbb2a53b5a94a5c23.scn"]
[params]

View file

Before

Width:  |  Height:  |  Size: 1.5 MiB

After

Width:  |  Height:  |  Size: 1.5 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://ia3bdpe4rm1m"
path.bptc="res://.godot/imported/vanguard_0.png-64957e4bbafcdc02f90db1244f91c618.bptc.ctex"
path.bptc="res://.godot/imported/vanguard_0.png-601f36bc664114e126d425d5f45085ef.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -12,8 +12,8 @@ generator_parameters={}
[deps]
source_file="res://src/entities/player/assets/vanguard_0.png"
dest_files=["res://.godot/imported/vanguard_0.png-64957e4bbafcdc02f90db1244f91c618.bptc.ctex"]
source_file="res://entities/player/assets/vanguard_0.png"
dest_files=["res://.godot/imported/vanguard_0.png-601f36bc664114e126d425d5f45085ef.bptc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 1.6 MiB

After

Width:  |  Height:  |  Size: 1.6 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bvgfmpb2l1juf"
path.bptc="res://.godot/imported/vanguard_1.png-5b636398aa3d94ff381564cffba3a483.bptc.ctex"
path.bptc="res://.godot/imported/vanguard_1.png-39b5712c4c4119a42b3540a159f8b3f2.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -12,8 +12,8 @@ generator_parameters={}
[deps]
source_file="res://src/entities/player/assets/vanguard_1.png"
dest_files=["res://.godot/imported/vanguard_1.png-5b636398aa3d94ff381564cffba3a483.bptc.ctex"]
source_file="res://entities/player/assets/vanguard_1.png"
dest_files=["res://.godot/imported/vanguard_1.png-39b5712c4c4119a42b3540a159f8b3f2.bptc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 1.6 MiB

After

Width:  |  Height:  |  Size: 1.6 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://vtrbc3eja3df"
path.bptc="res://.godot/imported/vanguard_2.png-6729401188d55838373c08fb093c1c93.bptc.ctex"
path.bptc="res://.godot/imported/vanguard_2.png-986e3665904b0d4758f584d5d3b7b726.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -12,8 +12,8 @@ generator_parameters={}
[deps]
source_file="res://src/entities/player/assets/vanguard_2.png"
dest_files=["res://.godot/imported/vanguard_2.png-6729401188d55838373c08fb093c1c93.bptc.ctex"]
source_file="res://entities/player/assets/vanguard_2.png"
dest_files=["res://.godot/imported/vanguard_2.png-986e3665904b0d4758f584d5d3b7b726.bptc.ctex"]
[params]

View file

@ -70,7 +70,7 @@ func _ready() -> void:
health_component.health_zeroed.connect(die)
energy_changed.connect(hud._on_energy_changed)
input.fired_primary.connect(_trigger.bind(inventory.selected))
input.fired_primary.connect(_trigger)
input.jumped.connect(_jump)
input.throwed_flag.connect(_throw_flag)
@ -88,9 +88,12 @@ func _is_pawn() -> bool:
var peer_is_pawn : bool = multiplayer.get_unique_id() == match_participant_component.player_id
return game.mode is Singleplayer or peer_is_pawn
func _trigger(weapon : Weapon) -> void:
if not _is_player_dead() and weapon != null:
weapon.trigger()
func _trigger() -> void:
if not _is_player_dead() and inventory.selected:
if inventory.selected.has_method("trigger"):
inventory.selected.trigger()
else:
push_warning("cannot trigger weapon")
func _jump() -> void:
if _is_player_dead():

334
entities/player/player.tscn Normal file
View file

@ -0,0 +1,334 @@
[gd_scene load_steps=44 format=3 uid="uid://cbhx1xme0sb7k"]
[ext_resource type="Script" path="res://entities/player/player.gd" id="1_mk68k"]
[ext_resource type="Shape3D" uid="uid://cb8esdlnottdn" path="res://entities/player/collision_shape.tres" id="2_vjqny"]
[ext_resource type="PackedScene" uid="uid://bcv81ku26xo" path="res://interfaces/hud/hud.tscn" id="3_ccety"]
[ext_resource type="Script" path="res://entities/components/match_participant_component.gd" id="6_lrose"]
[ext_resource type="Script" path="res://entities/player/player_input.gd" id="6_ymcrr"]
[ext_resource type="PackedScene" uid="uid://dsysi2rd3bu76" path="res://interfaces/hud/iffs/iff.tscn" id="7_8hc80"]
[ext_resource type="Script" path="res://entities/components/inventory.gd" id="8_768qh"]
[ext_resource type="PackedScene" uid="uid://drbefw6akui2v" path="res://entities/player/vanguard.tscn" id="8_eiy7q"]
[ext_resource type="Script" path="res://entities/components/flag_carry_component.gd" id="8_pdfbn"]
[ext_resource type="Texture2D" uid="uid://ct1v5iadtpadm" path="res://entities/player/assets/jetpackfx/smoke_01.png" id="9_4pant"]
[ext_resource type="PackedScene" uid="uid://c8co0qa2omjmh" path="res://entities/weapons/space_gun/space_gun.tscn" id="9_achlo"]
[ext_resource type="Texture2D" uid="uid://doxo4vfn0bjlp" path="res://entities/player/assets/jetpackfx/smoke_02.png" id="10_5b1bx"]
[ext_resource type="Texture2D" uid="uid://dmf12llra7aq5" path="res://entities/player/assets/jetpackfx/Particle01.png" id="11_6ndfi"]
[ext_resource type="Script" path="res://addons/smoothing/smoothing.gd" id="11_k330l"]
[ext_resource type="Script" path="res://entities/components/health_component.gd" id="14_ctgxn"]
[ext_resource type="PackedScene" uid="uid://b0xql5hi0b52y" path="res://entities/weapons/chaingun/chaingun.tscn" id="15_io0a3"]
[ext_resource type="PackedScene" uid="uid://cstl7yxc75572" path="res://entities/weapons/grenade_launcher/grenade_launcher.tscn" id="16_4xs2j"]
[ext_resource type="PackedScene" uid="uid://d3l7fvbdg6m5g" path="res://entities/flag/assets/flag.glb" id="18_7nkei"]
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_clur0"]
resource_local_to_scene = true
bounce = 1.0
absorbent = true
[sub_resource type="SphereShape3D" id="SphereShape3D_hwe6e"]
radius = 0.2
[sub_resource type="Animation" id="Animation_yqgrk"]
resource_name = "death"
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Smoothing/Pivot:rotation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.5),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(-1.35254, 0, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoothing/Pivot:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.5),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector3(0, 0.5, 0), Vector3(0, -0.114794, 0)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_hg307"]
_data = {
"death": SubResource("Animation_yqgrk")
}
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_rqdp6"]
properties/0/path = NodePath(".:linear_velocity")
properties/0/spawn = true
properties/0/replication_mode = 1
properties/1/path = NodePath(".:position")
properties/1/spawn = true
properties/1/replication_mode = 1
properties/2/path = NodePath("HealthComponent:health")
properties/2/spawn = true
properties/2/replication_mode = 2
properties/3/path = NodePath(".:player_state")
properties/3/spawn = true
properties/3/replication_mode = 2
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_5j4ew"]
properties/0/path = NodePath(".:direction")
properties/0/spawn = false
properties/0/replication_mode = 1
properties/1/path = NodePath(".:jetting")
properties/1/spawn = false
properties/1/replication_mode = 2
properties/2/path = NodePath(".:camera_rotation")
properties/2/spawn = false
properties/2/replication_mode = 1
properties/3/path = NodePath(".:skiing")
properties/3/spawn = false
properties/3/replication_mode = 2
[sub_resource type="Gradient" id="Gradient_3u0pn"]
offsets = PackedFloat32Array(0, 0.872727)
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_wjoiw"]
gradient = SubResource("Gradient_3u0pn")
[sub_resource type="Curve" id="Curve_pmb0n"]
max_value = 2.0
_data = [Vector2(0, 0.197802), 0.0, 0.0, 0, 0, Vector2(1, 2), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_cj8ky"]
curve = SubResource("Curve_pmb0n")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_v556h"]
emission_shape = 1
emission_sphere_radius = 0.1
angle_min = -381.7
angle_max = 381.7
gravity = Vector3(0, -5, 0)
tangential_accel_min = -5.0
tangential_accel_max = 5.0
scale_curve = SubResource("CurveTexture_cj8ky")
color_ramp = SubResource("GradientTexture1D_wjoiw")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_27esd"]
transparency = 1
vertex_color_use_as_albedo = true
albedo_texture = ExtResource("9_4pant")
billboard_mode = 1
billboard_keep_scale = true
[sub_resource type="QuadMesh" id="QuadMesh_hegkl"]
material = SubResource("StandardMaterial3D_27esd")
[sub_resource type="Gradient" id="Gradient_f4nyt"]
offsets = PackedFloat32Array(0, 0.972727)
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_ovx5q"]
gradient = SubResource("Gradient_f4nyt")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_l8e6j"]
emission_shape = 1
emission_sphere_radius = 0.1
angle_min = -381.7
angle_max = 381.7
gravity = Vector3(0, -5, 0)
tangential_accel_min = -5.0
tangential_accel_max = 5.0
scale_curve = SubResource("CurveTexture_cj8ky")
color_ramp = SubResource("GradientTexture1D_ovx5q")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_bknuu"]
transparency = 1
vertex_color_use_as_albedo = true
albedo_texture = ExtResource("10_5b1bx")
billboard_mode = 1
billboard_keep_scale = true
grow_amount = 1.506
[sub_resource type="QuadMesh" id="QuadMesh_aeure"]
material = SubResource("StandardMaterial3D_bknuu")
[sub_resource type="Gradient" id="Gradient_t1nsw"]
offsets = PackedFloat32Array(0, 0.627273, 0.927273)
colors = PackedColorArray(1, 0.858824, 0.0784314, 1, 1, 0, 0, 1, 1, 0, 0, 0)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_x0y0j"]
gradient = SubResource("Gradient_t1nsw")
[sub_resource type="Curve" id="Curve_fkrx7"]
max_value = 2.0
_data = [Vector2(0, 0.197802), 0.0, 0.0, 0, 0, Vector2(0.594203, 0.395604), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_frkde"]
curve = SubResource("Curve_fkrx7")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_q1vdw"]
emission_shape = 1
emission_sphere_radius = 0.05
angle_min = -381.7
angle_max = 381.7
gravity = Vector3(0, -5, 0)
tangential_accel_min = -5.0
tangential_accel_max = 5.0
scale_curve = SubResource("CurveTexture_frkde")
color_ramp = SubResource("GradientTexture1D_x0y0j")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_2jwv2"]
transparency = 1
blend_mode = 1
cull_mode = 2
vertex_color_use_as_albedo = true
albedo_texture = ExtResource("11_6ndfi")
emission_enabled = true
emission = Color(1, 0.823529, 0.701961, 1)
billboard_mode = 3
billboard_keep_scale = true
particles_anim_h_frames = 1
particles_anim_v_frames = 1
particles_anim_loop = false
[sub_resource type="QuadMesh" id="QuadMesh_uc7ts"]
material = SubResource("StandardMaterial3D_2jwv2")
[node name="Player" type="RigidBody3D" node_paths=PackedStringArray("iff", "inventory") groups=["Player"]]
collision_mask = 2147483649
axis_lock_angular_x = true
axis_lock_angular_y = true
axis_lock_angular_z = true
mass = 75.0
physics_material_override = SubResource("PhysicsMaterial_clur0")
can_sleep = false
continuous_cd = true
script = ExtResource("1_mk68k")
iff = NodePath("Smoothing/ThirdPerson/IFF")
inventory = NodePath("Smoothing/Pivot/Inventory")
jump_height = 1.5
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = ExtResource("2_vjqny")
[node name="WalkableSurfaceSensor" type="ShapeCast3D" parent="."]
transform = Transform3D(1.05, 0, 0, 0, 1.05, 0, 0, 0, 1.05, 0, -0.85, 0)
shape = SubResource("SphereShape3D_hwe6e")
target_position = Vector3(0, 0, 0)
collision_mask = 2147483648
[node name="Sensor" type="Area3D" parent="."]
collision_layer = 0
collision_mask = 8
monitorable = false
[node name="CollisionShape3D" type="CollisionShape3D" parent="Sensor"]
shape = ExtResource("2_vjqny")
[node name="HealthComponent" type="Area3D" parent="." node_paths=PackedStringArray("match_participant_component")]
script = ExtResource("14_ctgxn")
match_participant_component = NodePath("../MatchParticipantComponent")
[node name="CollisionShape3D" type="CollisionShape3D" parent="HealthComponent"]
shape = ExtResource("2_vjqny")
[node name="HUD" parent="." instance=ExtResource("3_ccety")]
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
"": SubResource("AnimationLibrary_hg307")
}
autoplay = "shoot"
playback_default_blend_time = 0.05
[node name="ServerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_rqdp6")
[node name="PlayerInput" type="MultiplayerSynchronizer" parent="."]
root_path = NodePath(".")
replication_config = SubResource("SceneReplicationConfig_5j4ew")
script = ExtResource("6_ymcrr")
[node name="MatchParticipantComponent" type="MultiplayerSynchronizer" parent="."]
script = ExtResource("6_lrose")
[node name="Smoothing" type="Node3D" parent="."]
script = ExtResource("11_k330l")
target = NodePath("..")
flags = 3
[node name="ThirdPerson" type="Node3D" parent="Smoothing"]
visible = false
[node name="PlayerMesh" parent="Smoothing/ThirdPerson" node_paths=PackedStringArray("spine_ik_target_attachment") instance=ExtResource("8_eiy7q")]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
spine_ik_target_attachment = NodePath("../../Pivot/SpineIKTarget")
[node name="JetpackFX" type="Node3D" parent="Smoothing/ThirdPerson/PlayerMesh"]
[node name="Smoke1" type="GPUParticles3D" parent="Smoothing/ThirdPerson/PlayerMesh/JetpackFX"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.150648, 0)
emitting = false
lifetime = 0.5
one_shot = true
process_material = SubResource("ParticleProcessMaterial_v556h")
draw_pass_1 = SubResource("QuadMesh_hegkl")
[node name="Smoke2" type="GPUParticles3D" parent="Smoothing/ThirdPerson/PlayerMesh/JetpackFX"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.108846, 0)
emitting = false
lifetime = 0.5
one_shot = true
process_material = SubResource("ParticleProcessMaterial_l8e6j")
draw_pass_1 = SubResource("QuadMesh_aeure")
[node name="Fire1" type="GPUParticles3D" parent="Smoothing/ThirdPerson/PlayerMesh/JetpackFX"]
emitting = false
amount = 16
lifetime = 0.3
one_shot = true
process_material = SubResource("ParticleProcessMaterial_q1vdw")
draw_pass_1 = SubResource("QuadMesh_uc7ts")
[node name="IFFAttachment" type="Marker3D" parent="Smoothing/ThirdPerson"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.27457, 0)
[node name="IFF" parent="Smoothing/ThirdPerson" node_paths=PackedStringArray("player", "match_participant_component", "attach_point") instance=ExtResource("7_8hc80")]
player = NodePath("../../..")
match_participant_component = NodePath("../../../MatchParticipantComponent")
attach_point = NodePath("../IFFAttachment")
[node name="Pivot" type="Node3D" parent="Smoothing"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
[node name="Camera3D" type="Camera3D" parent="Smoothing/Pivot"]
fov = 90.0
near = 0.1
[node name="Inventory" type="Node3D" parent="Smoothing/Pivot"]
transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, 0.15, -0.2, -0.45)
script = ExtResource("8_768qh")
[node name="SpaceGun" parent="Smoothing/Pivot/Inventory" instance=ExtResource("9_achlo")]
[node name="ChainGun" parent="Smoothing/Pivot/Inventory" instance=ExtResource("15_io0a3")]
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0.1)
visible = false
[node name="GrenadeLauncher" parent="Smoothing/Pivot/Inventory" instance=ExtResource("16_4xs2j")]
visible = false
[node name="FlagCarryComponent" type="Node3D" parent="Smoothing/Pivot" node_paths=PackedStringArray("sensor", "carrier")]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
visible = false
script = ExtResource("8_pdfbn")
sensor = NodePath("../../../Sensor")
carrier = NodePath("../../..")
[node name="FlagMesh" parent="Smoothing/Pivot/FlagCarryComponent" instance=ExtResource("18_7nkei")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 1.559e-08, -0.462981, -0.178329)
[node name="SpineIKTarget" type="Marker3D" parent="Smoothing/Pivot"]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)

View file

@ -1,8 +1,8 @@
[gd_scene load_steps=28 format=3 uid="uid://drbefw6akui2v"]
[ext_resource type="PackedScene" uid="uid://4naw661fqmjg" path="res://src/entities/player/assets/vanguard.glb" id="1_d2ik6"]
[ext_resource type="Script" path="res://src/entities/player/assets/vanguard.gd" id="2_c22xr"]
[ext_resource type="PackedScene" uid="uid://bjcn37ops3bro" path="res://src/entities/weapons/space_gun/assets/disclauncher.glb" id="3_s13xh"]
[ext_resource type="PackedScene" uid="uid://4naw661fqmjg" path="res://entities/player/assets/vanguard.glb" id="1_d2ik6"]
[ext_resource type="Script" path="res://entities/player/vanguard.gd" id="2_c22xr"]
[ext_resource type="PackedScene" uid="uid://bjcn37ops3bro" path="res://entities/weapons/space_gun/assets/disclauncher.glb" id="3_s13xh"]
[sub_resource type="Animation" id="Animation_bdd76"]
resource_name = "t_pose"

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,34 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cumv8wij5uufk"
path="res://.godot/imported/chaingun.glb-16cef2303c058492773f5f33b566245e.scn"
[deps]
source_file="res://entities/weapons/chaingun/assets/chaingun.glb"
dest_files=["res://.godot/imported/chaingun.glb-16cef2303c058492773f5f33b566245e.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
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
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/naming_version=1
gltf/embedded_image_handling=1

Binary file not shown.

View file

@ -0,0 +1,6 @@
class_name ChainGun extends Weapon
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.

View file

@ -0,0 +1,30 @@
[gd_scene load_steps=3 format=3 uid="uid://b0xql5hi0b52y"]
[ext_resource type="PackedScene" uid="uid://cumv8wij5uufk" path="res://entities/weapons/chaingun/assets/chaingun.glb" id="1_d8tdv"]
[ext_resource type="Script" path="res://entities/weapons/chaingun/chaingun.gd" id="2_qsqeh"]
[node name="ChainGun" node_paths=PackedStringArray("anim_player") instance=ExtResource("1_d8tdv")]
script = ExtResource("2_qsqeh")
anim_player = NodePath("AnimationPlayer")
[node name="Skeleton3D" parent="Armature" index="0"]
bones/1/rotation = Quaternion(3.09086e-08, 0.707107, 0.707107, 3.09086e-08)
bones/2/rotation = Quaternion(3.09086e-08, 0.707107, 0.707107, -3.09086e-08)
bones/3/rotation = Quaternion(3.09086e-08, 0.707107, 0.707107, -3.09086e-08)
[node name="BarrelsInner" parent="Armature/Skeleton3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.692504, 1.30946)
[node name="BarrelsOuter" parent="Armature/Skeleton3D" index="1"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.692504, 1.30946)
[node name="Base" parent="Armature/Skeleton3D" index="2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.692504, 1.30946)
[node name="Grip" parent="Armature/Skeleton3D" index="3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.692504, 1.30946)
[node name="AnimationPlayer" parent="." index="1"]
autoplay = "idle"
[connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"]

View file

@ -0,0 +1,34 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bbp260t2qivxk"
path="res://.godot/imported/grenade_launcher.glb-de2ec3425486969fecbf31d608a94604.scn"
[deps]
source_file="res://entities/weapons/grenade_launcher/assets/grenade_launcher.glb"
dest_files=["res://.godot/imported/grenade_launcher.glb-de2ec3425486969fecbf31d608a94604.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
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
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/naming_version=1
gltf/embedded_image_handling=1

View file

@ -0,0 +1,28 @@
class_name GrenadeLauncher extends Weapon
@export var nozzle : Marker3D
@export var fire_rate : float = 1. # seconds
@export var reload_time : float = 1. # seconds
@export_category("Projectile")
@export var PROJECTILE : PackedScene
@export var inheritance : float = .75 # ratio
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
func trigger() -> void:
## play the fire animation
anim_player.play("fire")
## init projectile
var inheritance_factor : float = clamp(inheritance, 0., 1.)
var projectile : Node = GrenadeLauncherProjectile.new_projectile(nozzle, owner.match_participant_component, owner.linear_velocity * inheritance_factor, PROJECTILE)
## add to owner of player for now
owner.owner.add_sibling(projectile)
## ensure projectile does not collide with owner
func _on_visibility_changed() -> void:
if self.visible:
self.anim_player.play("equip")
#self.sounds.play("equip")

View file

@ -0,0 +1,25 @@
[gd_scene load_steps=4 format=3 uid="uid://cstl7yxc75572"]
[ext_resource type="PackedScene" uid="uid://bbp260t2qivxk" path="res://entities/weapons/grenade_launcher/assets/grenade_launcher.glb" id="1_keuur"]
[ext_resource type="Script" path="res://entities/weapons/grenade_launcher/grenade_launcher.gd" id="2_38xn3"]
[ext_resource type="PackedScene" uid="uid://dak767xehqa6x" path="res://entities/weapons/grenade_launcher/grenade_launcher_projectile.tscn" id="3_rg5nk"]
[node name="GrenadeLauncher" node_paths=PackedStringArray("nozzle", "anim_player") instance=ExtResource("1_keuur")]
script = ExtResource("2_38xn3")
nozzle = NodePath("Nozzle")
PROJECTILE = ExtResource("3_rg5nk")
anim_player = NodePath("AnimationPlayer")
[node name="barrel" parent="Armature/Skeleton3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.19209e-07, 0)
[node name="grip" parent="Armature/Skeleton3D" index="1"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.082471, -0.0653242)
[node name="main" parent="Armature/Skeleton3D" index="2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.19209e-07, 0)
[node name="Nozzle" type="Marker3D" parent="." index="2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.260605)
[connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"]

View file

@ -0,0 +1,31 @@
class_name GrenadeLauncherProjectile extends Node3D
@export var collider : CollisionShape3D
@export var speed : float = 69.3 # m/s
@export var lifespan : float = 10.0 # in seconds
var shooter : MatchParticipantComponent
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
var lifespan_timer : Timer = Timer.new()
lifespan_timer.wait_time = lifespan
lifespan_timer.one_shot = true
lifespan_timer.autostart = true
lifespan_timer.timeout.connect(queue_free)
add_child(lifespan_timer)
## This method is a parameterized constructor for the [GrenadeLauncherProjectile] scene of the [GrenadeLauncher]
static func new_projectile(origin : Marker3D, _shooter : MatchParticipantComponent, inherited_velocity : Vector3, scene : PackedScene) -> GrenadeLauncherProjectile:
var projectile : GrenadeLauncherProjectile = scene.instantiate()
projectile.shooter = _shooter
projectile.transform = origin.global_transform
projectile.linear_velocity = origin.global_basis.z.normalized() * projectile.speed + inherited_velocity
return projectile
func self_destruct() -> void:
explode(position)
func explode(_spawn_position : Vector3) -> void:
#game.add_child(GrenadeLauncherProjectileExplosion.new_explosion(spawn_position, shooter, EXPLOSION))
queue_free()

View file

@ -0,0 +1,29 @@
[gd_scene load_steps=5 format=3 uid="uid://dak767xehqa6x"]
[ext_resource type="Script" path="res://entities/weapons/grenade_launcher/grenade_launcher_projectile.gd" id="1_i8v2u"]
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_r263x"]
[sub_resource type="SphereShape3D" id="SphereShape3D_kipwv"]
radius = 0.062
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_miu4v"]
albedo_color = Color(0.2, 0.2, 0.2, 1)
[node name="GrenadeLauncherProjectile" type="RigidBody3D" node_paths=PackedStringArray("collider")]
collision_layer = 2147483649
collision_mask = 2147483649
physics_material_override = SubResource("PhysicsMaterial_r263x")
continuous_cd = true
contact_monitor = true
script = ExtResource("1_i8v2u")
collider = NodePath("CollisionShape3D")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("SphereShape3D_kipwv")
[node name="Mesh" type="CSGSphere3D" parent="."]
radius = 0.062
radial_segments = 24
rings = 12
material = SubResource("StandardMaterial3D_miu4v")

View file

@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bjcn37ops3bro"
path="res://.godot/imported/disclauncher.glb-6bdd246410d96484e4ed7479e30de867.scn"
path="res://.godot/imported/disclauncher.glb-e58edebbe444fad4554f8c76e8b18f06.scn"
[deps]
source_file="res://src/entities/weapons/space_gun/assets/disclauncher.glb"
dest_files=["res://.godot/imported/disclauncher.glb-6bdd246410d96484e4ed7479e30de867.scn"]
source_file="res://entities/weapons/space_gun/assets/disclauncher.glb"
dest_files=["res://.godot/imported/disclauncher.glb-e58edebbe444fad4554f8c76e8b18f06.scn"]
[params]

View file

@ -1,9 +1,9 @@
[gd_scene load_steps=8 format=3 uid="uid://dn1tcakam5egs"]
[ext_resource type="Script" path="res://src/entities/weapons/space_gun/projectile.gd" id="1_4j1dp"]
[ext_resource type="PackedScene" uid="uid://8atq41j7wd55" path="res://src/entities/weapons/space_gun/projectile_explosion.tscn" id="2_llml6"]
[ext_resource type="Script" path="res://entities/weapons/space_gun/projectile.gd" id="1_4j1dp"]
[ext_resource type="PackedScene" uid="uid://8atq41j7wd55" path="res://entities/weapons/space_gun/projectile_explosion.tscn" id="2_llml6"]
[ext_resource type="Script" path="res://addons/smoothing/smoothing.gd" id="3_dmi64"]
[ext_resource type="Script" path="res://src/entities/weapons/space_gun/projectile_trail.gd" id="3_ygqbh"]
[ext_resource type="Script" path="res://entities/weapons/space_gun/projectile_trail.gd" id="3_ygqbh"]
[sub_resource type="SphereShape3D" id="SphereShape3D_umtte"]
radius = 0.15

View file

@ -1,7 +1,7 @@
[gd_scene load_steps=9 format=3 uid="uid://8atq41j7wd55"]
[ext_resource type="Script" path="res://src/entities/weapons/space_gun/projectile_explosion.gd" id="1_fp5td"]
[ext_resource type="Script" path="res://src/entities/components/explosive_damage_component.gd" id="2_28ymv"]
[ext_resource type="Script" path="res://entities/weapons/space_gun/projectile_explosion.gd" id="1_fp5td"]
[ext_resource type="Script" path="res://entities/components/explosive_damage_component.gd" id="2_28ymv"]
[sub_resource type="Curve" id="Curve_rg204"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]

View file

@ -1,8 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://c8co0qa2omjmh"]
[ext_resource type="Script" path="res://src/entities/weapons/space_gun/space_gun.gd" id="1_6sm4s"]
[ext_resource type="PackedScene" uid="uid://dn1tcakam5egs" path="res://src/entities/weapons/space_gun/projectile.tscn" id="2_wvneg"]
[ext_resource type="PackedScene" uid="uid://bjcn37ops3bro" path="res://src/entities/weapons/space_gun/assets/disclauncher.glb" id="3_5k2xm"]
[ext_resource type="Script" path="res://entities/weapons/space_gun/space_gun.gd" id="1_6sm4s"]
[ext_resource type="PackedScene" uid="uid://dn1tcakam5egs" path="res://entities/weapons/space_gun/projectile.tscn" id="2_wvneg"]
[ext_resource type="PackedScene" uid="uid://bjcn37ops3bro" path="res://entities/weapons/space_gun/assets/disclauncher.glb" id="3_5k2xm"]
[node name="SpaceGun" type="Node3D" node_paths=PackedStringArray("nozzle", "anim_player")]
script = ExtResource("1_6sm4s")

View file

@ -17,6 +17,10 @@ class_name Weapon extends Node3D
## The animation player responsible for the [Weapon] animation playback.
@export var anim_player : AnimationPlayer
func _process(_delta : float) -> void:
if anim_player and not anim_player.is_playing():
anim_player.play("idle")
func trigger() -> void:
push_error("not implemented yet")

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://btdbu0qbe1646"
path.bptc="res://.godot/imported/kloppenheim_06_puresky_2k.exr-93faddefe7138c6927d1fd8914ed5be0.bptc.ctex"
path.bptc="res://.godot/imported/kloppenheim_06_puresky_2k.exr-ec828ffc9b05b2c03fb35e84cd230d2d.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/environments/skyboxes/kloppenheim_06_puresky_2k.exr"
dest_files=["res://.godot/imported/kloppenheim_06_puresky_2k.exr-93faddefe7138c6927d1fd8914ed5be0.bptc.ctex"]
source_file="res://environments/skyboxes/kloppenheim_06_puresky_2k.exr"
dest_files=["res://.godot/imported/kloppenheim_06_puresky_2k.exr-ec828ffc9b05b2c03fb35e84cd230d2d.bptc.ctex"]
[params]

View file

@ -1,7 +1,7 @@
[gd_scene load_steps=8 format=3 uid="uid://bcv81ku26xo"]
[ext_resource type="StyleBox" uid="uid://dcn1ll2ra4lwn" path="res://src/interfaces/hud/vitals/background.tres" id="1_gmv44"]
[ext_resource type="StyleBox" uid="uid://bq7rjpm38pao7" path="res://src/interfaces/hud/vitals/health_foreground.tres" id="2_6ejsl"]
[ext_resource type="StyleBox" uid="uid://dcn1ll2ra4lwn" path="res://interfaces/hud/vitals/background.tres" id="1_gmv44"]
[ext_resource type="StyleBox" uid="uid://bq7rjpm38pao7" path="res://interfaces/hud/vitals/health_foreground.tres" id="2_6ejsl"]
[sub_resource type="GDScript" id="GDScript_2vxif"]
script/source = "# This file is part of open-fpsz.

View file

@ -1,8 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://dsysi2rd3bu76"]
[ext_resource type="Script" path="res://src/interfaces/hud/iffs/iff.gd" id="1_g1wra"]
[ext_resource type="StyleBox" uid="uid://cgv081wfih7la" path="res://src/interfaces/hud/iffs/health_foreground.tres" id="2_e3xla"]
[ext_resource type="StyleBox" uid="uid://dcn1ll2ra4lwn" path="res://src/interfaces/hud/vitals/background.tres" id="2_jtos4"]
[ext_resource type="Script" path="res://interfaces/hud/iffs/iff.gd" id="1_g1wra"]
[ext_resource type="StyleBox" uid="uid://cgv081wfih7la" path="res://interfaces/hud/iffs/health_foreground.tres" id="2_e3xla"]
[ext_resource type="StyleBox" uid="uid://dcn1ll2ra4lwn" path="res://interfaces/hud/vitals/background.tres" id="2_jtos4"]
[node name="IFF" type="Control"]
layout_mode = 3

View file

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://c1tjamjm8qjog"
path="res://.godot/imported/background.webp-3afc239cb0209ca1f9f40cd7b3176d4d.ctex"
path="res://.godot/imported/background.webp-f3f369ebd80fe0ef765a073acba84e0f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://src/interfaces/menus/boot/background.webp"
dest_files=["res://.godot/imported/background.webp-3afc239cb0209ca1f9f40cd7b3176d4d.ctex"]
source_file="res://interfaces/menus/boot/background.webp"
dest_files=["res://.godot/imported/background.webp-f3f369ebd80fe0ef765a073acba84e0f.ctex"]
[params]

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=28 format=3 uid="uid://bjctlqvs33nqy"]
[ext_resource type="Texture2D" uid="uid://c1tjamjm8qjog" path="res://src/interfaces/menus/boot/background.webp" id="1_ph586"]
[ext_resource type="Texture2D" uid="uid://c1tjamjm8qjog" path="res://interfaces/menus/boot/background.webp" id="1_ph586"]
[sub_resource type="GDScript" id="GDScript_jd8xf"]
resource_name = "MainMenu"

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://b8bosdd0o1lu7"]
[ext_resource type="Script" path="res://src/interfaces/scoreboard/scoreboard.gd" id="1_k2wav"]
[ext_resource type="Script" path="res://interfaces/scoreboard/scoreboard.gd" id="1_k2wav"]
[node name="Scoreboard" type="Control"]
layout_mode = 3

View file

@ -1,8 +1,8 @@
[gd_scene load_steps=5 format=3 uid="uid://ma1if3sjox6i"]
[ext_resource type="PackedScene" uid="uid://boviiugcnfyrj" path="res://src/modes/singleplayer/demo.tscn" id="1_vgk6g"]
[ext_resource type="PackedScene" uid="uid://bvwxfgygm2xb8" path="res://src/modes/multiplayer/multiplayer.tscn" id="2_iumx3"]
[ext_resource type="PackedScene" uid="uid://bjctlqvs33nqy" path="res://src/interfaces/menus/boot/boot.tscn" id="3_s8c8j"]
[ext_resource type="PackedScene" uid="uid://boviiugcnfyrj" path="res://modes/singleplayer/demo.tscn" id="1_vgk6g"]
[ext_resource type="PackedScene" uid="uid://bvwxfgygm2xb8" path="res://modes/multiplayer/multiplayer.tscn" id="2_iumx3"]
[ext_resource type="PackedScene" uid="uid://bjctlqvs33nqy" path="res://interfaces/menus/boot/boot.tscn" id="3_s8c8j"]
[sub_resource type="GDScript" id="GDScript_e61dq"]
script/source = "# This file is part of open-fpsz.

View file

Before

Width:  |  Height:  |  Size: 2.5 MiB

After

Width:  |  Height:  |  Size: 2.5 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cngjywcua4vv8"
path.bptc="res://.godot/imported/ground054_alb_ht.png-70ea91effe4531981396a2d43275ea63.bptc.ctex"
path.bptc="res://.godot/imported/ground054_alb_ht.png-460d3ac5c09d7955ca61b8b57742b1a9.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/maps/desert/assets/textures/ground054_alb_ht.png"
dest_files=["res://.godot/imported/ground054_alb_ht.png-70ea91effe4531981396a2d43275ea63.bptc.ctex"]
source_file="res://maps/desert/assets/textures/ground054_alb_ht.png"
dest_files=["res://.godot/imported/ground054_alb_ht.png-460d3ac5c09d7955ca61b8b57742b1a9.bptc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 2.7 MiB

After

Width:  |  Height:  |  Size: 2.7 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cbk7l6hs0yrcc"
path.bptc="res://.godot/imported/ground054_nrm_rgh.png-4145ca5fe0f4cfafd2ec70c01b03e47c.bptc.ctex"
path.bptc="res://.godot/imported/ground054_nrm_rgh.png-9ea209f1a7f6e48624db85005a037890.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/maps/desert/assets/textures/ground054_nrm_rgh.png"
dest_files=["res://.godot/imported/ground054_nrm_rgh.png-4145ca5fe0f4cfafd2ec70c01b03e47c.bptc.ctex"]
source_file="res://maps/desert/assets/textures/ground054_nrm_rgh.png"
dest_files=["res://.godot/imported/ground054_nrm_rgh.png-9ea209f1a7f6e48624db85005a037890.bptc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 2.3 MiB

After

Width:  |  Height:  |  Size: 2.3 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dwk8islw7ebab"
path.bptc="res://.godot/imported/rock029_alb_ht.png-926dc89f22cc2e648ae6ea04ac460eb4.bptc.ctex"
path.bptc="res://.godot/imported/rock029_alb_ht.png-dd746789bc129bafaa8d1cc908de0e3e.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/maps/desert/assets/textures/rock029_alb_ht.png"
dest_files=["res://.godot/imported/rock029_alb_ht.png-926dc89f22cc2e648ae6ea04ac460eb4.bptc.ctex"]
source_file="res://maps/desert/assets/textures/rock029_alb_ht.png"
dest_files=["res://.godot/imported/rock029_alb_ht.png-dd746789bc129bafaa8d1cc908de0e3e.bptc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 3.2 MiB

After

Width:  |  Height:  |  Size: 3.2 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://lgfhdcsb2ryx"
path.bptc="res://.godot/imported/rock029_nrm_rgh.png-65b42c4b71af719b7b7e92274266dce0.bptc.ctex"
path.bptc="res://.godot/imported/rock029_nrm_rgh.png-3bf029664d0f58a1c79abd2d6666ba90.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/maps/desert/assets/textures/rock029_nrm_rgh.png"
dest_files=["res://.godot/imported/rock029_nrm_rgh.png-65b42c4b71af719b7b7e92274266dce0.bptc.ctex"]
source_file="res://maps/desert/assets/textures/rock029_nrm_rgh.png"
dest_files=["res://.godot/imported/rock029_nrm_rgh.png-3bf029664d0f58a1c79abd2d6666ba90.bptc.ctex"]
[params]

View file

@ -1,10 +1,10 @@
[gd_scene load_steps=6 format=3 uid="uid://btlkog4b87p4x"]
[ext_resource type="Terrain3DStorage" uid="uid://wgmg245njt8e" path="res://src/maps/desert/resources/storage.res" id="1_lmk23"]
[ext_resource type="Terrain3DMaterial" uid="uid://c3isipd4wqxpk" path="res://src/maps/desert/resources/material.tres" id="2_n44fh"]
[ext_resource type="Terrain3DTextureList" uid="uid://d1j24k8sq8qpj" path="res://src/maps/desert/resources/textures.tres" id="3_w1yus"]
[ext_resource type="Environment" uid="uid://nw62ce5cglvs" path="res://src/maps/desert/resources/env.tres" id="4_m7p64"]
[ext_resource type="PackedScene" uid="uid://brux62vritay" path="res://src/entities/buildings/flag_stand.tscn" id="5_7ta6y"]
[ext_resource type="Terrain3DStorage" uid="uid://wgmg245njt8e" path="res://maps/desert/resources/storage.res" id="1_lmk23"]
[ext_resource type="Terrain3DMaterial" uid="uid://c3isipd4wqxpk" path="res://maps/desert/resources/material.tres" id="2_n44fh"]
[ext_resource type="Terrain3DTextureList" uid="uid://d1j24k8sq8qpj" path="res://maps/desert/resources/textures.tres" id="3_w1yus"]
[ext_resource type="Environment" uid="uid://nw62ce5cglvs" path="res://maps/desert/resources/env.tres" id="4_m7p64"]
[ext_resource type="PackedScene" uid="uid://brux62vritay" path="res://entities/buildings/flag_stand.tscn" id="5_7ta6y"]
[node name="Desert" type="Terrain3D"]
storage = ExtResource("1_lmk23")

View file

@ -1,9 +1,9 @@
[gd_resource type="Terrain3DTextureList" load_steps=7 format=3 uid="uid://d1j24k8sq8qpj"]
[ext_resource type="Texture2D" uid="uid://dwk8islw7ebab" path="res://src/maps/desert/assets/textures/rock029_alb_ht.png" id="1_onshe"]
[ext_resource type="Texture2D" uid="uid://lgfhdcsb2ryx" path="res://src/maps/desert/assets/textures/rock029_nrm_rgh.png" id="2_ij8ws"]
[ext_resource type="Texture2D" uid="uid://cngjywcua4vv8" path="res://src/maps/desert/assets/textures/ground054_alb_ht.png" id="3_1p8kc"]
[ext_resource type="Texture2D" uid="uid://cbk7l6hs0yrcc" path="res://src/maps/desert/assets/textures/ground054_nrm_rgh.png" id="4_2trjt"]
[ext_resource type="Texture2D" uid="uid://dwk8islw7ebab" path="res://maps/desert/assets/textures/rock029_alb_ht.png" id="1_onshe"]
[ext_resource type="Texture2D" uid="uid://lgfhdcsb2ryx" path="res://maps/desert/assets/textures/rock029_nrm_rgh.png" id="2_ij8ws"]
[ext_resource type="Texture2D" uid="uid://cngjywcua4vv8" path="res://maps/desert/assets/textures/ground054_alb_ht.png" id="3_1p8kc"]
[ext_resource type="Texture2D" uid="uid://cbk7l6hs0yrcc" path="res://maps/desert/assets/textures/ground054_nrm_rgh.png" id="4_2trjt"]
[sub_resource type="Terrain3DTexture" id="Terrain3DTexture_wue72"]
name = "Rock"

View file

Before

Width:  |  Height:  |  Size: 3.1 MiB

After

Width:  |  Height:  |  Size: 3.1 MiB

View file

@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://ddprscrpsofah"
path.bptc="res://.godot/imported/ground037_alb_ht.png-bc312da3f360ac157a805d559b911f89.bptc.ctex"
path.bptc="res://.godot/imported/ground037_alb_ht.png-b65037b7797c79d182d5e53b32e49a98.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@ -11,8 +11,8 @@ metadata={
[deps]
source_file="res://src/maps/genesis/assets/textures/ground037_alb_ht.png"
dest_files=["res://.godot/imported/ground037_alb_ht.png-bc312da3f360ac157a805d559b911f89.bptc.ctex"]
source_file="res://maps/genesis/assets/textures/ground037_alb_ht.png"
dest_files=["res://.godot/imported/ground037_alb_ht.png-b65037b7797c79d182d5e53b32e49a98.bptc.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 3.1 MiB

After

Width:  |  Height:  |  Size: 3.1 MiB

Some files were not shown because too many files have changed in this diff Show more