package net.fourbytes.shadow.mod; import net.fourbytes.shadow.Layer; import net.fourbytes.shadow.Level; import net.fourbytes.shadow.ParticleType; import net.fourbytes.shadow.blocks.BlockType; import net.fourbytes.shadow.network.Data; import net.fourbytes.shadow.systems.ISystem; /** * IModStandards (short for InterfaceMod) contains some methods * a mod (module) shall override / use by default, such as * pre and post tick and render handling, level and level system * setup / modification and achievement setup / handling. */ public interface IModStandard extends IMod { public void preTick(float delta); public void postTick(float delta); public void preRender(float delta); public void postRender(float delta); public BlockType getTypeBlock(String subtype, float x, float y, Layer layer); public boolean generateTile(Level genLevel, int xx, int x, int y, int ln); public void initLevelSystems(Level level); public ISystem initLevelSystem(Level level, String name); public ParticleType getParticleType(String typeName); public boolean handleClient(Data data, Object target); public boolean handleServer(Data data, Object target); }