mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-28 06:51:54 +08:00
feat(武器系统): 重构LGBT武器并添加工具模式支持
- 为BigLaser和PurpleCrystal武器添加@tool注解 - 重构LGBTWeapon的攻击逻辑,支持多角度子弹发射 - 更新LGBT武器的配置属性和描述模板 - 将Rooster角色的武器从BigLaser替换为LGBT武器
This commit is contained in:
@@ -7,8 +7,8 @@
|
||||
[ext_resource type="Texture2D" uid="uid://ci2ik43ce82uy" path="res://resources/characters/cock/rooster-b.svg" id="3_b0fgx"]
|
||||
[ext_resource type="PackedScene" uid="uid://c0n3igy4hucrg" path="res://components/Weapons/PurpleCrystal.tscn" id="3_ms5sq"]
|
||||
[ext_resource type="AudioStream" uid="uid://cdrevrq7n6yqa" path="res://resources/sounds/effect/Boing.mp3" id="4_66s6c"]
|
||||
[ext_resource type="PackedScene" uid="uid://cxabqjo7skxev" path="res://components/Weapons/BigLaser.tscn" id="4_0862n"]
|
||||
[ext_resource type="AudioStream" uid="uid://benyec5bqni0b" path="res://resources/sounds/effect/Chomp.wav" id="4_k0yme"]
|
||||
[ext_resource type="PackedScene" uid="uid://wl8u5m52708w" path="res://components/Weapons/LGBT.tscn" id="4_pb8qn"]
|
||||
[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"]
|
||||
[ext_resource type="AudioStream" uid="uid://b10u6iir6uvqn" path="res://resources/sounds/effect/BigLaser.wav" id="8_7dhim"]
|
||||
@@ -46,7 +46,8 @@ process_mode = 4
|
||||
|
||||
[node name="PurpleCrystal" parent="weaponStore" index="0" instance=ExtResource("3_ms5sq")]
|
||||
|
||||
[node name="BigLaser" parent="weaponStore" index="1" instance=ExtResource("4_0862n")]
|
||||
[node name="LGBT" parent="weaponStore" index="1" instance=ExtResource("4_pb8qn")]
|
||||
debugRebuild = false
|
||||
|
||||
[node name="sprint" parent="sounds" index="0"]
|
||||
stream = ExtResource("4_66s6c")
|
||||
|
||||
@@ -13,14 +13,16 @@ quality = 4
|
||||
costs = Array[int]([0, 1])
|
||||
costCounts = Array[int]([200, 100])
|
||||
store = {
|
||||
"angle": 15.0,
|
||||
"atk": 20,
|
||||
"count": 7.0,
|
||||
"power": 0.3,
|
||||
"trace": 2.0
|
||||
}
|
||||
storeType = Array[int]([0, 0, 1, 0])
|
||||
descriptionTemplate = "发射$count条可追踪$trace秒,效率为$power的带状彩虹,每条造成$atk点伤害。"
|
||||
storeType = Array[int]([0, 0, 1, 0, 2])
|
||||
descriptionTemplate = "发射$count条,每条间分隔$angle,可追踪$trace秒,效率为$power的带状彩虹,每条造成$atk点伤害。"
|
||||
needEnergy = 150.0
|
||||
debugRebuild = true
|
||||
|
||||
[node name="avatar" parent="container/info" index="0"]
|
||||
texture = ExtResource("2_ou6jo")
|
||||
@@ -34,5 +36,5 @@ quality = 4
|
||||
|
||||
[node name="description" parent="container" index="2"]
|
||||
size_flags_vertical = 3
|
||||
text = "[center]发射[color=cyan]7.0[/color]条可追踪[color=cyan]2.0[/color]秒,效率为[color=cyan]30.0%[/color]的带状彩虹,每条造成[color=cyan]20.0[/color]点伤害。[/center]"
|
||||
text = "[center]发射[color=cyan]7.0[/color]条,每条间分隔[color=cyan]15.0°[/color],可追踪[color=cyan]2.0[/color]秒,效率为[color=cyan]30.0%[/color]的带状彩虹,每条造成[color=cyan]20.0[/color]点伤害。[/center]"
|
||||
autowrap_mode = 2
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
extends Weapon
|
||||
class_name BigLaserWeapon
|
||||
|
||||
|
||||
@@ -4,9 +4,15 @@ class_name LGBTWeapon
|
||||
|
||||
func update(to: int, origin: Dictionary, _entity: EntityBase):
|
||||
origin["atk"] += 5 * to
|
||||
origin["time"] /= 1.1
|
||||
origin["count"] += 1
|
||||
origin["power"] += 0.05
|
||||
origin["trace"] += 0.25
|
||||
origin["angle"] /= 1.1
|
||||
return origin
|
||||
func attack(entity: EntityBase):
|
||||
var weaponPos = entity.findWeaponAnchor("normal")
|
||||
BulletBase.generate(preload("res://components/Bullets/BigLaser.tscn"), entity, weaponPos, (get_global_mouse_position() - weaponPos).angle())
|
||||
var facingAngle = (get_global_mouse_position() - weaponPos).angle()
|
||||
var startAngle = facingAngle - deg_to_rad(readStore("angle") * (readStore("count") / 2))
|
||||
for i in range(int(readStore("count"))):
|
||||
BulletBase.generate(preload("res://components/Bullets/LGBTBullet.tscn"), entity, weaponPos, startAngle + deg_to_rad(readStore("angle") * i))
|
||||
return true
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
extends Weapon
|
||||
class_name PurpleCrystalWeapon
|
||||
|
||||
|
||||
Reference in New Issue
Block a user