src/ai/default/default.cpp
changeset 9339 daaa2adbaf99
parent 9336 3f75a2c5e0d3
child 10081 e46b9eb2f9c1
equal deleted inserted replaced
9338:5ce4c6612c7e 9339:daaa2adbaf99
  2552 		);
  2552 		);
  2553 		Order order;
  2553 		Order order;
  2554 
  2554 
  2555 		order.MakeGoToStation(AiGetStationIdByDef(aib->use_tile, aib->cur_building_rule));
  2555 		order.MakeGoToStation(AiGetStationIdByDef(aib->use_tile, aib->cur_building_rule));
  2556 
  2556 
  2557 		if (!is_pass && i == 1) order.flags |= OFB_UNLOAD;
  2557 		if (!is_pass && i == 1) order.SetUnloadType(OFB_UNLOAD);
  2558 		if (_players_ai[p->index].num_want_fullload != 0 && (is_pass || i == 0))
  2558 		if (_players_ai[p->index].num_want_fullload != 0 && (is_pass || i == 0))
  2559 			order.flags |= OFB_FULL_LOAD;
  2559 			order.SetLoadType(OFB_FULL_LOAD);
  2560 
  2560 
  2561 		DoCommand(0, loco_id + (i << 16), order.Pack(), DC_EXEC, CMD_INSERT_ORDER);
  2561 		DoCommand(0, loco_id + (i << 16), order.Pack(), DC_EXEC, CMD_INSERT_ORDER);
  2562 	}
  2562 	}
  2563 
  2563 
  2564 	DoCommand(0, loco_id, 0, DC_EXEC, CMD_START_STOP_TRAIN);
  2564 	DoCommand(0, loco_id, 0, DC_EXEC, CMD_START_STOP_TRAIN);
  3287 		);
  3287 		);
  3288 		Order order;
  3288 		Order order;
  3289 
  3289 
  3290 		order.MakeGoToStation(AiGetStationIdFromRoadBlock(aib->use_tile, aib->cur_building_rule));
  3290 		order.MakeGoToStation(AiGetStationIdFromRoadBlock(aib->use_tile, aib->cur_building_rule));
  3291 
  3291 
  3292 		if (!is_pass && i == 1) order.flags |= OFB_UNLOAD;
  3292 		if (!is_pass && i == 1) order.SetUnloadType(OFB_UNLOAD);
  3293 		if (_players_ai[p->index].num_want_fullload != 0 && (is_pass || i == 0))
  3293 		if (_players_ai[p->index].num_want_fullload != 0 && (is_pass || i == 0))
  3294 			order.flags |= OFB_FULL_LOAD;
  3294 			order.SetLoadType(OFB_FULL_LOAD);
  3295 
  3295 
  3296 		DoCommand(0, loco_id + (i << 16), order.Pack(), DC_EXEC, CMD_INSERT_ORDER);
  3296 		DoCommand(0, loco_id + (i << 16), order.Pack(), DC_EXEC, CMD_INSERT_ORDER);
  3297 	}
  3297 	}
  3298 
  3298 
  3299 	DoCommand(0, loco_id, 0, DC_EXEC, CMD_START_STOP_ROADVEH);
  3299 	DoCommand(0, loco_id, 0, DC_EXEC, CMD_START_STOP_ROADVEH);
  3566 		bool is_pass = (_players_ai[p->index].cargo_type == CT_PASSENGERS || _players_ai[p->index].cargo_type == CT_MAIL);
  3566 		bool is_pass = (_players_ai[p->index].cargo_type == CT_PASSENGERS || _players_ai[p->index].cargo_type == CT_MAIL);
  3567 		Order order;
  3567 		Order order;
  3568 
  3568 
  3569 		order.MakeGoToStation(AiGetStationIdFromAircraftBlock(aib->use_tile, aib->cur_building_rule));
  3569 		order.MakeGoToStation(AiGetStationIdFromAircraftBlock(aib->use_tile, aib->cur_building_rule));
  3570 
  3570 
  3571 		if (!is_pass && i == 1) order.flags |= OFB_UNLOAD;
  3571 		if (!is_pass && i == 1) order.SetUnloadType(OFB_UNLOAD);
  3572 		if (_players_ai[p->index].num_want_fullload != 0 && (is_pass || i == 0))
  3572 		if (_players_ai[p->index].num_want_fullload != 0 && (is_pass || i == 0))
  3573 			order.flags |= OFB_FULL_LOAD;
  3573 			order.SetLoadType(OFB_FULL_LOAD);
  3574 
  3574 
  3575 		DoCommand(0, loco_id + (i << 16), order.Pack(), DC_EXEC, CMD_INSERT_ORDER);
  3575 		DoCommand(0, loco_id + (i << 16), order.Pack(), DC_EXEC, CMD_INSERT_ORDER);
  3576 	}
  3576 	}
  3577 
  3577 
  3578 	DoCommand(0, loco_id, 0, DC_EXEC, CMD_START_STOP_AIRCRAFT);
  3578 	DoCommand(0, loco_id, 0, DC_EXEC, CMD_START_STOP_AIRCRAFT);