Refactor BanishInfo - make it a record

This commit is contained in:
P0nk
2024-07-17 18:11:50 +02:00
parent 402163c33d
commit 2324ae7f9e
9 changed files with 29 additions and 39 deletions

View File

@@ -0,0 +1,9 @@
package server.life;
import java.util.Objects;
public record BanishInfo(int map, String portal, String msg) {
public BanishInfo {
Objects.requireNonNull(portal, "BanishInfo portal");
}
}

View File

@@ -231,7 +231,10 @@ public class LifeFactory {
Data banishData = monsterInfoData.getChildByPath("ban");
if (banishData != null) {
stats.setBanishInfo(new BanishInfo(DataTool.getString("banMsg", banishData), DataTool.getInt("banMap/0/field", banishData, -1), DataTool.getString("banMap/0/portal", banishData, "sp")));
int map = DataTool.getInt("banMap/0/field", banishData, -1);
String portal = DataTool.getString("banMap/0/portal", banishData, "sp");
String msg = DataTool.getString("banMsg", banishData);
stats.setBanishInfo(new BanishInfo(map, portal, msg));
}
int noFlip = DataTool.getInt("noFlip", monsterInfoData, 0);
@@ -296,31 +299,6 @@ public class LifeFactory {
return DataTool.getString(nid + "/d0", npcStringData, "(...)");
}
public static class BanishInfo {
private final int map;
private final String portal;
private final String msg;
public BanishInfo(String msg, int map, String portal) {
this.msg = msg;
this.map = map;
this.portal = portal;
}
public int getMap() {
return map;
}
public String getPortal() {
return portal;
}
public String getMsg() {
return msg;
}
}
public static class loseItem {
private final int id;

View File

@@ -56,7 +56,6 @@ import org.slf4j.LoggerFactory;
import scripting.event.EventInstanceManager;
import server.StatEffect;
import server.TimerManager;
import server.life.LifeFactory.BanishInfo;
import server.loot.LootManager;
import server.maps.AbstractAnimatedMapObject;
import server.maps.MapObjectType;

View File

@@ -21,7 +21,6 @@
*/
package server.life;
import server.life.LifeFactory.BanishInfo;
import server.life.LifeFactory.loseItem;
import server.life.LifeFactory.selfDestruction;
import tools.Pair;