Skip to content

Commit

Permalink
did some work on proper tier lang based off transformer upgrades
Browse files Browse the repository at this point in the history
  • Loading branch information
Trinsdar committed May 4, 2024
1 parent 3ac1722 commit e6b513c
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 2 deletions.
14 changes: 12 additions & 2 deletions common/src/main/java/trinsdar/gt4r/block/BlockBatBox.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,11 @@
import muramasa.antimatter.machine.MachineState;
import muramasa.antimatter.machine.Tier;
import muramasa.antimatter.machine.types.Machine;
import net.minecraft.core.BlockPos;
import net.minecraft.network.chat.Component;
import net.minecraft.util.StringRepresentable;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
Expand Down Expand Up @@ -49,6 +51,14 @@ public void onBlockModelBuild(Block block, AntimatterBlockStateProvider prov) {
new VariantBlockStateBuilder.VariantBuilder().modelFile(prov.models().getBuilder(getId().replace("_lv", "") + "_" + b.getValue(TIER).getSerializedName())));
}

@Override
public ItemStack getCloneItemStack(BlockGetter level, BlockPos pos, BlockState state) {
ItemStack stack = new ItemStack(this);
BatBoxTiers tiers = state.getValue(TIER);
stack.getOrCreateTag().putByte("tier", (byte) tiers.ordinal());
return stack;
}

@Override
public Component getDisplayName(ItemStack stack) {
Tier tier1 = getTier();
Expand All @@ -64,8 +74,8 @@ private static Tier fromBatBoxTier(BatBoxTiers tier){
case LV -> LV;
case MV -> MV;
case HV -> HV;
case EV -> IV;
case IV -> EV;
case EV -> EV;
case IV -> IV;
};
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@

import it.unimi.dsi.fastutil.Pair;
import muramasa.antimatter.capability.machine.MachineEnergyHandler;
import muramasa.antimatter.machine.Tier;
import muramasa.antimatter.machine.event.IMachineEvent;
import muramasa.antimatter.machine.types.Machine;
import muramasa.antimatter.util.Utils;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.state.BlockState;
import tesseract.api.gt.IGTNode;
import trinsdar.gt4r.block.BlockBatBox;
import trinsdar.gt4r.machine.UpgradeableMachine;

import java.util.List;
Expand Down Expand Up @@ -59,6 +61,13 @@ public long getOutputAmperage() {
}
return super.getOutputAmperage();
}

@Override
public void setInputVoltage(long voltageIn) {
super.setInputVoltage(voltageIn);
Tier tier1 = Tier.getTier(voltageIn);
this.tile.getLevel().setBlock(this.tile.getBlockPos(), this.tile.getBlockState().setValue(BlockBatBox.TIER, voltageIn > 8192 ? BlockBatBox.BatBoxTiers.IV : BlockBatBox.BatBoxTiers.valueOf(tier1.getId().toUpperCase())), 3);
}
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import net.minecraft.core.BlockPos;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.sounds.SoundSource;
Expand All @@ -28,6 +29,7 @@
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.storage.loot.LootContext;
import net.minecraft.world.phys.BlockHitResult;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import trinsdar.gt4r.data.CustomTags;
import trinsdar.gt4r.machine.IUpgradeProvider;
Expand Down Expand Up @@ -75,6 +77,21 @@ public Map<TagKey<Item>, Integer> getAllowedUpgrades() {
return allowedUpgrades;
}

@NotNull
@Override
public Component getDisplayName() {
return getMachineType().getDisplayName(getPowerLevel());
}

@Override
public Tier getPowerLevel() {
if (upgrades.containsKey(CustomTags.TRANSFORMER_UPGRADES)){
long voltage = getMachineTier().getVoltage() * ((int)Math.pow(4, upgrades.get(CustomTags.TRANSFORMER_UPGRADES)));
return Tier.getTier(voltage);
}
return super.getPowerLevel();
}

@Override
public InteractionResult onInteractBoth(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit, @Nullable AntimatterToolType type) {
ItemStack stack = player.getItemInHand(hand);
Expand Down

0 comments on commit e6b513c

Please sign in to comment.