Jump to content

Recommended Posts

Posted

Oops, not bright right now:P

 

Changed Clientproxy.registerRendering(); > ClientProxy client = new ClientProxy();

 

But still doesn't render :/

  • Replies 80
  • Created
  • Last Reply

Top Posters In This Topic

Posted
  On 7/23/2013 at 10:07 PM, hydroflame said:

you need to underatand the difference between static and not static

A site said:

static means that the method belongs to the class and not any instance of the class

But I really can't get any further with that :/

I'm in the process of learning java still from Vswe, but I really want to know how to do this!

Posted
  On 7/23/2013 at 10:23 PM, hydroflame said:

im on a phone ill answerin 15 min

okay, but I won't respond till tomorrow (for me, in about 9 hours) because I'm gonna sleep now.

 

Thanks for all the help you've given me so far, even though it hasn't gotton rid of the problem , it was still usefull :D

 

I shall give you a "Thank you"

Posted

ok this is going to be a long post, im assuming you dont know exactly what an object is because static and object go togheter

 

ill be using this class during this lesson:

 

public class SimpleClass{
public static int staticInt = 0;
public int memberInt = 0;

public void memberDoSomething(){
	memberInt++;
	System.out.println("memberInt: "+memberInt);
}

public void memberDoSomethingStatic(){
	staticInt++;
	System.out.println("staticInt: "+staticInt);
}

public void staticDoSomething(){
	staticInt++;
	System.out.println("staticInt: "+staticInt);
}
}

 

so basicly an object is an instance (or representation ) of a class during a certain state

 

whenever you do "new Somethign();" you are creating an object of type "Something"  (minecraft example: new Item(), new Block(), new TileEntity() etc)

 

class are kinda like template for object, basicly if i create above multiple object of type SimpleClass

SimpleClass c1 = new SimpleClass();
SimpleClass c2 = new SimpleClass();

i have create twice the same object from the same Class so technicly they should be the same

EXCEPT when you alter their state

 

like this:

c1.memberInt = 2;

 

after executing this line, c1.memberInt is 2 and c2.memberInt is 0;

why? because they are 2 different object, their state are independant when it comes to MEMBER variables and method

now theres also something called staticInt... lets change it for fun

 

c1.staticInt = 4;

 

after executing this line, BOTH c2.staticInt and c1.staticInt will be equal to 4, STATIC mean that its the same for every object of that class

 

now heres the catch

 

you can call static method and variable from a member context BUT NOT THE OTHER WAY AROUND

calling c1.staticInt  is using staticInt (a static variable ) from c1 (an object) basibly if you're using an object you're using it in the context of this particular object

 

to call something from a STATIC context, you usually call the EXACT class name

SimpleClass.staticDoSomething();

 

this line above is valid.  when you use the exact class name you are saying "hey btw im using a static context here" and staticDoSomething is ALSO static so it works

 

if we were executing all the code so far it would print "staticInt: 5" and staticInt would be equal to 5

 

now you CANNOT call member code from a static context

 

the lack of the keyword static in from of memberDoSomething() means that

SimpleClass.memberDoSomething();

 

is absolutelly invalid

 

heres why:

 

by calling SimpleClass. wtv  you're saying that theres is no object that you want to take the values from (no c1, no c2 or any other isntance)  so basicly calling SimpleClass.memberInt does not make any sens because in a static context memberInt does not even exists. suppose you created 1000 000 SimpleClass (by doing new SimpleClass()). which memberInt are you refering to?

 

so if i link this to your minecraft problem, calling:

ClientProxy.registerRenderers();

 

does not make ANY sens because you dont specificly tell the program from which object this NON-STATIC method should be called from

 

basciyl what you should be doing is something like this:

//somewhere in your code in the declaration of item, block, and other
public CommonProxy proxy;

//inside your init/load/preinit method
proxy.registerRenderers();

 

now before you ask i KNOW that in your code you NEVER do

proxy = new ClientProxy();

 

thats because forge does this for you behing your back (sneaky bastard i know)

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/23/2013 at 11:09 PM, hydroflame said:

ok this is going to be a long post, im assuming you dont know exactly what an object is because static and object go togheter

 

ill be using this class during this lesson:

 

