P power scaling

This commit is contained in:
Marco 2025-05-20 15:57:35 +02:00
commit ee84bafdad
23 changed files with 158 additions and 44 deletions

View file

@ -1,7 +1,6 @@
[gd_resource type="Resource" script_class="BossPhase" load_steps=5 format=3 uid="uid://da1vjfavqs7u2"] [gd_resource type="Resource" script_class="BossPhase" load_steps=4 format=3 uid="uid://da1vjfavqs7u2"]
[ext_resource type="Script" uid="uid://cdd6q2h0t1hhq" path="res://Scripts/Resources/BossPhase.cs" id="1_7asq8"] [ext_resource type="Script" uid="uid://cdd6q2h0t1hhq" path="res://Scripts/Resources/BossPhase.cs" id="1_7asq8"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="1_ykywc"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="1_ys2v3"] [ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="1_ys2v3"]
[sub_resource type="Resource" id="Resource_q4pcc"] [sub_resource type="Resource" id="Resource_q4pcc"]
@ -24,7 +23,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("1_ykywc")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[resource] [resource]

View file

@ -1,11 +1,10 @@
[gd_resource type="Resource" script_class="BossPhase" load_steps=42 format=3 uid="uid://ddb5dqocmk6x7"] [gd_resource type="Resource" script_class="BossPhase" load_steps=41 format=3 uid="uid://ddb5dqocmk6x7"]
[ext_resource type="PackedScene" uid="uid://dh81snen2f6bf" path="res://Scenes/Weapons/Bullets/enemyBullet_rice_blue_small.tscn" id="1_as8n2"] [ext_resource type="PackedScene" uid="uid://dh81snen2f6bf" path="res://Scenes/Weapons/Bullets/enemyBullet_rice_blue_small.tscn" id="1_as8n2"]
[ext_resource type="Script" uid="uid://cdd6q2h0t1hhq" path="res://Scripts/Resources/BossPhase.cs" id="1_fdlxv"] [ext_resource type="Script" uid="uid://cdd6q2h0t1hhq" path="res://Scripts/Resources/BossPhase.cs" id="1_fdlxv"]
[ext_resource type="Script" uid="uid://dka43xos84kbw" path="res://Scripts/Resources/Modifiers/DelayedRotationModifier.cs" id="2_onj13"] [ext_resource type="Script" uid="uid://dka43xos84kbw" path="res://Scripts/Resources/Modifiers/DelayedRotationModifier.cs" id="2_onj13"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="2_wkmhk"] [ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="2_wkmhk"]
[ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="3_ow5fu"] [ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="3_ow5fu"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="4_3qh6s"]
[ext_resource type="PackedScene" uid="uid://ctrk5qrb7n3fm" path="res://Scenes/Weapons/Bullets/enemyBullet_rice_green_small.tscn" id="4_tek7n"] [ext_resource type="PackedScene" uid="uid://ctrk5qrb7n3fm" path="res://Scenes/Weapons/Bullets/enemyBullet_rice_green_small.tscn" id="4_tek7n"]
[ext_resource type="PackedScene" uid="uid://chowj81jsdvcx" path="res://Scenes/Weapons/Bullets/enemyBullet_rice_red_small.tscn" id="5_n4xqo"] [ext_resource type="PackedScene" uid="uid://chowj81jsdvcx" path="res://Scenes/Weapons/Bullets/enemyBullet_rice_red_small.tscn" id="5_n4xqo"]
[ext_resource type="Script" uid="uid://bhc7rbcico4kp" path="res://Scripts/Resources/SimpleMovementPattern.cs" id="6_bw7cj"] [ext_resource type="Script" uid="uid://bhc7rbcico4kp" path="res://Scripts/Resources/SimpleMovementPattern.cs" id="6_bw7cj"]
@ -26,6 +25,7 @@ BulletScene = ExtResource("1_as8n2")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -59,7 +59,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = false WaitForCompletion = false
[sub_resource type="Resource" id="Resource_pbgtt"] [sub_resource type="Resource" id="Resource_pbgtt"]
@ -75,6 +75,7 @@ BulletScene = ExtResource("1_as8n2")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = true DestroyOnCollision = true
@ -108,7 +109,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_w7b0n"] [sub_resource type="Resource" id="Resource_w7b0n"]
@ -117,6 +118,7 @@ BulletScene = ExtResource("4_tek7n")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -150,7 +152,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = false WaitForCompletion = false
[sub_resource type="Resource" id="Resource_3iv0j"] [sub_resource type="Resource" id="Resource_3iv0j"]
@ -159,6 +161,7 @@ BulletScene = ExtResource("4_tek7n")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -192,7 +195,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_5jr31"] [sub_resource type="Resource" id="Resource_5jr31"]
@ -201,6 +204,7 @@ BulletScene = ExtResource("5_n4xqo")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -234,7 +238,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = false WaitForCompletion = false
[sub_resource type="Resource" id="Resource_mg2qy"] [sub_resource type="Resource" id="Resource_mg2qy"]
@ -243,6 +247,7 @@ BulletScene = ExtResource("5_n4xqo")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = true DestroyOnCollision = true
@ -276,7 +281,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_erexw"] [sub_resource type="Resource" id="Resource_erexw"]
@ -307,6 +312,7 @@ BulletScene = ExtResource("7_gsnyb")
BulletSpeed = 80.0 BulletSpeed = 80.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = true DestroyOnCollision = true
@ -340,7 +346,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_l05f2"] [sub_resource type="Resource" id="Resource_l05f2"]
@ -357,6 +363,7 @@ BulletScene = ExtResource("7_gsnyb")
BulletSpeed = 80.0 BulletSpeed = 80.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = true DestroyOnCollision = true
@ -390,7 +397,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_q7cr0"] [sub_resource type="Resource" id="Resource_q7cr0"]
@ -407,6 +414,7 @@ BulletScene = ExtResource("7_gsnyb")
BulletSpeed = 80.0 BulletSpeed = 80.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -440,7 +448,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_8kl6r"] [sub_resource type="Resource" id="Resource_8kl6r"]
@ -457,6 +465,7 @@ BulletScene = ExtResource("7_gsnyb")
BulletSpeed = 80.0 BulletSpeed = 80.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -490,7 +499,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("4_3qh6s")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_ha2b6"] [sub_resource type="Resource" id="Resource_ha2b6"]

