Advances Through Trade

This small script gives the players (AI and HUMANs alike) the chance of obtaining advances via trade routes. This is just an attempt to give small civs a chance of keeping up and to make trade a bit more attractive.

The Script

//--------------------------------------------------------------------------
// MoT Mod for CTP2 (Apolyton Edition) by BureauBert
// v1.1
// http://motmod.ctp2.info
//--------------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////////
// Science Via Trade
// by BureauBert
// Science swapping via trade routes
////////////////////////////////////////////////////////////////////////////

HandleEvent(SendGood) 'ScienceSwapViaTradeRoute' post {
	city_t sciCityOne;
	city_t sciCityTwo;
	int_t sciPlayerOne;
	int_t sciPlayerTwo;
	int_t sciPlayerOneDesiredAdvance;
	int_t sciPlayerTwoDesiredAdvance;
	int_t sciAdvanceSwapChance;
	int_t sciAdvanceSwapRand;

	sciAdvanceSwapChance = 5;

	sciCityOne = city[0];
	sciCityTwo = city[1];
	sciPlayerOne = sciCityOne.owner;
	sciPlayerTwo = sciCityTwo.owner;
	sciPlayerOneDesiredAdvance = -1;
	sciPlayerTwoDesiredAdvance = -1;
	
	sciAdvanceSwapRand = Random(99);
	if(sciAdvanceSwapRand < sciAdvanceSwapChance) {
		sciPlayerOneDesiredAdvance = GetDesiredAdvanceFrom(sciPlayerOne, sciPlayerTwo, 0, 50000);
		if(sciPlayerOneDesiredAdvance > -1) {
			advance[0] = sciPlayerOneDesiredAdvance;
			Message(sciPlayerOne, 'GotAdvanceFromTrade');
			GrantAdvance(sciPlayerOne, sciPlayerOneDesiredAdvance);
		}
		sciPlayerTwoDesiredAdvance = GetDesiredAdvanceFrom(sciPlayerTwo, sciPlayerOne, 0, 50000);
		if(sciPlayerTwoDesiredAdvance > -1) {
			advance[0] = sciPlayerTwoDesiredAdvance;
			Message(sciPlayerTwo, 'GotAdvanceFromTrade');
			GrantAdvance(sciPlayerTwo, sciPlayerTwoDesiredAdvance);
		}
	}
}

// Messages

messagebox 'GotAdvanceFromTrade' {
	Text(ID_GOT_ADVANCE_FROM_TRADE);
	Show();
}