public synchronized void removeEntity(int id,int condition){
  Entity toRemove=getEntity(id);
  if (toRemove == null) {
    return;
  }
  entities.remove(toRemove);
  entityIds.remove(new Integer(id));
  removeEntityPositionLookup(toRemove);
  toRemove.setRemovalCondition(condition);
  if ((vOutOfGame != null) && (condition != IEntityRemovalConditions.REMOVE_NEVER_JOINED)) {
    vOutOfGame.addElement(toRemove);
  }
  if (deploymentTable.size() > 0) {
    Enumeration<Vector<Entity>> iter=deploymentTable.elements();
    while (iter.hasMoreElements()) {
      Vector<Entity> vec=iter.nextElement();
      for (int i=vec.size() - 1; i >= 0; i--) {
        Entity en=vec.elementAt(i);
        if (en.getId() == id) {
          vec.removeElementAt(i);
        }
      }
    }
  }
  processGameEvent(new GameEntityRemoveEvent(this,toRemove));
}

public synchronized void removeEntity ( int id , int condition ) { Entity toRemove = getEntity ( id ) ; if ( toRemove == null ) { return ; } entities . remove ( toRemove ) ; entityIds . remove ( new Integer ( id ) ) ; removeEntityPositionLookup ( toRemove ) ; toRemove . setRemovalCondition ( condition ) ; if ( ( vOutOfGame != null ) && ( condition != IEntityRemovalConditions . REMOVE_NEVER_JOINED ) ) { vOutOfGame . addElement ( toRemove ) ; } if ( deploymentTable . size ( ) > 0 ) { Enumeration < Vector < Entity > > iter = deploymentTable . elements ( ) ; while ( iter . hasMoreElements ( ) ) { Vector < Entity > vec = iter . nextElement ( ) ; for ( int i = vec . size ( ) - 1 ; i >= 0 ; i -- ) { Entity en = vec . elementAt ( i ) ; if ( en . getId ( ) == id ) { vec . removeElementAt ( i ) ; } } } } processGameEvent ( new GameEntityRemoveEvent ( this , toRemove ) ) ; }
remove an entity from the master list . if we can ' t find that entity , ( probably due to double - blind ) ignore it .