public class SimpleClass{
public static int staticInt = 0;
public int memberInt = 0;

public void memberDoSomething(){
	memberInt++;
	System.out.println("memberInt: "+memberInt);
}

public void memberDoSomethingStatic(){
	staticInt++;
	System.out.println("staticInt: "+staticInt);
}

public void staticDoSomething(){
	staticInt++;
	System.out.println("staticInt: "+staticInt);
}
}

 

so basicly an object is an instance (or representation ) of a class during a certain state

 

whenever you do "new Somethign();" you are creating an object of type "Something"  (minecraft example: new Item(), new Block(), new TileEntity() etc)

 

class are kinda like template for object, basicly if i create above multiple object of type SimpleClass

SimpleClass c1 = new SimpleClass();
SimpleClass c2 = new SimpleClass();

i have create twice the same object from the same Class so technicly they should be the same

EXCEPT when you alter their state

 

like this:

c1.memberInt = 2;

 

after executing this line, c1.memberInt is 2 and c2.memberInt is 0;

why? because they are 2 different object, their state are independant when it comes to MEMBER variables and method

now theres also something called staticInt... lets change it for fun

 

c1.staticInt = 4;

 

after executing this line, BOTH c2.staticInt and c1.staticInt will be equal to 4, STATIC mean that its the same for every object of that class

 

now heres the catch

 

you can call static method and variable from a member context BUT NOT THE OTHER WAY AROUND

calling c1.staticInt  is using staticInt (a static variable ) from c1 (an object) basibly if you're using an object you're using it in the context of this particular object

 

to call something from a STATIC context, you usually call the EXACT class name

SimpleClass.staticDoSomething();

 

this line above is valid.  when you use the exact class name you are saying "hey btw im using a static context here" and staticDoSomething is ALSO static so it works

 

if we were executing all the code so far it would print "staticInt: 5" and staticInt would be equal to 5

 

now you CANNOT call member code from a static context

 

the lack of the keyword static in from of memberDoSomething() means that

SimpleClass.memberDoSomething();

 

is absolutelly invalid

 

heres why:

 

by calling SimpleClass. wtv  you're saying that theres is no object that you want to take the values from (no c1, no c2 or any other isntance)  so basicly calling SimpleClass.memberInt does not make any sens because in a static context memberInt does not even exists. suppose you created 1000 000 SimpleClass (by doing new SimpleClass()). which memberInt are you refering to?

 

so if i link this to your minecraft problem, calling:

ClientProxy.registerRenderers();

 

does not make ANY sens because you dont specificly tell the program from which object this NON-STATIC method should be called from

 

basciyl what you should be doing is something like this:

//somewhere in your code in the declaration of item, block, and other
public CommonProxy proxy;

//inside your init/load/preinit method
proxy.registerRenderers();

 

now before you ask i KNOW that in your code you NEVER do

proxy = new ClientProxy();

 

thats because forge does this for you behing your back (sneaky bastard i know)

Okay, so I did that. And it gave me this console error:

 

  Reveal hidden contents

 

Then I tried moving it into:

@SidedProxy(clientSide = "assets.blutricity.client.ClientProxy", serverSide = "assets.blutricity.common.CommonProxy")
public CommonProxy proxy;

Which gave me (I believe) the exact same error:

 

  Reveal hidden contents

 

Then I tried making it static, which didn't give me an error BUT it did give me the System.out.println(line) in the console.

So I checked in-game, but the model still didn't render.

So there must be something wrong with the model, right?

Posted

1 with the debugging 101 skill you just got, you could have checked if you could println in your render method

2 if you check at the error logs it says that

 

Attempted to load a proxy type assets.blutricity.client.ClientProxy into assets.blutricity.common.Mainclass.proxy, but the field is not static

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 1:56 PM, hydroflame said:

1 with the debugging 101 skill you just got, you could have checked if you could println in your render method

2 if you check at the error logs it says that

 

Attempted to load a proxy type assets.blutricity.client.ClientProxy into assets.blutricity.common.Mainclass.proxy, but the field is not static

 

Used the debugging 101 skill in the TileEntitySolarPanelRenderer, but there was no line. So that means that the problem is in there. But I can't figure out what the problem is :(

Posted

no if a System.out.println("text") isnt appareing that mean the problem is elsewhere!

