Halfway through ticking- won't compile
This commit is contained in:
parent
8c79b9b946
commit
49be023eab
6 changed files with 77 additions and 12 deletions
|
@ -33,7 +33,7 @@ public abstract class BaseMod implements IWorldGenerator, IPickupNotifier, IDisp
|
||||||
* @param minecraftInstance
|
* @param minecraftInstance
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public final boolean doTickInGame(Object minecraftInstance)
|
public final boolean doTickInGame(float clock, Object minecraftInstance)
|
||||||
{
|
{
|
||||||
return onTickInGame((Minecraft)minecraftInstance);
|
return onTickInGame((Minecraft)minecraftInstance);
|
||||||
}
|
}
|
||||||
|
|
|
@ -720,12 +720,15 @@ public class ModLoader
|
||||||
{
|
{
|
||||||
ModLoaderModContainer mlmc = (ModLoaderModContainer) ModLoaderModContainer.findContainerFor(mod);
|
ModLoaderModContainer mlmc = (ModLoaderModContainer) ModLoaderModContainer.findContainerFor(mod);
|
||||||
mlmc.setTicking(enable);
|
mlmc.setTicking(enable);
|
||||||
|
mlmc.setClockTicks(useClock);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void setInGUIHook(BaseMod mod, boolean enable, boolean useClock)
|
public static void setInGUIHook(BaseMod mod, boolean enable, boolean useClock)
|
||||||
{
|
{
|
||||||
//TODO
|
ModLoaderModContainer mlmc = (ModLoaderModContainer) ModLoaderModContainer.findContainerFor(mod);
|
||||||
|
mlmc.setGUITicking(enable);
|
||||||
|
mlmc.setGUIClockTicks(useClock);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -60,7 +60,7 @@ public class FMLCommonHandler
|
||||||
*/
|
*/
|
||||||
private IFMLSidedHandler sidedDelegate;
|
private IFMLSidedHandler sidedDelegate;
|
||||||
|
|
||||||
private int uniqueEntityListId = 250;
|
private int uniqueEntityListId = 220;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -307,4 +307,14 @@ public class FMLCommonHandler
|
||||||
}
|
}
|
||||||
languagePack.putAll(langPack);
|
languagePack.putAll(langPack);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param modLoaderModContainer
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public boolean shouldTickMod(ModContainer modContainer)
|
||||||
|
{
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,14 +55,20 @@ public interface ModContainer
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
String getName();
|
String getName();
|
||||||
|
/**
|
||||||
|
* Should the mod tick
|
||||||
|
* @param clock
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
boolean shouldTick(float clock);
|
||||||
/**
|
/**
|
||||||
* A tick has started
|
* A tick has started
|
||||||
*/
|
*/
|
||||||
void tickStart();
|
void tickStart(float clock);
|
||||||
/**
|
/**
|
||||||
* A tick has ended
|
* A tick has ended
|
||||||
*/
|
*/
|
||||||
void tickEnd();
|
void tickEnd(float clock);
|
||||||
/**
|
/**
|
||||||
* Does this mod match the supplied mod?
|
* Does this mod match the supplied mod?
|
||||||
* @param mod
|
* @param mod
|
||||||
|
|
|
@ -47,6 +47,9 @@ public class ModLoaderModContainer implements ModContainer
|
||||||
private ArrayList<String> dependencies;
|
private ArrayList<String> dependencies;
|
||||||
private ArrayList<String> preDependencies;
|
private ArrayList<String> preDependencies;
|
||||||
private ArrayList<String> postDependencies;
|
private ArrayList<String> postDependencies;
|
||||||
|
private boolean clockTicks;
|
||||||
|
private boolean guiTicks;
|
||||||
|
private boolean guiClockTicks;
|
||||||
public ModLoaderModContainer(Class <? extends BaseMod > modClazz, File modSource)
|
public ModLoaderModContainer(Class <? extends BaseMod > modClazz, File modSource)
|
||||||
{
|
{
|
||||||
this.modClazz = modClazz;
|
this.modClazz = modClazz;
|
||||||
|
@ -278,15 +281,18 @@ public class ModLoaderModContainer implements ModContainer
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void tickStart()
|
public boolean shouldTick(float clock)
|
||||||
{
|
{
|
||||||
if (isTicking)
|
return isTicking && ((!clockTicks || clock!=lastClock ) || ()
|
||||||
{
|
return false;
|
||||||
isTicking = mod.doTickInGame(FMLCommonHandler.instance().getMinecraftInstance());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void tickEnd()
|
public void tickStart(float clock)
|
||||||
|
{
|
||||||
|
isTicking = mod.doTickInGame(clock, FMLCommonHandler.instance().getMinecraftInstance());
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void tickEnd(float clock)
|
||||||
{
|
{
|
||||||
// NOOP for modloader
|
// NOOP for modloader
|
||||||
}
|
}
|
||||||
|
@ -526,4 +532,28 @@ public class ModLoaderModContainer implements ModContainer
|
||||||
{
|
{
|
||||||
return mod;
|
return mod;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param useClock
|
||||||
|
*/
|
||||||
|
public void setClockTicks(boolean useClock)
|
||||||
|
{
|
||||||
|
this.clockTicks=useClock;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param enable
|
||||||
|
*/
|
||||||
|
public void setGUITicking(boolean enable)
|
||||||
|
{
|
||||||
|
this.guiTicks=enable;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param useClock
|
||||||
|
*/
|
||||||
|
public void setGUIClockTicks(boolean useClock)
|
||||||
|
{
|
||||||
|
this.guiClockTicks=useClock;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,3 +25,19 @@
|
||||||
this.func_6250_c("Startup");
|
this.func_6250_c("Startup");
|
||||||
this.field_6286_O = new OpenGlCapsChecker();
|
this.field_6286_O = new OpenGlCapsChecker();
|
||||||
this.field_6301_A.func_340_a(this.field_6304_y);
|
this.field_6301_A.func_340_a(this.field_6304_y);
|
||||||
|
@@ -1340,6 +1344,7 @@
|
||||||
|
this.func_28001_B();
|
||||||
|
}
|
||||||
|
|
||||||
|
+ FMLClientHandler.instance().onPreTick();
|
||||||
|
Profiler.func_40663_a("stats");
|
||||||
|
this.field_25001_G.func_27178_d();
|
||||||
|
Profiler.func_40661_c("gui");
|
||||||
|
@@ -1730,6 +1735,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
Profiler.func_40662_b();
|
||||||
|
+ FMLClientHandler.instance().onPostTick();
|
||||||
|
this.field_6287_N = System.currentTimeMillis();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue