AIPlayer getNodeInRange() Z axis definition support

This commit is contained in:
dam 2026-02-17 21:30:11 +02:00
parent 5a37f2f8da
commit 89fdb871ab
No known key found for this signature in database
GPG key ID: 4AF4E722399663FB

View file

@ -317,6 +317,7 @@ public class AIPlayer extends Player {
private ArrayList<Node> getNodeInRange(int range, int entry) {
int meX = this.getLocation().getX();
int meY = this.getLocation().getY();
int meZ = this.getLocation().getZ();
ArrayList<Node> nodes = new ArrayList<Node>();
for (NPC npc : RegionManager.getLocalNpcs(this, range)) {
if (npc.getId() == entry)
@ -324,19 +325,19 @@ public class AIPlayer extends Player {
}
for (int x = 0; x < range; x++) {
for (int y = 0; y < range - x; y++) {
Node node = RegionManager.getObject(0, meX + x, meY + y);
Node node = RegionManager.getObject(meZ, meX + x, meY + y);
if (node != null)
if (node.getId() == entry)
nodes.add(node);
Node node2 = RegionManager.getObject(0, meX + x, meY - y);
Node node2 = RegionManager.getObject(meZ, meX + x, meY - y);
if (node2 != null)
if (node2.getId() == entry)
nodes.add(node2);
Node node3 = RegionManager.getObject(0, meX - x, meY + y);
Node node3 = RegionManager.getObject(meZ, meX - x, meY + y);
if (node3 != null)
if (node3.getId() == entry)
nodes.add(node3);
Node node4 = RegionManager.getObject(0, meX - x, meY - y);
Node node4 = RegionManager.getObject(meZ, meX - x, meY - y);
if (node4 != null)
if (node4.getId() == entry)
nodes.add(node4);
@ -348,7 +349,7 @@ public class AIPlayer extends Player {
private ArrayList<Node> getNodeInRange(int range, List<Integer> entrys) {
int meX = this.getLocation().getX();
int meY = this.getLocation().getY();
//int meX2 = this.getLocation().getX();
int meZ = this.getLocation().getZ();
ArrayList<Node> nodes = new ArrayList<Node>();
for (NPC npc : RegionManager.getLocalNpcs(this, range)) {
@ -357,19 +358,19 @@ public class AIPlayer extends Player {
}
for (int x = 0; x < range; x++) {
for (int y = 0; y < range - x; y++) {
Node node = RegionManager.getObject(0, meX + x, meY + y);
Node node = RegionManager.getObject(meZ, meX + x, meY + y);
if (node != null)
if (entrys.contains(node.getId()))
nodes.add(node);
Node node2 = RegionManager.getObject(0, meX + x, meY - y);
Node node2 = RegionManager.getObject(meZ, meX + x, meY - y);
if (node2 != null)
if (entrys.contains(node2.getId()))
nodes.add(node2);
Node node3 = RegionManager.getObject(0, meX - x, meY + y);
Node node3 = RegionManager.getObject(meZ, meX - x, meY + y);
if (node3 != null)
if (entrys.contains(node3.getId()))
nodes.add(node3);
Node node4 = RegionManager.getObject(0, meX - x, meY - y);
Node node4 = RegionManager.getObject(meZ, meX - x, meY - y);
if (node4 != null)
if (entrys.contains(node4.getId()))
nodes.add(node4);