the fact that it doesnt appear mean that this code is never executed

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 2:47 PM, hydroflame said:

no if a System.out.println("text") isnt appareing that mean the problem is elsewhere!

the fact that it doesnt appear mean that this code is never executed

And when it IS appearing there is a problem?

Posted

when the println is appearing this would mean that this method is executed, meaning the whole rendering code is executed and there would be a problem starting there, but since its not executed you knwo theres a problem BEFORE rendering

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 2:50 PM, hydroflame said:

when the println is appearing this would mean that this method is executed, meaning the whole rendering code is executed and there would be a problem starting there, but since its not executed you knwo theres a problem BEFORE rendering

well, then there is a problem in clientproxy as you can see a few posts above

Posted

change the declaration of

public CommonProxy proxy

to

public static CommonProxy proxy

 

and then try to access registerRenderers() in a non-static way (proxy.registerRenderers())

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 3:05 PM, hydroflame said:

change the declaration of

public CommonProxy proxy

to

public static CommonProxy proxy

 

and then try to access registerRenderers() in a non-static way (proxy.registerRenderers())

Did that in this way:

 

package assets.blutricity.client;

import assets.blutricity.common.CommonProxy;
import assets.blutricity.common.TileEntitySolarPanel;
import assets.blutricity.common.TileEntitySolarPanelRenderer;
import net.minecraftforge.client.MinecraftForgeClient;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.RenderingRegistry;

public class ClientProxy extends CommonProxy
{
@Override
public void registerRenderers()
{
	System.out.println("HELLOOOOOO");
	ClientRegistry.bindTileEntitySpecialRenderer(TileEntitySolarPanel.class, new TileEntitySolarPanelRenderer());

}
}

Main class:

 

  Reveal hidden contents

 

And it still doesn't render :(

And in the console it still says the System.out.println("text");

Posted

ah ok, hum thsi is due to the fact that registerRenderers() in your client proxy and common proxy have slightly different name

 

basicly at the begining of the clientproxy class you say

extends CommonProxy

 

this mean that you want everything in Commonproxy should ALSO be in Clientproxy, but since they have slightly different names. it calls the registerRend somethign in the common proxy, not the client one

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 3:31 PM, hydroflame said:

ah ok, hum thsi is due to the fact that registerRenderers() in your client proxy and common proxy have slightly different name

 

basicly at the begining of the clientproxy class you say

extends CommonProxy

 

this mean that you want everything in Commonproxy should ALSO be in Clientproxy, but since they have slightly different names. it calls the registerRend somethign in the common proxy, not the client one

So I  should put the code from clientproxy > commonproxy

or delete the extends commonproxy

Posted

if you delete "extends CommonProxy" it will give you errors because remember in your main mod file it says

public static CommonProxy

 

and the fact that you have extends CommonProxy means that you can consider a ClientProxy LIKE a CommonProxy, if you remove that they will be 2 completelly different things

 

so option 1 BUT remove the body  aka DO NOT register the renderer in the common proxy, just copy the method declaration

 

aka

in client proxy

public void doSomething(){
//code
}

in common proxy
public void doSomething(){
//NO CODE HERE
}

 

you see both method have the same declaration "public void doSomething()" so since your client proxy is declaring the same thign again, the code from the client proxy will be called because it "Override" the one from the common proxy

 

this is also why sometimes we put

 

@Override, meaning we actually want to do THIS, and not that our extended class says to do

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 3:42 PM, hydroflame said:

if you delete "extends CommonProxy" it will give you errors because remember in your main mod file it says

public static CommonProxy

 

and the fact that you have extends CommonProxy means that you can consider a ClientProxy LIKE a CommonProxy, if you remove that they will be 2 completelly different things

 

so option 1 BUT remove the body  aka DO NOT register the renderer in the common proxy, just copy the method declaration

 

aka

in client proxy

public void doSomething(){
//code
}

in common proxy
public void doSomething(){
//NO CODE HERE
}

 

you see both method have the same declaration "public void doSomething()" so since your client proxy is declaring the same thign again, the code from the client proxy will be called because it "Override" the one from the common proxy

 

this is also why sometimes we put

 

@Override, meaning we actually want to do THIS, and not that our extended class says to do

