public void RemoveObj(BaseObject obj)
{
uint id ;
if(obj.type == OBJECTTYPE.MONSTER) id = obj.GetTypeId();
else id =obj.GetGameID();
if ( mDicObject.ContainsKey(id))
{
if (obj.type == OBJECTTYPE.PLAYER)
{
PlayerObject play = obj as PlayerObject;
play.ClearThis(); //广播删除自己
}
if (obj.type == OBJECTTYPE.EUDEMON)
{
EudemonObject eudemon = obj as EudemonObject;
eudemon.ReCall();
}
if (obj.type == OBJECTTYPE.PTICH)
{
PtichObject ptich = obj as PtichObject;
ptich.ClearThis();
}
//加到临时删除列表- 下次process时处理删除
mListDeleteObj.Add(obj);
// mDicObject.Remove(id);
}
if (this.GetObjectCount(OBJECTTYPE.PLAYER) == 0)
{
last_null_tick = System.Environment.TickCount;
}
}