ZNPCsPlus/plugin/src/main/java/lol/pyr/znpcsplus/npc/NpcEntryImpl.java

64 lines
1.2 KiB
Java
Raw Normal View History

2023-05-04 04:07:07 +00:00
package lol.pyr.znpcsplus.npc;
2023-05-04 07:25:05 +00:00
import lol.pyr.znpcsplus.api.npc.NpcEntry;
2023-05-04 04:07:07 +00:00
2023-05-04 07:25:05 +00:00
public class NpcEntryImpl implements NpcEntry {
2023-05-08 11:17:25 +00:00
private final String id;
2023-05-04 07:25:05 +00:00
private final NpcImpl npc;
2023-05-04 04:07:07 +00:00
private boolean process = false;
private boolean save = false;
private boolean modify = false;
2023-05-08 11:17:25 +00:00
public NpcEntryImpl(String id, NpcImpl npc) {
this.id = id.toLowerCase();
2023-05-04 04:07:07 +00:00
this.npc = npc;
}
@Override
2023-05-04 07:25:05 +00:00
public NpcImpl getNpc() {
2023-05-04 04:07:07 +00:00
return npc;
}
@Override
public boolean isProcessed() {
return process;
}
@Override
public void setProcessed(boolean value) {
if (process && !value) npc.delete();
process = value;
}
@Override
public boolean isSave() {
return save;
}
@Override
public void setSave(boolean value) {
save = value;
}
@Override
public boolean isAllowCommandModification() {
return modify;
}
@Override
public void setAllowCommandModification(boolean value) {
modify = value;
}
public void enableEverything() {
setSave(true);
setProcessed(true);
setAllowCommandModification(true);
}
2023-05-08 11:17:25 +00:00
public String getId() {
return id;
}
2023-05-04 04:07:07 +00:00
}