Commit 6e6559c6ad98a8ca39880f276b8198d8614b242a

Authored by Mumfrey
1 parent 4dc2ac38

LiteLoader for 1.4.6

java/com/mumfrey/liteloader/RenderListener.java
@@ -14,7 +14,20 @@ public interface RenderListener extends LiteMod @@ -14,7 +14,20 @@ public interface RenderListener extends LiteMod
14 */ 14 */
15 public abstract void onRender(); 15 public abstract void onRender();
16 16
  17 + /**
  18 + * Called immediately before the current GUI is rendered
  19 + *
  20 + * @param currentScreen Current screen (if any)
  21 + */
17 public abstract void onRenderGui(GuiScreen currentScreen); 22 public abstract void onRenderGui(GuiScreen currentScreen);
18 23
  24 + /**
  25 + * Called when the world is rendered
  26 + */
19 public abstract void onRenderWorld(); 27 public abstract void onRenderWorld();
  28 +
  29 + /**
  30 + * Called immediately after the world/camera transform is initialised
  31 + */
  32 + public abstract void onSetupCameraTransform();
20 } 33 }
java/com/mumfrey/liteloader/core/FilteringClassLoader.java deleted 100644 → 0
1 -package com.mumfrey.liteloader.core;  
2 -  
3 -import java.io.IOException;  
4 -import java.io.InputStream;  
5 -import java.net.URL;  
6 -import java.net.URLClassLoader;  
7 -import java.util.Enumeration;  
8 -  
9 -import net.minecraft.client.Minecraft;  
10 -  
11 -public class FilteringClassLoader extends URLClassLoader  
12 -{  
13 - public FilteringClassLoader()  
14 - {  
15 - super(new URL[0], Minecraft.class.getClassLoader());  
16 - }  
17 -  
18 - /* (non-Javadoc)  
19 - * @see java.lang.ClassLoader#loadClass(java.lang.String)  
20 - */  
21 - @Override  
22 - public Class<?> loadClass(String name) throws ClassNotFoundException  
23 - {  
24 - System.out.println("Parent is trying to load class " + name);  
25 - return super.loadClass(name);  
26 - }  
27 -  
28 - /* (non-Javadoc)  
29 - * @see java.lang.ClassLoader#findClass(java.lang.String)  
30 - */  
31 - @Override  
32 - protected Class<?> findClass(String name) throws ClassNotFoundException  
33 - {  
34 - System.out.println("findClass " + name);  
35 - // TODO Auto-generated method stub  
36 - return super.findClass(name);  
37 - }  
38 -  
39 - /* (non-Javadoc)  
40 - * @see java.lang.ClassLoader#getResource(java.lang.String)  
41 - */  
42 - @Override  
43 - public URL getResource(String name)  
44 - {  
45 - System.out.println("getResource " + name);  
46 - // TODO Auto-generated method stub  
47 - return super.getResource(name);  
48 - }  
49 -  
50 - /* (non-Javadoc)  
51 - * @see java.lang.ClassLoader#getResources(java.lang.String)  
52 - */  
53 - @Override  
54 - public Enumeration<URL> getResources(String name) throws IOException  
55 - {  
56 - System.out.println("getResources " + name);  
57 - // TODO Auto-generated method stub  
58 - return super.getResources(name);  
59 - }  
60 -  
61 - /* (non-Javadoc)  
62 - * @see java.lang.ClassLoader#findResource(java.lang.String)  
63 - */  
64 - @Override  
65 - public URL findResource(String name)  
66 - {  
67 - System.out.println("findResource " + name);  
68 - // TODO Auto-generated method stub  
69 - return super.findResource(name);  
70 - }  
71 -  
72 - /* (non-Javadoc)  
73 - * @see java.lang.ClassLoader#findResources(java.lang.String)  
74 - */  
75 - @Override  
76 - public Enumeration<URL> findResources(String name) throws IOException  
77 - {  
78 - System.out.println("findResources " + name);  
79 - // TODO Auto-generated method stub  
80 - return super.findResources(name);  
81 - }  
82 -  
83 - /* (non-Javadoc)  
84 - * @see java.lang.ClassLoader#getResourceAsStream(java.lang.String)  
85 - */  
86 - @Override  
87 - public InputStream getResourceAsStream(String name)  
88 - {  
89 - System.out.println("getResourceAsStream " + name);  
90 - // TODO Auto-generated method stub  
91 - return super.getResourceAsStream(name);  
92 - }  
93 -  
94 - /* (non-Javadoc)  
95 - * @see java.lang.ClassLoader#getPackage(java.lang.String)  
96 - */  
97 - @Override  
98 - protected Package getPackage(String name)  
99 - {  
100 - System.out.println("getPackage " + name);  
101 - // TODO Auto-generated method stub  
102 - return super.getPackage(name);  
103 - }  
104 -  
105 - /* (non-Javadoc)  
106 - * @see java.lang.ClassLoader#getPackages()  
107 - */  
108 - @Override  
109 - protected Package[] getPackages()  
110 - {  
111 - System.out.println("getPackages");  
112 - // TODO Auto-generated method stub  
113 - return super.getPackages();  
114 - }  
115 -  
116 - /* (non-Javadoc)  
117 - * @see java.lang.ClassLoader#findLibrary(java.lang.String)  
118 - */  
119 - @Override  
120 - protected String findLibrary(String libname)  
121 - {  
122 - System.out.println("findLibrary " + libname);  
123 - // TODO Auto-generated method stub  
124 - return super.findLibrary(libname);  
125 - }  
126 -  
127 - /* (non-Javadoc)  
128 - * @see java.lang.ClassLoader#setDefaultAssertionStatus(boolean)  
129 - */  
130 - @Override  
131 - public synchronized void setDefaultAssertionStatus(boolean enabled)  
132 - {  
133 - System.out.println("setDefaultAssertionStatus " + enabled);  
134 - // TODO Auto-generated method stub  
135 - super.setDefaultAssertionStatus(enabled);  
136 - }  
137 -  
138 - /* (non-Javadoc)  
139 - * @see java.lang.ClassLoader#setPackageAssertionStatus(java.lang.String, boolean)  
140 - */  
141 - @Override  
142 - public synchronized void setPackageAssertionStatus(String packageName, boolean enabled)  
143 - {  
144 - System.out.println("setPackageAssertionStatus " + packageName + " " + enabled);  
145 - // TODO Auto-generated method stub  
146 - super.setPackageAssertionStatus(packageName, enabled);  
147 - }  
148 -  
149 - /* (non-Javadoc)  
150 - * @see java.lang.ClassLoader#setClassAssertionStatus(java.lang.String, boolean)  
151 - */  
152 - @Override  
153 - public synchronized void setClassAssertionStatus(String className, boolean enabled)  
154 - {  
155 - System.out.println("setClassAssertionStatus " + className + " " + enabled);  
156 - // TODO Auto-generated method stub  
157 - super.setClassAssertionStatus(className, enabled);  
158 - }  
159 -  
160 - /* (non-Javadoc)  
161 - * @see java.lang.ClassLoader#clearAssertionStatus()  
162 - */  
163 - @Override  
164 - public synchronized void clearAssertionStatus()  
165 - {  
166 - System.out.println("clearAssertionStatus");  
167 - // TODO Auto-generated method stub  
168 - super.clearAssertionStatus();  
169 - }  
170 -}  
java/com/mumfrey/liteloader/core/HookProfiler.java
@@ -139,7 +139,12 @@ public class HookProfiler extends Profiler @@ -139,7 +139,12 @@ public class HookProfiler extends Profiler
139 { 139 {
140 loader.onRender(); 140 loader.onRender();
141 } 141 }
142 - 142 +
  143 + if ("frustrum".equalsIgnoreCase(sectionName) && "level".equalsIgnoreCase(sectionStack.getLast()))
  144 + {
  145 + loader.onSetupCameraTransform();
  146 + }
  147 +
