go_dreamfactory/modules/battle/fight/attribute/healthpoint.go
2022-09-15 15:56:39 +08:00

49 lines
1.0 KiB
Go

package attribute
func NewHealthPoint(pHp *FixedNumeric) *HealthPoint {
return &HealthPoint{
Hp: pHp,
MaxHp: NewAttributeNumeric(pHp.Value()),
CurrMaxHp: NewAttributeNumeric(pHp.Value()),
CurrMaxHpPro: NewAttributeNumeric(0),
CurrMaxHpAppend: NewAttributeNumeric(0),
}
}
/// <summary>
/// 生命值实体
/// </summary>
type HealthPoint struct {
/// <summary>
/// 生命值
/// </summary>
Hp *FixedNumeric
/// <summary>
/// 最大生命值
/// </summary>
MaxHp *AttributeNumeric
/// <summary>
/// 当前最大生命值
/// </summary>
CurrMaxHp *AttributeNumeric
/// <summary>
/// 当前最大生命百分比加成
/// </summary>
CurrMaxHpPro *AttributeNumeric
/// <summary>
/// 当前最大生命加成
/// </summary>
CurrMaxHpAppend *AttributeNumeric
}
func (this *HealthPoint) Value() int32 {
return int32(this.Hp.Value())
}
func (this *HealthPoint) MaxValue() int32 {
return int32(this.CurrMaxHp.Value())
}
func (this *HealthPoint) Minus(value float32) {
this.Hp.Minus(value)
}