1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-28 15:01:53 +08:00
Files
Dog-Lynx-And-HCN/scripts/Contents/Bullets/NuclearBomb.gd
T
fallingshrimp ff9273ca29 feat(武器): 添加河豚刺针武器及其相关资源
新增河豚刺针武器,包含以下内容:
- 添加河豚武器图标和音效资源
- 实现Needle子弹类及其反弹逻辑
- 创建Hetun武器类实现散射攻击
- 添加子弹特效和碰撞检测
- 更新公鸡角色默认武器配置
2026-03-14 19:09:55 +08:00

30 lines
904 B
GDScript

extends BulletBase
class_name NuclearBomb
@onready var label: Label = $"%label"
@onready var anchor: Node2D = $"%anchor"
@onready var warn: ShaderStage = $"%warn"
@onready var warnbg: ShaderStage = $"%warnbg"
var countdown = 10000
var radius = 500
func spawn():
hitbox.disabled = true
hitbox.shape.radius = radius
warnbg.size = Vector2.ONE * 2 * radius
anchor.global_rotation = 0
func ai():
speed *= 0.99
PresetBulletAI.forward(self , rotation)
if timeLived() > countdown:
tryDestroy()
else:
warn.size = Vector2.ONE * 2 * radius * (timeLived() / countdown)
label.text = "NUCLEAR WARNING %.1f" % ((countdown - timeLived()) / 1000)
func destroy(_b):
EffectController.create(ComponentManager.getEffect("NuclearExplosion"), global_position).shot()
hitbox.disabled = false
CameraManager.shake(5000, 300, func(_c, t, r): return t * r) # 震屏强度随进度递减
await TickTool.frame(5)