@Override
	public void executeMsg(Environmental host, CMMsg msg)
	{
		if(affected instanceof MOB)
		{
			final MOB mob=(MOB)affected;
			if(msg.source()==mob)
			{
				if((msg.target()==mob.location()) && (msg.targetMinor()==CMMsg.TYP_LEAVE))
				{
					failed=true;
					unInvoke();
				}
				else
				if((msg.sourceMinor()==CMMsg.TYP_DEATH)||(msg.sourceMinor()==CMMsg.TYP_QUIT))
				{
					failed=true;
					unInvoke();
				}
			}
			else
			if((CMLib.flags().isStanding(mob))||(mob.location()!=room))
			{
				failed=true;
				unInvoke();
			}
		}
		super.executeMsg(host,msg);
	}