forked from MagicBane/Server
Assign patrol points added as static method to NPC manager
This commit is contained in:
@@ -403,4 +403,25 @@ public enum NPCManager {
|
||||
return maxSlots;
|
||||
}
|
||||
|
||||
public static void AssignPatrolPoints(Mob mob) {
|
||||
mob.patrolPoints = new ArrayList<>();
|
||||
|
||||
for (int i = 0; i < 5; ++i) {
|
||||
float patrolRadius = mob.getSpawnRadius();
|
||||
|
||||
if (patrolRadius > 256)
|
||||
patrolRadius = 256;
|
||||
|
||||
if (patrolRadius < 60)
|
||||
patrolRadius = 60;
|
||||
|
||||
Vector3fImmutable newPatrolPoint = Vector3fImmutable.getRandomPointInCircle(mob.getBindLoc(), patrolRadius);
|
||||
mob.patrolPoints.add(newPatrolPoint);
|
||||
|
||||
if (i == 1) {
|
||||
mob.loc = newPatrolPoint;
|
||||
mob.endLoc = newPatrolPoint;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1737,25 +1737,7 @@ public class Mob extends AbstractIntelligenceAgent {
|
||||
|
||||
if (this.guardCaptain == null && this.isPlayerGuard == false && !isPet() == false && isNecroPet() == false) {
|
||||
|
||||
this.patrolPoints = new ArrayList<>();
|
||||
|
||||
for (int i = 0; i < 5; ++i) {
|
||||
float patrolRadius = this.getSpawnRadius();
|
||||
|
||||
if (patrolRadius > 256)
|
||||
patrolRadius = 256;
|
||||
|
||||
if (patrolRadius < 60)
|
||||
patrolRadius = 60;
|
||||
|
||||
Vector3fImmutable newPatrolPoint = Vector3fImmutable.getRandomPointInCircle(this.getBindLoc(), patrolRadius);
|
||||
this.patrolPoints.add(newPatrolPoint);
|
||||
|
||||
if (i == 1) {
|
||||
this.loc = newPatrolPoint;
|
||||
this.endLoc = newPatrolPoint;
|
||||
}
|
||||
}
|
||||
NPCManager.AssignPatrolPoints(this);
|
||||
}
|
||||
|
||||
this.deathTime = 0;
|
||||
|
||||
Reference in New Issue
Block a user