So if I'm correct it should be like this:

package assets.blutricity.common;

import cpw.mods.fml.client.registry.ClientRegistry;

public class CommonProxy 
{


public void registerRenderers()
{


}
}

package assets.blutricity.client;

import assets.blutricity.common.CommonProxy;
import assets.blutricity.common.TileEntitySolarPanel;
import assets.blutricity.common.TileEntitySolarPanelRenderer;
import net.minecraftforge.client.MinecraftForgeClient;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.RenderingRegistry;

public class ClientProxy extends CommonProxy
{
@Override
public void registerRenderers()
{
	System.out.println("HELLOOOOOO");
	ClientRegistry.bindTileEntitySpecialRenderer(TileEntitySolarPanel.class, new TileEntitySolarPanelRenderer());

}
}

package assets.blutricity.common;

import assets.blutricity.client.ClientProxy;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;

@Mod(modid = Mainclass.modid, name = "Project: Blu", version = "1.0")
@NetworkMod(clientSideRequired = true, serverSideRequired = false, channels = {"craftable_end_portal"})
public class Mainclass
{
public static final String modid = "blutricity";

public static Block BluFurnaceIdle;
public static Block BluFurnaceLit;
public static Block BluAlloyFurnaceIdle;
public static Block BluAlloyFurnaceLit;
public static Block SolarPanel;

public static Block BatteryBox;
public static Block AlloyWire;
public static Block kv_10_Wire;
public static Block MV_1_Wire;
public static Block VoltageTransformer;
public static Block Thermopile;
public static Block ChargingBench;

public static Item BluMotor;
public static Item BluSilicon;
public static Item BluIngot;
public static Item CopperCoil;
    public static Item TinIngot;
    public static Item CopperIngot;
    public static Item BrassIngot;
    public static Item SilverIngot;
    public static Item Nikolite;
    public static Item Battery;
    
