@Override
	public boolean okMessage(final Environmental myHost, final CMMsg msg)
	{
		if((affected instanceof Item)
		&&(msg.target()==((Item)affected).owner())
		&&(!text().equals(msg.source().Name())))
		{
			switch(msg.targetMinor())
			{
			case CMMsg.TYP_DIG:
				final MOB M=CMLib.players().getLoadPlayer(text());
				if(M!=null)
				{
					Ability A=M.fetchAbility(ID());
					if((A==null)
					||(CMLib.dice().rollPercentage()<(50 + A.adjustedLevel(M,0) + (5*this.getXLEVELLevel(M)))))
					{
						msg.setSourceCode(CMMsg.MSG_NOISYMOVEMENT);
						msg.setTargetCode(CMMsg.MSG_NOISYMOVEMENT);
						msg.setOthersCode(CMMsg.MSG_NOISYMOVEMENT);
					}
				}
				break;
			}
		}
		return super.okMessage(myHost, msg);
	}