synchronized public void changeLocBypass(int newLocX, int newLocY)
	{
		int oldLocX = intLocX;
		int oldLocY = intLocY;
		engGame.removeDuskObject(this);
		intLocX = newLocX;
		intLocY = newLocY;
		try
		{
			if (isPlayer())
			{
				updateMap();
				if (engGame.overMerchant(oldLocX,oldLocY) != null)
					offMerchant();
				if (engGame.overPlayerMerchant(oldLocX,oldLocY) != null)
					offMerchant();
	    	}
	    	//update entity:
	    	if (blnWorking)
				engGame.addDuskObject(this);
	    	Script scrStore;
			try
			{
				scrStore = (Script)engGame.vctTileActions.elementAt(engGame.shrMap[newLocX][newLocY]);
				synchronized(scrStore)
				{
					scrStore.varVariables.clearVariables();
					scrStore.varVariables.addVariable("trigger",this);
	    			scrStore.runScript();
				}
	    	}catch (Exception e){}
			try
			{
				scrStore = new Script("defMoveActions/"+newLocX+"_"+newLocY,engGame,false);
	    		scrStore.varVariables.addVariable("trigger",this);
	    		scrStore.runScript();
	    		scrStore.close();
	    	}catch (Exception e){}
	    	if (thnFollowing != null)
	    		thnFollowing.changeLocBypass(oldLocX,oldLocY);
	    	if (isPlayer())
	    		engGame.refreshEntities(this);
		}catch (Exception e)
		{
		   	engGame.log.printError("changeLocBypass():"+strName + " disconnected", e);
			blnStopThread = true;
		}
	}