diff --git a/scripts/perk_effects.gd b/scripts/perk_effects.gd index b7bcaa8..dab5b6b 100644 --- a/scripts/perk_effects.gd +++ b/scripts/perk_effects.gd @@ -122,6 +122,26 @@ func _ready() -> void: fmg.effect = fireball_set_cast_minigun available_perks.append(fmg) + var smp = Perk.new() + smp.name = "Shotgun: More Pellets" + smp.description = "Fire more pellets per shotgun blast" + smp.stats = _stat("Pellets", str(witch.fireball_pellet_count), str(witch.fireball_pellet_count + 2)) + smp.spell = SpellLibrary.FIREBALL + smp.icon = _icon_fireball + smp.requires_mode = "fireball.cast:shotgun" + smp.effect = shotgun_more_pellets + available_perks.append(smp) + + var msu = Perk.new() + msu.name = "Minigun: Spin-Up" + msu.description = "Fire fireballs faster in minigun mode" + msu.stats = _stat("Interval", "%.3fs" % witch.fireball_minigun_interval, "%.3fs" % maxf(0.03, witch.fireball_minigun_interval - 0.015)) + msu.spell = SpellLibrary.FIREBALL + msu.icon = _icon_fireball + msu.requires_mode = "fireball.cast:minigun" + msu.effect = minigun_spin_up + available_perks.append(msu) + var fsp = Perk.new() fsp.name = "Fireball Spread" fsp.description = "Fireballs target more enemies" @@ -225,7 +245,32 @@ func fireball_spread(): fsp.icon = _icon_fireball fsp.effect = fireball_spread available_perks.append(fsp) - + +func shotgun_more_pellets() -> void: + witch.fireball_pellet_count += 2 + var smp = Perk.new() + smp.name = "Shotgun: More Pellets" + smp.description = "Fire more pellets per shotgun blast" + smp.stats = _stat("Pellets", str(witch.fireball_pellet_count), str(witch.fireball_pellet_count + 2)) + smp.spell = SpellLibrary.FIREBALL + smp.icon = _icon_fireball + smp.requires_mode = "fireball.cast:shotgun" + smp.effect = shotgun_more_pellets + available_perks.append(smp) + +func minigun_spin_up() -> void: + witch.fireball_minigun_interval = maxf(0.03, witch.fireball_minigun_interval - 0.015) + if witch.fireball_minigun_interval > 0.03: + var msu = Perk.new() + msu.name = "Minigun: Spin-Up" + msu.description = "Fire fireballs faster in minigun mode" + msu.stats = _stat("Interval", "%.3fs" % (witch.fireball_minigun_interval + 0.015), "%.3fs" % witch.fireball_minigun_interval) + msu.spell = SpellLibrary.FIREBALL + msu.icon = _icon_fireball + msu.requires_mode = "fireball.cast:minigun" + msu.effect = minigun_spin_up + available_perks.append(msu) + func brew_explosion(): cauldron.brew_explosion = true