Marauroa Core API: Difference between revisions

Content deleted Content added
imported>Hendrik Brummermann
imported>Hendrik Brummermann
Line 216:
onInit and onFinish are called on server startup and finalization. You need to subclass RPWorld to give proper behaviour to them.
 
<source lang="java">
public void onInit() throws Exception▼
public void onFinishonInit() throws Exception
▲ public void onInitonFinish() throws Exception
</source>
 
Some helper methods to add zones and iterate them.
 
<source lang="java">
public void addRPZone(IRPZone zone)
public IRPZonevoid getRPZoneaddRPZone(IRPZone.ID zoneidzone)
public IRPZone getRPZone(RPObjectIRPZone.ID objectidzoneid)
public Iterator<IRPZone> iteratorgetRPZone(RPObject.ID objectid)
public intIterator<IRPZone> sizeiterator()
public int size()
</source>
 
Methods to add, get, test existence, remove and modify objects. modify() is as you know for delta^2 algorithm.
Modify is as you know for delta^2 algorithm.
 
<source lang="java">
public void add(RPObject object) throws NoRPZoneException, RPObjectInvalidException ▼
public RPObjectvoid getadd(RPObject.ID idobject) throws NoRPZoneException, RPObjectInvalidException
public booleanRPObject hasget(RPObject.ID id) throws NoRPZoneException, RPObjectInvalidException
public RPObjectboolean removehas(RPObject.ID id) throws NoRPZoneException, RPObjectNotFoundExceptionRPObjectInvalidException
public voidRPObject modifyremove(RPObject.ID objectid) throws NoRPZoneException, RPObjectNotFoundException
▲ public void addmodify(RPObject object) throws NoRPZoneException, RPObjectInvalidException
</source>
 
These are helper methods for changing the zone of an object. Use them instead of doing it by hand.
 
<source lang="java">
public void changeZone(IRPZone.ID oldzoneid, IRPZone.ID newzoneid, RPObject object) throws NoRPZoneException▼
public void changeZone(StringIRPZone.ID oldzoneoldzoneid, StringIRPZone.ID newzonenewzoneid, RPObject object) throws NoRPZoneException
▲ public void changeZone(IRPZone.IDString oldzoneidoldzone, IRPZone.IDString newzoneidnewzone, RPObject object) throws NoRPZoneException
</source>
 
=IRPZone=