OSDN Git Service

131bec8e8619f7993f0759ad858a949a661f7e5b
[chemicraft/chemicraft.git] / common / pcc / chemicraft / entity / EntityBlackSmoke.java
1 package pcc.chemicraft.entity;
2
3 import java.util.ArrayList;
4 import java.util.HashMap;
5 import java.util.Iterator;
6
7 import pcc.chemicraft.util.Auxiliary.MathAuxiliary;
8
9 import net.minecraft.entity.Entity;
10 import net.minecraft.entity.EntityLiving;
11 import net.minecraft.entity.monster.EntityMob;
12 import net.minecraft.entity.player.EntityPlayer;
13 import net.minecraft.nbt.NBTTagCompound;
14 import net.minecraft.potion.Potion;
15 import net.minecraft.potion.PotionEffect;
16 import net.minecraft.util.DamageSource;
17 import net.minecraft.world.World;
18
19 public class EntityBlackSmoke extends Entity
20 {
21
22         private final int TIME = 5 * 20;
23
24         public HashMap<EntityMob, Integer> invisibilityMobsMap = new HashMap<EntityMob, Integer>();
25
26         private int restTime;
27
28         public EntityBlackSmoke(EntityPlayer par1EntityPlayer, World par2World, double par3, double par4, double par5)
29         {
30                 super(par2World);
31                 this.posX = par3;
32                 this.posY = par4;
33                 this.posZ = par5;
34
35                 this.restTime = TIME;
36                 //for (Entity var5:MathAuxiliary.getTriangleEntitys(par2World, par3, par4, par5, Math.atan2(par1EntityPlayer.posZ - this.posZ, par1EntityPlayer.posX - this.posX), 0.0D, 120.0D, 10.0D)){
37                 for (Entity var5:(ArrayList<Entity>)par2World.loadedEntityList){
38                         if (var5 instanceof EntityMob){
39                                 this.invisibilityMobsMap.put((EntityMob)var5, TIME);
40                         }
41                 }
42         }
43
44         @Override
45         protected void entityInit()
46         {
47                 
48         }
49
50         @Override
51         public void onUpdate()
52         {
53                 if (this.restTime < 0){
54                         this.setDead();
55                 }
56                 Iterator<EntityMob> var1 = this.invisibilityMobsMap.keySet().iterator();
57                 while (var1.hasNext()) {
58                         EntityMob var2 = var1.next();
59                         var2.setTarget(this);
60                 }
61                 for (int i = 0; i < 5; i++){
62                         this.worldObj.spawnParticle("smoke", this.posX, this.posY, this.posZ, Math.random() * 0.1D - 0.05D, 0.05D, Math.random() * 0.1D - 0.05D);
63                 }
64                 this.restTime--;
65         }
66
67         @Override
68         protected void readEntityFromNBT(NBTTagCompound var1)
69         {
70                 
71         }
72
73         @Override
74         protected void writeEntityToNBT(NBTTagCompound var1)
75         {
76                 
77         }
78
79 }