    public static Item VoltMeter;


@SidedProxy(clientSide = "assets.blutricity.client.ClientProxy", serverSide = "assets.blutricity.common.CommonProxy")
[b]public static CommonProxy proxy;
[/b]@Instance
public static Mainclass instance = new Mainclass();
private GuiHandler guihandler = new GuiHandler();


@PreInit
public void preInit(FMLPreInitializationEvent event)
{
//Blocks
BluFurnaceIdle = new BluFurnace(1000, false).setHardness(5.0F).setUnlocalizedName("blufurnaceidle").setCreativeTab(BluTab);
BluFurnaceLit = new BluFurnace(1001, true).setHardness(5.0F).setUnlocalizedName("blufurnacelit");
BluAlloyFurnaceIdle = new BluAlloyFurnace(1002, false).setHardness(5.0F).setUnlocalizedName("bluealloyidle").setCreativeTab(BluTab);
BluAlloyFurnaceLit = new BluAlloyFurnace(1003, true).setHardness(5.0F).setUnlocalizedName("blualloylit");
SolarPanel = new SolarPanel(1004).setHardness(5.0F).setUnlocalizedName("solarpanel").setCreativeTab(BluTab);
//BatteryBox = new BatteryBox(1005).setHardness(5.0F).setUnlocalizedName("batterybox").setCreativeTab(BluTab);

//Items
BluMotor = new BluMotor(15000).setUnlocalizedName("blumotor").setCreativeTab(BluTab);
BluSilicon = new BluSilicon(15001).setUnlocalizedName("blusilicon").setCreativeTab(BluTab);
BluIngot = new BluIngot(15002).setUnlocalizedName("bluingot").setCreativeTab(BluTab);	
CopperCoil = new CopperCoil(15003).setUnlocalizedName("coppercoil").setCreativeTab(BluTab);
TinIngot = new TinIngot(15004).setUnlocalizedName("tiningot").setCreativeTab(BluTab);
CopperIngot = new CopperIngot(15005).setUnlocalizedName("copperingot").setCreativeTab(BluTab);
SilverIngot = new SilverIngot(15006).setUnlocalizedName("silveringot").setCreativeTab(BluTab);
BrassIngot = new BrassIngot(15007).setUnlocalizedName("brassingot").setCreativeTab(BluTab);
Nikolite = new Nikolite(15008).setUnlocalizedName("nikolite").setCreativeTab(BluTab);
Battery = new Battery(15009).setUnlocalizedName("battery").setCreativeTab(BluTab);

NetworkRegistry.instance().registerGuiHandler(this, guihandler);

GameRegistry.registerTileEntity(TileEntitySolarPanel.class, "TileEntitySolarPanel");
GameRegistry.registerTileEntity(TileEntityBluFurnace.class, "TileEntityBluFurnace");

LanguageRegistry.instance().addStringLocalization("itemGroup.BluTab", "en_US", "Project Blu");
LanguageRegistry.addName(BluFurnaceIdle, "Blulectric Furnace");
LanguageRegistry.addName(BluFurnaceLit, "");
LanguageRegistry.addName(BluAlloyFurnaceIdle, "Blulectric Alloy Furnace");
LanguageRegistry.addName(BluAlloyFurnaceLit, "");
LanguageRegistry.addName(BluMotor, "Blulectric Motor");
LanguageRegistry.addName(BluSilicon, "Blue Doped Wafer");
LanguageRegistry.addName(BluIngot, "Blue Alloy Ingot");
LanguageRegistry.addName(CopperCoil, "Copper Coil");
LanguageRegistry.addName(SolarPanel, "Solar Panel");
LanguageRegistry.addName(Battery, "RT Battery");
LanguageRegistry.addName(Nikolite, "Nikolite");
LanguageRegistry.addName(CopperIngot, "Copper Ingot");
LanguageRegistry.addName(TinIngot, "Tin Ingot");
LanguageRegistry.addName(SilverIngot, "Silver Ingot");
LanguageRegistry.addName(BrassIngot, "Brass Ingot");
//LanguageRegistry.addName(BatteryBox, "Battery Box");
//LanguageRegistry.addName(AlloyWire, "Blue Alloy Wire");
//LanguageRegistry.addName(VoltMeter, "Voltmeter");
//LanguageRegistry.addName(VoltageTransformer, "Voltage Transformer");
//LanguageRegistry.addName(Thermopile, "ThermoPile");
//LanguageRegistry.addName(ChargingBench, "Charging Bench");
//LanguageRegistry.addName(kv_10_Wire, "10kV Wire");
//LanguageRegistry.addName(MV_1_Wire, "1MV Wire");
//LanguageRegistry.addName(BluJacketedWire, "Jacketed Bluewire");
[b]	proxy.registerRenderers();
[/b]	
GameRegistry.registerBlock(BluFurnaceIdle, "Furnace.BluFurnaceIdle");
GameRegistry.registerBlock(BluFurnaceLit, "Furnace.BluFurnaceLit");
GameRegistry.registerBlock(BluAlloyFurnaceIdle, "Furnace.BluAlloyFurnaceIdle");
GameRegistry.registerBlock(BluAlloyFurnaceLit, "Furnace.BluAlloyFurnaceLit");
GameRegistry.registerBlock(SolarPanel, "Panel.SolarPanel");

ItemStack coil = new ItemStack(CopperCoil);
ItemStack iron = new ItemStack(Item.ingotIron);
ItemStack bai = new ItemStack(BluIngot);
ItemStack clay = new ItemStack(Block.blockClay);
ItemStack brick = new ItemStack(Block.brick);
ItemStack bdw = new ItemStack(BluSilicon);
ItemStack cop = new ItemStack(CopperIngot);
ItemStack tin = new ItemStack(TinIngot);
ItemStack nik = new ItemStack(Nikolite);
ItemStack wood = new ItemStack(Block.planks);
ItemStack bat = new ItemStack(Battery);
ItemStack obs = new ItemStack(Block.obsidian);
ItemStack chest = new ItemStack(Block.chest);
ItemStack wool = new ItemStack(Block.cloth);


GameRegistry.addRecipe(new ItemStack (BluMotor), "ici", "ici", "ibi",
		'i', iron, 'c', coil, 'b', bai);
GameRegistry.addRecipe(new ItemStack (BluFurnaceIdle), "ccc", "c c", "ibi",
		'i', iron, 'c', clay, 'b', bai);
GameRegistry.addRecipe(new ItemStack (BluAlloyFurnaceIdle), "ccc", "c c", "ibi",
		'i', iron, 'c', brick, 'b', bai);
GameRegistry.addRecipe(new ItemStack (SolarPanel), "bbb", "bib", "bbb",
		'i', bai, 'b', bdw);
GameRegistry.addRecipe(new ItemStack (Battery), "ncn", "ntn", "ncn",
		'n', nik, 'c', cop, 't', tin);
/*GameRegistry.addRecipe(new ItemStack (AlloyWire), "wbw", "wbw", "wbw",
 		'w', wool, 'b', bai);				*/
/*GameRegistry.addRecipe(new ItemStack (BatteryBox), "bwb", "bib", "iai",
 		'b', bat, 'w', wood, 'i', iron, 'a', bai);*/
/*GameRegistry.addRecipe(new ItemStack (VoltMeter), "www", "wnw", "ccc",
		'w', wood, 'n', nik, 'c', cop);	*/
/*GameRegistry.addRecipe(new ItemStack (VoltageTransformer), "iii", "cic", "bib",
		'i', iron, 'c', coil, 'b', bai); */
/*GameRegistry.addRecipe(new ItemStack (Thermopile), "cic", "sbs", "cic",
		'i', iron, 'c', cop, 's', bdw); */
/*GameRegistry.addRecipe(new ItemStack (ChargingBench), "oco", "bdb", "pap",
 		'o', obs, 'c', coil, 'b', bat, 'd', chest, 'p', wood, 'a', bai); */
/*GameRegistry.addRecipe(new ItemStack (BluJacketedWire), " b ", "sbs" " b "
 		's', stick, 'b', bai); */

/*GameRegistry.addShapelessRecipe(new ItemStack(kv_10_Wire), new Object[]{
	new ItemStack(Block.cloth), new ItemStack(AlloyWire)

});*/



}
public static CreativeTabs BluTab = new CreativeTabs("BluTab")
{
        public ItemStack getIconItemStack()
        {
                        return new ItemStack(BluFurnaceIdle, 1, 0);
        }
};
}


