NPC and mob regions

This commit is contained in:
2023-04-05 20:04:04 -05:00
parent 563fe8684a
commit 1169f44041
3 changed files with 19 additions and 0 deletions
@@ -102,6 +102,22 @@ public class LoadCharacterMsg extends ClientNetMsg {
writer.putInt(region.getRoom()); writer.putInt(region.getRoom());
} }
} }
else if (absChar.getObjectType().equals(GameObjectType.Mob)){
Regions Mobregion = absChar.getRegion();
if (region == null){
writer.putInt(-1);
writer.putInt(-1);
}else{
Building regionBuilding = Regions.GetBuildingForRegion(Mobregion);
if (regionBuilding == null){
writer.putInt(-1);
writer.putInt(-1);
}else{
writer.putInt(region.getLevel());
writer.putInt(region.getRoom());
}
}
//TODO below is Mob Region Serialization, not implemented. default to -1, which is ground. //TODO below is Mob Region Serialization, not implemented. default to -1, which is ground.
}else { }else {
+2
View File
@@ -1152,11 +1152,13 @@ public class Mob extends AbstractIntelligenceAgent {
if (newLoc.equals(this.getEndLoc())) { if (newLoc.equals(this.getEndLoc())) {
this.stopMovement(newLoc); this.stopMovement(newLoc);
this.region = AbstractWorldObject.GetRegionByWorldObject(this);
return; return;
//Next upda //Next upda
} }
setLoc(newLoc); setLoc(newLoc);
this.region = AbstractWorldObject.GetRegionByWorldObject(this);
//Next update will be end Loc, lets stop him here. //Next update will be end Loc, lets stop him here.
} }
+1
View File
@@ -1222,6 +1222,7 @@ public class NPC extends AbstractCharacter {
}catch (Exception e){ }catch (Exception e){
Logger.error( e.getMessage()); Logger.error( e.getMessage());
} }
this.region = AbstractWorldObject.GetRegionByWorldObject(this);
} }
public void removeFromZone() { public void removeFromZone() {