View file

@ -1,4 +1,4 @@
[gd_resource type="Resource" script_class="BossPhase" load_steps=24 format=3 uid="uid://ccj0cqbveey8c"] [gd_resource type="Resource" script_class="BossPhase" load_steps=23 format=3 uid="uid://ccj0cqbveey8c"]
[ext_resource type="Script" uid="uid://bhc7rbcico4kp" path="res://Scripts/Resources/SimpleMovementPattern.cs" id="1_lw82i"] [ext_resource type="Script" uid="uid://bhc7rbcico4kp" path="res://Scripts/Resources/SimpleMovementPattern.cs" id="1_lw82i"]
[ext_resource type="PackedScene" uid="uid://dohakkayqj4w2" path="res://Scenes/Weapons/Bullets/enemyBullet_green.tscn" id="1_o4um1"] [ext_resource type="PackedScene" uid="uid://dohakkayqj4w2" path="res://Scenes/Weapons/Bullets/enemyBullet_green.tscn" id="1_o4um1"]
@ -7,7 +7,6 @@
[ext_resource type="Script" uid="uid://cdd6q2h0t1hhq" path="res://Scripts/Resources/BossPhase.cs" id="3_o6234"] [ext_resource type="Script" uid="uid://cdd6q2h0t1hhq" path="res://Scripts/Resources/BossPhase.cs" id="3_o6234"]
[ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="4_juoir"] [ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="4_juoir"]
[ext_resource type="PackedScene" uid="uid://by2rk6gx67f7e" path="res://Scenes/Weapons/Bullets/enemyBullet_yellow.tscn" id="4_ruawj"] [ext_resource type="PackedScene" uid="uid://by2rk6gx67f7e" path="res://Scenes/Weapons/Bullets/enemyBullet_yellow.tscn" id="4_ruawj"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="5_763gk"]
[ext_resource type="Script" uid="uid://cbafxkmgns6ry" path="res://Scripts/Resources/PatternGroup.cs" id="6_6mg1u"] [ext_resource type="Script" uid="uid://cbafxkmgns6ry" path="res://Scripts/Resources/PatternGroup.cs" id="6_6mg1u"]
[sub_resource type="Resource" id="Resource_upj22"] [sub_resource type="Resource" id="Resource_upj22"]
@ -41,6 +40,7 @@ BulletScene = ExtResource("1_o4um1")
BulletSpeed = 100.0 BulletSpeed = 100.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -75,7 +75,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("5_763gk")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_e6jj0"] [sub_resource type="Resource" id="Resource_e6jj0"]
@ -92,6 +92,7 @@ BulletScene = ExtResource("4_ruawj")
BulletSpeed = 100.0 BulletSpeed = 100.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -126,7 +127,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("5_763gk")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_gm1rv"] [sub_resource type="Resource" id="Resource_gm1rv"]

