#Entity Conversion (e.g. villager curing)

26 messages · Page 1 of 1 (latest)

frozen wind
#
onEvent('item.entity_interact', event => {
  if(event.target.potionEffects.isActive('minecraft:weakness') == true && event.item.id == 'minecraft:golden_apple'){
    let p = event.player
    let target = event.target
    if(target.type == 'minecraft:zombified_piglin' || target.type == 'minecraft:zoglin' || target.type == 'minecraft:vex'){
      p.playSound("minecraft:entity.zombie_villager.cure",1,1)
      p.swingArm("MAIN_HAND")
      event.item.count--
      target.persistentData.convert = 6000
      target.potionEffects.clear()
      target.potionEffects.add('minecraft:strength', 6000)
    }
  }
})

function EntityConvert(event,target){
  let convertedEntity = ``
  if(target.type == 'minecraft:zombified_piglin'){
    convertedEntity = event.level.createEntity("minecraft:piglin")
    convertedEntity.mergeFullNBT(`{IsImmuneToZombification:1b}`)
  } else if (target.type == 'minecraft:zoglin') {
    convertedEntity = event.level.createEntity("minecraft:hoglin")
    convertedEntity.mergeFullNBT(`{IsImmuneToZombification:1b}`)
  } else if (target.type == 'minecraft:vex') {
    convertedEntity = event.level.createEntity("wildbackport:allay")
  }
  convertedEntity.x = target.x
  convertedEntity.y = target.y
  convertedEntity.z = target.z
  convertedEntity.mergeFullNBT(`{Rotation:${target.getFullNBT().Rotation},ActiveEffects:[{Id:9,Amplifier:0b,Duration:100}]}`)
  convertedEntity.spawn()
  if(target.ridingEntity){
    let boat = target.ridingEntity
    target.dismountRidingEntity()
    convertedEntity.startRiding(boat,true)
  }
  target.setPosition(target.x,-100,target.z)
  e.playSound("minecraft:entity.zombie_villager.converted",1,1)
}

onEvent('level.tick', event => {
  event.level.entities.forEach(e => {
     if(e.persistentData.convert == 0){
      e.persistentData.convert--
      EntityConvert(event,e)
    } else if(e.persistentData.convert > 0){
      e.persistentData.convert--
    }
  })
})
sharp beacon
#

was this why you were asking about shaking :p

frozen wind
#

yea

#

I only missing that part

#

I used TicksFrozen nbt to shaking, but some mods removes that from pigmen

sharp beacon
#

seems like the shaking is a special renderer for the zombie villager

frozen wind
#

striders also shake too when they're out of lava

frozen wind
#

I think that would be renderer too

sharp beacon
#

again special render

frozen wind
#

yea

sharp beacon
#

give them glow effect on and off 😛

lost widget
#

dont skeletons shake in powered snow

#

and piglins when in overowrld?

#

idk maybe not tho

frozen wind
#

They are also renderer thingy

lost widget
#

yeah ig

#

wait you could possibly do it

#

its in livingentityrenderer

#

ok nvm its protected

#

but you could theoretically do it for all these mobs