1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-27 22:41:56 +08:00

feat(武器): 添加武器描述和彩蛋文本

为多个武器添加了彩蛋文本(tease)和来源信息(sources),包括GrassWall、Hetun、Tree、BigLaser、Cogwheel、Bow、DaoStatue和HXD。同时更新了武器描述和部分属性:
- 为BigLaser更新显示名称为"金法阵"并修改描述
- 为DaoStatue增加攻击力从30到50
- 更新HXD的描述文本
- 在Weapon.gd中添加teaseLabel的显示/隐藏逻辑
- 在Rooster.tscn中更换默认武器为DaoStatue
This commit is contained in:
2026-04-04 13:32:15 +08:00
parent 8d21485057
commit c413744dbf
11 changed files with 109 additions and 47 deletions
+2 -10
View File
@@ -2,10 +2,8 @@
[ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_e5pl8"]
[ext_resource type="Script" uid="uid://cthtupc6dtbav" path="res://scripts/Contents/Characters/Rooster.gd" id="2_oqdqd"]
[ext_resource type="PackedScene" uid="uid://c65tbxm3tclw0" path="res://components/Weapons/Hetun.tscn" id="3_0omr3"]
[ext_resource type="PackedScene" uid="uid://bbrllsqjmx0ie" path="res://components/Weapons/DaoStatue.tscn" id="3_da2ca"]
[ext_resource type="AudioStream" uid="uid://cdrevrq7n6yqa" path="res://resources/sounds/effect/Boing.mp3" id="4_66s6c"]
[ext_resource type="PackedScene" uid="uid://bb1uh8k7gkhr7" path="res://components/Weapons/VectorStar.tscn" id="4_jluqw"]
[ext_resource type="PackedScene" uid="uid://bt4b7ks26fcgi" path="res://components/Weapons/WhiteSoul.tscn" id="4_joj4g"]
[ext_resource type="AudioStream" uid="uid://benyec5bqni0b" path="res://resources/sounds/effect/Chomp.wav" id="4_k0yme"]
[ext_resource type="AudioStream" uid="uid://dmxh3bpk8vyy5" path="res://resources/sounds/effect/Coin.mp3" id="5_xnbhq"]
[ext_resource type="AudioStream" uid="uid://4wuuf1osk0yv" path="res://resources/sounds/effect/Low Boing.wav" id="6_m5px1"]
@@ -103,13 +101,7 @@ process_material = SubResource("ParticleProcessMaterial_joj4g")
[node name="weaponStore" parent="." index="2"]
process_mode = 4
[node name="Hetun" parent="weaponStore" index="0" unique_id=819619036 instance=ExtResource("3_0omr3")]
[node name="VectorStar" parent="weaponStore" index="1" unique_id=405750024 instance=ExtResource("4_jluqw")]
offset_bottom = 394.0
debugRebuild = false
[node name="WhiteSoul" parent="weaponStore" index="2" unique_id=274428909 instance=ExtResource("4_joj4g")]
[node name="DaoStatue" parent="weaponStore" index="0" unique_id=265403254 instance=ExtResource("3_da2ca")]
[node name="sprint" parent="sounds" index="0"]
stream = ExtResource("4_66s6c")
+15 -5
View File
@@ -8,7 +8,7 @@
[node name="BigLaser" unique_id=906291376 instance=ExtResource("1_wrvv5")]
script = ExtResource("2_gmch0")
avatarTexture = ExtResource("2_qe8gb")
displayName = "湮灭激光"
displayName = "金法阵"
quality = 2
typeTopic = 1
costBeachball = 300
@@ -20,10 +20,13 @@ storeType = {
"atk": 1,
"time": 0.0
}
descriptionTemplate = "每$time秒造成$atk点伤害。"
sources = Array[String](["Magic Craft"])
descriptionTemplate = "召唤[b]湮灭射线[/b]
每$time秒造成$atk点伤害。"
sources = Array[String](["Magic Craft", "Harry Potter"])
tease = "秒天秒地秒空气"
needEnergy = 200.0
cooldown = 6000.0
debugRebuild = true
[node name="attack" parent="sounds" parent_id_path=PackedInt32Array(1775425991) index="0" unique_id=853583292]
stream = ExtResource("4_cb5nh")
@@ -38,9 +41,16 @@ text = "200.0"
count = 300
[node name="name" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="0" unique_id=1576068972]
displayName = "湮灭激光"
displayName = "金法阵"
quality = 2
typeTopic = 1
[node name="source" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="1" unique_id=365191794]
text = "Magic Craft × Harry Potter"
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]每[color=cyan]0.10[/color]秒造成[color=cyan]40[/color]点伤害。[/center]"
text = "[center]召唤[b]湮灭射线[/b]
每[color=cyan]0.10[/color]秒造成[color=cyan]40[/color]点伤害。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“秒天秒地秒空气”"
+10 -6
View File
@@ -1,10 +1,10 @@
[gd_scene load_steps=4 format=3 uid="uid://dgka15811lrrj"]
[gd_scene format=3 uid="uid://dgka15811lrrj"]
[ext_resource type="PackedScene" uid="uid://ckq2cq6m23hq3" path="res://components/Abstracts/WeaponCardBase.tscn" id="1_fhedw"]
[ext_resource type="Script" uid="uid://1u8t36atj041" path="res://scripts/Contents/Weapons/Bow.gd" id="2_bou5i"]
[ext_resource type="Texture2D" uid="uid://7us1po711e3o" path="res://resources/weapons/鸡毛弓.png" id="2_ex3jl"]
[node name="Bow" instance=ExtResource("1_fhedw")]
[node name="Bow" unique_id=256655558 instance=ExtResource("1_fhedw")]
script = ExtResource("2_bou5i")
avatarTexture = ExtResource("2_ex3jl")
displayName = "鸡毛弓"
@@ -21,18 +21,22 @@ storeType = {
"self": 1
}
descriptionTemplate = "消耗$self点生命值,发射$count支[b]鸡毛箭[/b],每支造成当前飞行速度的$atk伤害。"
tease = "损人又害己"
cooldown = 2000.0
debugRebuild = true
[node name="avatar" parent="container/info" index="0"]
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("2_ex3jl")
[node name="beachball" parent="container/info/infos" index="1"]
[node name="beachball" parent="container/info/infos" parent_id_path=PackedInt32Array(492799150) index="1" unique_id=653442983]
count = 50
[node name="name" parent="container/info/displays" index="0"]
[node name="name" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="0" unique_id=1576068972]
displayName = "鸡毛弓"
quality = 2
[node name="description" parent="container" index="2"]
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]消耗[color=cyan]2[/color]点生命值,发射[color=cyan]1[/color]支[b]鸡毛箭[/b],每支造成当前飞行速度的[color=cyan]500.0%[/color]伤害。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“损人又害己”"
+9 -5
View File
@@ -1,10 +1,10 @@
[gd_scene load_steps=4 format=3 uid="uid://dqywctcj4y2xi"]
[gd_scene format=3 uid="uid://dqywctcj4y2xi"]
[ext_resource type="PackedScene" uid="uid://ckq2cq6m23hq3" path="res://components/Abstracts/WeaponCardBase.tscn" id="1_ga2jk"]
[ext_resource type="Script" uid="uid://nm2xleunwf4r" path="res://scripts/Contents/Weapons/Cogwheel.gd" id="2_c1bcd"]
[ext_resource type="Texture2D" uid="uid://d0d1t8ch1lolp" path="res://resources/bullets/cogwheel/cogwheel.png" id="2_qs30c"]
[node name="Cogwheel" instance=ExtResource("1_ga2jk")]
[node name="Cogwheel" unique_id=89158644 instance=ExtResource("1_ga2jk")]
script = ExtResource("2_c1bcd")
avatarTexture = ExtResource("2_qs30c")
displayName = "齿轮回旋镖"
@@ -21,18 +21,22 @@ descriptionTemplate = "发射[b]齿轮[/b],在飞行一定距离后回旋。
齿轮的伤害频率与转速成正比。
锋利度:$atk,初始转速:$rotate
齿轮的转速随时间逐渐降低。"
tease = "马后炮最令人措手不及"
cooldown = 1000.0
debugRebuild = true
[node name="avatar" parent="container/info" index="0"]
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("2_qs30c")
[node name="name" parent="container/info/displays" index="0"]
[node name="name" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="0" unique_id=1576068972]
displayName = "齿轮回旋镖"
quality = 3
[node name="description" parent="container" index="2"]
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]发射[b]齿轮[/b],在飞行一定距离后回旋。
齿轮的伤害频率与转速成正比。
锋利度:[color=cyan]2[/color],初始转速:[color=cyan]15.0°[/color]
齿轮的转速随时间逐渐降低。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“马后炮最令人措手不及”"
+18 -2
View File
@@ -10,8 +10,9 @@ script = ExtResource("2_c82g6")
avatarTexture = ExtResource("2_gx1sf")
displayName = "道教石像"
typeTopic = 1
costBeachball = 499
store = {
"atk": 30,
"atk": 50,
"rate1": 0.05,
"rate2": 0.025,
"rate3": 0.15
@@ -29,7 +30,10 @@ descriptionTemplate = "挥出[b]天地之剑[/b],蓄力一段时间后,
每失去[color=yellow]1[/color]点生命值,伤害+$rate1
命中时每拥有[color=yellow]1[/color]层[b]气[/b],伤害+$rate3"
sources = Array[String](["Nine Sols"])
tease = "天机不可泄露"
needEnergy = 50.0
cooldown = 4000.0
debugRebuild = true
[node name="attack" parent="sounds" parent_id_path=PackedInt32Array(1775425991) index="0" unique_id=853583292]
stream = ExtResource("4_y3oaj")
@@ -37,14 +41,26 @@ stream = ExtResource("4_y3oaj")
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("2_gx1sf")
[node name="energy" parent="container/info/infos/energyInfo" parent_id_path=PackedInt32Array(644675021) index="1" unique_id=1664028115]
text = "50.0"
[node name="beachball" parent="container/info/infos" parent_id_path=PackedInt32Array(492799150) index="1" unique_id=653442983]
count = 499
[node name="name" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="0" unique_id=1576068972]
displayName = "道教石像"
typeTopic = 1
[node name="source" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="1" unique_id=365191794]
text = "Nine Sols"
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]挥出[b]天地之剑[/b],蓄力一段时间后,
发射一道[b]无量斩[/b],造成[color=cyan]30[/color]点伤害。
发射一道[b]无量斩[/b],造成[color=cyan]50[/color]点伤害。
攻击速度每降低[color=yellow]1%[/color],伤害+[color=cyan]2.5%[/color]
每失去[color=yellow]1[/color]点生命值,伤害+[color=cyan]5.0%[/color]
命中时每拥有[color=yellow]1[/color]层[b]气[/b],伤害+[color=cyan]15.0%[/color][/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“天机不可泄露”"
+8
View File
@@ -15,8 +15,10 @@ store = {
}
descriptionTemplate = "分泌一堵[b]肽聚墙[/b],可抵挡$atk点伤害,敌人更有可能瞄准你。"
sources = Array[String](["UDA"])
tease = "也许弹反会更合适?"
needEnergy = 35.0
cooldown = 1000.0
debugRebuild = true
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("2_kh4xg")
@@ -31,5 +33,11 @@ count = 10
displayName = "草方块菌落"
typeTopic = 4
[node name="source" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="1" unique_id=365191794]
text = "UDA"
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]分泌一堵[b]肽聚墙[/b],可抵挡[color=cyan]100[/color]点伤害,敌人更有可能瞄准你。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“也许弹反会更合适?”"
+11 -3
View File
@@ -19,9 +19,11 @@ storeType = {
"atk": 1,
"count": 1
}
descriptionTemplate = "发射$count颗[b]茴香豆[/b],在敌人间反弹,每颗茴香豆最多可以反弹$atk次,每次反弹对敌人造成$atk点伤害,有[color=yellow]1/4[/color]的概率反弹次数[color=yellow]+1[/color]。散射[color=red]+4°[/color],反弹时伤害[color=red]-4%[/color],命中同类敌人时额外造成一次[color=yellow]必定暴击[/color]的伤害,命中Boss时,[color=orange]伤害倍率+1%[/color]。"
sources = Array[String](["鲁迅"])
descriptionTemplate = "发射$count颗[b]茴香豆[/b],在敌人间反弹,每颗茴香豆最多可以反弹$atk次,每次反弹对敌人造成$atk点伤害,有[color=yellow]1/4[/color]的概率反弹次数[color=yellow]+1[/color]。散射[color=red]+4°[/color],反弹时伤害[color=red]-4%[/color],命中同类敌人时额外造成一次[color=yellow]必定暴击[/color]的伤害,命中Boss时,伤害倍率[b]永久[/b][color=orange]+1%[/color]。"
sources = Array[String](["Zenless Zone Zero", "孔乙己"])
tease = "不多了,我剩得不多了!"
cooldown = 1000.0
debugRebuild = true
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("2_d5bd0")
@@ -34,5 +36,11 @@ displayName = "咸亨记账簿"
quality = 3
typeTopic = 3
[node name="source" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="1" unique_id=365191794]
text = "Zenless Zone Zero × 孔乙己"
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]发射[color=cyan]4[/color]颗[b]茴香豆[/b],在敌人间反弹,每颗茴香豆最多可以反弹[color=cyan]4[/color]次,每次反弹对敌人造成[color=cyan]4[/color]点伤害,有[color=yellow]1/4[/color]的概率反弹次数[color=yellow]+1[/color]。散射[color=red]+4°[/color],反弹时伤害[color=red]-4%[/color],命中同类敌人时额外造成一次[color=yellow]必定暴击[/color]的伤害,命中Boss时,[color=orange]伤害倍率+1%[/color]。[/center]"
text = "[center]发射[color=cyan]4[/color]颗[b]茴香豆[/b],在敌人间反弹,每颗茴香豆最多可以反弹[color=cyan]4[/color]次,每次反弹对敌人造成[color=cyan]4[/color]点伤害,有[color=yellow]1/4[/color]的概率反弹次数[color=yellow]+1[/color]。散射[color=red]+4°[/color],反弹时伤害[color=red]-4%[/color],命中同类敌人时额外造成一次[color=yellow]必定暴击[/color]的伤害,命中Boss时,伤害倍率[b]永久[/b][color=orange]+1%[/color]。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“不多了,我剩得不多了!”"
+8
View File
@@ -21,7 +21,9 @@ storeType = {
}
descriptionTemplate = "散射5~$count针[b]河豚刺针[/b],每根针造成$atk点伤害,撞上敌人后有$penerate概率反弹。"
sources = Array[String](["Minecraft", "Pathogenic"])
tease = "看我扎不扎你就完了"
cooldown = 2000.0
debugRebuild = true
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("2_y0xe1")
@@ -30,5 +32,11 @@ texture = ExtResource("2_y0xe1")
displayName = "河豚"
quality = 0
[node name="source" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="1" unique_id=365191794]
text = "Minecraft × Pathogenic"
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]散射5~[color=cyan]10[/color]针[b]河豚刺针[/b],每根针造成[color=cyan]15[/color]点伤害,撞上敌人后有[color=cyan]20.0%[/color]概率反弹。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“看我扎不扎你就完了”"
+8
View File
@@ -36,7 +36,9 @@ descriptionTemplate = "进行[b]格挡[/b],化解飞来的子弹。
乾坤剑造成的伤害+$atk点。
格挡时机越精确,成功率越高。"
sources = Array[String](["Nine Sols", "Terraria"])
tease = "化人之力收为己用!"
cooldown = 250.0
debugRebuild = true
[node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889]
texture = ExtResource("3_nwamk")
@@ -49,6 +51,9 @@ displayName = "扶桑元神"
quality = 4
typeTopic = 3
[node name="source" parent="container/info/displays" parent_id_path=PackedInt32Array(784441328) index="1" unique_id=365191794]
text = "Nine Sols × Terraria"
[node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682]
text = "[center]进行[b]格挡[/b],化解飞来的子弹。
每成功格挡一次,获得一点[b]气力[/b]。
@@ -61,3 +66,6 @@ text = "[center]进行[b]格挡[/b],化解飞来的子弹。
每化解[color=yellow]1[/color]点伤害,
乾坤剑造成的伤害+[color=cyan]20[/color]点。
格挡时机越精确,成功率越高。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“化人之力收为己用!”"
+15 -15
View File
@@ -2,19 +2,19 @@
extends Weapon
func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 1 * to * soulLevel
origin["rotate"] += 0.5 * to * soulLevel
return origin
origin["atk"] += 1 * to * soulLevel
origin["rotate"] += 0.5 * to * soulLevel
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for bullet in BulletBase.generate(
ComponentManager.getBullet("Cogwheel"),
entity,
weaponPos,
weaponPos.angle_to_point(get_global_mouse_position()),
):
if bullet is CogwheelBullet:
bullet.initialRotate = readStore("rotate")
bullet.rotateSpeed = readStore("rotate")
bullet.baseDamage = readStore("atk")
return true
var weaponPos = entity.findWeaponAnchor("normal")
for bullet in BulletBase.generate(
ComponentManager.getBullet("Cogwheel"),
entity,
weaponPos,
weaponPos.angle_to_point(get_global_mouse_position()),
):
if bullet is CogwheelBullet:
bullet.initialRotate = readStore("rotate")
bullet.rotateSpeed = readStore("rotate")
bullet.baseDamage = readStore("atk")
return true
+5 -1
View File
@@ -126,7 +126,11 @@ func rebuildInfo(showNext: bool = false):
nameLabel.soulLevel = soulLevel
nameLabel.level = level
sourceLabel.text = " × ".join(sources)
teaseLabel.text = "%s" % tease
if len(tease) > 0:
teaseLabel.text = "%s" % tease
teaseLabel.show()
else:
teaseLabel.hide()
energyLabel.text = "%.1f" % needEnergy
beachball.count = costBeachball
soul.count = soulLevel