View file

@ -1,7 +1,6 @@
[gd_resource type="Resource" script_class="BulletScript" load_steps=6 format=3 uid="uid://cmra7n6so1x4u"] [gd_resource type="Resource" script_class="BulletScript" load_steps=5 format=3 uid="uid://cmra7n6so1x4u"]
[ext_resource type="Resource" uid="uid://dqnvesdj0dk3v" path="res://Resources/Bullets/simple_enemy_bullet.tres" id="1_lkipe"] [ext_resource type="Resource" uid="uid://dqnvesdj0dk3v" path="res://Resources/Bullets/simple_enemy_bullet.tres" id="1_lkipe"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="2_omk5v"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="2_v7d4m"] [ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="2_v7d4m"]
[ext_resource type="Script" uid="uid://bngko08ho85p6" path="res://Scripts/Resources/BulletScript.cs" id="3_omk5v"] [ext_resource type="Script" uid="uid://bngko08ho85p6" path="res://Scripts/Resources/BulletScript.cs" id="3_omk5v"]
@ -26,7 +25,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("2_omk5v")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
metadata/_custom_type_script = "uid://c0ndqalsc4jve" metadata/_custom_type_script = "uid://c0ndqalsc4jve"

View file

@ -22,6 +22,7 @@ BulletScene = ExtResource("1_y6dig")
BulletSpeed = 70.0 BulletSpeed = 70.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -9,6 +9,7 @@ BulletScene = ExtResource("1_ji2e1")
BulletSpeed = 20.0 BulletSpeed = 20.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 8.0 BulletDamage = 8.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 8.0 LifeTime = 8.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -11,12 +11,16 @@ DestructionParticlesScene = ExtResource("2_f3yha")
BulletSpeed = 40.0 BulletSpeed = 40.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 0.0 BulletDamage = 0.0
MaxDamage = 0.0
Knockback = 1.0
LifeTime = 50.0 LifeTime = 50.0
DestroyOnCollision = true DestroyOnCollision = true
Owner = 1 Owner = 1
DamageType = 0 DamageType = 0
RotateSprite = false
Controllable = true Controllable = true
Freezable = true
Grazeable = false Grazeable = false
GrazeValue = 0.2 GrazeValue = 0.2
TimeModifiers = null TimeModifiers = []
metadata/_custom_type_script = "uid://dslyrfcej3g2n" metadata/_custom_type_script = "uid://dslyrfcej3g2n"

View file

@ -23,6 +23,7 @@ DestructionParticlesScene = ExtResource("2_26vvh")
BulletSpeed = 100.0 BulletSpeed = 100.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 50.0 BulletDamage = 50.0
MaxDamage = 100.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 10.0 LifeTime = 10.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -10,7 +10,8 @@ BulletScene = ExtResource("1_no224")
DestructionParticlesScene = ExtResource("2_04tom") DestructionParticlesScene = ExtResource("2_04tom")
BulletSpeed = 300.0 BulletSpeed = 300.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 0.6 BulletDamage = 0.4
MaxDamage = 1.0
Knockback = 100.0 Knockback = 100.0
LifeTime = 10.0 LifeTime = 10.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -11,6 +11,7 @@ DestructionParticlesScene = ExtResource("2_w7ktr")
BulletSpeed = 120.0 BulletSpeed = 120.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 8.0 BulletDamage = 8.0
MaxDamage = 12.0
Knockback = 200.0 Knockback = 200.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -11,6 +11,7 @@ DestructionParticlesScene = ExtResource("2_x6hhy")
BulletSpeed = 300.0 BulletSpeed = 300.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 4.0 BulletDamage = 4.0
MaxDamage = 8.0
Knockback = 150.0 Knockback = 150.0
LifeTime = 10.0 LifeTime = 10.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -10,7 +10,7 @@ BulletScene = ExtResource("1_qjgqc")
DestructionParticlesScene = ExtResource("2_fkpjr") DestructionParticlesScene = ExtResource("2_fkpjr")
BulletSpeed = 300.0 BulletSpeed = 300.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 0.8 BulletDamage = 0.6
Knockback = 200.0 Knockback = 200.0
LifeTime = 10.0 LifeTime = 10.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -23,6 +23,7 @@ DestructionParticlesScene = ExtResource("2_mdq2b")
BulletSpeed = 100.0 BulletSpeed = 100.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 8.0 BulletDamage = 8.0
MaxDamage = 12.0
Knockback = 200.0 Knockback = 200.0
LifeTime = 10.0 LifeTime = 10.0
DestroyOnCollision = true DestroyOnCollision = true

