1
0
forked from xjboss/KCauldronX

Some improvements in spigot timings and fix #179

This commit is contained in:
Prototik 2015-09-05 23:31:58 +07:00
parent 923b9e81a0
commit 9d56192606
8 changed files with 233 additions and 110 deletions

View File

@ -62,6 +62,24 @@
public int experienceLevel; public int experienceLevel;
public int experienceTotal; public int experienceTotal;
public float experience; public float experience;
@@ -254,7 +281,7 @@
--this.xpCooldown;
}
- if (this.isPlayerSleeping())
+ /*if (this.isPlayerSleeping()) KCauldron - moved into EntityPlayerMP
{
++this.sleepTimer;
@@ -283,7 +310,7 @@
{
this.sleepTimer = 0;
}
- }
+ }*/
super.onUpdate();
@@ -416,6 +443,42 @@ @@ -416,6 +443,42 @@
{ {
this.updateItemUse(this.itemInUse, 16); this.updateItemUse(this.itemInUse, 16);
@ -485,6 +503,15 @@
if (p_70999_1_) if (p_70999_1_)
{ {
this.sleepTimer = 0; this.sleepTimer = 0;
@@ -1491,7 +1712,7 @@
}
}
- private boolean isInBed()
+ protected boolean isInBed() // KCauldron - private -> protected
{
return this.worldObj.getBlock(this.playerLocation.posX, this.playerLocation.posY, this.playerLocation.posZ).isBed(worldObj, playerLocation.posX, playerLocation.posY, playerLocation.posZ, this);
}
@@ -1606,11 +1827,13 @@ @@ -1606,11 +1827,13 @@
{ {
this.spawnChunk = new ChunkCoordinates(p_71063_1_); this.spawnChunk = new ChunkCoordinates(p_71063_1_);

View File

@ -190,7 +190,46 @@
iterator1.remove(); iterator1.remove();
} }
} }
@@ -309,9 +407,10 @@ @@ -286,6 +384,38 @@
}
}
}
+ // KCauldron start
+ if (this.isPlayerSleeping())
+ {
+ ++this.sleepTimer;
+
+ if (this.sleepTimer > 100)
+ {
+ this.sleepTimer = 100;
+ }
+
+ if (!this.worldObj.isRemote)
+ {
+ if (!this.isInBed())
+ {
+ this.wakeUpPlayer(true, true, false);
+ }
+ else if (this.worldObj.isDaytime())
+ {
+ this.wakeUpPlayer(false, true, true);
+ }
+ }
+ }
+ else if (this.sleepTimer > 0)
+ {
+ ++this.sleepTimer;
+
+ if (this.sleepTimer >= 110)
+ {
+ this.sleepTimer = 0;
+ }
+ }
+ // KCauldron end
}
public void onUpdateEntity()
@@ -309,9 +439,10 @@
} }
} }
@ -202,7 +241,7 @@
this.lastHealth = this.getHealth(); this.lastHealth = this.getHealth();
this.lastFoodLevel = this.foodStats.getFoodLevel(); this.lastFoodLevel = this.foodStats.getFoodLevel();
this.wasHungry = this.foodStats.getSaturationLevel() == 0.0F; this.wasHungry = this.foodStats.getSaturationLevel() == 0.0F;
@@ -320,16 +419,18 @@ @@ -320,16 +451,18 @@
if (this.getHealth() + this.getAbsorptionAmount() != this.field_130068_bO) if (this.getHealth() + this.getAbsorptionAmount() != this.field_130068_bO)
{ {
this.field_130068_bO = this.getHealth() + this.getAbsorptionAmount(); this.field_130068_bO = this.getHealth() + this.getAbsorptionAmount();
@ -228,7 +267,7 @@
if (this.experienceTotal != this.lastExperience) if (this.experienceTotal != this.lastExperience)
{ {
this.lastExperience = this.experienceTotal; this.lastExperience = this.experienceTotal;
@@ -340,6 +441,20 @@ @@ -340,6 +473,20 @@
{ {
this.func_147098_j(); this.func_147098_j();
} }
@ -249,7 +288,7 @@
} }
catch (Throwable throwable) catch (Throwable throwable)
{ {
@@ -402,34 +517,74 @@ @@ -402,34 +549,74 @@
public void onDeath(DamageSource p_70645_1_) public void onDeath(DamageSource p_70645_1_)
{ {
@ -333,7 +372,7 @@
score.func_96648_a(); score.func_96648_a();
} }
@@ -495,7 +650,8 @@ @@ -495,7 +682,8 @@
public boolean canAttackPlayer(EntityPlayer p_96122_1_) public boolean canAttackPlayer(EntityPlayer p_96122_1_)
{ {
@ -343,7 +382,7 @@
} }
public void travelToDimension(int p_71027_1_) public void travelToDimension(int p_71027_1_)
@@ -526,7 +682,10 @@ @@ -526,7 +714,10 @@
this.triggerAchievement(AchievementList.portal); this.triggerAchievement(AchievementList.portal);
} }
@ -355,7 +394,7 @@
this.lastExperience = -1; this.lastExperience = -1;
this.lastHealth = -1.0F; this.lastHealth = -1.0F;
this.lastFoodLevel = -1; this.lastFoodLevel = -1;
@@ -569,6 +728,11 @@ @@ -569,6 +760,11 @@
public void wakeUpPlayer(boolean p_70999_1_, boolean p_70999_2_, boolean p_70999_3_) public void wakeUpPlayer(boolean p_70999_1_, boolean p_70999_2_, boolean p_70999_3_)
{ {
@ -367,7 +406,7 @@
if (this.isPlayerSleeping()) if (this.isPlayerSleeping())
{ {
this.getServerForPlayer().getEntityTracker().func_151248_b(this, new S0BPacketAnimation(this, 2)); this.getServerForPlayer().getEntityTracker().func_151248_b(this, new S0BPacketAnimation(this, 2));
@@ -584,11 +748,27 @@ @@ -584,11 +780,27 @@
public void mountEntity(Entity p_70078_1_) public void mountEntity(Entity p_70078_1_)
{ {
@ -398,7 +437,7 @@
protected void updateFallState(double p_70064_1_, boolean p_70064_3_) {} protected void updateFallState(double p_70064_1_, boolean p_70064_3_) {}
public void handleFalling(double p_71122_1_, boolean p_71122_3_) public void handleFalling(double p_71122_1_, boolean p_71122_3_)
@@ -610,29 +790,64 @@ @@ -610,29 +822,64 @@
this.currentWindowId = this.currentWindowId % 100 + 1; this.currentWindowId = this.currentWindowId % 100 + 1;
} }
@ -466,7 +505,7 @@
this.openContainer.windowId = this.currentWindowId; this.openContainer.windowId = this.currentWindowId;
this.openContainer.addCraftingToCrafters(this); this.openContainer.addCraftingToCrafters(this);
} }
@@ -644,71 +859,150 @@ @@ -644,71 +891,150 @@
this.closeScreen(); this.closeScreen();
} }
@ -625,7 +664,7 @@
this.openContainer.windowId = this.currentWindowId; this.openContainer.windowId = this.currentWindowId;
this.openContainer.addCraftingToCrafters(this); this.openContainer.addCraftingToCrafters(this);
InventoryMerchant inventorymerchant = ((ContainerMerchant)this.openContainer).getMerchantInventory(); InventoryMerchant inventorymerchant = ((ContainerMerchant)this.openContainer).getMerchantInventory();
@@ -725,7 +1019,7 @@ @@ -725,7 +1051,7 @@
merchantrecipelist.func_151391_a(packetbuffer); merchantrecipelist.func_151391_a(packetbuffer);
this.playerNetServerHandler.sendPacket(new S3FPacketCustomPayload("MC|TrList", packetbuffer)); this.playerNetServerHandler.sendPacket(new S3FPacketCustomPayload("MC|TrList", packetbuffer));
} }
@ -634,7 +673,7 @@
{ {
logger.error("Couldn\'t send trade list", ioexception); logger.error("Couldn\'t send trade list", ioexception);
} }
@@ -738,6 +1032,17 @@ @@ -738,6 +1064,17 @@
public void displayGUIHorse(EntityHorse p_110298_1_, IInventory p_110298_2_) public void displayGUIHorse(EntityHorse p_110298_1_, IInventory p_110298_2_)
{ {
@ -652,7 +691,7 @@
if (this.openContainer != this.inventoryContainer) if (this.openContainer != this.inventoryContainer)
{ {
this.closeScreen(); this.closeScreen();
@@ -745,7 +1050,7 @@ @@ -745,7 +1082,7 @@
this.getNextWindowId(); this.getNextWindowId();
this.playerNetServerHandler.sendPacket(new S2DPacketOpenWindow(this.currentWindowId, 11, p_110298_2_.getInventoryName(), p_110298_2_.getSizeInventory(), p_110298_2_.hasCustomInventoryName(), p_110298_1_.getEntityId())); this.playerNetServerHandler.sendPacket(new S2DPacketOpenWindow(this.currentWindowId, 11, p_110298_2_.getInventoryName(), p_110298_2_.getSizeInventory(), p_110298_2_.hasCustomInventoryName(), p_110298_1_.getEntityId()));
@ -661,7 +700,7 @@
this.openContainer.windowId = this.currentWindowId; this.openContainer.windowId = this.currentWindowId;
this.openContainer.addCraftingToCrafters(this); this.openContainer.addCraftingToCrafters(this);
} }
@@ -770,6 +1075,15 @@ @@ -770,6 +1107,15 @@
{ {
this.playerNetServerHandler.sendPacket(new S30PacketWindowItems(p_71110_1_.windowId, p_71110_2_)); this.playerNetServerHandler.sendPacket(new S30PacketWindowItems(p_71110_1_.windowId, p_71110_2_));
this.playerNetServerHandler.sendPacket(new S2FPacketSetSlot(-1, -1, this.inventory.getItemStack())); this.playerNetServerHandler.sendPacket(new S2FPacketSetSlot(-1, -1, this.inventory.getItemStack()));
@ -677,7 +716,7 @@
} }
public void sendProgressBarUpdate(Container p_71112_1_, int p_71112_2_, int p_71112_3_) public void sendProgressBarUpdate(Container p_71112_1_, int p_71112_2_, int p_71112_3_)
@@ -779,6 +1093,7 @@ @@ -779,6 +1125,7 @@
public void closeScreen() public void closeScreen()
{ {
@ -685,7 +724,7 @@
this.playerNetServerHandler.sendPacket(new S2EPacketCloseWindow(this.openContainer.windowId)); this.playerNetServerHandler.sendPacket(new S2EPacketCloseWindow(this.openContainer.windowId));
this.closeContainer(); this.closeContainer();
} }
@@ -853,8 +1168,19 @@ @@ -853,8 +1200,19 @@
public void setPlayerHealthUpdated() public void setPlayerHealthUpdated()
{ {
this.lastHealth = -1.0E8F; this.lastHealth = -1.0E8F;
@ -705,7 +744,7 @@
public void addChatComponentMessage(IChatComponent p_146105_1_) public void addChatComponentMessage(IChatComponent p_146105_1_)
{ {
this.playerNetServerHandler.sendPacket(new S02PacketChat(p_146105_1_)); this.playerNetServerHandler.sendPacket(new S02PacketChat(p_146105_1_));
@@ -1037,6 +1363,114 @@ @@ -1037,6 +1395,114 @@
return this.field_143005_bX; return this.field_143005_bX;
} }

View File

@ -24,7 +24,7 @@
import net.minecraft.network.play.server.S23PacketBlockChange; import net.minecraft.network.play.server.S23PacketBlockChange;
import net.minecraft.network.play.server.S2FPacketSetSlot; import net.minecraft.network.play.server.S2FPacketSetSlot;
import net.minecraft.network.play.server.S32PacketConfirmTransaction; import net.minecraft.network.play.server.S32PacketConfirmTransaction;
@@ -81,19 +84,75 @@ @@ -81,19 +84,77 @@
import net.minecraft.util.IChatComponent; import net.minecraft.util.IChatComponent;
import net.minecraft.util.IntHashMap; import net.minecraft.util.IntHashMap;
import net.minecraft.util.ReportedException; import net.minecraft.util.ReportedException;
@ -53,6 +53,8 @@
+import net.minecraft.init.Blocks; +import net.minecraft.init.Blocks;
+import net.minecraft.network.play.server.S05PacketSpawnPosition; +import net.minecraft.network.play.server.S05PacketSpawnPosition;
+import net.minecraft.network.play.server.S09PacketHeldItemChange; +import net.minecraft.network.play.server.S09PacketHeldItemChange;
+import net.minecraft.network.play.server.S0APacketUseBed;
+import net.minecraft.network.play.server.S12PacketEntityVelocity;
+import net.minecraft.network.play.server.S1BPacketEntityAttach; +import net.minecraft.network.play.server.S1BPacketEntityAttach;
+import net.minecraft.network.play.server.S33PacketUpdateSign; +import net.minecraft.network.play.server.S33PacketUpdateSign;
+import net.minecraft.util.MathHelper; +import net.minecraft.util.MathHelper;
@ -102,7 +104,7 @@
public class NetHandlerPlayServer implements INetHandlerPlayServer public class NetHandlerPlayServer implements INetHandlerPlayServer
{ {
private static final Logger logger = LogManager.getLogger(); private static final Logger logger = LogManager.getLogger();
@@ -107,13 +166,12 @@ @@ -107,13 +168,12 @@
private long field_147379_i; private long field_147379_i;
private static Random field_147376_j = new Random(); private static Random field_147376_j = new Random();
private long field_147377_k; private long field_147377_k;
@ -120,7 +122,7 @@
private static final String __OBFID = "CL_00001452"; private static final String __OBFID = "CL_00001452";
public NetHandlerPlayServer(MinecraftServer p_i1530_1_, NetworkManager p_i1530_2_, EntityPlayerMP p_i1530_3_) public NetHandlerPlayServer(MinecraftServer p_i1530_1_, NetworkManager p_i1530_2_, EntityPlayerMP p_i1530_3_)
@@ -123,8 +181,41 @@ @@ -123,8 +183,41 @@
p_i1530_2_.setNetHandler(this); p_i1530_2_.setNetHandler(this);
this.playerEntity = p_i1530_3_; this.playerEntity = p_i1530_3_;
p_i1530_3_.playerNetServerHandler = this; p_i1530_3_.playerNetServerHandler = this;
@ -162,7 +164,7 @@
public void onNetworkTick() public void onNetworkTick()
{ {
this.field_147366_g = false; this.field_147366_g = false;
@@ -139,10 +230,16 @@ @@ -139,10 +232,16 @@
this.sendPacket(new S00PacketKeepAlive(this.field_147378_h)); this.sendPacket(new S00PacketKeepAlive(this.field_147378_h));
} }
@ -179,7 +181,7 @@
if (this.field_147375_m > 0) if (this.field_147375_m > 0)
{ {
@@ -162,6 +259,24 @@ @@ -162,6 +261,24 @@
public void kickPlayerFromServer(String p_147360_1_) public void kickPlayerFromServer(String p_147360_1_)
{ {
@ -204,7 +206,7 @@
final ChatComponentText chatcomponenttext = new ChatComponentText(p_147360_1_); final ChatComponentText chatcomponenttext = new ChatComponentText(p_147360_1_);
this.netManager.scheduleOutboundPacket(new S40PacketDisconnect(chatcomponenttext), new GenericFutureListener[] {new GenericFutureListener() this.netManager.scheduleOutboundPacket(new S40PacketDisconnect(chatcomponenttext), new GenericFutureListener[] {new GenericFutureListener()
{ {
@@ -170,8 +285,8 @@ @@ -170,8 +287,8 @@
{ {
NetHandlerPlayServer.this.netManager.closeChannel(chatcomponenttext); NetHandlerPlayServer.this.netManager.closeChannel(chatcomponenttext);
} }
@ -215,7 +217,7 @@
this.netManager.disableAutoRead(); this.netManager.disableAutoRead();
} }
@@ -182,6 +297,15 @@ @@ -182,6 +299,15 @@
public void processPlayer(C03PacketPlayer p_147347_1_) public void processPlayer(C03PacketPlayer p_147347_1_)
{ {
@ -231,7 +233,7 @@
WorldServer worldserver = this.serverController.worldServerForDimension(this.playerEntity.dimension); WorldServer worldserver = this.serverController.worldServerForDimension(this.playerEntity.dimension);
this.field_147366_g = true; this.field_147366_g = true;
@@ -199,8 +323,70 @@ @@ -199,8 +325,79 @@
} }
} }
@ -240,10 +242,19 @@
+ Player player = this.getPlayerB(); + Player player = this.getPlayerB();
+ Location from = new Location(player.getWorld(), lastPosX, lastPosY, lastPosZ, lastYaw, lastPitch); // Get the Players previous Event location. + Location from = new Location(player.getWorld(), lastPosX, lastPosY, lastPosZ, lastYaw, lastPitch); // Get the Players previous Event location.
+ Location to = player.getLocation().clone(); // Start off the To location as the Players current location. + Location to = player.getLocation().clone(); // Start off the To location as the Players current location.
+
+ // KCauldron start
+ if (this.playerEntity.isPlayerSleeping())
{
+ this.playerEntity.playerNetServerHandler.sendPacket(new S08PacketPlayerPosLook(playerEntity.posX, playerEntity.posY, playerEntity.posZ, playerEntity.rotationYaw, playerEntity.rotationPitch, false));
+ this.playerEntity.playerNetServerHandler.sendPacket(new S12PacketEntityVelocity(player.getEntityId(), 0, 0, 0));
+ return;
+ }
+ // KCauldron end
+ +
+ // If the packet contains movement information then we update the To location with the correct XYZ. + // If the packet contains movement information then we update the To location with the correct XYZ.
+ if (p_147347_1_.field_149480_h && !(p_147347_1_.field_149480_h && p_147347_1_.field_149477_b == -999.0D && p_147347_1_.field_149475_d == -999.0D)) + if (p_147347_1_.field_149480_h && !(p_147347_1_.field_149480_h && p_147347_1_.field_149477_b == -999.0D && p_147347_1_.field_149475_d == -999.0D))
{ + {
+ to.setX(p_147347_1_.field_149479_a); + to.setX(p_147347_1_.field_149479_a);
+ to.setY(p_147347_1_.field_149477_b); + to.setY(p_147347_1_.field_149477_b);
+ to.setZ(p_147347_1_.field_149478_c); + to.setZ(p_147347_1_.field_149478_c);
@ -303,7 +314,24 @@
double d1; double d1;
double d2; double d2;
double d3; double d3;
@@ -280,13 +466,6 @@ @@ -248,13 +445,13 @@
return;
}
- if (this.playerEntity.isPlayerSleeping())
+ /*if (this.playerEntity.isPlayerSleeping()) // KCauldron - moved up
{
- this.playerEntity.onUpdateEntity();
+ this.playerEntity.onUpdateEntity();
this.playerEntity.setPositionAndRotation(this.lastPosX, this.lastPosY, this.lastPosZ, this.playerEntity.rotationYaw, this.playerEntity.rotationPitch);
worldserver.updateEntity(this.playerEntity);
return;
- }
+ }*/
d0 = this.playerEntity.posY;
this.lastPosX = this.playerEntity.posX;
@@ -280,13 +477,6 @@
d3 = p_147347_1_.func_149472_e(); d3 = p_147347_1_.func_149472_e();
d4 = p_147347_1_.func_149471_f() - p_147347_1_.func_149467_d(); d4 = p_147347_1_.func_149471_f() - p_147347_1_.func_149467_d();
@ -317,7 +345,7 @@
if (Math.abs(p_147347_1_.func_149464_c()) > 3.2E7D || Math.abs(p_147347_1_.func_149472_e()) > 3.2E7D) if (Math.abs(p_147347_1_.func_149464_c()) > 3.2E7D || Math.abs(p_147347_1_.func_149472_e()) > 3.2E7D)
{ {
this.kickPlayerFromServer("Illegal position"); this.kickPlayerFromServer("Illegal position");
@@ -318,7 +497,7 @@ @@ -318,7 +508,7 @@
double d9 = Math.max(Math.abs(d6), Math.abs(this.playerEntity.motionZ)); double d9 = Math.max(Math.abs(d6), Math.abs(this.playerEntity.motionZ));
double d10 = d7 * d7 + d8 * d8 + d9 * d9; double d10 = d7 * d7 + d8 * d8 + d9 * d9;
@ -326,7 +354,7 @@
{ {
logger.warn(this.playerEntity.getCommandSenderName() + " moved too quickly! " + d4 + "," + d5 + "," + d6 + " (" + d7 + ", " + d8 + ", " + d9 + ")"); logger.warn(this.playerEntity.getCommandSenderName() + " moved too quickly! " + d4 + "," + d5 + "," + d6 + " (" + d7 + ", " + d8 + ", " + d9 + ")");
this.setPlayerLocation(this.lastPosX, this.lastPosY, this.lastPosZ, this.playerEntity.rotationYaw, this.playerEntity.rotationPitch); this.setPlayerLocation(this.lastPosX, this.lastPosY, this.lastPosZ, this.playerEntity.rotationYaw, this.playerEntity.rotationPitch);
@@ -413,21 +592,85 @@ @@ -413,21 +603,85 @@
public void setPlayerLocation(double p_147364_1_, double p_147364_3_, double p_147364_5_, float p_147364_7_, float p_147364_8_) public void setPlayerLocation(double p_147364_1_, double p_147364_3_, double p_147364_5_, float p_147364_7_, float p_147364_8_)
{ {
@ -417,7 +445,7 @@
this.playerEntity.dropOneItem(false); this.playerEntity.dropOneItem(false);
} }
else if (p_147345_1_.func_149506_g() == 3) else if (p_147345_1_.func_149506_g() == 3)
@@ -490,7 +733,17 @@ @@ -490,7 +744,17 @@
} }
else else
{ {
@ -435,7 +463,7 @@
} }
} }
else if (p_147345_1_.func_149506_g() == 2) else if (p_147345_1_.func_149506_g() == 2)
@@ -517,6 +770,34 @@ @@ -517,6 +781,34 @@
public void processPlayerBlockPlacement(C08PacketPlayerBlockPlacement p_147346_1_) public void processPlayerBlockPlacement(C08PacketPlayerBlockPlacement p_147346_1_)
{ {
WorldServer worldserver = this.serverController.worldServerForDimension(this.playerEntity.dimension); WorldServer worldserver = this.serverController.worldServerForDimension(this.playerEntity.dimension);
@ -470,7 +498,7 @@
ItemStack itemstack = this.playerEntity.inventory.getCurrentItem(); ItemStack itemstack = this.playerEntity.inventory.getCurrentItem();
boolean flag = false; boolean flag = false;
boolean placeResult = true; boolean placeResult = true;
@@ -533,11 +814,21 @@ @@ -533,11 +825,21 @@
return; return;
} }
@ -494,7 +522,7 @@
} }
else if (p_147346_1_.func_149571_d() >= this.serverController.getBuildLimit() - 1 && (p_147346_1_.func_149568_f() == 1 || p_147346_1_.func_149571_d() >= this.serverController.getBuildLimit())) else if (p_147346_1_.func_149571_d() >= this.serverController.getBuildLimit() - 1 && (p_147346_1_.func_149568_f() == 1 || p_147346_1_.func_149571_d() >= this.serverController.getBuildLimit()))
{ {
@@ -548,17 +839,24 @@ @@ -548,17 +850,24 @@
} }
else else
{ {
@ -527,7 +555,7 @@
flag = true; flag = true;
} }
@@ -615,7 +913,7 @@ @@ -615,7 +924,7 @@
this.playerEntity.openContainer.detectAndSendChanges(); this.playerEntity.openContainer.detectAndSendChanges();
this.playerEntity.isChangingQuantityOnly = false; this.playerEntity.isChangingQuantityOnly = false;
@ -536,7 +564,7 @@
{ {
this.sendPacket(new S2FPacketSetSlot(this.playerEntity.openContainer.windowId, slot.slotNumber, this.playerEntity.inventory.getCurrentItem())); this.sendPacket(new S2FPacketSetSlot(this.playerEntity.openContainer.windowId, slot.slotNumber, this.playerEntity.inventory.getCurrentItem()));
} }
@@ -624,14 +922,34 @@ @@ -624,14 +933,34 @@
public void onDisconnect(IChatComponent p_147231_1_) public void onDisconnect(IChatComponent p_147231_1_)
{ {
@ -576,7 +604,7 @@
if (this.serverController.isSinglePlayer() && this.playerEntity.getCommandSenderName().equals(this.serverController.getServerOwner())) if (this.serverController.isSinglePlayer() && this.playerEntity.getCommandSenderName().equals(this.serverController.getServerOwner()))
{ {
logger.info("Stopping singleplayer server as player logged out"); logger.info("Stopping singleplayer server as player logged out");
@@ -657,6 +975,18 @@ @@ -657,6 +986,18 @@
} }
} }
@ -595,7 +623,7 @@
try try
{ {
this.netManager.scheduleOutboundPacket(p_147359_1_, new GenericFutureListener[0]); this.netManager.scheduleOutboundPacket(p_147359_1_, new GenericFutureListener[0]);
@@ -679,20 +1009,37 @@ @@ -679,20 +1020,37 @@
public void processHeldItemChange(C09PacketHeldItemChange p_147355_1_) public void processHeldItemChange(C09PacketHeldItemChange p_147355_1_)
{ {
@ -634,7 +662,7 @@
{ {
ChatComponentTranslation chatcomponenttranslation = new ChatComponentTranslation("chat.cannotSend", new Object[0]); ChatComponentTranslation chatcomponenttranslation = new ChatComponentTranslation("chat.cannotSend", new Object[0]);
chatcomponenttranslation.getChatStyle().setColor(EnumChatFormatting.RED); chatcomponenttranslation.getChatStyle().setColor(EnumChatFormatting.RED);
@@ -708,51 +1055,385 @@ @@ -708,51 +1066,385 @@
{ {
if (!ChatAllowedCharacters.isAllowedCharacter(s.charAt(i))) if (!ChatAllowedCharacters.isAllowedCharacter(s.charAt(i)))
{ {
@ -1032,7 +1060,7 @@
if (p_147357_1_.func_149513_d() == 1) if (p_147357_1_.func_149513_d() == 1)
{ {
this.playerEntity.setSneaking(true); this.playerEntity.setSneaking(true);
@@ -772,7 +1453,7 @@ @@ -772,7 +1464,7 @@
else if (p_147357_1_.func_149513_d() == 3) else if (p_147357_1_.func_149513_d() == 3)
{ {
this.playerEntity.wakeUpPlayer(false, true, true); this.playerEntity.wakeUpPlayer(false, true, true);
@ -1041,7 +1069,7 @@
} }
else if (p_147357_1_.func_149513_d() == 6) else if (p_147357_1_.func_149513_d() == 6)
{ {
@@ -789,8 +1470,20 @@ @@ -789,8 +1481,20 @@
public void processUseEntity(C02PacketUseEntity p_147340_1_) public void processUseEntity(C02PacketUseEntity p_147340_1_)
{ {
@ -1063,7 +1091,7 @@
this.playerEntity.func_143004_u(); this.playerEntity.func_143004_u();
if (entity != null) if (entity != null)
@@ -805,9 +1498,53 @@ @@ -805,9 +1509,53 @@
if (this.playerEntity.getDistanceSqToEntity(entity) < d0) if (this.playerEntity.getDistanceSqToEntity(entity) < d0)
{ {
@ -1117,7 +1145,7 @@
} }
else if (p_147340_1_.func_149565_c() == C02PacketUseEntity.Action.ATTACK) else if (p_147340_1_.func_149565_c() == C02PacketUseEntity.Action.ATTACK)
{ {
@@ -819,6 +1556,13 @@ @@ -819,6 +1567,13 @@
} }
this.playerEntity.attackTargetEntityWithCurrentItem(entity); this.playerEntity.attackTargetEntityWithCurrentItem(entity);
@ -1131,7 +1159,7 @@
} }
} }
} }
@@ -834,8 +1578,19 @@ @@ -834,8 +1589,19 @@
case 1: case 1:
if (this.playerEntity.playerConqueredTheEnd) if (this.playerEntity.playerConqueredTheEnd)
{ {
@ -1152,7 +1180,7 @@
else if (this.playerEntity.getServerForPlayer().getWorldInfo().isHardcoreModeEnabled()) else if (this.playerEntity.getServerForPlayer().getWorldInfo().isHardcoreModeEnabled())
{ {
if (this.serverController.isSinglePlayer() && this.playerEntity.getCommandSenderName().equals(this.serverController.getServerOwner())) if (this.serverController.isSinglePlayer() && this.playerEntity.getCommandSenderName().equals(this.serverController.getServerOwner()))
@@ -871,17 +1626,461 @@ @@ -871,17 +1637,461 @@
public void processCloseWindow(C0DPacketCloseWindow p_147356_1_) public void processCloseWindow(C0DPacketCloseWindow p_147356_1_)
{ {
@ -1615,7 +1643,7 @@
if (ItemStack.areItemStacksEqual(p_147351_1_.func_149546_g(), itemstack)) if (ItemStack.areItemStacksEqual(p_147351_1_.func_149546_g(), itemstack))
{ {
this.playerEntity.playerNetServerHandler.sendPacket(new S32PacketConfirmTransaction(p_147351_1_.func_149548_c(), p_147351_1_.func_149547_f(), true)); this.playerEntity.playerNetServerHandler.sendPacket(new S32PacketConfirmTransaction(p_147351_1_.func_149548_c(), p_147351_1_.func_149547_f(), true));
@@ -903,6 +2102,12 @@ @@ -903,6 +2113,12 @@
} }
this.playerEntity.sendContainerAndContentsToPlayer(this.playerEntity.openContainer, arraylist); this.playerEntity.sendContainerAndContentsToPlayer(this.playerEntity.openContainer, arraylist);
@ -1628,7 +1656,7 @@
} }
} }
} }
@@ -925,9 +2130,61 @@ @@ -925,9 +2141,61 @@
boolean flag = p_147344_1_.func_149627_c() < 0; boolean flag = p_147344_1_.func_149627_c() < 0;
ItemStack itemstack = p_147344_1_.func_149625_d(); ItemStack itemstack = p_147344_1_.func_149625_d();
boolean flag1 = p_147344_1_.func_149627_c() >= 1 && p_147344_1_.func_149627_c() < 36 + InventoryPlayer.getHotbarSize(); boolean flag1 = p_147344_1_.func_149627_c() >= 1 && p_147344_1_.func_149627_c() < 36 + InventoryPlayer.getHotbarSize();
@ -1691,7 +1719,7 @@
if (flag1 && flag2 && flag3) if (flag1 && flag2 && flag3)
{ {
if (itemstack == null) if (itemstack == null)
@@ -956,6 +2213,11 @@ @@ -956,6 +2224,11 @@
public void processConfirmTransaction(C0FPacketConfirmTransaction p_147339_1_) public void processConfirmTransaction(C0FPacketConfirmTransaction p_147339_1_)
{ {
@ -1703,7 +1731,7 @@
Short oshort = (Short)this.field_147372_n.lookup(this.playerEntity.openContainer.windowId); Short oshort = (Short)this.field_147372_n.lookup(this.playerEntity.openContainer.windowId);
if (oshort != null && p_147339_1_.func_149533_d() == oshort.shortValue() && this.playerEntity.openContainer.windowId == p_147339_1_.func_149532_c() && !this.playerEntity.openContainer.isPlayerNotUsingContainer(this.playerEntity)) if (oshort != null && p_147339_1_.func_149533_d() == oshort.shortValue() && this.playerEntity.openContainer.windowId == p_147339_1_.func_149532_c() && !this.playerEntity.openContainer.isPlayerNotUsingContainer(this.playerEntity))
@@ -966,6 +2228,11 @@ @@ -966,6 +2239,11 @@
public void processUpdateSign(C12PacketUpdateSign p_147343_1_) public void processUpdateSign(C12PacketUpdateSign p_147343_1_)
{ {
@ -1715,7 +1743,7 @@
this.playerEntity.func_143004_u(); this.playerEntity.func_143004_u();
WorldServer worldserver = this.serverController.worldServerForDimension(this.playerEntity.dimension); WorldServer worldserver = this.serverController.worldServerForDimension(this.playerEntity.dimension);
@@ -980,6 +2247,7 @@ @@ -980,6 +2258,7 @@
if (!tileentitysign.func_145914_a() || tileentitysign.func_145911_b() != this.playerEntity) if (!tileentitysign.func_145914_a() || tileentitysign.func_145911_b() != this.playerEntity)
{ {
this.serverController.logWarning("Player " + this.playerEntity.getCommandSenderName() + " just tried to change non-editable sign"); this.serverController.logWarning("Player " + this.playerEntity.getCommandSenderName() + " just tried to change non-editable sign");
@ -1723,7 +1751,7 @@
return; return;
} }
} }
@@ -990,6 +2258,7 @@ @@ -990,6 +2269,7 @@
for (j = 0; j < 4; ++j) for (j = 0; j < 4; ++j)
{ {
boolean flag = true; boolean flag = true;
@ -1731,7 +1759,7 @@
if (p_147343_1_.func_149589_f()[j].length() > 15) if (p_147343_1_.func_149589_f()[j].length() > 15)
{ {
@@ -1018,7 +2287,29 @@ @@ -1018,7 +2298,29 @@
int k = p_147343_1_.func_149586_d(); int k = p_147343_1_.func_149586_d();
i = p_147343_1_.func_149585_e(); i = p_147343_1_.func_149585_e();
TileEntitySign tileentitysign1 = (TileEntitySign)tileentity; TileEntitySign tileentitysign1 = (TileEntitySign)tileentity;
@ -1762,7 +1790,7 @@
tileentitysign1.markDirty(); tileentitysign1.markDirty();
worldserver.markBlockForUpdate(j, k, i); worldserver.markBlockForUpdate(j, k, i);
} }
@@ -1041,7 +2332,22 @@ @@ -1041,7 +2343,22 @@
public void processPlayerAbilities(C13PacketPlayerAbilities p_147348_1_) public void processPlayerAbilities(C13PacketPlayerAbilities p_147348_1_)
{ {
@ -1786,7 +1814,7 @@
} }
public void processTabComplete(C14PacketTabComplete p_147341_1_) public void processTabComplete(C14PacketTabComplete p_147341_1_)
@@ -1068,7 +2374,6 @@ @@ -1068,7 +2385,6 @@
PacketBuffer packetbuffer; PacketBuffer packetbuffer;
ItemStack itemstack; ItemStack itemstack;
ItemStack itemstack1; ItemStack itemstack1;
@ -1794,7 +1822,7 @@
if ("MC|BEdit".equals(p_147349_1_.func_149559_c())) if ("MC|BEdit".equals(p_147349_1_.func_149559_c()))
{ {
packetbuffer = new PacketBuffer(Unpooled.wrappedBuffer(p_147349_1_.func_149558_e())); packetbuffer = new PacketBuffer(Unpooled.wrappedBuffer(p_147349_1_.func_149558_e()));
@@ -1093,16 +2398,18 @@ @@ -1093,16 +2409,18 @@
if (itemstack.getItem() == Items.writable_book && itemstack.getItem() == itemstack1.getItem()) if (itemstack.getItem() == Items.writable_book && itemstack.getItem() == itemstack1.getItem())
{ {
@ -1817,7 +1845,7 @@
} }
finally finally
{ {
@@ -1135,19 +2442,18 @@ @@ -1135,19 +2453,18 @@
{ {
if (itemstack.getItem() == Items.written_book && itemstack1.getItem() == Items.writable_book) if (itemstack.getItem() == Items.written_book && itemstack1.getItem() == Items.writable_book)
{ {
@ -1843,7 +1871,7 @@
} }
finally finally
{ {
@@ -1174,9 +2480,12 @@ @@ -1174,9 +2491,12 @@
((ContainerMerchant)container).setCurrentRecipeIndex(i); ((ContainerMerchant)container).setCurrentRecipeIndex(i);
} }
} }
@ -1857,7 +1885,7 @@
} }
} }
else if ("MC|AdvCdm".equals(p_147349_1_.func_149559_c())) else if ("MC|AdvCdm".equals(p_147349_1_.func_149559_c()))
@@ -1222,9 +2531,12 @@ @@ -1222,9 +2542,12 @@
this.playerEntity.addChatMessage(new ChatComponentTranslation("advMode.setCommand.success", new Object[] {s1})); this.playerEntity.addChatMessage(new ChatComponentTranslation("advMode.setCommand.success", new Object[] {s1}));
} }
} }
@ -1872,7 +1900,7 @@
} }
finally finally
{ {
@@ -1257,9 +2569,12 @@ @@ -1257,9 +2580,12 @@
tileentitybeacon.markDirty(); tileentitybeacon.markDirty();
} }
} }
@ -1887,7 +1915,7 @@
} }
} }
} }
@@ -1281,6 +2596,13 @@ @@ -1281,6 +2607,13 @@
containerrepair.updateItemName(""); containerrepair.updateItemName("");
} }
} }
@ -1901,7 +1929,7 @@
} }
} }
@@ -1292,6 +2614,21 @@ @@ -1292,6 +2625,21 @@
} }
} }

View File

@ -663,7 +663,7 @@
int i; int i;
Integer[] ids = DimensionManager.getIDs(this.tickCounter % 200 == 0); Integer[] ids = DimensionManager.getIDs(this.tickCounter % 200 == 0);
@@ -602,19 +905,21 @@ @@ -602,19 +905,22 @@
int id = ids[x]; int id = ids[x];
long j = System.nanoTime(); long j = System.nanoTime();
@ -673,6 +673,7 @@
+ //if (id == 0 || this.getAllowNether()) + //if (id == 0 || this.getAllowNether())
+ //{ + //{
WorldServer worldserver = DimensionManager.getWorld(id); WorldServer worldserver = DimensionManager.getWorld(id);
+ worldserver.timings.fullTick.startTiming(); // KCauldron
this.theProfiler.startSection(worldserver.getWorldInfo().getWorldName()); this.theProfiler.startSection(worldserver.getWorldInfo().getWorldName());
this.theProfiler.startSection("pools"); this.theProfiler.startSection("pools");
this.theProfiler.endSection(); this.theProfiler.endSection();
@ -688,7 +689,7 @@
this.theProfiler.startSection("tick"); this.theProfiler.startSection("tick");
FMLCommonHandler.instance().onPreWorldTick(worldserver); FMLCommonHandler.instance().onPreWorldTick(worldserver);
@@ -622,22 +927,46 @@ @@ -622,22 +928,46 @@
try try
{ {
@ -737,7 +738,7 @@
worldserver.addWorldInfoToCrashReport(crashreport); worldserver.addWorldInfoToCrashReport(crashreport);
throw new ReportedException(crashreport); throw new ReportedException(crashreport);
} }
@@ -645,10 +974,12 @@ @@ -645,10 +975,13 @@
FMLCommonHandler.instance().onPostWorldTick(worldserver); FMLCommonHandler.instance().onPostWorldTick(worldserver);
this.theProfiler.endSection(); this.theProfiler.endSection();
this.theProfiler.startSection("tracker"); this.theProfiler.startSection("tracker");
@ -747,11 +748,12 @@
this.theProfiler.endSection(); this.theProfiler.endSection();
this.theProfiler.endSection(); this.theProfiler.endSection();
- } - }
+ worldserver.timings.fullTick.stopTiming(); // KCauldron
+ // } // CraftBukkit + // } // CraftBukkit
worldTickTimes.get(id)[this.tickCounter % 100] = System.nanoTime() - j; worldTickTimes.get(id)[this.tickCounter % 100] = System.nanoTime() - j;
} }
@@ -656,15 +987,21 @@ @@ -656,15 +989,21 @@
this.theProfiler.endStartSection("dim_unloading"); this.theProfiler.endStartSection("dim_unloading");
DimensionManager.unloadWorlds(worldTickTimes); DimensionManager.unloadWorlds(worldTickTimes);
this.theProfiler.endStartSection("connection"); this.theProfiler.endStartSection("connection");
@ -773,7 +775,7 @@
this.theProfiler.endSection(); this.theProfiler.endSection();
} }
@@ -699,6 +1036,13 @@ @@ -699,6 +1038,13 @@
public WorldServer worldServerForDimension(int p_71218_1_) public WorldServer worldServerForDimension(int p_71218_1_)
{ {
@ -787,7 +789,7 @@
WorldServer ret = DimensionManager.getWorld(p_71218_1_); WorldServer ret = DimensionManager.getWorld(p_71218_1_);
if (ret == null) if (ret == null)
{ {
@@ -784,13 +1128,14 @@ @@ -784,13 +1130,14 @@
public List getPossibleCompletions(ICommandSender p_71248_1_, String p_71248_2_) public List getPossibleCompletions(ICommandSender p_71248_1_, String p_71248_2_)
{ {
@ -806,7 +808,7 @@
if (list != null) if (list != null)
{ {
@@ -798,40 +1143,25 @@ @@ -798,40 +1145,25 @@
while (iterator.hasNext()) while (iterator.hasNext())
{ {
@ -855,7 +857,7 @@
} }
public static MinecraftServer getServer() public static MinecraftServer getServer()
@@ -1034,7 +1364,7 @@ @@ -1034,7 +1366,7 @@
public boolean isServerInOnlineMode() public boolean isServerInOnlineMode()
{ {
@ -864,7 +866,7 @@
} }
public void setOnlineMode(boolean p_71229_1_) public void setOnlineMode(boolean p_71229_1_)
@@ -1124,7 +1454,7 @@ @@ -1124,7 +1456,7 @@
public NetworkSystem func_147137_ag() public NetworkSystem func_147137_ag()
{ {
@ -873,7 +875,7 @@
} }
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
@@ -1259,8 +1589,11 @@ @@ -1259,8 +1591,11 @@
{ {
Bootstrap.func_151354_b(); Bootstrap.func_151354_b();
@ -885,7 +887,7 @@
boolean flag = true; boolean flag = true;
String s = null; String s = null;
String s1 = "."; String s1 = ".";
@@ -1356,16 +1689,34 @@ @@ -1356,16 +1691,34 @@
{ {
dedicatedserver.setGuiEnabled(); dedicatedserver.setGuiEnabled();
} }
@ -926,7 +928,7 @@
} }
catch (Exception exception) catch (Exception exception)
{ {
@@ -1400,15 +1751,70 @@ @@ -1400,15 +1753,70 @@
@SideOnly(Side.SERVER) @SideOnly(Side.SERVER)
public String getPlugins() public String getPlugins()
{ {
@ -1002,7 +1004,7 @@
} }
@SideOnly(Side.SERVER) @SideOnly(Side.SERVER)
@@ -1455,9 +1861,213 @@ @@ -1455,9 +1863,213 @@
return this.serverStopped; return this.serverStopped;
} }

View File

@ -1166,7 +1166,17 @@
} }
public boolean func_147469_q(int p_147469_1_, int p_147469_2_, int p_147469_3_) public boolean func_147469_q(int p_147469_1_, int p_147469_2_, int p_147469_3_)
@@ -2718,7 +3258,15 @@ @@ -2666,7 +3206,9 @@
public void tick()
{
+ timings.weatherUpdate.startTiming(); // KCauldron
this.updateWeather();
+ timings.weatherUpdate.stopTiming(); // KCauldron
}
private void calculateInitialWeather()
@@ -2718,7 +3260,15 @@
if (i <= 0) if (i <= 0)
{ {
@ -1183,7 +1193,7 @@
} }
} }
@@ -2754,7 +3302,15 @@ @@ -2754,7 +3304,15 @@
if (j <= 0) if (j <= 0)
{ {
@ -1200,7 +1210,7 @@
} }
} }
@@ -2777,8 +3333,41 @@ @@ -2777,8 +3335,41 @@
protected void setActivePlayerChunksAndCheckLight() protected void setActivePlayerChunksAndCheckLight()
{ {
this.activeChunkSet.clear(); this.activeChunkSet.clear();
@ -1243,7 +1253,7 @@
int i; int i;
EntityPlayer entityplayer; EntityPlayer entityplayer;
int j; int j;
@@ -2788,17 +3377,28 @@ @@ -2788,17 +3379,28 @@
for (i = 0; i < this.playerEntities.size(); ++i) for (i = 0; i < this.playerEntities.size(); ++i)
{ {
entityplayer = (EntityPlayer)this.playerEntities.get(i); entityplayer = (EntityPlayer)this.playerEntities.get(i);
@ -1278,7 +1288,7 @@
} }
this.theProfiler.endSection(); this.theProfiler.endSection();
@@ -2810,7 +3410,7 @@ @@ -2810,7 +3412,7 @@
this.theProfiler.startSection("playerCheckLight"); this.theProfiler.startSection("playerCheckLight");
@ -1287,7 +1297,7 @@
{ {
i = this.rand.nextInt(this.playerEntities.size()); i = this.rand.nextInt(this.playerEntities.size());
entityplayer = (EntityPlayer)this.playerEntities.get(i); entityplayer = (EntityPlayer)this.playerEntities.get(i);
@@ -3280,12 +3880,23 @@ @@ -3280,12 +3882,23 @@
{ {
int i = 0; int i = 0;
@ -1314,7 +1324,7 @@
++i; ++i;
} }
} }
@@ -3298,9 +3909,10 @@ @@ -3298,9 +3911,10 @@
for (int i = 0; i < p_72868_1_.size(); ++i) for (int i = 0; i < p_72868_1_.size(); ++i)
{ {
Entity entity = (Entity)p_72868_1_.get(i); Entity entity = (Entity)p_72868_1_.get(i);
@ -1326,7 +1336,7 @@
this.onEntityAdded(entity); this.onEntityAdded(entity);
} }
} }
@@ -3308,14 +3920,25 @@ @@ -3308,14 +3922,25 @@
public void unloadEntities(List p_72828_1_) public void unloadEntities(List p_72828_1_)
{ {
@ -1354,7 +1364,7 @@
} }
public PathEntity getPathEntityToEntity(Entity p_72865_1_, Entity p_72865_2_, float p_72865_3_, boolean p_72865_4_, boolean p_72865_5_, boolean p_72865_6_, boolean p_72865_7_) public PathEntity getPathEntityToEntity(Entity p_72865_1_, Entity p_72865_2_, float p_72865_3_, boolean p_72865_4_, boolean p_72865_5_, boolean p_72865_6_, boolean p_72865_7_)
@@ -3464,6 +4087,12 @@ @@ -3464,6 +4089,12 @@
for (int i = 0; i < this.playerEntities.size(); ++i) for (int i = 0; i < this.playerEntities.size(); ++i)
{ {
EntityPlayer entityplayer1 = (EntityPlayer)this.playerEntities.get(i); EntityPlayer entityplayer1 = (EntityPlayer)this.playerEntities.get(i);
@ -1367,7 +1377,7 @@
double d5 = entityplayer1.getDistanceSq(p_72977_1_, p_72977_3_, p_72977_5_); double d5 = entityplayer1.getDistanceSq(p_72977_1_, p_72977_3_, p_72977_5_);
if ((p_72977_7_ < 0.0D || d5 < p_72977_7_ * p_72977_7_) && (d4 == -1.0D || d5 < d4)) if ((p_72977_7_ < 0.0D || d5 < p_72977_7_ * p_72977_7_) && (d4 == -1.0D || d5 < d4))
@@ -3489,7 +4118,12 @@ @@ -3489,7 +4120,12 @@
for (int i = 0; i < this.playerEntities.size(); ++i) for (int i = 0; i < this.playerEntities.size(); ++i)
{ {
EntityPlayer entityplayer1 = (EntityPlayer)this.playerEntities.get(i); EntityPlayer entityplayer1 = (EntityPlayer)this.playerEntities.get(i);
@ -1381,7 +1391,7 @@
if (!entityplayer1.capabilities.disableDamage && entityplayer1.isEntityAlive()) if (!entityplayer1.capabilities.disableDamage && entityplayer1.isEntityAlive())
{ {
double d5 = entityplayer1.getDistanceSq(p_72846_1_, p_72846_3_, p_72846_5_); double d5 = entityplayer1.getDistanceSq(p_72846_1_, p_72846_3_, p_72846_5_);
@@ -3612,11 +4246,11 @@ @@ -3612,11 +4248,11 @@
} }
} }
@ -1395,7 +1405,7 @@
} }
} }
} }
@@ -3660,6 +4294,18 @@ @@ -3660,6 +4296,18 @@
public void updateAllPlayersSleepingFlag() {} public void updateAllPlayersSleepingFlag() {}
@ -1414,7 +1424,7 @@
public float getWeightedThunderStrength(float p_72819_1_) public float getWeightedThunderStrength(float p_72819_1_)
{ {
return (this.prevThunderingStrength + (this.thunderingStrength - this.prevThunderingStrength) * p_72819_1_) * this.getRainStrength(p_72819_1_); return (this.prevThunderingStrength + (this.thunderingStrength - this.prevThunderingStrength) * p_72819_1_) * this.getRainStrength(p_72819_1_);
@@ -3932,8 +4578,8 @@ @@ -3932,8 +4580,8 @@
*/ */
public void addTileEntity(TileEntity entity) public void addTileEntity(TileEntity entity)
{ {
@ -1425,7 +1435,7 @@
{ {
dest.add(entity); dest.add(entity);
} }
@@ -4020,13 +4666,82 @@ @@ -4020,13 +4668,82 @@
public int countEntities(EnumCreatureType type, boolean forSpawnCount) public int countEntities(EnumCreatureType type, boolean forSpawnCount)
{ {
int count = 0; int count = 0;

View File

@ -150,7 +150,17 @@
public void tick() public void tick()
{ {
super.tick(); super.tick();
@@ -155,12 +245,19 @@ @@ -141,7 +231,9 @@
this.difficultySetting = EnumDifficulty.HARD;
}
+ timings.cleanupCache.startTiming(); // KCauldron
this.provider.worldChunkMgr.cleanupCache();
+ timings.cleanupCache.stopTiming(); // KCauldron
if (this.areAllPlayersAsleep())
{
@@ -155,12 +247,19 @@
} }
this.theProfiler.startSection("mobSpawner"); this.theProfiler.startSection("mobSpawner");
@ -173,7 +183,7 @@
this.theProfiler.endStartSection("chunkSource"); this.theProfiler.endStartSection("chunkSource");
this.chunkProvider.unloadQueuedChunks(); this.chunkProvider.unloadQueuedChunks();
int j = this.calculateSkylightSubtracted(1.0F); int j = this.calculateSkylightSubtracted(1.0F);
@@ -170,30 +267,47 @@ @@ -170,30 +269,47 @@
this.skylightSubtracted = j; this.skylightSubtracted = j;
} }
@ -189,7 +199,7 @@
this.theProfiler.endStartSection("tickPending"); this.theProfiler.endStartSection("tickPending");
+ timings.doTickPending.startTiming(); // Spigot + timings.doTickPending.startTiming(); // Spigot
this.tickUpdates(false); this.tickUpdates(false);
+ timings.doChunkUnload.stopTiming(); // Spigot + timings.doTickPending.stopTiming(); // Spigot
this.theProfiler.endStartSection("tickBlocks"); this.theProfiler.endStartSection("tickBlocks");
+ timings.doTickTiles.startTiming(); // Spigot + timings.doTickTiles.startTiming(); // Spigot
this.func_147456_g(); this.func_147456_g();
@ -222,7 +232,7 @@
} }
public BiomeGenBase.SpawnListEntry spawnRandomCreature(EnumCreatureType p_73057_1_, int p_73057_2_, int p_73057_3_, int p_73057_4_) public BiomeGenBase.SpawnListEntry spawnRandomCreature(EnumCreatureType p_73057_1_, int p_73057_2_, int p_73057_3_, int p_73057_4_)
@@ -212,7 +326,7 @@ @@ -212,7 +328,7 @@
{ {
EntityPlayer entityplayer = (EntityPlayer)iterator.next(); EntityPlayer entityplayer = (EntityPlayer)iterator.next();
@ -231,7 +241,7 @@
{ {
this.allPlayersSleeping = false; this.allPlayersSleeping = false;
break; break;
@@ -240,7 +354,25 @@ @@ -240,7 +356,25 @@
private void resetRainAndThunder() private void resetRainAndThunder()
{ {
@ -258,7 +268,7 @@
} }
public boolean areAllPlayersAsleep() public boolean areAllPlayersAsleep()
@@ -248,19 +380,26 @@ @@ -248,19 +382,26 @@
if (this.allPlayersSleeping && !this.isRemote) if (this.allPlayersSleeping && !this.isRemote)
{ {
Iterator iterator = this.playerEntities.iterator(); Iterator iterator = this.playerEntities.iterator();
@ -288,7 +298,7 @@
return false; return false;
} }
else else
@@ -302,15 +441,29 @@ @@ -302,15 +443,29 @@
super.func_147456_g(); super.func_147456_g();
int i = 0; int i = 0;
int j = 0; int j = 0;
@ -324,7 +334,7 @@
this.func_147467_a(k, l, chunk); this.func_147467_a(k, l, chunk);
this.theProfiler.endStartSection("tickChunk"); this.theProfiler.endStartSection("tickChunk");
chunk.func_150804_b(false); chunk.func_150804_b(false);
@@ -346,12 +499,32 @@ @@ -346,12 +501,32 @@
if (this.isBlockFreezableNaturally(j1 + k, l1 - 1, k1 + l)) if (this.isBlockFreezableNaturally(j1 + k, l1 - 1, k1 + l))
{ {
@ -359,7 +369,7 @@
} }
if (this.isRaining()) if (this.isRaining())
@@ -388,6 +561,7 @@ @@ -388,6 +563,7 @@
if (block.getTickRandomly()) if (block.getTickRandomly())
{ {
++i; ++i;
@ -367,7 +377,7 @@
block.updateTick(this, j2 + k, l2 + extendedblockstorage.getYLocation(), k2 + l, this.rand); block.updateTick(this, j2 + k, l2 + extendedblockstorage.getYLocation(), k2 + l, this.rand);
} }
} }
@@ -396,6 +570,13 @@ @@ -396,6 +572,13 @@
this.theProfiler.endSection(); this.theProfiler.endSection();
} }
@ -381,7 +391,7 @@
} }
public boolean isBlockTickScheduledThisTick(int p_147477_1_, int p_147477_2_, int p_147477_3_, Block p_147477_4_) public boolean isBlockTickScheduledThisTick(int p_147477_1_, int p_147477_2_, int p_147477_3_, Block p_147477_4_)
@@ -474,7 +655,7 @@ @@ -474,7 +657,7 @@
public void updateEntities() public void updateEntities()
{ {
@ -390,7 +400,7 @@
{ {
if (this.updateEntityTick++ >= 1200) if (this.updateEntityTick++ >= 1200)
{ {
@@ -506,7 +687,16 @@ @@ -506,7 +689,16 @@
{ {
if (i > 1000) if (i > 1000)
{ {
@ -408,7 +418,7 @@
} }
this.theProfiler.startSection("cleaning"); this.theProfiler.startSection("cleaning");
@@ -651,7 +841,37 @@ @@ -651,7 +843,37 @@
protected IChunkProvider createChunkProvider() protected IChunkProvider createChunkProvider()
{ {
IChunkLoader ichunkloader = this.saveHandler.getChunkLoader(this.provider); IChunkLoader ichunkloader = this.saveHandler.getChunkLoader(this.provider);
@ -447,7 +457,7 @@
return this.theChunkProviderServer; return this.theChunkProviderServer;
} }
@@ -659,29 +879,31 @@ @@ -659,29 +881,31 @@
{ {
ArrayList arraylist = new ArrayList(); ArrayList arraylist = new ArrayList();
@ -494,7 +504,7 @@
return arraylist; return arraylist;
} }
@@ -733,7 +955,28 @@ @@ -733,7 +957,28 @@
int i = 0; int i = 0;
int j = this.provider.getAverageGroundLevel(); int j = this.provider.getAverageGroundLevel();
int k = 0; int k = 0;
@ -523,7 +533,7 @@
if (chunkposition != null) if (chunkposition != null)
{ {
i = chunkposition.chunkPosX; i = chunkposition.chunkPosX;
@@ -876,6 +1119,20 @@ @@ -876,6 +1121,20 @@
public boolean addWeatherEffect(Entity p_72942_1_) public boolean addWeatherEffect(Entity p_72942_1_)
{ {
@ -544,7 +554,7 @@
if (super.addWeatherEffect(p_72942_1_)) if (super.addWeatherEffect(p_72942_1_))
{ {
this.mcServer.getConfigurationManager().sendToAllNear(p_72942_1_.posX, p_72942_1_.posY, p_72942_1_.posZ, 512.0D, this.provider.dimensionId, new S2CPacketSpawnGlobalEntity(p_72942_1_)); this.mcServer.getConfigurationManager().sendToAllNear(p_72942_1_.posX, p_72942_1_.posY, p_72942_1_.posZ, 512.0D, this.provider.dimensionId, new S2CPacketSpawnGlobalEntity(p_72942_1_));
@@ -894,13 +1151,23 @@ @@ -894,13 +1153,23 @@
public Explosion newExplosion(Entity p_72885_1_, double p_72885_2_, double p_72885_4_, double p_72885_6_, float p_72885_8_, boolean p_72885_9_, boolean p_72885_10_) public Explosion newExplosion(Entity p_72885_1_, double p_72885_2_, double p_72885_4_, double p_72885_6_, float p_72885_8_, boolean p_72885_9_, boolean p_72885_10_)
{ {
@ -569,7 +579,7 @@
if (!p_72885_10_) if (!p_72885_10_)
{ {
explosion.affectedBlockPositions.clear(); explosion.affectedBlockPositions.clear();
@@ -977,7 +1244,7 @@ @@ -977,7 +1246,7 @@
{ {
boolean flag = this.isRaining(); boolean flag = this.isRaining();
super.updateWeather(); super.updateWeather();
@ -578,7 +588,7 @@
if (this.prevRainingStrength != this.rainingStrength) if (this.prevRainingStrength != this.rainingStrength)
{ {
this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(7, this.rainingStrength), this.provider.dimensionId); this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(7, this.rainingStrength), this.provider.dimensionId);
@@ -988,10 +1255,6 @@ @@ -988,10 +1257,6 @@
this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(8, this.thunderingStrength), this.provider.dimensionId); this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(8, this.thunderingStrength), this.provider.dimensionId);
} }
@ -589,7 +599,7 @@
if (flag != this.isRaining()) if (flag != this.isRaining())
{ {
if (flag) if (flag)
@@ -1006,6 +1269,33 @@ @@ -1006,6 +1271,33 @@
this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(7, this.rainingStrength), this.provider.dimensionId); this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(7, this.rainingStrength), this.provider.dimensionId);
this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(8, this.thunderingStrength), this.provider.dimensionId); this.mcServer.getConfigurationManager().sendPacketToAllPlayersInDimension(new S2BPacketChangeGameState(8, this.thunderingStrength), this.provider.dimensionId);
} }
@ -623,7 +633,7 @@
} }
protected int func_152379_p() protected int func_152379_p()
@@ -1069,4 +1359,51 @@ @@ -1069,4 +1361,51 @@
this(); this();
} }
} }

View File

@ -12,6 +12,7 @@ import kcauldron.updater.KCauldronUpdater;
import kcauldron.updater.KVersionRetriever; import kcauldron.updater.KVersionRetriever;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.server.MinecraftServer; import net.minecraft.server.MinecraftServer;
import net.minecraft.world.WorldServer;
import net.minecraftforge.server.command.ForgeCommand; import net.minecraftforge.server.command.ForgeCommand;
public class KCauldronCommand extends Command { public class KCauldronCommand extends Command {
@ -92,8 +93,8 @@ public class KCauldronCommand extends Command {
double worldTPS = Math.min(1000.0 / worldTickTime, 20); double worldTPS = Math.min(1000.0 / worldTickTime, 20);
sender.sendMessage(String.format("%s[%d] %s%s %s- %s%.2fms / %.2ftps", ChatColor.GOLD, dimensionId, sender.sendMessage(String.format("%s[%d] %s%s %s- %s%.2fms / %.2ftps", ChatColor.GOLD, dimensionId,
current ? ChatColor.GREEN : ChatColor.YELLOW, displayName, ChatColor.RESET, ChatColor.DARK_RED, worldTickTime, current ? ChatColor.GREEN : ChatColor.YELLOW, displayName, ChatColor.RESET, ChatColor.DARK_RED, worldTickTime,
worldTPS)); worldTPS));
} }
} }
double meanTickTime = mean(server.tickTimeArray) * 1.0E-6D; double meanTickTime = mean(server.tickTimeArray) * 1.0E-6D;

View File

@ -136,6 +136,9 @@ public class SpigotTimings {
public final CustomTimingsHandler tracker; public final CustomTimingsHandler tracker;
public final CustomTimingsHandler doTick; public final CustomTimingsHandler doTick;
public final CustomTimingsHandler tickEntities; public final CustomTimingsHandler tickEntities;
public final CustomTimingsHandler weatherUpdate;
public final CustomTimingsHandler cleanupCache;
public final CustomTimingsHandler fullTick;
public final CustomTimingsHandler syncChunkLoadTimer; public final CustomTimingsHandler syncChunkLoadTimer;
public final CustomTimingsHandler syncChunkLoadDataTimer; public final CustomTimingsHandler syncChunkLoadDataTimer;
@ -173,6 +176,9 @@ public class SpigotTimings {
tracker = new CustomTimingsHandler(name + "tracker"); tracker = new CustomTimingsHandler(name + "tracker");
doTick = new CustomTimingsHandler(name + "doTick"); doTick = new CustomTimingsHandler(name + "doTick");
tickEntities = new CustomTimingsHandler(name + "tickEntities"); tickEntities = new CustomTimingsHandler(name + "tickEntities");
weatherUpdate = new CustomTimingsHandler(name + "weatherUpdate");
cleanupCache = new CustomTimingsHandler(name + "cleanupCache");
fullTick = new CustomTimingsHandler(name + "fullTick");
} }
} }
} }