7575import net .minecraftforge .client .event .ModelRegistryEvent ;
7676import net .minecraftforge .client .model .ModelLoader ;
7777import net .minecraftforge .client .resource .IResourceType ;
78+ import net .minecraftforge .client .resource .ISelectiveResourceReloadListener ;
7879import net .minecraftforge .common .MinecraftForge ;
7980import net .minecraftforge .event .RegistryEvent ;
8081import net .minecraftforge .fml .client .FMLClientHandler ;
102103
103104import static com .modularwarfare .ModularWarfare .contentPacks ;
104105
105- public class ClientProxy extends CommonProxy {
106+ public class ClientProxy extends CommonProxy implements ISelectiveResourceReloadListener {
106107
107108 public static String modelDir = "com.modularwarfare.client.model." ;
108109
@@ -276,8 +277,7 @@ public void load() {
276277 public void setupLayers (RenderPlayer renderer ) {
277278 renderer .addLayer (new RenderLayerBackpack (renderer , renderer .getMainModel ().bipedBodyWear ));
278279 renderer .addLayer (new RenderLayerBody (renderer , renderer .getMainModel ().bipedBodyWear ));
279- // Disabled for animation third person test
280- // renderer.addLayer(new RenderLayerHeldGun(renderer));
280+ renderer .addLayer (new RenderLayerHeldGun (renderer ));
281281 }
282282
283283 @ Override
@@ -286,9 +286,28 @@ public void init() {
286286 if (ModUtil .isMac ()){
287287 ModConfig .INSTANCE .model_optimization = false ;
288288 }
289+
290+ ((IReloadableResourceManager ) Minecraft .getMinecraft ().getResourceManager ()).registerReloadListener (new ISelectiveResourceReloadListener () {
291+
292+ @ Override
293+ public void onResourceManagerReload (IResourceManager resourceManager ,
294+ Predicate <IResourceType > resourcePredicate ) {
295+ loadTextures ();
296+ }
297+
298+ });
299+
289300 if (!Minecraft .getMinecraft ().getFramebuffer ().isStencilEnabled ()) {
290301 Minecraft .getMinecraft ().getFramebuffer ().enableStencil ();
291302 }
303+
304+ ((IReloadableResourceManager ) Minecraft .getMinecraft ().getResourceManager ()).registerReloadListener (new ISelectiveResourceReloadListener () {
305+ @ Override
306+ public void onResourceManagerReload (IResourceManager resourceManager , Predicate <IResourceType > resourcePredicate ) {
307+ loadTextures ();
308+ }
309+ });
310+ loadTextures ();
292311 }
293312
294313 public void loadTextures () {
@@ -961,4 +980,9 @@ public void playFlashSound(EntityPlayer entityPlayer) {
961980 Minecraft .getMinecraft ().getSoundHandler ().playSound (new PositionedSoundRecord (ModSounds .FLASHED , SoundCategory .PLAYERS , 5.0f , 0.2f , (float ) entityPlayer .posX , (float ) entityPlayer .posY , (float ) entityPlayer .posZ ));
962981 Minecraft .getMinecraft ().getSoundHandler ().playSound (new PositionedSoundRecord (ModSounds .FLASHED , SoundCategory .PLAYERS , 5.0f , 0.1f , (float ) entityPlayer .posX , (float ) entityPlayer .posY , (float ) entityPlayer .posZ ));
963982 }
983+
984+ @ Override
985+ public void onResourceManagerReload (IResourceManager resourceManager , Predicate <IResourceType > resourcePredicate ) {
986+
987+ }
964988}
0 commit comments