View file

@ -13,7 +13,7 @@ Item = 10
Tier = 0 Tier = 0
Price = 1 Price = 1
Amount = 1 Amount = 1
Max = 100 Max = 20
PickupIfMaxed = false PickupIfMaxed = false
ConsumeOnUse = true ConsumeOnUse = true
UiType = 6 UiType = 6

View file

@ -1,7 +1,6 @@
[gd_resource type="Resource" script_class="SpiralPattern" load_steps=4 format=3 uid="uid://jjky5fqn74qk"] [gd_resource type="Resource" script_class="SpiralPattern" load_steps=3 format=3 uid="uid://jjky5fqn74qk"]
[ext_resource type="Resource" uid="uid://bifeoxb6nfykq" path="res://Resources/Bullets/Boss/Rumia/Rumia_Red_Chase_Bullet.tres" id="1_lasr5"] [ext_resource type="Resource" uid="uid://bifeoxb6nfykq" path="res://Resources/Bullets/Boss/Rumia/Rumia_Red_Chase_Bullet.tres" id="1_lasr5"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="2_ho5ah"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="3_ryait"] [ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="3_ryait"]
[resource] [resource]
@ -25,5 +24,5 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("2_ho5ah")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true

View file

@ -1,9 +1,8 @@
[gd_resource type="Resource" script_class="PatternGroup" load_steps=13 format=3 uid="uid://du2kuv125vbrx"] [gd_resource type="Resource" script_class="PatternGroup" load_steps=12 format=3 uid="uid://du2kuv125vbrx"]
[ext_resource type="PackedScene" uid="uid://dre2wvw4pa3hc" path="res://Scenes/Weapons/Bullets/enemyBullet_mid_blue.tscn" id="1_4xpdn"] [ext_resource type="PackedScene" uid="uid://dre2wvw4pa3hc" path="res://Scenes/Weapons/Bullets/enemyBullet_mid_blue.tscn" id="1_4xpdn"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="2_ee42k"] [ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="2_ee42k"]
[ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="2_gfvud"] [ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="2_gfvud"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="3_fgjeq"]
[ext_resource type="PackedScene" uid="uid://dohakkayqj4w2" path="res://Scenes/Weapons/Bullets/enemyBullet_green.tscn" id="3_gr7a3"] [ext_resource type="PackedScene" uid="uid://dohakkayqj4w2" path="res://Scenes/Weapons/Bullets/enemyBullet_green.tscn" id="3_gr7a3"]
[ext_resource type="Script" uid="uid://cbafxkmgns6ry" path="res://Scripts/Resources/PatternGroup.cs" id="3_jvysx"] [ext_resource type="Script" uid="uid://cbafxkmgns6ry" path="res://Scripts/Resources/PatternGroup.cs" id="3_jvysx"]
@ -13,6 +12,7 @@ BulletScene = ExtResource("1_4xpdn")
BulletSpeed = 40.0 BulletSpeed = 40.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -46,7 +46,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("3_fgjeq")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_wtj61"] [sub_resource type="Resource" id="Resource_wtj61"]
@ -55,6 +55,7 @@ BulletScene = ExtResource("3_gr7a3")
BulletSpeed = 50.0 BulletSpeed = 50.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -88,7 +89,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("3_fgjeq")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[sub_resource type="Resource" id="Resource_qbq0m"] [sub_resource type="Resource" id="Resource_qbq0m"]
@ -97,6 +98,7 @@ BulletScene = ExtResource("1_4xpdn")
BulletSpeed = 50.0 BulletSpeed = 50.0
Direction = Vector2(1, 0) Direction = Vector2(1, 0)
BulletDamage = 20.0 BulletDamage = 20.0
MaxDamage = 1.0
Knockback = 1.0 Knockback = 1.0
LifeTime = 20.0 LifeTime = 20.0
DestroyOnCollision = false DestroyOnCollision = false
@ -130,7 +132,7 @@ DamageType = 0
OverrideControllable = false OverrideControllable = false
Controllable = false Controllable = false
OverrideCreationModifier = false OverrideCreationModifier = false
TimeModifiers = Array[ExtResource("3_fgjeq")]([]) TimeModifiers = []
WaitForCompletion = true WaitForCompletion = true
[resource] [resource]