143 if ("animateTick".equals(sectionName)) tick = true; 148 if ("animateTick".equals(sectionName)) tick = true;
144 sectionStack.add(sectionName); 149 sectionStack.add(sectionName);
145 super.startSection(sectionName); 150 super.startSection(sectionName);
java/com/mumfrey/liteloader/core/LiteLoader.java
@@ -28,7 +28,7 @@ import net.minecraft.src.Timer; @@ -28,7 +28,7 @@ import net.minecraft.src.Timer;
28 * LiteLoader is a simple loader which provides tick events to loaded mods 28 * LiteLoader is a simple loader which provides tick events to loaded mods
29 * 29 *
30 * @author Adam Mummery-Smith 30 * @author Adam Mummery-Smith
31 - * @version 1.4.5_02 31 + * @version 1.4.6
32 */ 32 */
33 @SuppressWarnings("rawtypes") 33 @SuppressWarnings("rawtypes")
34 public final class LiteLoader implements FilenameFilter 34 public final class LiteLoader implements FilenameFilter
@@ -36,7 +36,7 @@ public final class LiteLoader implements FilenameFilter @@ -36,7 +36,7 @@ public final class LiteLoader implements FilenameFilter
36 /** 36 /**
37 * Liteloader version 37 * Liteloader version
38 */ 38 */
39 - private static final String LOADER_VERSION = "1.4.5_02"; 39 + private static final String LOADER_VERSION = "1.4.6";
40 40
41 /** 41 /**
42 * Loader revision, can be used by mods to determine whether the loader is sufficiently up-to-date 42 * Loader revision, can be used by mods to determine whether the loader is sufficiently up-to-date
@@ -48,7 +48,7 @@ public final class LiteLoader implements FilenameFilter @@ -48,7 +48,7 @@ public final class LiteLoader implements FilenameFilter
48 * against the version.txt value in mod files to prevent outdated mods being 48 * against the version.txt value in mod files to prevent outdated mods being
49 * loaded!!! 49 * loaded!!!
50 */ 50 */
51 - private static final String[] SUPPORTED_VERSIONS = { "1.4.4", "1.4.5" }; 51 + private static final String[] SUPPORTED_VERSIONS = { "1.4.6" };
52 52
53 /** 53 /**
54 * LiteLoader is a singleton, this is the singleton instance 54 * LiteLoader is a singleton, this is the singleton instance
@@ -995,6 +995,15 @@ public final class LiteLoader implements FilenameFilter @@ -995,6 +995,15 @@ public final class LiteLoader implements FilenameFilter
995 } 995 }
996 996
997 /** 997 /**
  998 + * Called immediately after the world/camera transform is initialised
  999 + */
  1000 + public void onSetupCameraTransform()
  1001 + {
  1002 + for (RenderListener renderListener : renderListeners)
  1003 + renderListener.onSetupCameraTransform();
  1004 + }
  1005 +
  1006 + /**
998 * Callback from the tick hook, ticks all tickable mods 1007 * Callback from the tick hook, ticks all tickable mods
999 * 1008 *
1000 * @param tick True if this is a new tick (otherwise it's just a new frame) 1009 * @param tick True if this is a new tick (otherwise it's just a new frame)