For some reason getTotalWorldTime isn't incrementing client-side in some cases when the doDaylightCycle is off, so replace them with alternatives wherever possible
What's really weird is sometimes it works just fine, even in client-side stuff
This commit is contained in:
@@ -147,7 +147,7 @@ public class BlockThorns extends BlockBush implements ITileEntityProvider {
|
||||
}
|
||||
}
|
||||
|
||||
if(world.getTotalWorldTime() % 20 == 0) target.attackEntityFrom(source, Spells.forest_of_thorns.getProperty(Spell.DAMAGE).floatValue());
|
||||
if(target.ticksExisted % 20 == 0) target.attackEntityFrom(source, Spells.forest_of_thorns.getProperty(Spell.DAMAGE).floatValue());
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -174,8 +174,7 @@ public class BlockThorns extends BlockBush implements ITileEntityProvider {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onLeftClickBlockEvent(PlayerInteractEvent.LeftClickBlock event){
|
||||
if(!event.getWorld().isRemote && event.getWorld().getTotalWorldTime() % 20 == 0
|
||||
&& event.getWorld().getBlockState(event.getPos()).getBlock() == WizardryBlocks.thorns){
|
||||
if(!event.getWorld().isRemote && event.getWorld().getBlockState(event.getPos()).getBlock() == WizardryBlocks.thorns){
|
||||
applyThornDamage(event.getWorld(), event.getPos(), event.getEntity());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ public class RenderShadowWard {
|
||||
GlStateManager.pushMatrix();
|
||||
|
||||
GlStateManager.translate(0, 0, 1.2);
|
||||
GlStateManager.rotate(player.world.getTotalWorldTime() * -2, 0, 0, 1);
|
||||
GlStateManager.rotate(player.ticksExisted * -2, 0, 0, 1);
|
||||
GlStateManager.scale(1.1, 1.1, 1.1);
|
||||
|
||||
Tessellator tessellator = Tessellator.getInstance();
|
||||
@@ -116,7 +116,7 @@ public class RenderShadowWard {
|
||||
BufferBuilder buffer = tessellator.getBuffer();
|
||||
|
||||
GlStateManager.translate(0, 1.2, 0);
|
||||
GlStateManager.rotate(player.world.getTotalWorldTime() * -2, 0, 0, 1);
|
||||
GlStateManager.rotate(player.ticksExisted * -2, 0, 0, 1);
|
||||
GlStateManager.scale(1.1, 1.1, 1.1);
|
||||
|
||||
buffer.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX);
|
||||
|
||||
+2
-2
@@ -25,7 +25,7 @@ public class RenderImbuementAltar extends TileEntitySpecialRenderer<TileEntityIm
|
||||
GlStateManager.translate((float)x + 0.5F, (float)y + 1.4F, (float)z + 0.5F);
|
||||
GlStateManager.rotate(180, 0F, 0F, 1F);
|
||||
|
||||
float t = (getWorld().getTotalWorldTime() + partialTicks);
|
||||
float t = Minecraft.getMinecraft().player.ticksExisted + partialTicks;
|
||||
GlStateManager.translate(0, 0.05f * MathHelper.sin(t/15), 0);
|
||||
|
||||
this.renderItem(tileentity, t);
|
||||
@@ -54,7 +54,7 @@ public class RenderImbuementAltar extends TileEntitySpecialRenderer<TileEntityIm
|
||||
|
||||
private void renderRays(TileEntityImbuementAltar tileentity, float partialTicks){
|
||||
|
||||
float t = (getWorld().getTotalWorldTime() + partialTicks);
|
||||
float t = Minecraft.getMinecraft().player.ticksExisted + partialTicks;
|
||||
|
||||
Tessellator tessellator = Tessellator.getInstance();
|
||||
BufferBuilder buffer = tessellator.getBuffer();
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package electroblob.wizardry.spell;
|
||||
|
||||
import electroblob.wizardry.Wizardry;
|
||||
import electroblob.wizardry.item.SpellActions;
|
||||
import electroblob.wizardry.registry.WizardryItems;
|
||||
import electroblob.wizardry.util.*;
|
||||
@@ -90,11 +91,11 @@ public class RayOfPurification extends SpellRay {
|
||||
if(caster != null){
|
||||
ParticleBuilder.create(Type.BEAM).entity(caster).pos(origin.subtract(caster.getPositionVector()))
|
||||
.length(distance).clr(1, 0.6f + 0.3f * world.rand.nextFloat(), 0.2f)
|
||||
.scale(MathHelper.sin(world.getTotalWorldTime() * 0.2f) * 0.1f + 1.4f).spawn(world);
|
||||
.scale(MathHelper.sin(caster.ticksExisted * 0.2f) * 0.1f + 1.4f).spawn(world);
|
||||
}else{
|
||||
ParticleBuilder.create(Type.BEAM).pos(origin).target(origin.add(direction.scale(distance)))
|
||||
.clr(1, 0.6f + 0.3f * world.rand.nextFloat(), 0.2f)
|
||||
.scale(MathHelper.sin(world.getTotalWorldTime() * 0.2f) * 0.1f + 1.4f).spawn(world);
|
||||
.scale(MathHelper.sin(Wizardry.proxy.getThePlayer().ticksExisted * 0.2f) * 0.1f + 1.4f).spawn(world);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user