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.
Сплешскрин:MrCreppo написал(а):Собственно наткнулся на сплэшскрин (лого моджанга + форджевские элементы). Скажем мне захотелось сделать свой сплэшскрин. Как это можно осуществить?
@SideOnly(Side.CLIENT)
@SubscribeEvent
public void onGuiOpenEvent(GuiOpenEvent event)
{
if ((event.gui instanceof GuiMainMenu))
{
event.gui = new NEW_YOBA_SWAG_YOLO_MainMenu();
}
}
fieldName может быть методом?Agravaine написал(а):ReflectionHelper.setPrivateValue(GuiMainMenu.class, instance, "fieldName", newObject);
MrCreppo написал(а):Скажем так я почитал о рефлексии и посмотрел пару примеров и понял как изменить приватные примитивы, но вот как поменять ссылку на файл... Может подскажите как?
@Mod(modid = ExampleMod.MODID, version = ExampleMod.VERSION)
public class ExampleMod
{
public static final String MODID = "examplemod";
public static final String VERSION = "1.0";
private static final ResourceLocation myPng = new ResourceLocation("examplemod:my_YOBA_splash.png");
@EventHandler
public void preInit(FMLPreInitializationEvent event) throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException, SecurityException
{
this.changeConstant(Minecraft.class.getDeclaredField("locationMojangPng"), myPng);
}
public static void changeConstant(Field field, Object value) throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException
{
field.setAccessible(true);
int modifiers = field.getModifiers();
Field modifierField = field.getClass().getDeclaredField("modifiers");
modifiers = modifiers & ~Modifier.FINAL;
modifierField.setAccessible(true);
modifierField.setInt(field, modifiers);
field.set(null, value);
field.setAccessible(false);
}
}