Commit aa74fddfcd090d0c979abee06451ce6d69e34b0c

Authored by Mumfrey
1 parent 655d8a93

Obtain renderPartialTicks via mixin

src/client/java/com/mumfrey/liteloader/client/LiteLoaderEventBrokerClient.java
... ... @@ -9,24 +9,9 @@ import org.lwjgl.input.Mouse;
9 9 import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
10 10 import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
11 11  
12   -import com.mumfrey.liteloader.ChatRenderListener;
13   -import com.mumfrey.liteloader.EntityRenderListener;
14   -import com.mumfrey.liteloader.FrameBufferListener;
15   -import com.mumfrey.liteloader.GameLoopListener;
16   -import com.mumfrey.liteloader.HUDRenderListener;
17   -import com.mumfrey.liteloader.InitCompleteListener;
18   -import com.mumfrey.liteloader.OutboundChatFilter;
19   -import com.mumfrey.liteloader.OutboundChatListener;
20   -import com.mumfrey.liteloader.PlayerClickListener;
  12 +import com.mumfrey.liteloader.*;
21 13 import com.mumfrey.liteloader.PlayerInteractionListener.MouseButton;
22   -import com.mumfrey.liteloader.PostRenderListener;
23   -import com.mumfrey.liteloader.PreRenderListener;
24   -import com.mumfrey.liteloader.RenderListener;
25   -import com.mumfrey.liteloader.ScreenshotListener;
26   -import com.mumfrey.liteloader.Tickable;
27   -import com.mumfrey.liteloader.ViewportListener;
28 14 import com.mumfrey.liteloader.client.overlays.IEntityRenderer;
29   -import com.mumfrey.liteloader.client.overlays.IMinecraft;
30 15 import com.mumfrey.liteloader.common.LoadingProgress;
31 16 import com.mumfrey.liteloader.core.InterfaceRegistrationDelegate;
32 17 import com.mumfrey.liteloader.core.LiteLoader;
... ... @@ -51,7 +36,6 @@ import net.minecraft.client.shader.Framebuffer;
51 36 import net.minecraft.entity.Entity;
52 37 import net.minecraft.network.play.client.CPacketChatMessage;
53 38 import net.minecraft.server.integrated.IntegratedServer;
54   -import net.minecraft.util.Timer;
55 39 import net.minecraft.util.text.ITextComponent;
56 40  
57 41 public class LiteLoaderEventBrokerClient extends LiteLoaderEventBroker<Minecraft, IntegratedServer> implements IResourceManagerReloadListener
... ... @@ -427,14 +411,9 @@ public class LiteLoaderEventBrokerClient extends LiteLoaderEventBroker&lt;Minecraft
427 411 /**
428 412 * Callback from the tick hook, ticks all tickable mods
429 413 */
430   - public void onTick()
  414 + public void onTick(boolean clock, float partialTicks)
431 415 {
432 416 this.profiler.endStartSection("litemods");
433   -
434   - Timer minecraftTimer = ((IMinecraft)this.engine.getClient()).getTimer();
435   - float partialTicks = minecraftTimer.field_194147_b; // TODO propagate
436   - boolean clock = minecraftTimer.elapsedTicks > 0;
437   -
438 417 Minecraft minecraft = this.engine.getClient();
439 418  
440 419 // Flag indicates whether we are in game at the moment
... ...
src/client/java/com/mumfrey/liteloader/client/mixin/MixinMinecraft.java
... ... @@ -35,6 +35,8 @@ public abstract class MixinMinecraft implements IMinecraft
35 35 @Shadow @Final private List<IResourcePack> defaultResourcePacks;
36 36 @Shadow private String serverName;
37 37 @Shadow private int serverPort;
  38 + @Shadow private boolean isGamePaused;
  39 + @Shadow private float field_193996_ah;
38 40  
39 41 @Shadow abstract void resize(int width, int height);
40 42 @Shadow private void clickMouse() {}
... ... @@ -79,7 +81,9 @@ public abstract class MixinMinecraft implements IMinecraft
79 81 ))
80 82 private void onTick(CallbackInfo ci)
81 83 {
82   - this.broker.onTick();
  84 + boolean clock = this.timer.elapsedTicks > 0;
  85 + float partialTicks = this.isGamePaused ? this.field_193996_ah : this.timer.field_194147_b;
  86 + this.broker.onTick(clock, partialTicks);
83 87 }
84 88  
85 89 @Redirect(method = "runGameLoop()V", at = @At(
... ...