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

feat(子弹系统): 更新激光子弹效果和属性

- 将BigLaser的父场景从LaserCommoner改为LaserSummoner
- 增加激光震动强度从100到150
- 移除succeedToHit方法的伤害加成效果
- 更新激光粒子效果和材质参数
- 修改水杯和蛋糕的字段属性
- 优化调试组件FeedHasField的目标字段
- 更新激光圆圈SVG资源
This commit is contained in:
2025-08-29 09:17:15 +08:00
parent b7a1b0bd18
commit 174f24e3fe
8 changed files with 20 additions and 23 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://ltqx7fyovhla"]
[ext_resource type="PackedScene" uid="uid://8gjjfju6p3fh" path="res://components/Bullets/Common/LaserCommoner.tscn" id="1_ukbip"]
[ext_resource type="PackedScene" uid="uid://8gjjfju6p3fh" path="res://components/Bullets/Common/LaserSummoner.tscn" id="1_ukbip"]
[node name="BigLaser" instance=ExtResource("1_ukbip")]
needEnergy = 100.0
@@ -1,18 +1,18 @@
[gd_scene load_steps=18 format=3 uid="uid://8gjjfju6p3fh"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_f67dy"]
[ext_resource type="Script" path="res://scripts/Contents/Bullets/BigLaser.gd" id="2_tdbxh"]
[ext_resource type="Shader" path="res://shaders/BigLaser1.gdshader" id="3_km2v1"]
[ext_resource type="Texture2D" uid="uid://dy4op6n6vxef3" path="res://resources/bullets/laser-circle/circle.svg" id="4_rs8hf"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_pnxoq"]
[ext_resource type="Script" path="res://scripts/Contents/Bullets/BigLaser.gd" id="2_nk2p8"]
[ext_resource type="Shader" path="res://shaders/BigLaser1.gdshader" id="3_ow2gn"]
[ext_resource type="Texture2D" uid="uid://dy4op6n6vxef3" path="res://resources/bullets/laser-circle/circle.svg" id="4_sewyb"]
[sub_resource type="SpriteFrames" id="SpriteFrames_yip5k"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_b2oy8"]
shader = ExtResource("3_km2v1")
shader = ExtResource("3_ow2gn")
shader_parameter/laser_color = Color(1, 0, 0, 1)
shader_parameter/width = 1.0
shader_parameter/softness = 0.2
shader_parameter/wave_speed = 2.0
shader_parameter/wave_speed = 3.0
shader_parameter/wave_frequency = 13.154
shader_parameter/wave_amplitude = 1.151
shader_parameter/wave_width = 0.032
@@ -157,7 +157,7 @@ tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 12.5664, -0.25, 0, 0.25, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 25.1327, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 5)
}
tracks/3/type = "bezier"
@@ -204,8 +204,8 @@ _data = {
radius = 40.0
height = 2000.0
[node name="LaserSummoner" instance=ExtResource("1_f67dy")]
script = ExtResource("2_tdbxh")
[node name="LaserSummoner" instance=ExtResource("1_pnxoq")]
script = ExtResource("2_nk2p8")
fields = {
0: 0,
1: 25,
@@ -220,9 +220,8 @@ sprite_frames = SubResource("SpriteFrames_yip5k")
[node name="rect" type="ColorRect" parent="texture" index="0"]
material = SubResource("ShaderMaterial_b2oy8")
offset_left = 233.0
offset_top = 50.0
offset_right = 333.0
offset_bottom = 2050.0
offset_bottom = 2000.0
rotation = -1.5708
scale = Vector2(1e-05, 1)
@@ -247,7 +246,7 @@ libraries = {
[node name="circle" type="Sprite2D" parent="texture" index="2"]
modulate = Color(1, 1, 1, 0)
scale = Vector2(1e-05, 1e-05)
texture = ExtResource("4_rs8hf")
texture = ExtResource("4_sewyb")
[node name="hitbox" parent="." index="1"]
visible = false
+1 -1
View File
@@ -5,5 +5,5 @@
[node name="FeedHasField" type="HBoxContainer"]
theme_override_constants/separation = 0
script = ExtResource("1_7leag")
targetFields = Array[int]([17])
targetFields = Array[int]([7])
clickToRefresh = true
+2 -2
View File
@@ -6,8 +6,8 @@
[node name="Cupcake" instance=ExtResource("1_x5oju")]
avatarTexture = ExtResource("2_qojf3")
displayName = "烘焙松糕"
fields = Array[int]([12, 2])
fieldValues = Array[float]([0.15, 0.1])
fields = Array[int]([12, 2, 5])
fieldValues = Array[float]([0.15, 0.1, 0.05])
costs = Array[int]([0])
costCounts = Array[int]([125])
+2 -2
View File
@@ -7,8 +7,8 @@
avatarTexture = ExtResource("2_gsfud")
displayName = "水杯"
quality = 4
fields = Array[int]([3])
fieldValues = Array[float]([0.25])
fields = Array[int]([3, 7])
fieldValues = Array[float]([0.25, 3.0])
costs = Array[int]([1])
costCounts = Array[int]([400])
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 14 KiB

+1 -3
View File
@@ -2,7 +2,7 @@ extends BulletBase
class_name BigLaser # 这个子弹是玩家的超级武器,耗能高,dps也高
func spawn():
CameraManager.shake(5000, 100) # 激光会运行5秒,期间震屏100强度
CameraManager.shake(5000, 150) # 激光会运行5秒5000毫秒),期间震屏超高强度
CameraManager.playAnimation("bigLaser")
fields[FieldStore.Bullet.DAMAGE] *= launcher.fields[FieldStore.Entity.ATTACK_SPEED]
func ai():
@@ -14,5 +14,3 @@ func applyDot():
hitbox.disabled = false
await TickTool.millseconds(100 / launcher.fields[FieldStore.Entity.ATTACK_SPEED])
return true
func succeedToHit(_dmg: float):
fields[FieldStore.Bullet.DAMAGE] *= 1.03
+1 -1
View File
@@ -24,7 +24,7 @@ func rebuild():
i.queue_free()
var files = DirTool.listdir("res://components/Feeds/")
for file in files:
var passed: bool
var passed: bool = true
var feed = load(file).instantiate() as Feed
for targetField in targetFields:
var haveThis = false