我的世界Wound 配置方法
Config
常规
#玩家能受到最大外伤,默认16
#范围: 0.0 ~ 1.7976931348623157E308
MaxWound = 16.0
#有多少伤害会转化为外伤,默认25%
#范围: 0.0 ~ 1.0
WoundRate = 0.25
#玩家每tick能自然恢复外伤,默认3.0E-5
#范围: 0.0 ~ 1.7976931348623157E308
NatureHeal = 3.0E-5
#重型护盾默认在伤害达到多少时触发,默认20
#Range: 0.0 ~ 1.7976931348623157E308
ShieldProtect = 20.0
难度
#在不同难度下玩家获得的外伤抗性
Peaceful = 1.0
Easy = 0.9
Normal = 0.5
Hard = 0.2
HardcoreMode = 0.0
伤害源
#以下哪些伤害源会造成外伤
Player = false
Mob = true
Fire = true
Explosion = true
Fall = false
Magic = true
Drown = false
Other = true
CraftTweaker
给 crafttweaker.api.player.MCPlayerEntity 拓展了方法,详见下表:
方法名 | 返回值 | 说明 |
---|---|---|
getWound() | float | 获得玩家当前外伤 |
setWound(float value) | void | 设置玩家外伤 |
setWoundResistance(float value) | void | 设置玩家独立外伤抗性 |
getCapWoundResistance() | float | 获取玩家独立外伤抗性 |
getWoundResistance() | float | 获取玩家总外伤抗性 |
Java
添加依赖:我什么时候能有自己的maven库啊
repositories {
maven {url = "https://www.cursemaven.com"}
}
implementation fg.deobf("curse.maven:wound-811591:4346893")
玩家 Cap:
public interface IWound {
//获取玩家外伤
float getWound();
//设置玩家外伤
void setWound(float value);
//自然恢复外伤(在PlayerTick使用)
void healWound();
//增加玩家外伤
void addWound(float value);
//获得玩家独立外伤抗性
float getWoundResistance();
//设置玩家独立外伤抗性
void setWoundResistance(float value);
}
获取 Cap:
PlayerEntity#getCapability(ModCapability.WOUND).ifPresent(c -> {
...
});