Skip to content

Commit

Permalink
new version
Browse files Browse the repository at this point in the history
  • Loading branch information
huige233 committed Sep 2, 2022
1 parent 06858c4 commit 5eb3a66
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 116 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ apply plugin: "net.minecraftforge.gradle.forge"
apply plugin: 'org.spongepowered.mixin'

group = 'huige233'
version = '1.1.0'
version = '1.1.2'
archivesBaseName = 'transcend'

minecraft {
Expand Down
31 changes: 0 additions & 31 deletions src/main/java/huige233/transcend/compat/botaniasword.java
Original file line number Diff line number Diff line change
@@ -1,15 +1,8 @@
package huige233.transcend.compat;

import huige233.transcend.Main;
import huige233.transcend.init.ModItems;
import huige233.transcend.util.IHasModel;
import huige233.transcend.util.ItemNBTHelper;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.common.Optional;
import org.jetbrains.annotations.NotNull;
import vazkii.botania.api.mana.ICreativeManaProvider;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.mana.IManaTooltipDisplay;
Expand All @@ -18,86 +11,62 @@ public class botaniasword implements ICreativeManaProvider, IManaItem, IManaTool
protected static final int MAX_MANA = Integer.MAX_VALUE;
private static final String TAG_CREATIVE = "creative";
private static final String TAG_ONE_USE = "oneUse";

private static final String TAG_MANA = "mana";

@Optional.Method(modid = "botania")
public void getSubItems(@NotNull CreativeTabs tab, @NotNull NonNullList<ItemStack> stack) {
if(tab == Main.TranscendTab) {
ItemStack create = new ItemStack(ModItems.TRANSCEND_SWORD);
setMana(create, MAX_MANA);
isCreative(create);
setStackCreative(create);
stack.add(create);
}
}

@Optional.Method(modid = "botania")
public static void setMana(ItemStack stack, int mana) {
ItemNBTHelper.setInt(stack, TAG_MANA, MAX_MANA-1);
}

@Optional.Method(modid = "botania")
public static void setStackCreative(ItemStack stack) {
ItemNBTHelper.setBoolean(stack, TAG_CREATIVE, true);
}

@Override
@Optional.Method(modid = "botania")
public int getMana(ItemStack stack) {
return ItemNBTHelper.getInt(stack, TAG_MANA, 0);
}

@Override
@Optional.Method(modid = "botania")
public int getMaxMana(ItemStack stack) {
return MAX_MANA-1;
}

@Override
@Optional.Method(modid = "botania")
public void addMana(ItemStack stack, int mana) {
setMana(stack, Math.min(getMana(stack) + mana, getMaxMana(stack)));
}

@Override
@Optional.Method(modid = "botania")
public boolean canReceiveManaFromPool(ItemStack stack, TileEntity pool) {
return !ItemNBTHelper.getBoolean(stack, TAG_ONE_USE, false);
}

@Override
@Optional.Method(modid = "botania")
public boolean canReceiveManaFromItem(ItemStack stack, ItemStack otherStack) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public boolean canExportManaToPool(ItemStack stack, TileEntity pool) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public boolean canExportManaToItem(ItemStack stack, ItemStack otherStack) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public boolean isNoExport(ItemStack stack) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public float getManaFractionForDisplay(ItemStack stack) {
return (float) getMana(stack) / (float)getMaxMana(stack);
}

@Override
@Optional.Method(modid = "botania")
public boolean isCreative(ItemStack stack) {
return false;
}
Expand Down
97 changes: 14 additions & 83 deletions src/main/java/huige233/transcend/items/tools/ToolSword.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,16 +43,18 @@
import java.util.List;
import java.util.UUID;

import static huige233.transcend.compat.botaniasword.setMana;
import static huige233.transcend.compat.botaniasword.setStackCreative;

@Optional.Interface(iface="vazkii.botania.api.mana.IManaItem",modid="botania")
@Optional.Interface(iface="vazkii.botania.api.mana.IManaTooltipDisplay",modid="botania")
@Optional.Interface(iface="vazkii.botania.api.mana.ICreativeManaProvider",modid="botania")
@Mod.EventBusSubscriber(modid = Reference.MOD_ID)
public class ToolSword extends ItemSword implements IHasModel, ICreativeManaProvider, IManaItem, IManaTooltipDisplay {
public class ToolSword extends ItemSword implements IHasModel{

protected static final int MAX_MANA = Integer.MAX_VALUE;
private static final String TAG_CREATIVE = "creative";
private static final String TAG_ONE_USE = "oneUse";

private static final String TAG_MANA = "mana";

public ToolSword(String name, CreativeTabs tab, ToolMaterial material) {
Expand All @@ -63,6 +65,16 @@ public ToolSword(String name, CreativeTabs tab, ToolMaterial material) {
ModItems.ITEMS.add(this);
}

public void getSubItems(@NotNull CreativeTabs tab, @NotNull NonNullList<ItemStack> stack) {
if(tab == Main.TranscendTab && Loader.isModLoaded("botania")) {
ItemStack create = new ItemStack(ModItems.TRANSCEND_SWORD);
setMana(create, MAX_MANA);
setStackCreative(create);
stack.add(create);
}
}


@Override
public void registerModels() {
Main.proxy.registerItemRenderer(this, 0, "inventory");
Expand Down Expand Up @@ -173,87 +185,6 @@ public Entity createEntity(@NotNull World world, @NotNull Entity location, @NotN
return attrib;
}

@Optional.Method(modid = "botania")
public void getSubItems(@NotNull CreativeTabs tab, @NotNull NonNullList<ItemStack> stack) {
if(tab == Main.TranscendTab) {
ItemStack create = new ItemStack(this);
setMana(create, MAX_MANA);
isCreative(create);
setStackCreative(create);
stack.add(create);
}
}

@Optional.Method(modid = "botania")
public static void setMana(ItemStack stack, int mana) {
ItemNBTHelper.setInt(stack, TAG_MANA, MAX_MANA-1);
}

@Optional.Method(modid = "botania")
public static void setStackCreative(ItemStack stack) {
ItemNBTHelper.setBoolean(stack, TAG_CREATIVE, true);
}

@Override
@Optional.Method(modid = "botania")
public int getMana(ItemStack stack) {
return ItemNBTHelper.getInt(stack, TAG_MANA, 0);
}

@Override
@Optional.Method(modid = "botania")
public int getMaxMana(ItemStack stack) {
return MAX_MANA-1;
}

@Override
@Optional.Method(modid = "botania")
public void addMana(ItemStack stack, int mana) {
setMana(stack, Math.min(getMana(stack) + mana, getMaxMana(stack)));
}

@Override
@Optional.Method(modid = "botania")
public boolean canReceiveManaFromPool(ItemStack stack, TileEntity pool) {
return !ItemNBTHelper.getBoolean(stack, TAG_ONE_USE, false);
}

@Override
@Optional.Method(modid = "botania")
public boolean canReceiveManaFromItem(ItemStack stack, ItemStack otherStack) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public boolean canExportManaToPool(ItemStack stack, TileEntity pool) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public boolean canExportManaToItem(ItemStack stack, ItemStack otherStack) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public boolean isNoExport(ItemStack stack) {
return true;
}

@Override
@Optional.Method(modid = "botania")
public float getManaFractionForDisplay(ItemStack stack) {
return (float) getMana(stack) / (float)getMaxMana(stack);
}

@Override
@Optional.Method(modid = "botania")
public boolean isCreative(ItemStack stack) {
return false;
}

@SideOnly(Side.CLIENT)
public void addInformation(@NotNull ItemStack stack, World world, List<String> tooltip, @NotNull ITooltipFlag flag){
tooltip.add(TextUtils.makeFabulous(I18n.translateToLocal("tooltip.transcend_sword1.desc")) + " " + TextUtils.makeFabulous(I18n.translateToLocal("tooltip.transcend_sword2.desc")));
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/huige233/transcend/util/Reference.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
public class Reference {
public static final String MOD_ID = "transcend";
public static final String NAME = "Transcend";
public static final String VERSION = "1.1.0";
public static final String VERSION = "1.1.2";
public static final String ACCEPTED_VERSIONS = "[1.12.2]";
public static final String CLIENT_PROXY_CLASS = "huige233.transcend.proxy.ClientProxy";
public static final String COMMON_PROXY_CLASS = "huige233.transcend.proxy.CommonProxy";
Expand Down

0 comments on commit 5eb3a66

Please sign in to comment.