(svn r2080) - Fix: [OldAI] p->ai.state_counter was uint16 but could hold a tile index, therefore overflowing - changed that to uint32 and bumped the savegame revision to 32. It *MIGHT* close bug 1151374 - it certainly caused AI to stop building anything sometimes.
- While at it, use TileIndex as the tile index type in AiRemovePlayerRailOrRoad() and AiStateRemoveTrack(). - Make the number of tiles scanned 4*MapSizeX() instead of 1000. It *MIGHT* close bug 1116614.
This commit is contained in:
@@ -974,7 +974,8 @@ static const byte _player_economy_desc[] = {
|
||||
static const byte _player_ai_desc[] = {
|
||||
SLE_VAR(PlayerAI,state, SLE_UINT8),
|
||||
SLE_VAR(PlayerAI,tick, SLE_UINT8),
|
||||
SLE_VAR(PlayerAI,state_counter, SLE_UINT16),
|
||||
SLE_CONDVAR(PlayerAI,state_counter, SLE_FILE_U16 | SLE_VAR_U32, 0, 12),
|
||||
SLE_CONDVAR(PlayerAI,state_counter, SLE_UINT32, 13, 255),
|
||||
SLE_VAR(PlayerAI,timeout_counter, SLE_UINT16),
|
||||
|
||||
SLE_VAR(PlayerAI,state_mode, SLE_UINT8),
|
||||
|
||||
Reference in New Issue
Block a user