1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-28 06:51:54 +08:00

feat(武器): 添加氧化加农炮及其相关资源

新增氧化加农炮武器,包含武器脚本、子弹效果、贴图资源及UI组件
调整TipBox动画参数和Rooster默认武器
This commit is contained in:
2026-01-25 19:32:02 +08:00
parent 799668403d
commit 9ba29b7fc9
13 changed files with 325 additions and 8 deletions
+5
View File
@@ -0,0 +1,5 @@
extends BulletBase
class_name OxygenFire
func ai():
PresetBulletAI.forward(self, rotation)
@@ -0,0 +1 @@
uid://dpxfoyb33fo6t
+1 -1
View File
@@ -22,7 +22,7 @@ func duplicate() -> Wave:
wave.per = per
return wave
static var current: int = startWith(1) if WorldManager.isRelease() else startWith(10)
static var current: int = startWith(1) if WorldManager.isRelease() else startWith(1)
static var WAVE_NORMAL = [
Wave.create("Hen", 1, 3, false, 0, INF, 1),
Wave.create("Cat", 1, 5, false, 0, INF, 1),
+21
View File
@@ -0,0 +1,21 @@
@tool
extends Weapon
func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 1 * to * soulLevel
origin["fireatk"] += 0.5 * to * soulLevel
origin["max-n"] *= soulLevel
return origin
func attack(entity: EntityBase):
var bulletName = MathTool.randomChoiceFromWeights(["OxygenFire", "AcidN"], [100, 1])
for i in randi_range(readStore("min-n"), readStore("max-n")) if bulletName == "AcidN" else 1:
for bullet in BulletBase.generate(
ComponentManager.getBullet(bulletName),
entity,
entity.findWeaponAnchor("normal"),
entity.position.angle_to_point(get_global_mouse_position()),
):
if bullet is OxygenFire:
bullet.baseDamage = readStore("fireatk")
elif bullet is AcidN:
bullet.baseDamage = readStore("atk")
+1
View File
@@ -0,0 +1 @@
uid://bjraoa0lwchon