12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package me.km.effects.active;
- import me.km.KajetansMod;
- import me.km.api.Utils;
- import me.km.effects.ActiveEffectBase;
- import net.minecraft.entity.player.EntityPlayerMP;
- import net.minecraft.util.DamageSource;
- import net.minecraft.util.math.Vec3d;
- public class Doomed extends ActiveEffectBase
- {
- @Override
- protected boolean executeEffect(EntityPlayerMP p, int power)
- {
- EntityPlayerMP p2 = Utils.getTargetedEntity(p, 8, EntityPlayerMP.class);
- if(p2 == null)
- {
- return false;
- }
-
- Vec3d v1 = p2.getPositionVector();
- Vec3d v2 = p.getPositionVector();
-
- Utils.setVelocity(p, (v1.x - v2.x) * 0.2, (v1.y - v2.y) * 0.2 + 0.9, (v1.z - v2.z) * 0.2);
- KajetansMod.scheduler.scheduleTask(() ->
- {
- Vec3d v3 = p2.getPositionVector();
- Vec3d v4 = p.getPositionVector();
- Utils.setVelocity(p, (v3.x - v4.x) * 0.2, (v3.y - v4.y) * 0.2, (v3.z - v4.z) * 0.2);
- }, 12);
- int duration = 20 * power;
- KajetansMod.playerbank.getData(p2).addBadTimedData("doomed", p, duration, "Todgeweiht", 52);
- KajetansMod.scheduler.scheduleTask(() ->
- {
- p2.attackEntityFrom(DamageSource.causeMobDamage(p), power);
- }, duration);
- return true;
- }
- @Override
- protected int getManaCost(int manaFactor)
- {
- return 4 * manaFactor;
- }
- }
|