mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-07-01 15:52:30 +08:00
refactor(Feed): 重构Feed信息重建逻辑并调整游戏数值
将Feed的信息重建逻辑提取为rebuildInfo方法以便复用 调整Puffs.tscn中fieldValues的数值从0.075改为7.5 降低敌人每波生命值增长比例从0.1改为0.075 修改World.tscn中动画轨道的中间点数值
This commit is contained in:
@@ -8,7 +8,7 @@ avatarTexture = ExtResource("2_p35iw")
|
|||||||
displayName = "奶酪泡芙"
|
displayName = "奶酪泡芙"
|
||||||
quality = 3
|
quality = 3
|
||||||
fields = Array[int]([10, 5, 13])
|
fields = Array[int]([10, 5, 13])
|
||||||
fieldValues = Array[float]([0.06, 0.12, 0.075])
|
fieldValues = Array[float]([0.06, 0.12, 7.5])
|
||||||
costs = Array[int]([0, 1])
|
costs = Array[int]([0, 1])
|
||||||
costCounts = Array[int]([250, 100])
|
costCounts = Array[int]([250, 100])
|
||||||
|
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ tracks/0/interp = 1
|
|||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
"handle_modes": PackedInt32Array(0, 0, 0),
|
"handle_modes": PackedInt32Array(0, 0, 0),
|
||||||
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0, 2, -0.25, 0, 0.25, 0, 1, -0.25, 0, 0.25, 0),
|
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0, 1.5, -0.25, 0, 0.25, 0, 1, -0.25, 0, 0.25, 0),
|
||||||
"times": PackedFloat32Array(0, 0.5, 3)
|
"times": PackedFloat32Array(0, 0.5, 3)
|
||||||
}
|
}
|
||||||
tracks/1/type = "bezier"
|
tracks/1/type = "bezier"
|
||||||
@@ -54,7 +54,7 @@ tracks/1/interp = 1
|
|||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
"handle_modes": PackedInt32Array(0, 0, 0),
|
"handle_modes": PackedInt32Array(0, 0, 0),
|
||||||
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0, 2, -0.25, 0, 0.25, 0, 1, -0.25, 0, 0.25, 0),
|
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0, 1.5, -0.25, 0, 0.25, 0, 1, -0.25, 0, 0.25, 0),
|
||||||
"times": PackedFloat32Array(0, 0.5, 3)
|
"times": PackedFloat32Array(0, 0.5, 3)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -68,6 +68,8 @@ func generateCardByQuality():
|
|||||||
var result = []
|
var result = []
|
||||||
for i in range(UIState.player.fields[FieldStore.Entity.FEED_COUNT_SHOW]):
|
for i in range(UIState.player.fields[FieldStore.Entity.FEED_COUNT_SHOW]):
|
||||||
feeds.shuffle()
|
feeds.shuffle()
|
||||||
result.append(avaliableFeeds.get_children()[feeds[0]])
|
var feed = avaliableFeeds.get_children()[feeds[0]] as Feed
|
||||||
|
feed.rebuildInfo()
|
||||||
|
result.append(feed)
|
||||||
feeds = ArrayTool.removeAll(feeds, feeds[0])
|
feeds = ArrayTool.removeAll(feeds, feeds[0])
|
||||||
return result
|
return result
|
||||||
|
|||||||
+27
-25
@@ -23,31 +23,7 @@ func _ready():
|
|||||||
func():
|
func():
|
||||||
apply(UIState.player)
|
apply(UIState.player)
|
||||||
)
|
)
|
||||||
avatarRect.texture = avatarTexture
|
rebuildInfo()
|
||||||
nameLabel.displayName = displayName
|
|
||||||
nameLabel.quality = quality
|
|
||||||
for i in fieldsBox.get_children():
|
|
||||||
i.queue_free()
|
|
||||||
var noField = true
|
|
||||||
for i in range(min(fields.size(), fieldValues.size())):
|
|
||||||
noField = false
|
|
||||||
var field = fields[i]
|
|
||||||
var value = fieldValues[i]
|
|
||||||
var fieldShow: FieldShow = preload("res://components/UI/FieldShow.tscn").instantiate()
|
|
||||||
fieldShow.field = field
|
|
||||||
fieldShow.value = value
|
|
||||||
fieldsBox.add_child(fieldShow)
|
|
||||||
if noField:
|
|
||||||
fieldsBox.add_child(QuickUI.smallText("无词条"))
|
|
||||||
for i in costsBox.get_children():
|
|
||||||
i.queue_free()
|
|
||||||
for i in range(min(costs.size(), costCounts.size())):
|
|
||||||
var cost = costs[i]
|
|
||||||
var count = costCounts[i]
|
|
||||||
var costShow: ItemShow = preload("res://components/UI/ItemShow.tscn").instantiate()
|
|
||||||
costShow.type = cost
|
|
||||||
costShow.count = int(count * multipiler())
|
|
||||||
costsBox.add_child(costShow)
|
|
||||||
|
|
||||||
func allHad(entity: EntityBase) -> bool:
|
func allHad(entity: EntityBase) -> bool:
|
||||||
var allHave = true
|
var allHave = true
|
||||||
@@ -80,3 +56,29 @@ func multipiler() -> float:
|
|||||||
return 1 - UIState.player.fields.get(FieldStore.Entity.PRICE_REDUCTION)
|
return 1 - UIState.player.fields.get(FieldStore.Entity.PRICE_REDUCTION)
|
||||||
else:
|
else:
|
||||||
return 1
|
return 1
|
||||||
|
func rebuildInfo():
|
||||||
|
avatarRect.texture = avatarTexture
|
||||||
|
nameLabel.displayName = displayName
|
||||||
|
nameLabel.quality = quality
|
||||||
|
for i in fieldsBox.get_children():
|
||||||
|
i.queue_free()
|
||||||
|
var noField = true
|
||||||
|
for i in range(min(fields.size(), fieldValues.size())):
|
||||||
|
noField = false
|
||||||
|
var field = fields[i]
|
||||||
|
var value = fieldValues[i]
|
||||||
|
var fieldShow: FieldShow = preload("res://components/UI/FieldShow.tscn").instantiate()
|
||||||
|
fieldShow.field = field
|
||||||
|
fieldShow.value = value
|
||||||
|
fieldsBox.add_child(fieldShow)
|
||||||
|
if noField:
|
||||||
|
fieldsBox.add_child(QuickUI.smallText("无词条"))
|
||||||
|
for i in costsBox.get_children():
|
||||||
|
i.queue_free()
|
||||||
|
for i in range(min(costs.size(), costCounts.size())):
|
||||||
|
var cost = costs[i]
|
||||||
|
var count = costCounts[i]
|
||||||
|
var costShow: ItemShow = preload("res://components/UI/ItemShow.tscn").instantiate()
|
||||||
|
costShow.type = cost
|
||||||
|
costShow.count = int(count * multipiler())
|
||||||
|
costsBox.add_child(costShow)
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ static var refreshCountIncreasePercent: Vector2 = Vector2(0.2, 0.75) # 刷新所
|
|||||||
static var entityCountBoostPerWave: float = 0.1 # 每波敌人数量增加的百分比,倍数级
|
static var entityCountBoostPerWave: float = 0.1 # 每波敌人数量增加的百分比,倍数级
|
||||||
static var itemShowStayTime: int = 1500 # 物品展示组件如果设置了自动隐藏,那么隐藏前可以存活的时间
|
static var itemShowStayTime: int = 1500 # 物品展示组件如果设置了自动隐藏,那么隐藏前可以存活的时间
|
||||||
static var tipSpawnRateWhenGetDroppedItem: float = 0.25 # 当玩家获取到掉落物时,提示的概率
|
static var tipSpawnRateWhenGetDroppedItem: float = 0.25 # 当玩家获取到掉落物时,提示的概率
|
||||||
static var entityHealthIncreasePerWave: float = 0.1 # 每波敌人生命值增加的百分比,指数级
|
static var entityHealthIncreasePerWave: float = 0.075 # 每波敌人生命值增加的百分比,指数级
|
||||||
static var entityDamageIncreasePerWave: float = 0.05 # 每波敌人伤害增加的百分比,指数级
|
static var entityDamageIncreasePerWave: float = 0.05 # 每波敌人伤害增加的百分比,指数级
|
||||||
static var entityLevelOffsetByWave: float = 0.3 # 每波敌人等级根据当前波数随机浮动的比例
|
static var entityLevelOffsetByWave: float = 0.3 # 每波敌人等级根据当前波数随机浮动的比例
|
||||||
static var appleDropRateInfluenceByLuckValue: float = 0.02 # 幸运值对苹果掉率的影响
|
static var appleDropRateInfluenceByLuckValue: float = 0.02 # 幸运值对苹果掉率的影响
|
||||||
|
|||||||
Reference in New Issue
Block a user