forked from SteamWar/SteamWar
Fix SteamEditWand
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
package de.steamwar.core.worldedit;
|
||||
|
||||
import com.comphenix.tinyprotocol.TinyProtocol;
|
||||
import com.sk89q.worldedit.IncompleteRegionException;
|
||||
import com.sk89q.worldedit.LocalSession;
|
||||
import com.sk89q.worldedit.bukkit.BukkitAdapter;
|
||||
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
|
||||
@@ -121,13 +122,7 @@ public class SteamEditWand implements Listener {
|
||||
}
|
||||
|
||||
public void setLocation(Location location) {
|
||||
float distance = (float) player.getLocation().distanceSquared(location);
|
||||
wireframe.setPos1And2(location, location);
|
||||
float width = distance / 1600;
|
||||
width = ((int) (width * 16)) / 16F;
|
||||
width = Math.max(width, 1 / 16F);
|
||||
width = Math.min(width, 1 / 2F);
|
||||
wireframe.setWidth(width);
|
||||
wireframe.setBlock(WorldEditRendererCUIEditor.Type.CURSOR.getMaterial(player).createBlockData());
|
||||
}
|
||||
}
|
||||
@@ -338,9 +333,13 @@ public class SteamEditWand implements Listener {
|
||||
}
|
||||
|
||||
private void selectPos1(RegionSelector regionSelector, Player player, LocalSession session, BlockVector3 pos1) {
|
||||
try {
|
||||
if (!pos1.equals(regionSelector.getPrimaryPosition())) {
|
||||
SWPlayer.of(player).setComponent(new Pos1Message(regionSelector, player, session, pos1));
|
||||
}
|
||||
} catch (IncompleteRegionException e) {
|
||||
SWPlayer.of(player).setComponent(new Pos1Message(regionSelector, player, session, pos1));
|
||||
}
|
||||
regionSelector.selectPrimary(pos1, PermissiveSelectorLimits.getInstance());
|
||||
WorldEditRenderer.renderPlayer(player);
|
||||
}
|
||||
@@ -362,9 +361,13 @@ public class SteamEditWand implements Listener {
|
||||
}
|
||||
|
||||
private void selectPos2(RegionSelector regionSelector, Player player, LocalSession session, BlockVector3 pos2) {
|
||||
try {
|
||||
if (regionSelector.getVertices().size() == 2 && !pos2.equals(regionSelector.getVertices().get(1))) {
|
||||
SWPlayer.of(player).setComponent(new Pos2Message(regionSelector, player, session, pos2));
|
||||
}
|
||||
} catch (IncompleteRegionException e) {
|
||||
SWPlayer.of(player).setComponent(new Pos2Message(regionSelector, player, session, pos2));
|
||||
}
|
||||
regionSelector.selectSecondary(pos2, PermissiveSelectorLimits.getInstance());
|
||||
WorldEditRenderer.renderPlayer(player);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user