Unmap our scene manager when its associated place is destroyed.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@540 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// $Id: SceneRegistry.java,v 1.6 2001/10/22 23:55:39 mdb Exp $
|
// $Id: SceneRegistry.java,v 1.7 2001/10/24 00:38:54 mdb Exp $
|
||||||
|
|
||||||
package com.threerings.whirled.server;
|
package com.threerings.whirled.server;
|
||||||
|
|
||||||
@@ -10,6 +10,7 @@ import com.samskivert.util.HashIntMap;
|
|||||||
import com.threerings.presents.util.Invoker;
|
import com.threerings.presents.util.Invoker;
|
||||||
|
|
||||||
import com.threerings.crowd.server.CrowdServer;
|
import com.threerings.crowd.server.CrowdServer;
|
||||||
|
import com.threerings.crowd.server.PlaceManager;
|
||||||
|
|
||||||
import com.threerings.whirled.Log;
|
import com.threerings.whirled.Log;
|
||||||
import com.threerings.whirled.data.Scene;
|
import com.threerings.whirled.data.Scene;
|
||||||
@@ -220,6 +221,21 @@ public class SceneRegistry
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when a place is destroyed. We clean up our extra scene
|
||||||
|
* information here.
|
||||||
|
*/
|
||||||
|
protected void placeWasDestroyed (PlaceManager pmgr)
|
||||||
|
{
|
||||||
|
super.placeWasDestroyed(pmgr);
|
||||||
|
|
||||||
|
// if this is a scene manager, remove it from our scene table
|
||||||
|
if (pmgr instanceof SceneManager) {
|
||||||
|
SceneManager scmgr = (SceneManager)pmgr;
|
||||||
|
_scenemgrs.remove(scmgr.getScene().getId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected SceneRepository _screp;
|
protected SceneRepository _screp;
|
||||||
protected Invoker _invoker;
|
protected Invoker _invoker;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user