ai/default/default.c
changeset 2819 f25fb6ee397f
parent 2753 b25bd313785e
child 2952 58522ed8f0f1
equal deleted inserted replaced
2818:b61038e1a75c 2819:f25fb6ee397f
   309 			  !CmdFailed(DoCommandByTile(tile, veh, 0, DC_EXEC, CMD_BUILD_RAIL_VEHICLE)) ) {
   309 			  !CmdFailed(DoCommandByTile(tile, veh, 0, DC_EXEC, CMD_BUILD_RAIL_VEHICLE)) ) {
   310 			VehicleID veh = _new_train_id;
   310 			VehicleID veh = _new_train_id;
   311 			AiRestoreVehicleOrders(GetVehicle(veh), orderbak);
   311 			AiRestoreVehicleOrders(GetVehicle(veh), orderbak);
   312 			DoCommandByTile(0, veh, 0, DC_EXEC, CMD_START_STOP_TRAIN);
   312 			DoCommandByTile(0, veh, 0, DC_EXEC, CMD_START_STOP_TRAIN);
   313 
   313 
   314 			DoCommandByTile(0, veh, _ai_service_interval, DC_EXEC, CMD_CHANGE_TRAIN_SERVICE_INT);
   314 			DoCommandByTile(0, veh, _ai_service_interval, DC_EXEC, CMD_CHANGE_SERVICE_INT);
   315 		}
   315 		}
   316 	}
   316 	}
   317 }
   317 }
   318 
   318 
   319 static void AiHandleReplaceRoadVeh(Player *p)
   319 static void AiHandleReplaceRoadVeh(Player *p)
   338 			  !CmdFailed(DoCommandByTile(tile, veh, 0, DC_EXEC, CMD_BUILD_ROAD_VEH)) ) {
   338 			  !CmdFailed(DoCommandByTile(tile, veh, 0, DC_EXEC, CMD_BUILD_ROAD_VEH)) ) {
   339 			VehicleID veh = _new_roadveh_id;
   339 			VehicleID veh = _new_roadveh_id;
   340 			AiRestoreVehicleOrders(GetVehicle(veh), orderbak);
   340 			AiRestoreVehicleOrders(GetVehicle(veh), orderbak);
   341 			DoCommandByTile(0, veh, 0, DC_EXEC, CMD_START_STOP_ROADVEH);
   341 			DoCommandByTile(0, veh, 0, DC_EXEC, CMD_START_STOP_ROADVEH);
   342 
   342 
   343 			DoCommandByTile(0, veh, _ai_service_interval, DC_EXEC, CMD_CHANGE_TRAIN_SERVICE_INT);
   343 			DoCommandByTile(0, veh, _ai_service_interval, DC_EXEC, CMD_CHANGE_SERVICE_INT);
   344 		}
   344 		}
   345 	}
   345 	}
   346 }
   346 }
   347 
   347 
   348 static void AiHandleReplaceAircraft(Player *p)
   348 static void AiHandleReplaceAircraft(Player *p)
   367 			  !CmdFailed(DoCommandByTile(tile, veh, 0, DC_EXEC, CMD_BUILD_AIRCRAFT)) ) {
   367 			  !CmdFailed(DoCommandByTile(tile, veh, 0, DC_EXEC, CMD_BUILD_AIRCRAFT)) ) {
   368 			VehicleID veh = _new_aircraft_id;
   368 			VehicleID veh = _new_aircraft_id;
   369 			AiRestoreVehicleOrders(GetVehicle(veh), orderbak);
   369 			AiRestoreVehicleOrders(GetVehicle(veh), orderbak);
   370 			DoCommandByTile(0, veh, 0, DC_EXEC, CMD_START_STOP_AIRCRAFT);
   370 			DoCommandByTile(0, veh, 0, DC_EXEC, CMD_START_STOP_AIRCRAFT);
   371 
   371 
   372 			DoCommandByTile(0, veh, _ai_service_interval, DC_EXEC, CMD_CHANGE_TRAIN_SERVICE_INT);
   372 			DoCommandByTile(0, veh, _ai_service_interval, DC_EXEC, CMD_CHANGE_SERVICE_INT);
   373 		}
   373 		}
   374 	}
   374 	}
   375 }
   375 }
   376 
   376 
   377 static void AiHandleReplaceShip(Player *p)
   377 static void AiHandleReplaceShip(Player *p)
  2448 		DoCommandByTile(0, loco_id + (i << 16),	PackOrder(&order), DC_EXEC, CMD_INSERT_ORDER);
  2448 		DoCommandByTile(0, loco_id + (i << 16),	PackOrder(&order), DC_EXEC, CMD_INSERT_ORDER);
  2449 	}
  2449 	}
  2450 
  2450 
  2451 	DoCommandByTile(0, loco_id, 0, DC_EXEC, CMD_START_STOP_TRAIN);
  2451 	DoCommandByTile(0, loco_id, 0, DC_EXEC, CMD_START_STOP_TRAIN);
  2452 
  2452 
  2453 	DoCommandByTile(0, loco_id, _ai_service_interval, DC_EXEC, CMD_CHANGE_TRAIN_SERVICE_INT);
  2453 	DoCommandByTile(0, loco_id, _ai_service_interval, DC_EXEC, CMD_CHANGE_SERVICE_INT);
  2454 
  2454 
  2455 	if (p->ai.num_want_fullload != 0)
  2455 	if (p->ai.num_want_fullload != 0)
  2456 		p->ai.num_want_fullload--;
  2456 		p->ai.num_want_fullload--;
  2457 
  2457 
  2458 	if (--p->ai.num_loco_to_build != 0) {
  2458 	if (--p->ai.num_loco_to_build != 0) {
  3205 
  3205 
  3206 		DoCommandByTile(0, loco_id + (i << 16),	PackOrder(&order), DC_EXEC, CMD_INSERT_ORDER);
  3206 		DoCommandByTile(0, loco_id + (i << 16),	PackOrder(&order), DC_EXEC, CMD_INSERT_ORDER);
  3207 	}
  3207 	}
  3208 
  3208 
  3209 	DoCommandByTile(0, loco_id, 0, DC_EXEC, CMD_START_STOP_ROADVEH);
  3209 	DoCommandByTile(0, loco_id, 0, DC_EXEC, CMD_START_STOP_ROADVEH);
  3210 	DoCommandByTile(0, loco_id, _ai_service_interval, DC_EXEC, CMD_CHANGE_TRAIN_SERVICE_INT);
  3210 	DoCommandByTile(0, loco_id, _ai_service_interval, DC_EXEC, CMD_CHANGE_SERVICE_INT);
  3211 
  3211 
  3212 	if (p->ai.num_want_fullload != 0) p->ai.num_want_fullload--;
  3212 	if (p->ai.num_want_fullload != 0) p->ai.num_want_fullload--;
  3213 	if (--p->ai.num_loco_to_build == 0) p->ai.state = AIS_0;
  3213 	if (--p->ai.num_loco_to_build == 0) p->ai.state = AIS_0;
  3214 }
  3214 }
  3215 
  3215 
  3519 		DoCommandByTile(0, loco_id + (i << 16), PackOrder(&order), DC_EXEC, CMD_INSERT_ORDER);
  3519 		DoCommandByTile(0, loco_id + (i << 16), PackOrder(&order), DC_EXEC, CMD_INSERT_ORDER);
  3520 	}
  3520 	}
  3521 
  3521 
  3522 	DoCommandByTile(0, loco_id, 0, DC_EXEC, CMD_START_STOP_AIRCRAFT);
  3522 	DoCommandByTile(0, loco_id, 0, DC_EXEC, CMD_START_STOP_AIRCRAFT);
  3523 
  3523 
  3524 	DoCommandByTile(0, loco_id, _ai_service_interval, DC_EXEC, CMD_CHANGE_TRAIN_SERVICE_INT);
  3524 	DoCommandByTile(0, loco_id, _ai_service_interval, DC_EXEC, CMD_CHANGE_SERVICE_INT);
  3525 
  3525 
  3526 	if (p->ai.num_want_fullload != 0)
  3526 	if (p->ai.num_want_fullload != 0)
  3527 		p->ai.num_want_fullload--;
  3527 		p->ai.num_want_fullload--;
  3528 
  3528 
  3529 	if (--p->ai.num_loco_to_build == 0) {
  3529 	if (--p->ai.num_loco_to_build == 0) {