diff --git a/components/Abstracts/WeaponCardBase.tscn b/components/Abstracts/WeaponCardBase.tscn index 0e178ef..66ba91b 100644 --- a/components/Abstracts/WeaponCardBase.tscn +++ b/components/Abstracts/WeaponCardBase.tscn @@ -34,7 +34,7 @@ layout_mode = 2 theme_override_constants/separation = 10 alignment = 1 -[node name="selectBtn" type="Button" parent="container"] +[node name="updateBtn" type="Button" parent="container"] unique_name_in_owner = true layout_mode = 2 theme = ExtResource("2_fwkd3") @@ -82,7 +82,7 @@ quality = 1 unique_name_in_owner = true layout_mode = 2 bbcode_enabled = true -text = "造成[color=cyan]10.0[/color]点伤害。" +text = "[center]造成[color=cyan]10.0[/color]点伤害。[/center]" fit_content = true [node name="costs" type="GridContainer" parent="container"] diff --git a/components/Weapons/BigLaser.tscn b/components/Weapons/BigLaser.tscn index 9390708..496f03e 100644 --- a/components/Weapons/BigLaser.tscn +++ b/components/Weapons/BigLaser.tscn @@ -1,9 +1,11 @@ -[gd_scene load_steps=3 format=3 uid="uid://cxabqjo7skxev"] +[gd_scene load_steps=4 format=3 uid="uid://cxabqjo7skxev"] [ext_resource type="PackedScene" uid="uid://ckq2cq6m23hq3" path="res://components/Abstracts/WeaponCardBase.tscn" id="1_wrvv5"] +[ext_resource type="Script" path="res://scripts/Contents/Weapons/BigLaser.gd" id="2_gmch0"] [ext_resource type="Texture2D" uid="uid://dy4op6n6vxef3" path="res://resources/bullets/laser-circle/circle.svg" id="2_qe8gb"] [node name="BigLaser" instance=ExtResource("1_wrvv5")] +script = ExtResource("2_gmch0") avatarTexture = ExtResource("2_qe8gb") displayName = "湮灭激光" quality = 2 @@ -16,12 +18,13 @@ store = { } descriptionTemplate = "每$time秒造成$atk点伤害。" needEnergy = 100.0 +cooldown = 6000.0 [node name="avatar" parent="container/info" index="0"] texture = ExtResource("2_qe8gb") [node name="energy" parent="container/info/energyInfo" index="1"] -text = "50.0" +text = "100.0" [node name="name" parent="container/info" index="2"] displayName = "湮灭激光" @@ -29,4 +32,4 @@ quality = 2 typeTopic = 1 [node name="description" parent="container" index="2"] -text = "每[color=cyan]0.1[/color]秒造成[color=cyan]35.0[/color]点伤害。" +text = "[center]每[color=cyan]0.1[/color]秒造成[color=cyan]35.0[/color]点伤害。[/center]" diff --git a/scripts/Contents/Weapons/BigLaser.gd b/scripts/Contents/Weapons/BigLaser.gd new file mode 100644 index 0000000..707028c --- /dev/null +++ b/scripts/Contents/Weapons/BigLaser.gd @@ -0,0 +1,11 @@ +extends Weapon +class_name BigLaserWeapon + +func update(to: int, origin: Dictionary, _entity: EntityBase): + origin["atk"] += 5 * to + origin["time"] /= 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()) + return true diff --git a/scripts/Structs/Weapon.gd b/scripts/Structs/Weapon.gd index 6ff3820..49217d7 100644 --- a/scripts/Structs/Weapon.gd +++ b/scripts/Structs/Weapon.gd @@ -22,12 +22,12 @@ signal selected(applied: bool) @onready var energyLabel: Label = $"%energy" @onready var descriptionLabel: RichTextLabel = $"%description" @onready var costsBox: GridContainer = $"%costs" -@onready var selectButton: Button = $"%selectBtn" +@onready var updateButton: Button = $"%updateBtn" var cooldownTimer = CooldownTimer.new() func _ready(): - selectButton.pressed.connect( + updateButton.pressed.connect( func(): apply(UIState.player) )