This commit is contained in:
dordsor21 2020-12-16 17:38:15 +00:00
parent 61fd8c0de5
commit aeccce24a9
No known key found for this signature in database
GPG Key ID: 1E53E88969FFCF0B

View File

@ -143,23 +143,27 @@ public class AsyncPlayer extends PlayerProxy {
@Override @Override
public void floatAt(int x, int y, int z, boolean alwaysGlass) { public void floatAt(int x, int y, int z, boolean alwaysGlass) {
RuntimeException caught = null; if (alwaysGlass || !isAllowedToFly()) {
try { RuntimeException caught = null;
EditSession edit = new EditSessionBuilder(WorldWrapper.unwrap(getWorld())) try {
.player(unwrap(getBasePlayer())).build(); EditSession edit =
edit.setBlock(BlockVector3.at(x, y - 1, z), BlockTypes.GLASS); new EditSessionBuilder(WorldWrapper.unwrap(getWorld())).player(unwrap(getBasePlayer())).build();
edit.flushQueue(); edit.setBlock(BlockVector3.at(x, y - 1, z), BlockTypes.GLASS);
LocalSession session = Fawe.get().getWorldEdit().getSessionManager().get(this); edit.flushQueue();
if (session != null) { LocalSession session = Fawe.get().getWorldEdit().getSessionManager().get(this);
session.remember(edit, true, getBasePlayer().getLimit().MAX_HISTORY); if (session != null) {
session.remember(edit, true, getBasePlayer().getLimit().MAX_HISTORY);
}
} catch (RuntimeException e) {
caught = e;
} }
} catch (RuntimeException e) { if (caught != null) {
caught = e; throw caught;
} }
setPosition(Vector3.at(x + 0.5, y, z + 0.5)); } else {
if (caught != null) { setFlying(true);
throw caught;
} }
trySetPosition(Vector3.at(x + 0.5, y, z + 0.5));
} }
@Override @Override