Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
timaxa007 написал(а):
private static final ResourceLocation texture = new ResourceLocation("dayz:textures/gui/vidgets.png");
public static final IModelCustom model = AdvancedModelLoader.loadModel(new ResourceLocation("dayz:textures/gui/backpack.obj"));
timaxa007 написал(а):Так укажи правильный путь.
В assets нужно создать или найти папку "dayz",Kbac написал(а):Код:public static final IModelCustom model = AdvancedModelLoader.loadModel(new ResourceLocation("dayz:textures/gui/backpack.obj"));
Нет (ибо там очень много когда).Kbac написал(а):Можешь тогда кинуть src.
timaxa007 написал(а):В assets нужно создать или найти папку "dayz",Kbac написал(а):Код:public static final IModelCustom model = AdvancedModelLoader.loadModel(new ResourceLocation("dayz:textures/gui/backpack.obj"));
затем создать или найти папку "textures",
затем создать или найти папку "gui",
затем перекинуть файл "backpack.obj",
Нет (ибо там очень много когда).Kbac написал(а):Можешь тогда кинуть src.
timaxa007 написал(а):Нужно в Init'е или preInit'е или postInit'е регистрировать.
Нужно на клиентской стороне регистрировать (как вариант через прокси).
@SideOnly(Side.CLIENT)
@Mod.EventHandler
public void preInit(cpw.mods.fml.common.event.FMLPreInitializationEvent event) {
MinecraftForge.EVENT_BUS.register(new EventsForgeClient());
}
Мдя, я думал попроще будетtimaxa007 написал(а):Подробнее... http://forum.mcmodding.ru/%D0%A2%D0%B5%D0%BC%D0%B0-%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D0%B0-%D1%81-%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D1%8F%D0%BC%D0%B8
Если короче, то можно попробовать так:
В главном классе.Код:@SideOnly(Side.CLIENT) @Mod.EventHandler public void preInit(cpw.mods.fml.common.event.FMLPreInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new EventsForgeClient()); }
import org.lwjgl.opengl.GL11;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.RenderPlayerEvent;
import net.minecraftforge.client.model.AdvancedModelLoader;
import net.minecraftforge.client.model.IModelCustom;
public class EventsForgeClient {
Minecraft mc = Minecraft.getMinecraft();
private static final ResourceLocation texture = new ResourceLocation("dayz:textures/model/gui/backpack.png");
public static final IModelCustom model = AdvancedModelLoader.loadModel(new ResourceLocation("dayz:textures/model/gui/backpack.obj"));
@SubscribeEvent
public void renderItem(RenderPlayerEvent.Specials.Pre event) {
EntityPlayer player = event.entityPlayer;
double p_x = player.lastTickPosX + (player.posX - player.lastTickPosX);
double p_y = player.lastTickPosY + (player.posY - player.lastTickPosY);
double p_z = player.lastTickPosZ + (player.posZ - player.lastTickPosZ);
double dx = player.posX - p_x;
double dy = player.posY - p_y;
double dz = player.posZ - p_z;
GL11.glPushMatrix();
GL11.glTranslated(dx, dy, dz);
GL11.glTranslatef(0F, 0.125F, 0F);
GL11.glRotatef(180F, 1F, 0F, 0F);
GL11.glTranslatef(
event.renderer.modelBipedMain.bipedBody.rotationPointX * event.partialRenderTick,
event.renderer.modelBipedMain.bipedBody.rotationPointY * event.partialRenderTick,
event.renderer.modelBipedMain.bipedBody.rotationPointZ * event.partialRenderTick);
GL11.glRotatef(event.renderer.modelBipedMain.bipedBody.rotateAngleZ * (180F / (float)Math.PI), 0F, 0F, 1F);
GL11.glRotatef(event.renderer.modelBipedMain.bipedBody.rotateAngleY * (180F / (float)Math.PI), 0F, 1F, 0F);
GL11.glRotatef(event.renderer.modelBipedMain.bipedBody.rotateAngleX * (180F / (float)Math.PI), 1F, 0F, 0F);
GL11.glTranslatef(0F, -1.375F, 0F);
mc.renderEngine.bindTexture(texture);
model.renderAll();
GL11.glPopMatrix();
}
}
/второй
import com.mojang.realmsclient.client.Request.Post;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraftforge.common.MinecraftForge;
@Mod(modid = dayz.modid, version = dayz.version)
public class dayz {
public static final String modid = "Dayz";
public static final String version = "1.0.0";
public class EventsForgeClient {
}
@SideOnly(Side.CLIENT)
@Mod.EventHandler
public void preInit(cpw.mods.fml.common.event.FMLPreInitializationEvent event) {
MinecraftForge.EVENT_BUS.register(new EventsForgeClient());
}
}
Убери из этого класса вот этот код:Kbac написал(а):Код:@Mod(modid = dayz.modid, version = dayz.version) public class dayz { public static final String modid = "Dayz"; public static final String version = "1.0.0"; public class EventsForgeClient { } @SideOnly(Side.CLIENT) @Mod.EventHandler public void preInit(cpw.mods.fml.common.event.FMLPreInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new EventsForgeClient()); } }
public class EventsForgeClient {
}
timaxa007 написал(а):Убери из этого класса вот этот код:Kbac написал(а):Код:@Mod(modid = dayz.modid, version = dayz.version) public class dayz { public static final String modid = "Dayz"; public static final String version = "1.0.0"; public class EventsForgeClient { } @SideOnly(Side.CLIENT) @Mod.EventHandler public void preInit(cpw.mods.fml.common.event.FMLPreInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new EventsForgeClient()); } }
Код:public class EventsForgeClient { }
А модель будет рендериться ко всем игрокам? Например если на сервер зайти.timaxa007 написал(а):Подробнее... http://forum.mcmodding.ru/%D0%A2%D0%B5%D0%BC%D0%B0-%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D0%B0-%D1%81-%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D1%8F%D0%BC%D0%B8
Если короче, то можно попробовать так: