@Override
	public void spring(MOB target)
	{
		if((target!=invoker())&&(target.location()!=null))
		{
			if((doesSaveVsTraps(target))
			||(invoker().getGroupMembers(new HashSet<MOB>()).contains(target)))
				target.location().show(target,null,null,CMMsg.MASK_ALWAYS|CMMsg.MSG_NOISE,L("<S-NAME> avoid(s) setting off a noise trap!"));
			else
			if(target.location().show(target,target,this,CMMsg.MASK_ALWAYS|CMMsg.MSG_NOISE,L("<S-NAME> set(s) off a **POP** trap!")))
			{
				super.spring(target);
				final Area A=target.location().getArea();
				for(final Enumeration<Room> e=A.getMetroMap();e.hasMoreElements();)
				{
					final Room R=e.nextElement();
					if(R!=target.location())
						R.showHappens(CMMsg.MASK_ALWAYS|CMMsg.MSG_NOISE,L("You hear a loud **POP** coming from somewhere."));
				}
				if((canBeUninvoked())&&(affected instanceof Item))
					disable();
			}
		}
	}