mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-06-10 13:47:12 +08:00
feat: 添加团子猫饲料和能量系统改进
- 新增团子猫饲料资源及配置 - 扩展FieldStore枚举添加节能和能量再生效率 - 改进EntityBase能量存储和使用逻辑 - 添加WorldManager运行时间追踪功能
This commit is contained in:
@@ -26,13 +26,17 @@ var fields = {
|
||||
FieldStore.Entity.DROP_APPLE_RATE: 0,
|
||||
FieldStore.Entity.PENARATION_RESISTANCE: 0,
|
||||
FieldStore.Entity.LUCK_VALUE: 1,
|
||||
# 倍率
|
||||
# 治疗
|
||||
FieldStore.Entity.HEAL_ABILITY: 1,
|
||||
FieldStore.Entity.ENERGY_MULTIPILER: 1,
|
||||
# 价格减免
|
||||
FieldStore.Entity.PRICE_REDUCTION: 0,
|
||||
# 饲料
|
||||
FieldStore.Entity.FEED_COUNT_SHOW: 3,
|
||||
FieldStore.Entity.FEED_COUNT_CAN_MADE: 1,
|
||||
# 储能
|
||||
FieldStore.Entity.ENERGY_MULTIPILER: 1,
|
||||
FieldStore.Entity.SAVE_ENERGY: 1,
|
||||
FieldStore.Entity.ENERGY_REGENERATION: 1,
|
||||
}
|
||||
var inventory = {
|
||||
ItemStore.ItemType.BASEBALL: 100,
|
||||
@@ -42,7 +46,7 @@ var inventory = {
|
||||
var inventoryMax = {
|
||||
ItemStore.ItemType.BASEBALL: INF, # 无限
|
||||
ItemStore.ItemType.BASKETBALL: INF,
|
||||
ItemStore.ItemType.APPLE: 10, # 最多10个苹果
|
||||
ItemStore.ItemType.APPLE: 5, # 最多5个苹果
|
||||
}
|
||||
|
||||
@export var cooldownUnit: float = 100 # 100毫秒每次攻击
|
||||
@@ -121,7 +125,7 @@ func _physics_process(_delta: float) -> void:
|
||||
if isPlayer() or is_instance_valid(currentFocusedBoss):
|
||||
ai()
|
||||
move_and_slide()
|
||||
storeEnergy(0.01)
|
||||
storeEnergy(0.01 * fields.get(FieldStore.Entity.ENERGY_REGENERATION))
|
||||
|
||||
# 通用方法
|
||||
func applyLevel():
|
||||
@@ -165,6 +169,7 @@ func storeEnergy(value: float):
|
||||
energy += value * fields.get(FieldStore.Entity.ENERGY_MULTIPILER)
|
||||
energyChanged.emit(energy)
|
||||
func useEnergy(value: float):
|
||||
value /= fields.get(FieldStore.Entity.SAVE_ENERGY)
|
||||
var state = energy >= value
|
||||
if state:
|
||||
energy -= value
|
||||
|
||||
@@ -26,6 +26,8 @@ enum Entity {
|
||||
FEED_COUNT_CAN_MADE,
|
||||
MAX_ENERGY,
|
||||
LUCK_VALUE,
|
||||
SAVE_ENERGY,
|
||||
ENERGY_REGENERATION,
|
||||
}
|
||||
static var entityMap = {
|
||||
Entity.MAX_HEALTH: "生命上限",
|
||||
@@ -38,7 +40,7 @@ static var entityMap = {
|
||||
Entity.OFFSET_SHOOT: "散射角",
|
||||
Entity.HEAL_ABILITY: "治疗量",
|
||||
Entity.EXTRA_APPLE_MAX: "苹果上限",
|
||||
Entity.ENERGY_MULTIPILER: "能量倍率",
|
||||
Entity.ENERGY_MULTIPILER: "储能倍率",
|
||||
Entity.PENARATION_RESISTANCE: "穿透抗性",
|
||||
Entity.PRICE_REDUCTION: "饲料降价",
|
||||
Entity.EXTRA_BULLET_COUNT: "额外子弹",
|
||||
@@ -47,6 +49,8 @@ static var entityMap = {
|
||||
Entity.FEED_COUNT_CAN_MADE: "可制作饲料",
|
||||
Entity.MAX_ENERGY: "能量上限",
|
||||
Entity.LUCK_VALUE: "幸运值",
|
||||
Entity.SAVE_ENERGY: "节能",
|
||||
Entity.ENERGY_REGENERATION: "能量再生效率",
|
||||
}
|
||||
static var entityMapType = {
|
||||
Entity.MAX_HEALTH: DataType.VALUE,
|
||||
@@ -68,6 +72,8 @@ static var entityMapType = {
|
||||
Entity.FEED_COUNT_CAN_MADE: DataType.VALUE,
|
||||
Entity.MAX_ENERGY: DataType.VALUE,
|
||||
Entity.LUCK_VALUE: DataType.VALUE,
|
||||
Entity.SAVE_ENERGY: DataType.PERCENT,
|
||||
Entity.ENERGY_REGENERATION: DataType.PERCENT,
|
||||
}
|
||||
static var entityMaxValueMap = {
|
||||
Entity.CRIT_RATE: 1,
|
||||
|
||||
@@ -3,10 +3,15 @@ class_name WorldManager
|
||||
|
||||
static var rootNode: Node2D
|
||||
static var tree: SceneTree
|
||||
static var runningTime: float = 0
|
||||
|
||||
func _ready():
|
||||
tree = get_tree()
|
||||
rootNode = self
|
||||
func _physics_process(_delta):
|
||||
func _physics_process(delta):
|
||||
runningTime += delta
|
||||
if EntityBase.mobCount() == 0:
|
||||
UIState.setPanel("MakeFeed")
|
||||
|
||||
static func getTime():
|
||||
return runningTime
|
||||
|
||||
Reference in New Issue
Block a user