View file

@ -8,6 +8,7 @@ script = ExtResource("1_d3tbp")
Name = &"Cheat Gun" Name = &"Cheat Gun"
BulletData = ExtResource("1_7fekn") BulletData = ExtResource("1_7fekn")
Priority = 100 Priority = 100
AmmoPerShot = 1
RateOfFire = 0.4 RateOfFire = 0.4
BulletCapacity = 200 BulletCapacity = 200
ReloadTime = 0.1 ReloadTime = 0.1

View file

@ -10,6 +10,7 @@ script = ExtResource("2_f4135")
Name = &"Improved Icicle Repeater" Name = &"Improved Icicle Repeater"
BulletData = ExtResource("1_lg8jo") BulletData = ExtResource("1_lg8jo")
Priority = 20 Priority = 20
AmmoPerShot = 1
RateOfFire = 0.1 RateOfFire = 0.1
BulletCapacity = 8 BulletCapacity = 8
ReloadTime = 0.5 ReloadTime = 0.5

View file

@ -7,15 +7,17 @@
script = ExtResource("1_wdsus") script = ExtResource("1_wdsus")
Name = &"Spider Bomb" Name = &"Spider Bomb"
BulletData = ExtResource("1_m8p4s") BulletData = ExtResource("1_m8p4s")
Priority = 0
AmmoPerShot = 1
RateOfFire = 0.4 RateOfFire = 0.4
BulletCapacity = 20 BulletCapacity = 20
ReloadTime = 1.0 ReloadTime = 1.0
AutoReload = true AutoReload = true
InfiniteAmmo = true InfiniteAmmo = true
ItemKey = &"SPIDER_BOMB"
AmmoKey = &""
BulletsPerShot = 1 BulletsPerShot = 1
SpreadAngle = 0.0 SpreadAngle = 0.0
RandomSpread = 0.0 RandomSpread = 0.0
ItemKey = &"SPIDER_BOMB"
AmmoKey = null
_rotationOffset = 0.0 _rotationOffset = 0.0
metadata/_custom_type_script = "uid://b6fmrnipv88bk" metadata/_custom_type_script = "uid://b6fmrnipv88bk"

File diff suppressed because one or more lines are too long

View file

@ -16,6 +16,7 @@ public partial class BulletResource : Resource
[Export] public float BulletSpeed = 100f; [Export] public float BulletSpeed = 100f;
[Export] public Vector2 Direction = Vector2.Right; [Export] public Vector2 Direction = Vector2.Right;
[Export] public float BulletDamage = 1; [Export] public float BulletDamage = 1;
[Export] public float MaxDamage = 1;
[Export] public float Knockback = 1; [Export] public float Knockback = 1;
[Export] public float LifeTime = 10f; [Export] public float LifeTime = 10f;
[Export] public bool DestroyOnCollision = true; [Export] public bool DestroyOnCollision = true;

View file

