Lag fixed :) (#170)

This commit is contained in:
Daniel Ginovker
2019-11-11 00:21:40 -05:00
committed by GitHub
parent 2aef86ed25
commit 2f26fbe5fb
15 changed files with 20 additions and 26 deletions
@@ -65,11 +65,6 @@ public class ObjectsActions {
player.getActionSender().sendMessage("This object does not exist. Please report this to a staff member.");
return;
}
if (player.isBotting == true) {
player.getActionSender().sendMessage("You can't click any objects until you confirm you are not botting.");
player.getActionSender().sendMessage("If you need to you can type ::amibotting, to see if your botting.");
return;
}
if (Webs.webs(player, objectType)) {
Webs.slashWeb(player, objectType, objectX, objectY);
return;
@@ -5,6 +5,7 @@ import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import redone.Server;
@@ -139,19 +140,17 @@ public class ObjectHandler {
for (Player p : PlayerHandler.players) {
if (p != null) {
Client person = (Client) p;
if (person != null) {
if (person.heightLevel == o.getObjectHeight()
&& o.objectTicks == 0) {
if (person.distanceToPoint(o.getObjectX(),
o.getObjectY()) <= 60) {
removeAllObjects(o);
globalObjects.add(o);
person.getActionSender().object(
o.getObjectId(), o.getObjectX(),
o.getObjectY(), o.getObjectFace(),
o.getObjectType());
//Region.addObject(o.getObjectId(), o.getObjectX(), o.getObjectY(), o.getObjectHeight(), o.getObjectType(), o.getObjectFace(), true);
}
if (person.heightLevel == o.getObjectHeight()
&& o.objectTicks == 0) {
if (person.distanceToPoint(o.getObjectX(),
o.getObjectY()) <= 60) {
removeAllObjects(o);
globalObjects.add(o);
person.getActionSender().object(
o.getObjectId(), o.getObjectX(),
o.getObjectY(), o.getObjectFace(),
o.getObjectType());
//Region.addObject(o.getObjectId(), o.getObjectX(), o.getObjectY(), o.getObjectHeight(), o.getObjectType(), o.getObjectFace(), true);
}
}
}
@@ -159,13 +158,10 @@ public class ObjectHandler {
}
public void removeAllObjects(Objects o) {
for (Objects s : globalObjects) {
if (o.getObjectX() == o.objectX && o.getObjectY() == o.objectY
&& s.getObjectHeight() == o.getObjectHeight()) {
globalObjects.remove(s);
break;
}
}
//Using Iterator for concurrency
globalObjects.removeIf(s -> s.getObjectX() == o.getObjectX() &&
s.getObjectY() == o.getObjectY() &&
s.getObjectHeight() == o.getObjectHeight());
}
public void process() {