Misc code fixes in enforcer code
This commit is contained in:
parent
a9851e08b3
commit
62c05b3c3f
@ -56,6 +56,7 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
.add(Attributes.KNOCKBACK_RESISTANCE, 1.0)
|
||||
.add(Attributes.FOLLOW_RANGE, 32.0)
|
||||
}
|
||||
|
||||
private val IS_CHARGING: EntityDataAccessor<Boolean> =
|
||||
SynchedEntityData.defineId(Enforcer::class.java, EntityDataSerializers.BOOLEAN)
|
||||
}
|
||||
@ -65,13 +66,11 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
builder.define(IS_CHARGING, false)
|
||||
}
|
||||
|
||||
fun setCharging(value: Boolean) {
|
||||
entityData.set(IS_CHARGING, value)
|
||||
}
|
||||
|
||||
fun isCharging(): Boolean {
|
||||
return entityData.get(IS_CHARGING)
|
||||
}
|
||||
var isCharging: Boolean
|
||||
get() = entityData.get(IS_CHARGING)
|
||||
set(value) {
|
||||
entityData.set(IS_CHARGING, value)
|
||||
}
|
||||
|
||||
override fun registerGoals() {
|
||||
goalSelector.addGoal(7, LookAtPlayerGoal(this, Player::class.java, 8f))
|
||||
@ -200,7 +199,7 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
private var target: LivingEntity? = null
|
||||
|
||||
init {
|
||||
setFlags(EnumSet.of(Goal.Flag.MOVE))
|
||||
setFlags(EnumSet.of(Flag.MOVE))
|
||||
}
|
||||
|
||||
private var chargeTime = 0
|
||||
@ -208,8 +207,6 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
private val maxChargeTime = 40
|
||||
private var chargeDir: Vec3? = null
|
||||
private var cooldown = 0
|
||||
private val minCooldown = 35
|
||||
private val maxCooldown = 60
|
||||
private var isCharging = false
|
||||
|
||||
override fun canUse(): Boolean {
|
||||
@ -227,7 +224,7 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
}
|
||||
|
||||
override fun start() {
|
||||
mob.setCharging(true)
|
||||
mob.isCharging = true
|
||||
mob.playSound(MSoundEvents.ENFORCER_ALERT, 1.0f, 1.0f)
|
||||
chargeTime = 0
|
||||
mob.navigation.stop()
|
||||
@ -315,13 +312,18 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
}
|
||||
|
||||
override fun stop() {
|
||||
mob.setCharging(false)
|
||||
mob.setDeltaMovement(Vec3.ZERO)
|
||||
mob.isCharging = false
|
||||
mob.deltaMovement = Vec3.ZERO
|
||||
chargeTime = 0
|
||||
chargeDir = null
|
||||
isCharging = false
|
||||
mob.chargeState.stop()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val minCooldown = 35
|
||||
private const val maxCooldown = 60
|
||||
}
|
||||
}
|
||||
|
||||
class StayNearGoal(private val mob: Enforcer) : Goal() {
|
||||
@ -330,7 +332,7 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
private var movePos: Vec3? = null
|
||||
|
||||
override fun canUse(): Boolean {
|
||||
return mob.target != null && !mob.isCharging()
|
||||
return mob.target != null && !mob.isCharging
|
||||
}
|
||||
|
||||
override fun canContinueToUse(): Boolean {
|
||||
@ -373,11 +375,11 @@ class Enforcer(type: EntityType<Enforcer>, level: Level) : Monster(type,level) {
|
||||
private var fireTick = 0
|
||||
|
||||
init {
|
||||
setFlags(EnumSet.of(Goal.Flag.LOOK))
|
||||
setFlags(EnumSet.of(Flag.LOOK))
|
||||
}
|
||||
|
||||
override fun canUse(): Boolean {
|
||||
return mob.target != null && !mob.isCharging()
|
||||
return mob.target != null && !mob.isCharging
|
||||
}
|
||||
|
||||
override fun canContinueToUse(): Boolean {
|
||||
|
Loading…
Reference in New Issue
Block a user