@ -23,6 +23,8 @@ public partial class Weapon : Node2D
[Export] [Export]
public Sprite2D Sprite { get; private set; } public Sprite2D Sprite { get; private set; }
[Export] public StringName PowerKey { get; set; } = "POWER";
[Signal] [Signal]
public delegate void ShootingEventHandler(); public delegate void ShootingEventHandler();
@ -175,6 +177,13 @@ public partial class Weapon : Node2D
{ {
bulletData.Owner = ownerOverride.Value; bulletData.Owner = ownerOverride.Value;
} }
if (bulletData.Owner is BulletOwner.Player || ownerOverride is BulletOwner.Player)
{
// Apply the P multiplier
bulletData.Damage *=
GetBulletStrengthMultiplier(bulletData.Damage, bulletData.OriginalBulletResource.MaxDamage, 20);
}
bullet.Initialize(bulletData, _gameManager); bullet.Initialize(bulletData, _gameManager);
@ -198,6 +207,17 @@ public partial class Weapon : Node2D
_cooldownTimer.Start(WeaponData?.RateOfFire ?? 0); _cooldownTimer.Start(WeaponData?.RateOfFire ?? 0);
} }
private float GetBulletStrengthMultiplier(float baseDamage, float maxDamage, float maxPower)
{
var p = InventoryManager.Instance.GetItemCount(PowerKey);
float minMultiplier = 1.0f;
float maxMultiplier = maxDamage / baseDamage;
float normalizedPower = Mathf.Clamp((float)p / maxPower, 0f, 1f);
return Mathf.Lerp(minMultiplier, maxMultiplier, normalizedPower);
}
public void RotateWeapon(Vector2 facingDirection, Vector2 leftPosition, Vector2 rightPosition) public void RotateWeapon(Vector2 facingDirection, Vector2 leftPosition, Vector2 rightPosition)
{ {
bool facingLeft = facingDirection.X < 0; bool facingLeft = facingDirection.X < 0;

View file

@ -1,4 +1,4 @@
[gd_resource type="TileSet" load_steps=85 format=3 uid="uid://6k28roiljylj"] [gd_resource type="TileSet" load_steps=86 format=3 uid="uid://6k28roiljylj"]
[ext_resource type="Texture2D" uid="uid://bty7p61v46chx" path="res://Resources/Textures/Tilemap_Canvas.tres" id="1_u4jco"] [ext_resource type="Texture2D" uid="uid://bty7p61v46chx" path="res://Resources/Textures/Tilemap_Canvas.tres" id="1_u4jco"]
[ext_resource type="PackedScene" uid="uid://bj28qiai2x2ar" path="res://Scenes/Props/Barrel.tscn" id="2_cxg4b"] [ext_resource type="PackedScene" uid="uid://bj28qiai2x2ar" path="res://Scenes/Props/Barrel.tscn" id="2_cxg4b"]
@ -1592,6 +1592,12 @@ polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)]) outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
agent_radius = 0.0 agent_radius = 0.0
[sub_resource type="NavigationPolygon" id="NavigationPolygon_8hhme"]
vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
agent_radius = 0.0
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ork78"] [sub_resource type="NavigationPolygon" id="NavigationPolygon_ork78"]
vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8) vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)]) polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
@ -2026,6 +2032,70 @@ texture = ExtResource("25_ttooi")
14:11/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_6xcdi") 14:11/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_6xcdi")
15:11/0 = 0 15:11/0 = 0
15:11/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_xc1ek") 15:11/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_xc1ek")
0:12/0 = 0
0:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
1:12/0 = 0
1:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
2:12/0 = 0
2:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
3:12/0 = 0
3:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
4:12/0 = 0
4:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
5:12/0 = 0
5:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
6:12/0 = 0
6:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
7:12/0 = 0
7:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
8:12/0 = 0
8:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
9:12/0 = 0
9:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
10:12/0 = 0
10:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
11:12/0 = 0
11:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
12:12/0 = 0
12:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
13:12/0 = 0
13:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
14:12/0 = 0
14:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
15:12/0 = 0
15:12/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
0:13/0 = 0
0:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
1:13/0 = 0
1:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
2:13/0 = 0
2:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
3:13/0 = 0
3:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
4:13/0 = 0
4:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
5:13/0 = 0
5:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
6:13/0 = 0
6:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
7:13/0 = 0
7:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
8:13/0 = 0
8:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
9:13/0 = 0
9:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
10:13/0 = 0
10:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
11:13/0 = 0
11:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
12:13/0 = 0
12:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
13:13/0 = 0
13:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
14:13/0 = 0
14:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
15:13/0 = 0
15:13/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_8hhme")
[sub_resource type="NavigationPolygon" id="NavigationPolygon_63v5g"] [sub_resource type="NavigationPolygon" id="NavigationPolygon_63v5g"]
vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8) vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8)