witherlord00
Members-
Posts
35 -
Joined
-
Last visited
Converted
-
Gender
Undisclosed
-
Personal Text
Meow mew
witherlord00's Achievements
Tree Puncher (2/8)
0
Reputation
-
Hi! I am wondering how I would go about creating a singularity type entity to spawn and suck the player in right after an explosion? Got the explosion part done just would love an idea on how the singularity could be done?? I have not attempted this yet, because I was curious of what everyone on here would say, but I would like for it to be the same type of explosion as the Mana Creeper from Ars Magica. Minecraft Version 1.12.2 Forge Version: 1.12.2 - 14.23.5.2768
-
package mod.teamfusion.fuziongearz.entities.models; import javax.annotation.Nullable; import mod.teamfusion.fuziongearz.init.FusionBlocks; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityCreature; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.ai.EntityAIAttackMelee; import net.minecraft.entity.ai.EntityAIHurtByTarget; import net.minecraft.entity.ai.EntityAILookIdle; import net.minecraft.entity.ai.EntityAIMoveThroughVillage; import net.minecraft.entity.ai.EntityAIMoveTowardsRestriction; import net.minecraft.entity.ai.EntityAIMoveTowardsTarget; import net.minecraft.entity.ai.EntityAINearestAttackableTarget; import net.minecraft.entity.ai.EntityAISwimming; import net.minecraft.entity.ai.EntityAIWander; import net.minecraft.entity.ai.EntityAIWanderAvoidWater; import net.minecraft.entity.ai.EntityAIWatchClosest; import net.minecraft.entity.ai.EntityAIZombieAttack; import net.minecraft.entity.item.EntityXPOrb; import net.minecraft.entity.monster.EntityBlaze; import net.minecraft.entity.monster.EntityGuardian; import net.minecraft.entity.monster.EntityIronGolem; import net.minecraft.entity.monster.EntityMob; import net.minecraft.entity.monster.EntityPigZombie; import net.minecraft.entity.monster.EntitySnowman; import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.init.SoundEvents; import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.DamageSource; import net.minecraft.util.EntityDamageSourceIndirect; import net.minecraft.util.EnumParticleTypes; import net.minecraft.util.ResourceLocation; import net.minecraft.util.SoundEvent; import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.MathHelper; import net.minecraft.world.BossInfo; import net.minecraft.world.BossInfoServer; import net.minecraft.world.World; import net.minecraft.world.storage.loot.LootTableList; import net.minecraftforge.event.entity.living.LivingDeathEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; public class EntityEarthPaladin extends EntityMob { public EntityEarthPaladin(World p_i1738_1_) { super(p_i1738_1_); //width //height this.setSize(0.9F, 1.9F); } @Override protected void initEntityAI() { this.tasks.addTask(6, new EntityAIWanderAvoidWater(this, 1.0D)); this.tasks.addTask(2, new EntityAIAttackMelee(this, 1.0D, false)); this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F)); this.tasks.addTask(8, new EntityAILookIdle(this)); this.tasks.addTask(7, new EntityAIWander(this, 1.0D)); this.tasks.addTask(2, new EntityAIMoveTowardsTarget(this, 0.9D, 32.0F)); this.applyEntityAI();} public static final ResourceLocation LOOT_TABLE = new ResourceLocation("fusiongears" + ":" + "earth_paladin"); private void applyEntityAI(){ this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true)); } @Override protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(200.0D); this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); this.getEntityAttribute(SharedMonsterAttributes.KNOCKBACK_RESISTANCE).setBaseValue(2.0D); } public boolean attackEntityAsMob(Entity entityIn) { this.world.setEntityState(this, (byte)4); boolean flag = entityIn.attackEntityFrom(DamageSource.causeMobDamage(this), (float)(7 + this.rand.nextInt(15))); this.playSound(SoundEvents.ENTITY_PLAYER_ATTACK_SWEEP, 1.0F, 1.0F); return flag; } protected SoundEvent getHurtSound() { return SoundEvents.ITEM_SHIELD_BLOCK; } protected SoundEvent getDeathSound() { return SoundEvents.ITEM_SHIELD_BREAK; } protected void playStepSound(BlockPos pos, Block blockIn) { this.playSound(SoundEvents.ENTITY_IRONGOLEM_STEP, 1.0F, 1.0F); } @Override public boolean attackEntityFrom(DamageSource source, float damage) { if (source instanceof EntityDamageSourceIndirect) return false; return super.attackEntityFrom(source, damage); } @Override public int getTotalArmorValue() { return 10;} @Override protected ResourceLocation getLootTable() { return LOOT_TABLE; } } EntityEarthPaladin Class^^^ package mod.teamfusion.fuziongearz.entities.models; import mod.teamfusion.fuziongearz.Main; import net.minecraft.entity.EnumCreatureType; import net.minecraft.init.Biomes; import net.minecraft.util.ResourceLocation; import net.minecraft.world.storage.loot.LootTableList; import net.minecraftforge.fml.client.registry.RenderingRegistry; import net.minecraftforge.fml.common.registry.EntityRegistry; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; public class ModEntities { public static void init() { int id = 1;//primary secondary EntityRegistry.registerModEntity(new ResourceLocation("fusiongears" + ":" + "earth_paladin"),EntityEarthPaladin.class, "earth_paladin", id++, Main.instance, 64, 3, true, 0x3CFF00, 0x33CC00);//real egg colors- 0x3CFF00 by 0x33CC00 EntityRegistry.registerModEntity(new ResourceLocation("fusiongears" + ":" + "fire_paladin"),EntityFirePaladin.class, "fire_paladin", id++, Main.instance, 64, 3, true, 0xEF7C38, 0xBC6E2F);//real egg colors- 0xEF7C38, 0xBC6E2F EntityRegistry.registerModEntity(new ResourceLocation("fusiongears" + ":" + "water_paladin"),EntityWaterPaladin.class, "water_paladin", id++, Main.instance, 64, 3, true, 0x388DEF, 0x2F65BC);//real egg colors-0x388DEF, 0x2F65BC EntityRegistry.registerModEntity(new ResourceLocation("fusiongears" + ":" + "air_paladin"),EntityAirPaladin.class, "air_paladin", id++, Main.instance, 64, 3, true, 0xA4A4A4, 0x838383);//real egg colors- 0xA4A4A4, 0x838383 } @SideOnly(Side.CLIENT) public static void initModels() { RenderingRegistry.registerEntityRenderingHandler(EntityEarthPaladin.class, RenderEarthPaladin.FACTORY); RenderingRegistry.registerEntityRenderingHandler(EntityFirePaladin.class, RenderFirePaladin.FACTORY); RenderingRegistry.registerEntityRenderingHandler(EntityWaterPaladin.class, RenderWaterPaladin.FACTORY); RenderingRegistry.registerEntityRenderingHandler(EntityAirPaladin.class, RenderAirPaladin.FACTORY); } } ModEntities(registry class)
-
package mod.teamfusion.fuziongearz.items; import mod.teamfusion.fuziongearz.entities.models.EntityAirPaladin; import mod.teamfusion.fuziongearz.entities.models.EntityEarthPaladin; import mod.teamfusion.fuziongearz.entities.models.EntityFirePaladin; import mod.teamfusion.fuziongearz.entities.models.EntityWaterPaladin; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityList; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.monster.EntityCreeper; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityEgg; import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.ActionResult; import net.minecraft.util.EnumActionResult; import net.minecraft.util.EnumHand; import net.minecraft.util.math.MathHelper; import net.minecraft.world.World; public class ItemElementsCall extends BasicItem { public ItemElementsCall() { super("element_caller"); } @Override public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn, int x, int y, int z) { ItemStack itemstack = playerIn.getHeldItem(handIn); if (!worldIn.isRemote) { EntityEarthPaladin entity = new EntityEarthPaladin (worldIn); entity.setPosition(x, y, z); worldIn.spawnEntity(entity); } return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, itemstack);} }
-
This still not be working package mod.teamfusion.fuziongearz.items; import mod.teamfusion.fuziongearz.entities.models.EntityAirPaladin; import mod.teamfusion.fuziongearz.entities.models.EntityEarthPaladin; import mod.teamfusion.fuziongearz.entities.models.EntityFirePaladin; import mod.teamfusion.fuziongearz.entities.models.EntityWaterPaladin; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityList; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.monster.EntityCreeper; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityEgg; import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.ActionResult; import net.minecraft.util.EnumActionResult; import net.minecraft.util.EnumHand; import net.minecraft.util.math.MathHelper; import net.minecraft.world.World; public class ItemElementsCall extends BasicItem { public ItemElementsCall() { super("element_caller"); } public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn, int x, int y, int z) { ItemStack itemstack = playerIn.getHeldItem(handIn); if (!worldIn.isRemote) { EntityEarthPaladin entity = new EntityEarthPaladin (worldIn); worldIn.spawnEntity(entity); entity.setPosition(x, y, z); } return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, itemstack);} } I think it's missing something.
-
Alright guys one more problem don't get tired of me just yet. I have a problem with an item and I am wanting to spawn a Mob or Entity from said Item, but it ain't quite working. I used the Egg item's class as a base but I am sure I am missing a detail or two... The code as presented- package mod.teamfusion.fuziongearz.items; import mod.teamfusion.fuziongearz.entities.models.EntityAirPaladin; import mod.teamfusion.fuziongearz.entities.models.EntityEarthPaladin; import mod.teamfusion.fuziongearz.entities.models.EntityFirePaladin; import mod.teamfusion.fuziongearz.entities.models.EntityWaterPaladin; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityList; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.monster.EntityCreeper; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityEgg; import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.ActionResult; import net.minecraft.util.EnumActionResult; import net.minecraft.util.EnumHand; import net.minecraft.util.math.MathHelper; import net.minecraft.world.World; public class ItemElementsCall extends BasicItem { public ItemElementsCall() { super("element_caller"); } @Override public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn) { ItemStack itemstack = playerIn.getHeldItem(handIn); if (!worldIn.isRemote) { EntityEarthPaladin entity = new EntityEarthPaladin(worldIn); worldIn.spawnEntity(entity); } return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, itemstack);} }