public abstract class AbstractAreaTriggerManager extends AbstractTaggedTriggerManager<AreaTrigger>
Modifier and Type | Class and Description |
---|---|
static class |
AbstractAreaTriggerManager.EventType |
AbstractTriggerManager.TriggerFilter, AbstractTriggerManager.TriggerInitFailedException
Modifier and Type | Field and Description |
---|---|
protected Map<SimpleChunkLocation,Map<Area,AreaTrigger>> |
areaTriggersByLocation |
protected Map<UUID,SimpleLocation> |
entityLocationMap
The child class should update this map with its own way.
|
protected Map<UUID,WeakReference<IEntity>> |
entityTrackMap
The actual entity map.
|
protected static String |
LARGEST |
protected static String |
SMALLEST |
protected static String |
SYNC |
configSourceFactory, folder, loader
Constructor and Description |
---|
AbstractAreaTriggerManager(TriggerReactorCore plugin,
File folder) |
Modifier and Type | Method and Description |
---|---|
boolean |
createArea(String name,
SimpleLocation smallest,
SimpleLocation largest)
Create a new Area Trigger.
|
boolean |
deleteArea(SimpleLocation sloc)
Deprecated.
this is not valid anymore as there can be more than one Area Trigger.
|
protected List<Map.Entry<Area,AreaTrigger>> |
getAreaForLocation(SimpleLocation sloc)
Get list of all Area Triggers containing this sloc.
|
List<Map.Entry<Area,AreaTrigger>> |
getAreas(SimpleLocation sloc)
Try to get Area Triggers at given location
|
Set<Area> |
getConflictingAreas(Area area,
Predicate<Area> filter)
get all the area that is conflicting with given area.
|
void |
reload()
Reload all triggers
|
AreaTrigger |
remove(String name) |
protected void |
setupArea(AreaTrigger trigger)
reset the area cache.
|
extractPrefix
get, getAllTriggers, getFolder, getTriggerFile, getTriggerInfos, getTriggerList, has, put, reload, reportWarnings, saveAll
disable, getManagers
protected static final String SMALLEST
protected static final String LARGEST
protected static final String SYNC
protected Map<SimpleChunkLocation,Map<Area,AreaTrigger>> areaTriggersByLocation
protected final Map<UUID,SimpleLocation> entityLocationMap
protected final Map<UUID,WeakReference<IEntity>> entityTrackMap
public AbstractAreaTriggerManager(TriggerReactorCore plugin, File folder)
public void reload()
Manager
reload
in class AbstractTriggerManager<AreaTrigger>
protected List<Map.Entry<Area,AreaTrigger>> getAreaForLocation(SimpleLocation sloc)
sloc
- public Set<Area> getConflictingAreas(Area area, Predicate<Area> filter)
area
- filter
- decide what it means by 'conflict' between the given area and other areaspublic boolean createArea(String name, SimpleLocation smallest, SimpleLocation largest)
name
- name of the Area Trigger.smallest
- smallest point (ex. 0,0,0)largest
- largest point(ex. 15,15,15)protected void setupArea(AreaTrigger trigger)
trigger
- public AreaTrigger remove(String name)
remove
in class AbstractTriggerManager<AreaTrigger>
public List<Map.Entry<Area,AreaTrigger>> getAreas(SimpleLocation sloc)
sloc
- @Deprecated public boolean deleteArea(SimpleLocation sloc)
sloc
-