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

fix(武器): 调整DaoStatue伤害计算逻辑和描述

feat(游戏流程): 添加初始选择界面自动触发开始按钮逻辑
refactor(战斗系统): 分离调试和发布版的波次配置
style(资源): 更新图片导入配置为VRAM压缩格式
chore: 忽略zip文件并修复.gitignore格式
This commit is contained in:
2026-04-05 07:44:04 +08:00
parent b343708b3b
commit 0b97de0fcc
6 changed files with 31 additions and 14 deletions
+1
View File
@@ -1,3 +1,4 @@
.godot
.codebuddy
cvb*
*.zip
+5 -3
View File
@@ -15,7 +15,7 @@ store = {
"atk": 50,
"rate1": 0.05,
"rate2": 0.025,
"rate3": 0.15
"rate3": 0.01
}
storeType = {
"atk": 1,
@@ -28,7 +28,8 @@ descriptionTemplate = "挥出[b]天地之剑[/b],蓄力一段时间后,
攻击速度每降低[color=yellow]1%[/color],伤害+$rate2
每失去[color=yellow]1[/color]点生命值,伤害+$rate1
命中时每拥有[color=yellow]1[/color]层[b]气[/b]伤害+$rate3"
拥有的所有[b]气力[/b]层数之和,每化解[color=yellow]1[/color]点伤害,[b]无量斩[/b]伤害+$rate3
每次攻击都会消耗气力。"
sources = Array[String](["Nine Sols"])
tease = "天机不可泄露"
needEnergy = 50.0
@@ -60,7 +61,8 @@ text = "[center]挥出[b]天地之剑[/b],蓄力一段时间后,
攻击速度每降低[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]"
拥有的所有[b]气力[/b]层数之和,每化解[color=yellow]1[/color]点伤害,[b]无量斩[/b]伤害+[color=cyan]1.0%[/color]
每次攻击都会消耗气力。[/center]"
[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044]
text = "“天机不可泄露”"
@@ -3,19 +3,20 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://b1aq0k7tf1p1"
path="res://.godot/imported/kernyr.jpg-d82cf548a25a07dbd282dd92971a45c3.ctex"
path.s3tc="res://.godot/imported/kernyr.jpg-d82cf548a25a07dbd282dd92971a45c3.s3tc.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://resources/characters/kernyr/kernyr.jpg"
dest_files=["res://.godot/imported/kernyr.jpg-d82cf548a25a07dbd282dd92971a45c3.ctex"]
dest_files=["res://.godot/imported/kernyr.jpg-d82cf548a25a07dbd282dd92971a45c3.s3tc.ctex"]
[params]
compress/mode=0
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
@@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -37,4 +38,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
detect_3d/compress_to=0
@@ -24,6 +24,8 @@ func beforeOpen(_args: Array = []):
if WorldManager.isRelease():
clearWeapons()
title2.hide()
if !title1.visible:
startBtn.pressed.emit()
)
else:
initialFeedSelection.add_child(card)
@@ -32,6 +34,8 @@ func beforeOpen(_args: Array = []):
if WorldManager.isRelease():
clearFeeds()
title1.hide()
if !title2.visible:
startBtn.pressed.emit()
)
func clearFeeds():
+4 -3
View File
@@ -58,10 +58,11 @@ static var WAVE_MOWING = [
Wave.create("MTY", 1, 5, false, 0, INF, 1),
]
static var WAVE_EMPTY = []
static var waveConfig = [WAVE_TESTBOSS_ALL, 1]
static var waveReleaseConfig = [WAVE_TESTBOSS_ALL, 1]
static var waveDebugConfig = [WAVE_MOWING, 1]
static var current: int = startWith(1) if WorldManager.isRelease() else startWith(waveConfig[1])
static var data = WAVE_NORMAL if WorldManager.isRelease() else waveConfig[0]
static var current: int = startWith(waveReleaseConfig[1]) if WorldManager.isRelease() else startWith(waveDebugConfig[1])
static var data = waveReleaseConfig[0] if WorldManager.isRelease() else waveDebugConfig[0]
static func create(
entity_: String,
+9 -1
View File
@@ -8,6 +8,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["rate3"] *= soulLevel
return origin
func attack(entity: EntityBase):
var parryCounter = entity.getOrCreateCycleTimer("parry", 2000, 100)
for bullet in BulletBase.generate(
ComponentManager.getBullet("Wuwei"),
entity,
@@ -18,5 +19,12 @@ func attack(entity: EntityBase):
bullet.baseDamage = readStore("atk")
bullet.baseDamage *= max(-0.99, readStore("rate2") * ((1.0 - entity.fields[FieldStore.Entity.ATTACK_SPEED]) * 100)) + 1
bullet.baseDamage *= max(-0.99, readStore("rate1") * (entity.fields[FieldStore.Entity.MAX_HEALTH] - entity.health)) + 1
bullet.baseDamage *= max(-0.99, readStore("rate3") * len(entity.getOrCreateCycleTimer("parry", 2000, 100).bullets)) + 1
var atkAll = 0
for bulle in parryCounter.bullets:
if bulle is ParryBallBullet:
atkAll += bulle.atk
bullet.baseDamage *= max(-0.99, readStore("rate3") * atkAll) + 1
for bulle in parryCounter.bullets:
if bulle is ParryBallBullet:
bulle.tryDestroy()
return true