Commit 6e6559c6ad98a8ca39880f276b8198d8614b242a
1 parent
4dc2ac38
LiteLoader for 1.4.6
Showing
4 changed files
with
31 additions
and
174 deletions
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) |