RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
ParallelNpcPreUpdateTask.java
1package com.osroyale.game.engine.sync.task;
2
3import com.osroyale.game.world.entity.mob.npc.Npc;
4import org.apache.logging.log4j.LogManager;
5import org.apache.logging.log4j.Logger;
6
26
27public class ParallelNpcPreUpdateTask extends SynchronizationTask {
28
29 private static final Logger logger = LogManager.getLogger(ParallelNpcPreUpdateTask.class);
30
31 private final Npc npc;
32
33 public ParallelNpcPreUpdateTask(Npc npc) {
34 this.npc = npc;
35 }
36
37 @Override
38 public void run() {
39 try {
40 if (npc.atomicPlayerCount.get() == 0) {
41 return;
42 }
43
44 if (npc.regionChange) {
45 npc.lastPosition = npc.getPosition();
46 }
47
48 npc.movement.processNextMovement();
49 npc.sequence();
50 } catch (Exception ex) {
51 logger.fatal(String.format("Error in %s. npc=%d %s", NpcPreUpdateTask.class.getSimpleName(), npc.id, npc.getPosition()), ex);
52 }
53 }
54
55}