diff options
| author | GlodBlock <1356392126@qq.com> | 2022-02-07 14:29:10 +0800 |
|---|---|---|
| committer | GlodBlock <1356392126@qq.com> | 2022-02-07 14:29:10 +0800 |
| commit | 6f2176208bc54e55d1e5272f18e958b68f40f5c6 (patch) | |
| tree | f601f1184359ba606ffa78382373d6374ed99428 /src/main/java/goodgenerator/crossmod | |
| parent | ea6e1ce07bf3b44b6e89d0e38b405a021d613387 (diff) | |
| download | GT5-Unofficial-6f2176208bc54e55d1e5272f18e958b68f40f5c6.tar.gz GT5-Unofficial-6f2176208bc54e55d1e5272f18e958b68f40f5c6.tar.bz2 GT5-Unofficial-6f2176208bc54e55d1e5272f18e958b68f40f5c6.zip | |
salt crops
Diffstat (limited to 'src/main/java/goodgenerator/crossmod')
| -rw-r--r-- | src/main/java/goodgenerator/crossmod/ic2/CropsLoader.java | 11 | ||||
| -rw-r--r-- | src/main/java/goodgenerator/crossmod/ic2/GGCropsSaltyRoot.java | 129 |
2 files changed, 140 insertions, 0 deletions
diff --git a/src/main/java/goodgenerator/crossmod/ic2/CropsLoader.java b/src/main/java/goodgenerator/crossmod/ic2/CropsLoader.java new file mode 100644 index 0000000000..ce9e9f74a1 --- /dev/null +++ b/src/main/java/goodgenerator/crossmod/ic2/CropsLoader.java @@ -0,0 +1,11 @@ +package goodgenerator.crossmod.ic2; + +import ic2.api.crops.Crops; + +public class CropsLoader { + + public static void registerCrops() { + Crops.instance.registerCrop(new GGCropsSaltyRoot("saltroot")); + } + +} diff --git a/src/main/java/goodgenerator/crossmod/ic2/GGCropsSaltyRoot.java b/src/main/java/goodgenerator/crossmod/ic2/GGCropsSaltyRoot.java new file mode 100644 index 0000000000..da296e2626 --- /dev/null +++ b/src/main/java/goodgenerator/crossmod/ic2/GGCropsSaltyRoot.java @@ -0,0 +1,129 @@ +package goodgenerator.crossmod.ic2; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import goodgenerator.main.GoodGenerator; +import goodgenerator.util.ItemRefer; +import ic2.api.crops.CropCard; +import ic2.api.crops.ICropTile; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import net.minecraft.util.StatCollector; +import speiger.src.crops.api.ICropCardInfo; + +import java.util.Arrays; +import java.util.List; + +public class GGCropsSaltyRoot extends CropCard implements ICropCardInfo { + + private final String cropName; + + public GGCropsSaltyRoot(String name) { + this.cropName = name; + } + + @Override + public String name() { + return cropName; + } + + @Override + public int tier() { + return 4; + } + + @Override + public int stat(int n) { + return 0; + } + + @Override + public String[] attributes() { + return new String[] {"Salt", "Gray", "Root", "Hydrophobic"}; + } + + @Override + public int maxSize() { + return 3; + } + + @Override + public boolean canGrow(ICropTile crop) { + return true; + } + + @Override + public int getOptimalHavestSize(ICropTile crop) { + return 3; + } + + @Override + public boolean canBeHarvested(ICropTile crop) { + return crop.getSize() == 3; + } + + @Override + public ItemStack getGain(ICropTile crop) { + return ItemRefer.Salty_Root.get(1); + } + + @Override + public String discoveredBy() { + return "GlodBlock"; + } + + @Override + public String owner() { + return GoodGenerator.MOD_ID; + } + + @Override + public String displayName() { + return StatCollector.translateToLocal("crops." + cropName.toLowerCase().replace(" ", "")); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerSprites(IIconRegister iconRegister) { + textures = new IIcon[maxSize()]; + for (int i = 1; i <= textures.length; i++) { + textures[i - 1] = iconRegister.registerIcon(GoodGenerator.MOD_ID + ":crops/"+name()+"."+i); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getSprite(ICropTile crop) { + if (crop.getSize() <= 0 || crop.getSize() > textures.length) return null; + return textures[crop.getSize() - 1]; + } + + @Override + public boolean canCross(ICropTile crop) { + return crop.getSize() > 1; + } + + @Override + public float dropGainChance() { + return 4.0F; + } + + @Override + public int weightInfluences(ICropTile crop, float humidity, float nutrients, float air) { + return (int) ( - humidity + nutrients * 2 + air); + } + + @Override + public List<String> getCropInformation() { + return Arrays.asList( + "It prefers dry environment.", + "Inedible." + ); + } + + @Override + public ItemStack getDisplayItem() { + return ItemRefer.Salty_Root.get(1); + } +} |
