I tried registering an event in my turtle upgrade class to load the icon getting it's object:
@ForgeSubscribe
public void registerUpgradeIcon(TextureStitchEvent event)
{
CRMod.logger.info("TextureStitchEvent: map type = "+event.map.textureType);
if(event.map.textureType==0)
{
CRMod.logger.info("registering icon");
icon=event.map.registerIcon("crmod:TurtleChunkLoader");
CRMod.logger.info("icon="+icon);
}
}
I added in my load method the line:
MinecraftForge.EVENT_BUS.register(new TurtleChunkyModuleUpgrade());
and this is the method needed by computercraft:
public Icon getIcon(ITurtleAccess turtle, TurtleSide side)
{
CRMod.logger.info("CC asking for Icon: returning "+icon);
return icon;
}
During the startup in the logger is written:
2014-03-15 19:14:16 [informazioni] [CRMod] Loading CRMod...
2014-03-15 19:14:17 [informazioni] [CRMod] TextureStitchEvent: map type = 0
2014-03-15 19:14:17 [informazioni] [CRMod] registering icon
2014-03-15 19:14:17 [informazioni] [CRMod] icon=TextureAtlasSprite{name='crmod:TurtleChunkLoader', frameCount=0, rotated=false, x=0, y=0, height=0, width=0, u0=0.0, u1=0.0, v0=0.0, v1=0.0}
2014-03-15 19:14:18 [informazioni] [CRMod] TextureStitchEvent: map type = 0
2014-03-15 19:14:18 [informazioni] [CRMod] registering icon
2014-03-15 19:14:18 [informazioni] [CRMod] icon=TextureAtlasSprite{name='crmod:TurtleChunkLoader', frameCount=0, rotated=false, x=208, y=168, height=16, width=16, u0=0.40626952, u1=0.43748048, v0=0.65628904, v1=0.71871096}
2014-03-15 19:14:18 [informazioni] [CRMod] TextureStitchEvent: map type = 1
2014-03-15 19:14:18 [Grave] [Minecraft-Client] Using missing texture, unable to load: minecraft:textures/items/MISSING_ICON_ITEM_4259_ccprogramdisk.png
2014-03-15 19:14:18 [informazioni] [CRMod] TextureStitchEvent: map type = 1
then, after some lines:
2014-03-15 19:14:18 [informazioni] [Minecraft-Client] Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:CRmod, FMLFileResourcePack:ComputerCraft Turtles, FMLFileResourcePack:ComputerCraft
2014-03-15 19:14:18 [informazioni] [CRMod] TextureStitchEvent: map type = 1
2014-03-15 19:14:18 [Grave] [Minecraft-Client] Using missing texture, unable to load: minecraft:textures/items/MISSING_ICON_ITEM_4259_ccprogramdisk.png
2014-03-15 19:14:18 [informazioni] [CRMod] TextureStitchEvent: map type = 1
2014-03-15 19:14:18 [informazioni] [CRMod] TextureStitchEvent: map type = 0
2014-03-15 19:14:18 [informazioni] [CRMod] registering icon
2014-03-15 19:14:18 [informazioni] [CRMod] icon=TextureAtlasSprite{name='crmod:TurtleChunkLoader', frameCount=0, rotated=false, x=0, y=0, height=0, width=0, u0=0.0, u1=0.0, v0=0.0, v1=0.0}
2014-03-15 19:14:19 [informazioni] [CRMod] TextureStitchEvent: map type = 0
2014-03-15 19:14:19 [informazioni] [CRMod] registering icon
2014-03-15 19:14:19 [informazioni] [CRMod] icon=TextureAtlasSprite{name='crmod:TurtleChunkLoader', frameCount=0, rotated=false, x=208, y=168, height=16, width=16, u0=0.40626952, u1=0.43748048, v0=0.65628904, v1=0.71871096}
and then, once the world is loaded:
2014-03-15 19:14:25 [informazioni] [CRMod] CC asking for Icon: returning null
2014-03-15 19:14:25 [informazioni] [sTDOUT] computercraft: Upgrade "Chunky" has an invalid icon! It will render as a crafting table. Please take it up with the peripheral author! We will not warn again. (upgrade ID: 225)
And so this doesn't work... Obviously I'm not doing what i'm supposed to...
The question is: what I'm supposed to do?