#New Merchant function
if (inputClass.getNotifyCode() == 11 and inputClass.getData1() == 301 and inputClass.getData2() == 301):
self.iPushedButtonUnit = g_pSelectedUnit
pUnit = g_pSelectedUnit
iX = self.iPushedButtonUnit.getX()
iY = self.iPushedButtonUnit.getY()
pMerchantLocation = CyMap().plot(iX, iY)
pUnitOwner = gc.getPlayer( pUnit.getOwner( ))
iUnitOwnerID = pUnitOwner.getID()
pyUnitOwner = PyHelpers.PyPlayer(pUnit.getOwner())
if pMerchantLocation.isCity():
TradeCity = pMerchantLocation.getPlotCity ()
pTradePlayer = gc.getPlayer(TradeCity.getOwner())
if pTradePlayer.getID() != pUnitOwner.getID() :
jRnd = gc.getGame().getSorenRandNum(100, "Trade")
if jRnd <= 50 :
pUnitOwner.changeGold( 40 + gc.getGame().getSorenRandNum(40,"Trade Result"))
CyInterface().addImmediateMessage(CyTranslator().getText("TXT_MERCHANT_GOLD",()),'')
else :
gc.getTeam(pUnitOwner.getTeam()).changeResearchProgress (pUnitOwner.getCurrentResearch(),50 + gc.getGame().getSorenRandNum(20,"Research"),iUnitOwnerID)
CyInterface().addImmediateMessage(CyTranslator().getText("TXT_MERCHANT_RESEARCH",()),'')
g_pSelectedUnit.kill(false,-1)
# End