From ce33ff76e8caa4716d2e2e510324c01ff80dbf15 Mon Sep 17 00:00:00 2001 From: Ruslan Ignatov Date: Mon, 24 Nov 2025 14:41:30 +0300 Subject: [PATCH] Updated particles --- game/entities/weapons/cannon/cannon_weapon.gd | 20 +++---- .../weapons/cannon/cannon_weapon.tscn | 25 ++++---- .../weapons/laser/laser_projectile.tscn | 2 +- .../weapons/launcher/launcher_projectile.tscn | 2 +- .../weapons/launcher/launcher_weapon.tscn | 10 ++-- .../weapons/plasma/plasma_projectile.tscn | 4 +- .../weapons/railgun/railgun_projectile.tscn | 4 +- .../weapons/shrapnel/shrapnel_weapon.tscn | 17 +++--- .../weapons/tesla/tesla_projectile.gd | 11 +++- .../weapons/tesla/tesla_projectile.tscn | 57 ++++++++++++++++--- game/entities/weapons/tesla/tesla_weapon.tscn | 2 +- images/particles.png | 4 +- images/weapons.png | 4 +- particle_textures/energy.tres | 8 --- particle_textures/energy_huge.tres | 7 +++ particle_textures/energy_large.tres | 7 +++ particle_textures/energy_medium.tres | 7 +++ particle_textures/energy_small.tres | 7 +++ particle_textures/flame.tres | 8 --- particle_textures/flame_huge.tres | 7 +++ particle_textures/flame_large.tres | 7 +++ particle_textures/flame_medium.tres | 7 +++ particle_textures/flame_small.tres | 7 +++ particle_textures/shell_huge.tres | 7 +++ particle_textures/shell_large.tres | 7 +++ particle_textures/shell_medium.tres | 7 +++ particle_textures/shell_small.tres | 7 +++ 27 files changed, 188 insertions(+), 74 deletions(-) delete mode 100644 particle_textures/energy.tres create mode 100644 particle_textures/energy_huge.tres create mode 100644 particle_textures/energy_large.tres create mode 100644 particle_textures/energy_medium.tres create mode 100644 particle_textures/energy_small.tres delete mode 100644 particle_textures/flame.tres create mode 100644 particle_textures/flame_huge.tres create mode 100644 particle_textures/flame_large.tres create mode 100644 particle_textures/flame_medium.tres create mode 100644 particle_textures/flame_small.tres create mode 100644 particle_textures/shell_huge.tres create mode 100644 particle_textures/shell_large.tres create mode 100644 particle_textures/shell_medium.tres create mode 100644 particle_textures/shell_small.tres diff --git a/game/entities/weapons/cannon/cannon_weapon.gd b/game/entities/weapons/cannon/cannon_weapon.gd index e7b12ce..ced44b1 100644 --- a/game/entities/weapons/cannon/cannon_weapon.gd +++ b/game/entities/weapons/cannon/cannon_weapon.gd @@ -19,8 +19,8 @@ func set_belonging(belonging: Belonging) -> void: func _init_particles() -> void: const FRONT_OFFSET_X = 12 - const LEFT_OFFSET_X = 7 - const LEFT_OFFSET_Y = 5 + const SIDE_OFFSET_X = 6 + const SIDE_OFFSET_Y = 5 const SHELL_OFFSET_X = -10 const SHELL_OFFSET_Y = 2 @@ -30,12 +30,12 @@ func _init_particles() -> void: front_particles.process_material.emission_shape_offset.x = FRONT_OFFSET_X front_particles.process_material.direction = Vector3.RIGHT - left_particles.process_material.emission_shape_offset.x = LEFT_OFFSET_X - left_particles.process_material.emission_shape_offset.y = -LEFT_OFFSET_Y + left_particles.process_material.emission_shape_offset.x = SIDE_OFFSET_X + left_particles.process_material.emission_shape_offset.y = -SIDE_OFFSET_Y left_particles.process_material.direction = Vector3.DOWN + Vector3.LEFT - right_particles.process_material.emission_shape_offset.x = LEFT_OFFSET_X - right_particles.process_material.emission_shape_offset.y = LEFT_OFFSET_Y + right_particles.process_material.emission_shape_offset.x = SIDE_OFFSET_X + right_particles.process_material.emission_shape_offset.y = SIDE_OFFSET_Y right_particles.process_material.direction = Vector3.UP + Vector3.LEFT shell_particles.process_material.emission_shape_offset.x = SHELL_OFFSET_X @@ -45,12 +45,12 @@ func _init_particles() -> void: front_particles.process_material.emission_shape_offset.x = -FRONT_OFFSET_X front_particles.process_material.direction = Vector3.LEFT - left_particles.process_material.emission_shape_offset.x = -LEFT_OFFSET_X - left_particles.process_material.emission_shape_offset.y = -LEFT_OFFSET_Y + left_particles.process_material.emission_shape_offset.x = -SIDE_OFFSET_X + left_particles.process_material.emission_shape_offset.y = -SIDE_OFFSET_Y left_particles.process_material.direction = Vector3.DOWN + Vector3.RIGHT - right_particles.process_material.emission_shape_offset.x = -LEFT_OFFSET_X - right_particles.process_material.emission_shape_offset.y = LEFT_OFFSET_Y + right_particles.process_material.emission_shape_offset.x = -SIDE_OFFSET_X + right_particles.process_material.emission_shape_offset.y = SIDE_OFFSET_Y right_particles.process_material.direction = Vector3.UP + Vector3.RIGHT shell_particles.process_material.emission_shape_offset.x = -SHELL_OFFSET_X diff --git a/game/entities/weapons/cannon/cannon_weapon.tscn b/game/entities/weapons/cannon/cannon_weapon.tscn index ccf3c1c..cb454dc 100644 --- a/game/entities/weapons/cannon/cannon_weapon.tscn +++ b/game/entities/weapons/cannon/cannon_weapon.tscn @@ -3,9 +3,10 @@ [ext_resource type="PackedScene" uid="uid://1o2ta17yc5bp" path="res://game/entities/weapons/abstract_weapon.tscn" id="1_xnbws"] [ext_resource type="PackedScene" uid="uid://cgi7wd84kjnyw" path="res://game/entities/weapons/cannon/cannon_projectile.tscn" id="2_2bjeu"] [ext_resource type="Script" uid="uid://db24dm76b1am7" path="res://game/entities/weapons/cannon/cannon_weapon.gd" id="2_ew5um"] -[ext_resource type="Texture2D" uid="uid://leofxnlflrdn" path="res://particle_textures/flame.tres" id="4_jfd4t"] +[ext_resource type="Texture2D" uid="uid://b13al44e8ofsx" path="res://particle_textures/flame_large.tres" id="4_i0ica"] +[ext_resource type="Texture2D" uid="uid://b2tpy3y2bpuat" path="res://particle_textures/flame_small.tres" id="5_377p4"] +[ext_resource type="Texture2D" uid="uid://bi1s5xrnunw3c" path="res://particle_textures/shell_large.tres" id="6_i0ica"] [ext_resource type="Texture2D" uid="uid://6hh66k8s4a1e" path="res://images/weapons.png" id="6_jfd4t"] -[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="7_i0ica"] [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_377p4"] resource_local_to_scene = true @@ -23,6 +24,8 @@ gravity = Vector3(0, 0, 0) resource_local_to_scene = true lifetime_randomness = 0.1 particle_flag_disable_z = true +emission_shape = 1 +emission_sphere_radius = 2.0 angle_min = -179.99998 angle_max = 180.00002 inherit_velocity_ratio = 0.2 @@ -35,6 +38,8 @@ gravity = Vector3(0, 0, 0) resource_local_to_scene = true lifetime_randomness = 0.1 particle_flag_disable_z = true +emission_shape = 1 +emission_sphere_radius = 2.0 angle_min = -179.99998 angle_max = 180.00002 inherit_velocity_ratio = 0.2 @@ -136,10 +141,6 @@ animations = [{ "speed": 10.0 }] -[sub_resource type="AtlasTexture" id="AtlasTexture_h76ev"] -atlas = ExtResource("7_i0ica") -region = Rect2(0, 0, 16, 16) - [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_nrbut"] resource_local_to_scene = true lifetime_randomness = 0.5 @@ -160,7 +161,7 @@ Projectile = ExtResource("2_2bjeu") [node name="Front" type="GPUParticles2D" parent="ShotParticles" index="0"] emitting = false amount = 32 -texture = ExtResource("4_jfd4t") +texture = ExtResource("4_i0ica") lifetime = 0.5 one_shot = true preprocess = 0.1 @@ -169,16 +170,16 @@ process_material = SubResource("ParticleProcessMaterial_377p4") [node name="Left" type="GPUParticles2D" parent="ShotParticles" index="1"] emitting = false -texture = ExtResource("4_jfd4t") -lifetime = 0.2 +texture = ExtResource("5_377p4") +lifetime = 0.4 one_shot = true fixed_fps = 10 process_material = SubResource("ParticleProcessMaterial_i0ica") [node name="Right" type="GPUParticles2D" parent="ShotParticles" index="2"] emitting = false -texture = ExtResource("4_jfd4t") -lifetime = 0.2 +texture = ExtResource("5_377p4") +lifetime = 0.4 one_shot = true fixed_fps = 10 process_material = SubResource("ParticleProcessMaterial_jfd4t") @@ -191,7 +192,7 @@ animation = &"player_idle" z_index = 1 emitting = false amount = 1 -texture = SubResource("AtlasTexture_h76ev") +texture = ExtResource("6_i0ica") lifetime = 2.0 one_shot = true fixed_fps = 10 diff --git a/game/entities/weapons/laser/laser_projectile.tscn b/game/entities/weapons/laser/laser_projectile.tscn index 60c181e..4949e49 100644 --- a/game/entities/weapons/laser/laser_projectile.tscn +++ b/game/entities/weapons/laser/laser_projectile.tscn @@ -3,7 +3,7 @@ [ext_resource type="PackedScene" uid="uid://cdv5n4t47hr8i" path="res://game/entities/weapons/direct_hit__projectile.tscn" id="1_3a8fg"] [ext_resource type="Script" uid="uid://bdxq4aflhc8vd" path="res://game/entities/weapons/laser/laser_projectile.gd" id="2_je1a2"] [ext_resource type="Script" uid="uid://c27v705giygv4" path="res://game/health_system/damage/energy_damage.gd" id="3_ylokk"] -[ext_resource type="Texture2D" uid="uid://dedca1d30igae" path="res://particle_textures/energy.tres" id="4_bytws"] +[ext_resource type="Texture2D" uid="uid://dk3t14mrgjmma" path="res://particle_textures/energy_medium.tres" id="4_bytws"] [sub_resource type="Resource" id="Resource_bytws"] script = ExtResource("3_ylokk") diff --git a/game/entities/weapons/launcher/launcher_projectile.tscn b/game/entities/weapons/launcher/launcher_projectile.tscn index 554475c..a3c7848 100644 --- a/game/entities/weapons/launcher/launcher_projectile.tscn +++ b/game/entities/weapons/launcher/launcher_projectile.tscn @@ -2,7 +2,7 @@ [ext_resource type="PackedScene" uid="uid://betr5ry5tc75e" path="res://game/entities/weapons/blast_projectile.tscn" id="1_0mcat"] [ext_resource type="Script" uid="uid://dkvur5bdwg3sr" path="res://game/entities/weapons/launcher/launcher_projectile.gd" id="2_6hdsf"] -[ext_resource type="Texture2D" uid="uid://leofxnlflrdn" path="res://particle_textures/flame.tres" id="3_kos01"] +[ext_resource type="Texture2D" uid="uid://gh7mwehpqfco" path="res://particle_textures/flame_medium.tres" id="3_kos01"] [ext_resource type="Script" uid="uid://dftb7hg5f06b5" path="res://game/health_system/damage/explosion_damage.gd" id="3_ycnsk"] [ext_resource type="Texture2D" uid="uid://oj86smpsipw4" path="res://images/projectiles.png" id="4_kxgpk"] diff --git a/game/entities/weapons/launcher/launcher_weapon.tscn b/game/entities/weapons/launcher/launcher_weapon.tscn index 088cb7d..07c14de 100644 --- a/game/entities/weapons/launcher/launcher_weapon.tscn +++ b/game/entities/weapons/launcher/launcher_weapon.tscn @@ -3,8 +3,8 @@ [ext_resource type="PackedScene" uid="uid://1o2ta17yc5bp" path="res://game/entities/weapons/abstract_weapon.tscn" id="1_sk5u1"] [ext_resource type="Script" uid="uid://lauvvj5xhbud" path="res://game/entities/weapons/launcher/launcher_weapon.gd" id="2_mxjpe"] [ext_resource type="PackedScene" uid="uid://dukgbg13ujkv2" path="res://game/entities/weapons/launcher/launcher_projectile.tscn" id="3_fsoo2"] +[ext_resource type="Texture2D" uid="uid://gh7mwehpqfco" path="res://particle_textures/flame_medium.tres" id="4_0brql"] [ext_resource type="Texture2D" uid="uid://6hh66k8s4a1e" path="res://images/weapons.png" id="6_3cw5x"] -[ext_resource type="Texture2D" uid="uid://leofxnlflrdn" path="res://particle_textures/flame.tres" id="7_u8eh0"] [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_u8eh0"] lifetime_randomness = 0.5 @@ -82,7 +82,7 @@ Projectile = ExtResource("3_fsoo2") [node name="PlayerLeftParticles" type="GPUParticles2D" parent="ShotProjectiles" index="0"] emitting = false amount = 16 -texture = ExtResource("7_u8eh0") +texture = ExtResource("4_0brql") lifetime = 0.3 one_shot = true process_material = SubResource("ParticleProcessMaterial_u8eh0") @@ -90,7 +90,7 @@ process_material = SubResource("ParticleProcessMaterial_u8eh0") [node name="PlayerRightParticles" type="GPUParticles2D" parent="ShotProjectiles" index="1"] emitting = false amount = 16 -texture = ExtResource("7_u8eh0") +texture = ExtResource("4_0brql") lifetime = 0.3 one_shot = true process_material = SubResource("ParticleProcessMaterial_0brql") @@ -98,7 +98,7 @@ process_material = SubResource("ParticleProcessMaterial_0brql") [node name="EnemyLeftParticles" type="GPUParticles2D" parent="ShotProjectiles" index="2"] emitting = false amount = 16 -texture = ExtResource("7_u8eh0") +texture = ExtResource("4_0brql") lifetime = 0.3 one_shot = true process_material = SubResource("ParticleProcessMaterial_3cw5x") @@ -106,7 +106,7 @@ process_material = SubResource("ParticleProcessMaterial_3cw5x") [node name="EnemyRightParticles" type="GPUParticles2D" parent="ShotProjectiles" index="3"] emitting = false amount = 16 -texture = ExtResource("7_u8eh0") +texture = ExtResource("4_0brql") lifetime = 0.3 one_shot = true process_material = SubResource("ParticleProcessMaterial_ylgjm") diff --git a/game/entities/weapons/plasma/plasma_projectile.tscn b/game/entities/weapons/plasma/plasma_projectile.tscn index a4ee5e9..7c8fb3f 100644 --- a/game/entities/weapons/plasma/plasma_projectile.tscn +++ b/game/entities/weapons/plasma/plasma_projectile.tscn @@ -3,7 +3,7 @@ [ext_resource type="PackedScene" uid="uid://cdv5n4t47hr8i" path="res://game/entities/weapons/direct_hit__projectile.tscn" id="1_x58hw"] [ext_resource type="Script" uid="uid://bu5sjoh4hwkhn" path="res://game/entities/weapons/plasma/plasma_projectile.gd" id="2_0deih"] [ext_resource type="Script" uid="uid://c27v705giygv4" path="res://game/health_system/damage/energy_damage.gd" id="3_dlvdm"] -[ext_resource type="Texture2D" uid="uid://dedca1d30igae" path="res://particle_textures/energy.tres" id="4_5enq5"] +[ext_resource type="Texture2D" uid="uid://dk3t14mrgjmma" path="res://particle_textures/energy_medium.tres" id="4_5enq5"] [sub_resource type="Resource" id="Resource_5enq5"] script = ExtResource("3_dlvdm") @@ -36,7 +36,7 @@ shape = SubResource("CapsuleShape2D_5enq5") debug_color = Color(0.98039216, 0, 0.39215687, 1) [node name="GPUParticles2D" type="GPUParticles2D" parent="." index="2"] -amount = 64 +amount = 32 texture = ExtResource("4_5enq5") lifetime = 0.2 preprocess = 0.1 diff --git a/game/entities/weapons/railgun/railgun_projectile.tscn b/game/entities/weapons/railgun/railgun_projectile.tscn index e9637c0..e2d37c5 100644 --- a/game/entities/weapons/railgun/railgun_projectile.tscn +++ b/game/entities/weapons/railgun/railgun_projectile.tscn @@ -4,7 +4,7 @@ [ext_resource type="PackedScene" uid="uid://cdv5n4t47hr8i" path="res://game/entities/weapons/direct_hit__projectile.tscn" id="1_rfd1j"] [ext_resource type="Script" uid="uid://bhqvk5cnjg5mv" path="res://game/health_system/damage/kinetic_damage.gd" id="3_wbdf3"] [ext_resource type="Texture2D" uid="uid://oj86smpsipw4" path="res://images/projectiles.png" id="4_u82jm"] -[ext_resource type="Texture2D" uid="uid://dedca1d30igae" path="res://particle_textures/energy.tres" id="5_whmfh"] +[ext_resource type="Texture2D" uid="uid://c6aixtu6lbfud" path="res://particle_textures/energy_small.tres" id="4_whmfh"] [sub_resource type="Resource" id="Resource_u82jm"] script = ExtResource("3_wbdf3") @@ -48,7 +48,7 @@ speed = 900 [node name="GPUParticles2D" type="GPUParticles2D" parent="." index="0"] amount = 32 -texture = ExtResource("5_whmfh") +texture = ExtResource("4_whmfh") lifetime = 0.4 process_material = SubResource("ParticleProcessMaterial_yedu2") diff --git a/game/entities/weapons/shrapnel/shrapnel_weapon.tscn b/game/entities/weapons/shrapnel/shrapnel_weapon.tscn index 34c1832..0289b3d 100644 --- a/game/entities/weapons/shrapnel/shrapnel_weapon.tscn +++ b/game/entities/weapons/shrapnel/shrapnel_weapon.tscn @@ -1,11 +1,11 @@ -[gd_scene load_steps=19 format=3 uid="uid://r7wnk762jbfy"] +[gd_scene load_steps=18 format=3 uid="uid://r7wnk762jbfy"] [ext_resource type="PackedScene" uid="uid://1o2ta17yc5bp" path="res://game/entities/weapons/abstract_weapon.tscn" id="1_xk300"] [ext_resource type="Script" uid="uid://gxwbsiicuqh5" path="res://game/entities/weapons/shrapnel/shrapnel_weapon.gd" id="2_1bd18"] [ext_resource type="PackedScene" uid="uid://bsx23u3a2obbj" path="res://game/entities/weapons/shrapnel/shrapnel_projectile.tscn" id="2_xvd4y"] +[ext_resource type="Texture2D" uid="uid://b2tpy3y2bpuat" path="res://particle_textures/flame_small.tres" id="4_0tw2i"] [ext_resource type="Texture2D" uid="uid://6hh66k8s4a1e" path="res://images/weapons.png" id="6_0tw2i"] -[ext_resource type="Texture2D" uid="uid://leofxnlflrdn" path="res://particle_textures/flame.tres" id="7_gdolk"] -[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="8_a22j7"] +[ext_resource type="Texture2D" uid="uid://dxcxybr27kkra" path="res://particle_textures/shell_medium.tres" id="6_gdolk"] [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_a22j7"] resource_local_to_scene = true @@ -16,6 +16,7 @@ emission_sphere_radius = 2.0 angle_min = -179.99998 angle_max = 180.00002 inherit_velocity_ratio = 0.5 +spread = 60.0 initial_velocity_min = 10.0 initial_velocity_max = 15.0 gravity = Vector3(0, 0, 0) @@ -99,10 +100,6 @@ animations = [{ "speed": 10.0 }] -[sub_resource type="AtlasTexture" id="AtlasTexture_he4pe"] -atlas = ExtResource("8_a22j7") -region = Rect2(0, 0, 16, 16) - [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_t57yr"] resource_local_to_scene = true particle_flag_disable_z = true @@ -121,8 +118,8 @@ Projectile = ExtResource("2_xvd4y") [node name="ShotParticles" type="GPUParticles2D" parent="." index="0"] emitting = false amount = 32 -texture = ExtResource("7_gdolk") -lifetime = 0.2 +texture = ExtResource("4_0tw2i") +lifetime = 0.3 one_shot = true process_material = SubResource("ParticleProcessMaterial_a22j7") @@ -138,7 +135,7 @@ one_shot = true z_index = 1 emitting = false amount = 1 -texture = SubResource("AtlasTexture_he4pe") +texture = ExtResource("6_gdolk") lifetime = 2.0 one_shot = true process_material = SubResource("ParticleProcessMaterial_t57yr") diff --git a/game/entities/weapons/tesla/tesla_projectile.gd b/game/entities/weapons/tesla/tesla_projectile.gd index 904781b..ae758fa 100644 --- a/game/entities/weapons/tesla/tesla_projectile.gd +++ b/game/entities/weapons/tesla/tesla_projectile.gd @@ -10,6 +10,11 @@ extends DirectHitProjectile @onready var jinkTimer : Timer = $JinkTimer +@onready var particles_huge : GPUParticles2D = $ParticlesHuge +@onready var particles_large : GPUParticles2D = $ParticlesLarge +@onready var particles_medium : GPUParticles2D = $ParticlesMedium +@onready var particles_small : GPUParticles2D = $ParticlesSmall + var _collided_foes : Array[AbstractShip] = [] @@ -22,7 +27,11 @@ func _ready() -> void: func _process_hit_for_projectile(collided_body: Node2D) -> void: if collided_body is AbstractShip: _collided_foes.append(collided_body) - + match _collided_foes.size(): + 1: particles_huge.emitting = false + 2: particles_large.emitting = false + 3: particles_medium.emitting = false + damage.value = floor(damage.value/2.0) if damage.value == 0: diff --git a/game/entities/weapons/tesla/tesla_projectile.tscn b/game/entities/weapons/tesla/tesla_projectile.tscn index 5c78187..6320c68 100644 --- a/game/entities/weapons/tesla/tesla_projectile.tscn +++ b/game/entities/weapons/tesla/tesla_projectile.tscn @@ -1,8 +1,12 @@ -[gd_scene load_steps=7 format=3 uid="uid://bi64687wtxi4d"] +[gd_scene load_steps=11 format=3 uid="uid://bi64687wtxi4d"] [ext_resource type="PackedScene" uid="uid://cdv5n4t47hr8i" path="res://game/entities/weapons/direct_hit__projectile.tscn" id="1_1oexk"] [ext_resource type="Script" uid="uid://bxcoa2eps0tt1" path="res://game/entities/weapons/tesla/tesla_projectile.gd" id="2_q73is"] [ext_resource type="Script" uid="uid://c27v705giygv4" path="res://game/health_system/damage/energy_damage.gd" id="3_l65ib"] +[ext_resource type="Texture2D" uid="uid://cqdctagygc0c0" path="res://particle_textures/energy_large.tres" id="4_1121u"] +[ext_resource type="Texture2D" uid="uid://d2k7bcwqr5v2q" path="res://particle_textures/energy_huge.tres" id="4_wtuxv"] +[ext_resource type="Texture2D" uid="uid://dk3t14mrgjmma" path="res://particle_textures/energy_medium.tres" id="5_wtuxv"] +[ext_resource type="Texture2D" uid="uid://c6aixtu6lbfud" path="res://particle_textures/energy_small.tres" id="7_eyfoy"] [sub_resource type="Resource" id="Resource_1121u"] resource_local_to_scene = true @@ -10,12 +14,22 @@ script = ExtResource("3_l65ib") value = 45 metadata/_custom_type_script = "uid://c27v705giygv4" -[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_1oexk"] -size = Vector2(12, 12) - [sub_resource type="CircleShape2D" id="CircleShape2D_l65ib"] radius = 5.0 +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_wtuxv"] +particle_flag_disable_z = true +emission_shape = 2 +emission_sphere_radius = 5.0 +angle_min = -179.99998 +angle_max = 180.00002 +inherit_velocity_ratio = 0.5 +spread = 15.0 +initial_velocity_min = 1.0 +initial_velocity_max = 1.0 +gravity = Vector3(0, 0, 0) +turbulence_enabled = true + [node name="TeslaProjectile" instance=ExtResource("1_1oexk")] collision_layer = 0 collision_mask = 0 @@ -27,13 +41,38 @@ no_deviation_distance = 50 damage = SubResource("Resource_1121u") speed = 900 -[node name="Sprite2D" type="Sprite2D" parent="." index="0"] -texture = SubResource("PlaceholderTexture2D_1oexk") - -[node name="CollisionShape2D" parent="." index="1"] +[node name="CollisionShape2D" parent="." index="0"] shape = SubResource("CircleShape2D_l65ib") -[node name="JinkTimer" type="Timer" parent="." index="3"] +[node name="JinkTimer" type="Timer" parent="." index="2"] one_shot = true +[node name="ParticlesHuge" type="GPUParticles2D" parent="." index="3"] +amount = 32 +texture = ExtResource("4_wtuxv") +lifetime = 0.3 +preprocess = 0.1 +process_material = SubResource("ParticleProcessMaterial_wtuxv") + +[node name="ParticlesLarge" type="GPUParticles2D" parent="." index="4"] +amount = 32 +texture = ExtResource("4_1121u") +lifetime = 0.4 +preprocess = 0.1 +process_material = SubResource("ParticleProcessMaterial_wtuxv") + +[node name="ParticlesMedium" type="GPUParticles2D" parent="." index="5"] +amount = 32 +texture = ExtResource("5_wtuxv") +lifetime = 0.5 +preprocess = 0.1 +process_material = SubResource("ParticleProcessMaterial_wtuxv") + +[node name="ParticlesSmall" type="GPUParticles2D" parent="." index="6"] +amount = 32 +texture = ExtResource("7_eyfoy") +lifetime = 0.5 +preprocess = 0.1 +process_material = SubResource("ParticleProcessMaterial_wtuxv") + [connection signal="timeout" from="JinkTimer" to="." method="_on_jink_timer_timeout"] diff --git a/game/entities/weapons/tesla/tesla_weapon.tscn b/game/entities/weapons/tesla/tesla_weapon.tscn index b72307e..12c18f7 100644 --- a/game/entities/weapons/tesla/tesla_weapon.tscn +++ b/game/entities/weapons/tesla/tesla_weapon.tscn @@ -3,7 +3,7 @@ [ext_resource type="PackedScene" uid="uid://1o2ta17yc5bp" path="res://game/entities/weapons/abstract_weapon.tscn" id="1_rpud7"] [ext_resource type="PackedScene" uid="uid://bi64687wtxi4d" path="res://game/entities/weapons/tesla/tesla_projectile.tscn" id="2_1rrdy"] [ext_resource type="Script" uid="uid://ctv408wdwvttc" path="res://game/entities/weapons/tesla/tesla_weapon.gd" id="2_08si3"] -[ext_resource type="Texture2D" uid="uid://dedca1d30igae" path="res://particle_textures/energy.tres" id="5_dhfvk"] +[ext_resource type="Texture2D" uid="uid://c6aixtu6lbfud" path="res://particle_textures/energy_small.tres" id="5_dhfvk"] [ext_resource type="Texture2D" uid="uid://6hh66k8s4a1e" path="res://images/weapons.png" id="7_ub67s"] [sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_dra6h"] diff --git a/images/particles.png b/images/particles.png index 6dfeb3e..b30b50d 100644 --- a/images/particles.png +++ b/images/particles.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a676096106e2714b353b2294ecb40afce5e46253b224d7740290e3423e95ae16 -size 181 +oid sha256:aad5ce75165075035f960b01714caba4b319297665e516f1b1f65f2bf2d9102c +size 260 diff --git a/images/weapons.png b/images/weapons.png index 9516530..6066165 100644 --- a/images/weapons.png +++ b/images/weapons.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b72d02804feb823482a05ec462b1d8e134dd1d8aeb7f8bae13d50a28e21dbcd0 -size 4254 +oid sha256:7e6235e9f49554d6766b15c0919ba90b21df7574019447f5965d8fb7357e9de5 +size 4259 diff --git a/particle_textures/energy.tres b/particle_textures/energy.tres deleted file mode 100644 index 28b629e..0000000 --- a/particle_textures/energy.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://dedca1d30igae"] - -[sub_resource type="Gradient" id="Gradient_ub67s"] -colors = PackedColorArray(0.4509804, 0.9372549, 0.96862745, 1, 0.25490198, 0.6509804, 0.9647059, 1) - -[resource] -gradient = SubResource("Gradient_ub67s") -width = 2 diff --git a/particle_textures/energy_huge.tres b/particle_textures/energy_huge.tres new file mode 100644 index 0000000..edbc39f --- /dev/null +++ b/particle_textures/energy_huge.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://d2k7bcwqr5v2q"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_1f6me"] + +[resource] +atlas = ExtResource("1_1f6me") +region = Rect2(48, 16, 16, 16) diff --git a/particle_textures/energy_large.tres b/particle_textures/energy_large.tres new file mode 100644 index 0000000..aea3fd0 --- /dev/null +++ b/particle_textures/energy_large.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://cqdctagygc0c0"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_d8wt4"] + +[resource] +atlas = ExtResource("1_d8wt4") +region = Rect2(32, 16, 16, 16) diff --git a/particle_textures/energy_medium.tres b/particle_textures/energy_medium.tres new file mode 100644 index 0000000..566c41e --- /dev/null +++ b/particle_textures/energy_medium.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://dk3t14mrgjmma"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_nqbbv"] + +[resource] +atlas = ExtResource("1_nqbbv") +region = Rect2(16, 16, 16, 16) diff --git a/particle_textures/energy_small.tres b/particle_textures/energy_small.tres new file mode 100644 index 0000000..baa3f58 --- /dev/null +++ b/particle_textures/energy_small.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://c6aixtu6lbfud"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_vaa1w"] + +[resource] +atlas = ExtResource("1_vaa1w") +region = Rect2(0, 16, 16, 16) diff --git a/particle_textures/flame.tres b/particle_textures/flame.tres deleted file mode 100644 index 17bc2cc..0000000 --- a/particle_textures/flame.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://leofxnlflrdn"] - -[sub_resource type="Gradient" id="Gradient_kxgpk"] -colors = PackedColorArray(0.9372549, 0.49019608, 0.34117648, 1, 1, 0.8039216, 0.45882353, 1) - -[resource] -gradient = SubResource("Gradient_kxgpk") -width = 2 diff --git a/particle_textures/flame_huge.tres b/particle_textures/flame_huge.tres new file mode 100644 index 0000000..d1876f0 --- /dev/null +++ b/particle_textures/flame_huge.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://blp4o1c7y66wv"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_57uvc"] + +[resource] +atlas = ExtResource("1_57uvc") +region = Rect2(48, 32, 16, 16) diff --git a/particle_textures/flame_large.tres b/particle_textures/flame_large.tres new file mode 100644 index 0000000..a1bdd2a --- /dev/null +++ b/particle_textures/flame_large.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://b13al44e8ofsx"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_1qw66"] + +[resource] +atlas = ExtResource("1_1qw66") +region = Rect2(32, 32, 16, 16) diff --git a/particle_textures/flame_medium.tres b/particle_textures/flame_medium.tres new file mode 100644 index 0000000..13ecbc3 --- /dev/null +++ b/particle_textures/flame_medium.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://gh7mwehpqfco"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_na56a"] + +[resource] +atlas = ExtResource("1_na56a") +region = Rect2(16, 32, 16, 16) diff --git a/particle_textures/flame_small.tres b/particle_textures/flame_small.tres new file mode 100644 index 0000000..5376209 --- /dev/null +++ b/particle_textures/flame_small.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://b2tpy3y2bpuat"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_tnay8"] + +[resource] +atlas = ExtResource("1_tnay8") +region = Rect2(0, 32, 16, 16) diff --git a/particle_textures/shell_huge.tres b/particle_textures/shell_huge.tres new file mode 100644 index 0000000..7230fd4 --- /dev/null +++ b/particle_textures/shell_huge.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://pxprk0gjivyw"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_36odh"] + +[resource] +atlas = ExtResource("1_36odh") +region = Rect2(48, 0, 16, 16) diff --git a/particle_textures/shell_large.tres b/particle_textures/shell_large.tres new file mode 100644 index 0000000..18710ae --- /dev/null +++ b/particle_textures/shell_large.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://bi1s5xrnunw3c"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_6rm8e"] + +[resource] +atlas = ExtResource("1_6rm8e") +region = Rect2(32, 0, 16, 16) diff --git a/particle_textures/shell_medium.tres b/particle_textures/shell_medium.tres new file mode 100644 index 0000000..6833c53 --- /dev/null +++ b/particle_textures/shell_medium.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://dxcxybr27kkra"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_ss0dd"] + +[resource] +atlas = ExtResource("1_ss0dd") +region = Rect2(16, 0, 16, 16) diff --git a/particle_textures/shell_small.tres b/particle_textures/shell_small.tres new file mode 100644 index 0000000..b3fdec4 --- /dev/null +++ b/particle_textures/shell_small.tres @@ -0,0 +1,7 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://bib4q76bmnajw"] + +[ext_resource type="Texture2D" uid="uid://3w0itm7k5fxq" path="res://images/particles.png" id="1_7mk6j"] + +[resource] +atlas = ExtResource("1_7mk6j") +region = Rect2(0, 0, 16, 16)