Compare commits

..

2 Commits

Author SHA1 Message Date
4332e9eaac Fixed amplifier and duration of poison afflicted from straw totem to balance it better. 2021-06-01 23:58:16 +01:00
34557c3e83 Straw totem fail chance decreases upon successful revival.
Failed attempts with the straw totem now apply poison instead of damaging the player.
2021-06-01 23:45:30 +01:00
2 changed files with 8 additions and 2 deletions

View File

@ -9,6 +9,8 @@ import net.minecraft.entity.player.ServerPlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.network.PacketBuffer;
import net.minecraft.potion.EffectInstance;
import net.minecraft.potion.Effects;
import net.minecraft.stats.Stats;
import net.minecraft.util.DamageSource;
import net.minecraft.util.Hand;
@ -62,8 +64,10 @@ public class C2SRequestPlayerRevive {
if (Utils.randomIntRange(0, 100) <= fail_chance) {
item.getOrCreateTag().putInt(StrawTotemItem.TAG_CHARGE_AMOUNT, item.getOrCreateTag().getInt(StrawTotemItem.TAG_CHARGE_AMOUNT)-required_charge);
item.getOrCreateTag().putInt(StrawTotemItem.TAG_FAIL_CHANCE, fail_chance-(5*required_charge));
sender.hurt(DamageSource.GENERIC, (sender.getHealth() * (fail_chance / 100.0f)));
sender.addEffect(new EffectInstance(Effects.POISON, ((fail_chance*10) / 2), 1));
return;
} else {
item.getOrCreateTag().putInt(StrawTotemItem.TAG_FAIL_CHANCE, fail_chance-(5*required_charge));
}
}
player_to_revive.teleportTo(sender.getX(), sender.getY(), sender.getZ());

View File

@ -9,6 +9,8 @@ import net.minecraft.entity.player.ServerPlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.network.PacketBuffer;
import net.minecraft.potion.EffectInstance;
import net.minecraft.potion.Effects;
import net.minecraft.util.DamageSource;
import net.minecraft.util.Hand;
import net.minecraftforge.fml.network.NetworkEvent;
@ -52,7 +54,7 @@ public class C2SRequestTotemCharge {
int fail_chance = totem_item.getOrCreateTag().getInt(StrawTotemItem.TAG_FAIL_CHANCE);
if (Utils.randomIntRange(0, 100) <= fail_chance) {
sender.setItemInHand(msg.hand, new ItemStack(Items.AIR));
sender.hurt(DamageSource.GENERIC, (sender.getHealth() * (fail_chance / 100.0f)));
sender.addEffect(new EffectInstance(Effects.POISON, ((fail_chance*10) / 2), 1));
} else {
totem_item.getOrCreateTag().putInt(StrawTotemItem.TAG_FAIL_CHANCE, fail_chance+5);
}