Exemple #1
0
 public override bool Equals(object obj)
 {
     net.minecraft.src.ChunkCoordIntPair chunkcoordintpair = (net.minecraft.src.ChunkCoordIntPair
                                                              )obj;
     return(chunkcoordintpair.X == X && chunkcoordintpair.Z ==
            Z);
 }
 public PlayerInstance(net.minecraft.src.PlayerManager playermanager, int i, int j
                       )
 {
     // Referenced classes of package net.minecraft.src:
     //            ChunkCoordIntPair, PlayerManager, WorldServer, ChunkProviderServer,
     //            EntityPlayerMP, Packet50PreChunk, NetServerHandler, PlayerHash,
     //            Packet53BlockChange, Block, Packet51MapChunk, TileEntity,
     //            Packet52MultiBlockChange, Packet
     //        super();
     playerManager = playermanager;
     players       = new List <EntityPlayerMP>();
     dirtyBlocks   = new short[10];
     dirtyCount    = 0;
     chunkX        = i;
     chunkZ        = j;
     location      = new net.minecraft.src.ChunkCoordIntPair(i, j);
     playermanager.GetMinecraftServer().chunkProviderServer.LoadChunk(i, j);
 }
Exemple #3
0
 public override net.minecraft.src.BiomeGenBase Func_4066_a(net.minecraft.src.ChunkCoordIntPair
                                                            chunkcoordintpair)
 {
     return(field_4262_e);
 }
 public virtual net.minecraft.src.BiomeGenBase Func_4066_a(net.minecraft.src.ChunkCoordIntPair
                                                           chunkcoordintpair)
 {
     return(GetBiomeGenAt(chunkcoordintpair.X << 4, chunkcoordintpair.Z
                                              << 4));
 }
Exemple #5
0
 public virtual void OnUpdateEntity(bool flag)
 {
     base.OnUpdate();
     for (int i = 0; i < inventory.GetSizeInventory(); i++)
     {
         net.minecraft.src.ItemStack itemstack = inventory.GetStackInSlot(i);
         if (itemstack == null || !net.minecraft.src.Item.itemsList[itemstack.itemID].Func_28019_b
                 () || netServerHandler.GetNumChunkDataPackets() > 2)
         {
             continue;
         }
         net.minecraft.src.Packet packet = ((net.minecraft.src.ItemMapBase)net.minecraft.src.Item
                                            .itemsList[itemstack.itemID]).Func_28022_b(itemstack, worldObj, this);
         if (packet != null)
         {
             netServerHandler.SendPacket(packet);
         }
     }
     if (flag && chunkCoordIntPairQueue.Count > 0)
     {
         net.minecraft.src.ChunkCoordIntPair chunkcoordintpair = (net.minecraft.src.ChunkCoordIntPair
                                                                  )chunkCoordIntPairQueue[0];
         if (chunkcoordintpair != null)
         {
             bool flag1 = false;
             if (netServerHandler.GetNumChunkDataPackets() < 4)
             {
                 flag1 = true;
             }
             if (flag1)
             {
                 net.minecraft.src.WorldServer worldserver = mcServer.GetWorldServer(dimension);
                 chunkCoordIntPairQueue.Remove(chunkcoordintpair);
                 netServerHandler.SendPacket(new net.minecraft.src.Packet51MapChunk(chunkcoordintpair
                                                                                    .X * 16, 0, chunkcoordintpair.Z * 16, 16, 128, 16, worldserver));
                 System.Collections.Generic.List <TileEntity> list = worldserver.GetTileEntityList(chunkcoordintpair.X
                                                                                                   * 16, 0, chunkcoordintpair.Z * 16, chunkcoordintpair.X * 16 + 16
                                                                                                   , 128, chunkcoordintpair.Z * 16 + 16);
                 for (int j = 0; j < list.Count; j++)
                 {
                     GetTileEntityInfo((net.minecraft.src.TileEntity)list[j]);
                 }
             }
         }
     }
     if (inPortal)
     {
         if (mcServer.propertyManager.GetBoolean("allow-nether", true))
         {
             if (currentCraftingInventory != personalCraftingInventory)
             {
                 UsePersonalCraftingInventory();
             }
             if (ridingEntity != null)
             {
                 MountEntity(ridingEntity);
             }
             else
             {
                 timeInPortal += 0.0125F;
                 if (timeInPortal >= 1.0F)
                 {
                     timeInPortal    = 1.0F;
                     timeUntilPortal = 10;
                     mcServer.serverConfigurationManager.SendPlayerToOtherDimension(this);
                 }
             }
             inPortal = false;
         }
     }
     else
     {
         if (timeInPortal > 0.0F)
         {
             timeInPortal -= 0.05F;
         }
         if (timeInPortal < 0.0F)
         {
             timeInPortal = 0.0F;
         }
     }
     if (timeUntilPortal > 0)
     {
         timeUntilPortal--;
     }
     if (health != lastHealth)
     {
         netServerHandler.SendPacket(new net.minecraft.src.Packet8UpdateHealth(health
                                                                               ));
         lastHealth = health;
     }
 }