Posted

yes, now for your own information the @Override is not NECCESSARY but it helps understanding the flow of the code, if you have a @Override you KNOW that a super class (class you are extending from) have this method too

 

also if you put a @Override and it give you an error you can tell taht maybe you copied the name wrong

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/24/2013 at 3:53 PM, hydroflame said:

yes, now for your own information the @Override is not NECCESSARY but it helps understanding the flow of the code, if you have a @Override you KNOW that a super class (class you are extending from) have this method too

 

also if you put a @Override and it give you an error you can tell taht maybe you copied the name wrong

So what is the next step?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements




  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Alright, here is the log file https://mclo.gs/5eCwafV
    • Please read the FAQ (https://forums.minecraftforge.net/topic/125488-rules-and-frequently-asked-questions-faq/) and post log files as described there, using a site such as https://mclo.gs/ and post the link here.  
    • I tried updating the mods in my modpack which caused incompatibilities so i have tried to revert them back to their older versions i was using before. In the logs it doesnt show me any clear incompatibilities except for tfmg & entity texture features, but when i try to remove those it still doesn't work. I have tried removing the forge-client.toml file which was a suggestion i found on  a few other posts. This is the log file i get. [inline log removed] Any help would be appreciated. Thanks in advance
    • I don't use KubeJS, never even heard of it. But after doing what "Ugdhar" suggested earlier in this post with the "config/Mekanism/generator-storage.toml", I tried going into an individual save's serverconfig folder, and just deleting everything except the parcool folder (I have that mod installed.) Then, a bit of loading and temporary freezing later, seems to have worked. Even when quitting to menu and loading back in, or also when quitting to menu, exiting to desktop, and re-launching MC, choose a save and loading it.
    • [Mekanism] Broken tags in Mekanism recipes detected, please check server logs for details. You will be missing some recipes and machines may not accept expected inputs. Do you use KubeJS? It is some kind of bug with it and not fixed A workaround is setting "allowAsyncStreams" to false in the KubeJS common config file https://github.com/KubeJS-Mods/KubeJS/issues/1016   For the rest of your issues, keep deleting these files - now it is the jei-server.toml file If the file is not in config, check the worldsave serverconfig folder These files usually break after updating mods, game crashes or force closing the game    
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.