use of net.minecraft.server.v1_12_R1.PacketPlayInSteerVehicle in project VehiclesPlus2.0 by legofreak107.
the class Helicopter method Helicopter.
public static void Helicopter(PacketPlayInSteerVehicle ppisv, Player p) {
ArmorStand a2 = (ArmorStand) p.getVehicle();
Seat s = plugin.seatInfo.get(a2);
ArmorStand a = (ArmorStand) s.parent;
Vehicle v = plugin.vehicleInfo.get(a);
float forward = ppisv.b();
float side = ppisv.a();
boolean space = ppisv.c();
/*if(!Main.flyspeedlr.containsKey(p)){
Main.flyspeedlr.put(p, (float) 0);
}
if (!space && forward > 0 && Main.flyspeedlr.get(p) > 1.2){ //Forward[W]
if(Main.flyspeed.containsKey(p) && Main.flyspeed.get(p) < 1.5){
Main.flyspeed.put(p, (float) (Main.flyspeed.get(p) + 0.05));
a.setHeadPose(new EulerAngle(Math.toRadians(Main.flyspeed.get(p) * 30),0,0));
}else if(!Main.flyspeed.containsKey(p)){
Main.flyspeed.put(p, (float) 0);
}
if(Main.flyspeed.get(p) < 1){
a.setVelocity(new Vector(a.getLocation().getDirection().multiply(0.5).getX(), 0.2, a.getLocation().getDirection().multiply(0.5).getZ()).multiply(Main.flyspeed.get(p)));
}else{
a.setVelocity(new Vector(a.getLocation().getDirection().multiply(0.5).getX(), -0.1, a.getLocation().getDirection().multiply(0.5).getZ()).multiply(Main.flyspeed.get(p)));
}
}else if(forward == 0){
if(Main.flyspeed.containsKey(p) && Main.flyspeed.get(p) > 0){
Main.flyspeed.put(p, (float) (Main.flyspeed.get(p) - 0.01));
}else if(Main.flyspeed.containsKey(p) && Main.flyspeed.get(p) < 0){
Main.flyspeed.put(p, (float) (Main.flyspeed.get(p) + 0.01));
}
if(Main.flyspeed.get(p) < 0.6 && Main.flyspeed.get(p) > -0.6){
a.setHeadPose(new EulerAngle(0,0,0));
}else{
a.setHeadPose(new EulerAngle(Math.toRadians(Main.flyspeed.get(p) * 30),0,0));
}
a.setVelocity(new Vector(a.getLocation().getDirection().multiply(Main.flyspeed.get(p)).getX(), Main.flyspeedlr.get(p) -1.3, a.getLocation().getDirection().multiply(Main.flyspeed.get(p)).getZ()));
}else if(!space && forward < 0 && Main.flyspeedlr.get(p) > 1.2){
if(Main.flyspeed.containsKey(p) && Main.flyspeed.get(p) > -1.5){
Main.flyspeed.put(p, (float) (Main.flyspeed.get(p) - 0.05));
a.setHeadPose(new EulerAngle(Math.toRadians(Main.flyspeed.get(p) * 30),0,0));
}else if(!Main.flyspeed.containsKey(p)){
Main.flyspeed.put(p, (float) 0);
}
if(Main.flyspeed.get(p) < -1){
a.setVelocity(new Vector(a.getLocation().getDirection().multiply(0.5).getX(), 0.2, a.getLocation().getDirection().multiply(0.5).getZ()).multiply(Main.flyspeed.get(p)));
}else{
a.setVelocity(new Vector(a.getLocation().getDirection().multiply(0.5).getX(), -0.1, a.getLocation().getDirection().multiply(0.5).getZ()).multiply(Main.flyspeed.get(p)));
}
}
if (side > 0){ //Side[A]
EntityArmorStand a1 = ((CraftArmorStand) a).getHandle();
a1.setLocation(a.getLocation().getX(), a.getLocation().getY(), a.getLocation().getZ(), a.getLocation().getYaw() - v.turnSpeed, a.getLocation().getPitch());
} else if (side < 0){ //Side[D]
EntityArmorStand a1 = ((CraftArmorStand) a).getHandle();
a1.setLocation(a.getLocation().getX(), a.getLocation().getY(), a.getLocation().getZ(), a.getLocation().getYaw() + v.turnSpeed, a.getLocation().getPitch());
}
if(space && forward > 0){
if(Main.flyspeedlr.containsKey(p) && Main.flyspeedlr.get(p) < 1.5){
Main.flyspeedlr.put(p, (float) (Main.flyspeedlr.get(p) + 0.01));
a.setVelocity(new Vector(0, Main.flyspeedlr.get(p)-1.2, 0));
}else if(!Main.flyspeedlr.containsKey(p)){
Main.flyspeedlr.put(p, (float) 0);
}
}
if(space && forward < 0){
if(Main.flyspeedlr.containsKey(p) && Main.flyspeedlr.get(p) > 0){
Main.flyspeedlr.put(p, (float) (Main.flyspeedlr.get(p) - 0.01));
a.setVelocity(new Vector(0, Main.flyspeedlr.get(p)-1.2, 0));
}else if(!Main.flyspeedlr.containsKey(p)){
Main.flyspeedlr.put(p, (float) 0);
}
}*/
}
Aggregations