Exemple #6
0
 public static int PerformSpawning(net.minecraft.src.World var0, bool var1, bool var2
                                   )
 {
     if (!var1 && !var2)
     {
         return(0);
     }
     else
     {
         eligibleChunksForSpawning.Clear();
         int var3;
         int var6;
         for (var3 = 0; var3 < var0.playerEntities.Count; ++var3)
         {
             net.minecraft.src.EntityPlayer var4 = (net.minecraft.src.EntityPlayer)var0.playerEntities
                                                   [var3];
             int var5 = net.minecraft.src.MathHelper.Floor_double(var4.posX / 16.0D);
             var6 = net.minecraft.src.MathHelper.Floor_double(var4.posZ / 16.0D);
             byte var7 = 8;
             for (int var8 = -var7; var8 <= var7; ++var8)
             {
                 for (int var9 = -var7; var9 <= var7; ++var9)
                 {
                     eligibleChunksForSpawning.Add(new net.minecraft.src.ChunkCoordIntPair(var8 + var5, var9 + var6));
                 }
             }
         }
         var3 = 0;
         net.minecraft.src.ChunkCoordinates   var35 = var0.GetSpawnPoint();
         net.minecraft.src.EnumCreatureType[] var36 = net.minecraft.src.EnumCreatureType.Values();
         var6 = var36.Length;
         for (int var37 = 0; var37 < var6; ++var37)
         {
             net.minecraft.src.EnumCreatureType var38 = var36[var37];
             if ((!var38.Func_21103_d() || var2) && (var38.Func_21103_d() || var1) && var0.CountEntities
                     (var38.GetCreatureClass()) <= var38.GetMaxNumberOfCreature() * eligibleChunksForSpawning
                 .Count / 256)
             {
                 System.Collections.IEnumerator var39 = eligibleChunksForSpawning.GetEnumerator();
                 while (var39.MoveNext())
                 {
                     net.minecraft.src.ChunkCoordIntPair var10 = (net.minecraft.src.ChunkCoordIntPair)
                                                                 var39.Current;
                     net.minecraft.src.BiomeGenBase var11 = var0.GetWorldChunkManager().Func_4066_a(var10
                                                                                                    );
                     System.Collections.IList var12 = var11.GetSpawnableList(var38);
                     if (var12 != null && var12.Count > 0)
                     {
                         int var13 = 0;
                         net.minecraft.src.SpawnListEntry var15;
                         for (System.Collections.IEnumerator var14 = var12.GetEnumerator(); var14.MoveNext
                                  (); var13 += var15.spawnRarityRate)
                         {
                             var15 = (net.minecraft.src.SpawnListEntry)var14.Current;
                         }
                         int var40 = var0.rand.Next(var13);
                         var15 = (net.minecraft.src.SpawnListEntry)var12[0];
                         System.Collections.IEnumerator var16 = var12.GetEnumerator();
                         while (var16.MoveNext())
                         {
                             net.minecraft.src.SpawnListEntry var17 = (net.minecraft.src.SpawnListEntry)var16.
                                                                      Current;
                             var40 -= var17.spawnRarityRate;
                             if (var40 < 0)
                             {
                                 var15 = var17;
                                 break;
                             }
                         }
                         net.minecraft.src.ChunkPosition var41 = GetRandomSpawningPointInChunk(var0, var10
                                                                                               .X * 16, var10.Z * 16);
                         int var42 = var41.x;
                         int var18 = var41.y;
                         int var19 = var41.z;
                         if (!var0.IsBlockNormalCube(var42, var18, var19) && var0.GetBlockMaterial(var42,
                                                                                                   var18, var19) == var38.GetCreatureMaterial())
                         {
                             int var20 = 0;
                             for (int var21 = 0; var21 < 3; ++var21)
                             {
                                 int  var22 = var42;
                                 int  var23 = var18;
                                 int  var24 = var19;
                                 byte var25 = 6;
                                 for (int var26 = 0; var26 < 4; ++var26)
                                 {
                                     var22 += var0.rand.Next(var25) - var0.rand.Next(var25);
                                     var23 += var0.rand.Next(1) - var0.rand.Next(1);
                                     var24 += var0.rand.Next(var25) - var0.rand.Next(var25);
                                     if (Func_21167_a(var38, var0, var22, var23, var24))
                                     {
                                         float var27 = (float)var22 + 0.5F;
                                         float var28 = (float)var23;
                                         float var29 = (float)var24 + 0.5F;
                                         if (var0.GetClosestPlayer((double)var27, (double)var28, (double)var29, 24.0D) ==
                                             null)
                                         {
                                             float var30 = var27 - (float)var35.posX;
                                             float var31 = var28 - (float)var35.posY;
                                             float var32 = var29 - (float)var35.posZ;
                                             float var33 = var30 * var30 + var31 * var31 + var32 * var32;
                                             if (var33 >= 576.0F)
                                             {
                                                 net.minecraft.src.EntityLiving var43;
                                                 try
                                                 {
                                                     var43 = (net.minecraft.src.EntityLiving)(var15.entityClass.GetConstructor(new System.Type[] { typeof(net.minecraft.src.World) }).Invoke(new object[] { var0 }));
                                                 }
                                                 catch (System.Exception var34)
                                                 {
                                                     Sharpen.Runtime.PrintStackTrace(var34);
                                                     return(var3);
                                                 }
                                                 var43.SetLocationAndAngles((double)var27, (double)var28, (double)var29, var0.rand
                                                                            .NextFloat() * 360.0F, 0.0F);
                                                 if (var43.GetCanSpawnHere())
                                                 {
                                                     ++var20;
                                                     var0.AddEntity(var43);
                                                     Func_21166_a(var43, var0, var27, var28, var29);
                                                     if (var20 >= var43.GetMaxSpawnedInChunk())
                                                     {
                                                         goto label113_continue;
                                                     }
                                                 }
                                                 var3 += var20;
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                     label113_continue :;
                 }
                 label113_break :;
             }
         }
         return(var3);
     }
 }