Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
e89961380b
@ -4,21 +4,24 @@ import java.lang.reflect.Field;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.server.v1_7_R4.EntityBat;
|
||||
import net.minecraft.server.v1_7_R4.EntityCreature;
|
||||
import net.minecraft.server.v1_7_R4.EntityEnderDragon;
|
||||
import net.minecraft.server.v1_7_R4.EntityHuman;
|
||||
import net.minecraft.server.v1_7_R4.EntityInsentient;
|
||||
import net.minecraft.server.v1_7_R4.EntityLiving;
|
||||
import net.minecraft.server.v1_7_R4.EntityTrackerEntry;
|
||||
import net.minecraft.server.v1_7_R4.Navigation;
|
||||
import net.minecraft.server.v1_7_R4.PacketPlayOutEntityHeadRotation;
|
||||
import net.minecraft.server.v1_7_R4.PathfinderGoal;
|
||||
import net.minecraft.server.v1_7_R4.PathfinderGoalLookAtPlayer;
|
||||
import net.minecraft.server.v1_7_R4.PathfinderGoalMoveTowardsRestriction;
|
||||
import net.minecraft.server.v1_7_R4.PathfinderGoalRandomLookaround;
|
||||
import net.minecraft.server.v1_7_R4.PathfinderGoalSelector;
|
||||
import net.minecraft.server.v1_7_R4.WorldServer;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.Sound;
|
||||
@ -32,6 +35,7 @@ import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Giant;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.util.Vector;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftCreature;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.CraftWorld;
|
||||
|
||||
@ -582,6 +586,36 @@ public class UtilEnt
|
||||
return false;
|
||||
}
|
||||
|
||||
public static boolean CreatureLook(Entity ent, Entity target)
|
||||
{
|
||||
return CreatureLook(ent, target instanceof LivingEntity ? ((LivingEntity) target).getEyeLocation() : target.getLocation());
|
||||
}
|
||||
|
||||
public static boolean CreatureLook(Entity ent, Location target)
|
||||
{
|
||||
Vector vec = UtilAlg.getTrajectory(ent.getLocation(), target);
|
||||
|
||||
return CreatureLook(ent, UtilAlg.GetPitch(vec), UtilAlg.GetYaw(vec));
|
||||
}
|
||||
|
||||
public static boolean CreatureLook(Entity ent, float pitch, float yaw)
|
||||
{
|
||||
if (!(ent instanceof LivingEntity))
|
||||
return false;
|
||||
|
||||
EntityLiving ec = ((CraftLivingEntity) ent).getHandle();
|
||||
Location loc = ent.getLocation();
|
||||
|
||||
ec.setPositionRotation(loc.getX(), loc.getY(), loc.getZ(), yaw, pitch);
|
||||
ec.al = true;
|
||||
|
||||
EntityTrackerEntry entry = (EntityTrackerEntry) ((WorldServer) ec.world).tracker.trackedEntities.get(ec.getId());
|
||||
|
||||
entry.broadcast(new PacketPlayOutEntityHeadRotation(ec, (byte) (ec.yaw * 256.0F / 360.0F)));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static void CreatureMove(Entity ent, Location target, float speed)
|
||||
{
|
||||
if (!(ent instanceof Creature))
|
||||
|
@ -26,14 +26,34 @@ public class PetRepository extends RepositoryBase
|
||||
_webAddress = webAddress;
|
||||
}
|
||||
|
||||
public void AddPet(PetChangeToken token)
|
||||
public void AddPet(final PetChangeToken token)
|
||||
{
|
||||
new AsyncJsonWebCall(_webAddress + "Pets/AddPet").Execute(token);
|
||||
|
||||
Plugin.getServer().getScheduler().runTaskAsynchronously(Plugin, new Runnable()
|
||||
{
|
||||
public void run()
|
||||
{
|
||||
executeInsert("INSERT INTO accountPets(petName, petId, accountId) VALUES (?, ?, ?);", null, new ColumnVarChar("petName", 32, token.PetName)
|
||||
, new ColumnInt("petId", token.PetId)
|
||||
, new ColumnInt("accountId", token.AccountId));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void RemovePet(PetChangeToken token)
|
||||
public void RemovePet(final PetChangeToken token)
|
||||
{
|
||||
new AsyncJsonWebCall(_webAddress + "Pets/RemovePet").Execute(token);
|
||||
|
||||
Plugin.getServer().getScheduler().runTaskAsynchronously(Plugin, new Runnable()
|
||||
{
|
||||
public void run()
|
||||
{
|
||||
executeUpdate("DELETE FROM accountPets WHERE petId = ? AND accountId = ?;"
|
||||
, new ColumnInt("petId", token.PetId)
|
||||
, new ColumnInt("accountId", token.AccountId));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public List<PetExtraToken> GetPetExtras(List<PetExtraToken> petExtraTokens)
|
||||
@ -41,20 +61,26 @@ public class PetRepository extends RepositoryBase
|
||||
return new JsonWebCall(_webAddress + "Pets/GetPetExtras").Execute(new TypeToken<List<PetExtraToken>>(){}.getType(), petExtraTokens);
|
||||
}
|
||||
|
||||
public void UpdatePet(PetChangeToken token)
|
||||
public void UpdatePet(final PetChangeToken token)
|
||||
{
|
||||
new AsyncJsonWebCall(_webAddress + "Pets/UpdatePet").Execute(token);
|
||||
|
||||
int rowsChanged = executeUpdate("UPDATE accountPets SET petName = ? WHERE petId = ? AND accountId = ?;", new ColumnVarChar("petName", 32, token.PetName)
|
||||
Plugin.getServer().getScheduler().runTaskAsynchronously(Plugin, new Runnable()
|
||||
{
|
||||
public void run()
|
||||
{
|
||||
int rowsChanged = executeUpdate("UPDATE accountPets SET petName = ? WHERE petId = ? AND accountId = ?;", new ColumnVarChar("petName", 32, token.PetName)
|
||||
, new ColumnInt("petId", token.PetId)
|
||||
, new ColumnInt("accountId", token.AccountId));
|
||||
|
||||
if (rowsChanged < 1)
|
||||
{
|
||||
executeInsert("INSERT INTO accountPets(petName, petId, accountId) VALUES (?, ?, ?);", null, new ColumnVarChar("petName", 32, token.PetName)
|
||||
, new ColumnInt("petId", token.PetId)
|
||||
, new ColumnInt("accountId", token.AccountId));
|
||||
|
||||
if (rowsChanged < 1)
|
||||
{
|
||||
executeInsert("INSERT INTO accountPets(petName, petId, accountId) VALUES (?, ?, ?);", null, new ColumnVarChar("petName", 32, token.PetName)
|
||||
, new ColumnInt("petId", token.PetId)
|
||||
, new ColumnInt("accountId", token.AccountId));
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -14,7 +14,7 @@ public class PerkMammoth extends Perk
|
||||
{
|
||||
super("Mammoth", new String[]
|
||||
{
|
||||
C.cGray + "Take 50% knockback and deal 150% knockback",
|
||||
C.cGray + "Take 75% knockback and deal 125% knockback",
|
||||
});
|
||||
}
|
||||
|
||||
@ -30,7 +30,7 @@ public class PerkMammoth extends Perk
|
||||
if (!Kit.HasKit(damager))
|
||||
return;
|
||||
|
||||
event.AddKnockback(GetName(), 1.5d);
|
||||
event.AddKnockback(GetName(), 1.25d);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGH)
|
||||
@ -45,6 +45,6 @@ public class PerkMammoth extends Perk
|
||||
if (!Kit.HasKit(damagee))
|
||||
return;
|
||||
|
||||
event.AddKnockback(GetName(), 0.5d);
|
||||
event.AddKnockback(GetName(), 0.75d);
|
||||
}
|
||||
}
|
||||
|
@ -131,7 +131,7 @@ public class PerkNeedler extends SmashPerk
|
||||
DamageCause.THORNS, 1.1, true, true, false,
|
||||
damager.getName(), GetName());
|
||||
|
||||
if(Manager.GetGame().GetTeam(event.GetDamageePlayer()) != Manager.GetGame().GetTeam(damager))
|
||||
if(!Manager.GetGame().GetTeam(event.GetDamageePlayer()).equals(Manager.GetGame().GetTeam(damager)))
|
||||
{
|
||||
Manager.GetCondition().Factory().Poison(GetName(), event.GetDamageeEntity(), damager, 2, 0, false, false, false);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user