feat(boss-effect): 统一处理参数类型转换,提升数值比较与运算准确性
对多个 boss 技能效果文件中的参数调用进行了统一调整,将原先直接使用 `e.Args()[index]` 的地方, 改为通过 `e.Args()[index].IntPart()` 或 `e.Args()[index]` 进行类型转换后再参与逻辑判断或数值计算。 同时修正了部分 HP 比较方式,由整型比较转为 decimal
This commit is contained in:
@@ -4,6 +4,8 @@ import (
|
||||
"blazing/logic/service/fight/info"
|
||||
"blazing/logic/service/fight/input"
|
||||
"sync"
|
||||
|
||||
"github.com/alpacahq/alpacadecimal"
|
||||
)
|
||||
|
||||
// 检查,激活,延后
|
||||
@@ -97,9 +99,15 @@ func (e *EffectNode) SetArgs(t *input.Input, a ...int) {
|
||||
e.SideEffectArgs = a
|
||||
|
||||
}
|
||||
func (e *EffectNode) Args() []int {
|
||||
func (e *EffectNode) Args() []alpacadecimal.Decimal {
|
||||
var ret []alpacadecimal.Decimal
|
||||
|
||||
return e.SideEffectArgs
|
||||
for _, v := range e.SideEffectArgs {
|
||||
ret = append(ret, alpacadecimal.NewFromInt(int64(v)))
|
||||
|
||||
}
|
||||
|
||||
return ret
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user