- Apart from the main stations, which are still spawned with STATUS_ACTIVE, all other stations are now spawned with STATUS_IN_FLIGHT. Should fix some breakages.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2905 127b21dd-08f5-0310-b4b7-95ae10353056
This commit is contained in:
Marc 2009-12-23 03:40:49 +00:00
parent 994d1d55be
commit f158db818f

View File

@ -1019,7 +1019,8 @@ OOINLINE size_t class_getInstanceSize(Class cls)
[a_station setScanClass: CLASS_STATION]; [a_station setScanClass: CLASS_STATION];
[a_station setPlanet:[self planet]]; [a_station setPlanet:[self planet]];
[a_station setEquivalentTechLevel:techlevel]; [a_station setEquivalentTechLevel:techlevel];
[self addEntity:a_station]; // STATUS_ACTIVE, AI state GLOBAL [self addEntity:a_station]; // STATUS_IN_FLIGHT, AI state GLOBAL
[a_station setStatus:STATUS_ACTIVE]; // For backward compatibility. Might not be needed.
} }
cachedSun = a_sun; cachedSun = a_sun;
@ -2370,7 +2371,7 @@ GLfloat docked_light_specular[4] = { DOCKED_ILLUM_LEVEL, DOCKED_ILLUM_LEVEL, DOC
[ship setCrew:[NSArray arrayWithObject: [ship setCrew:[NSArray arrayWithObject:
[OOCharacter randomCharacterWithRole:role [OOCharacter randomCharacterWithRole:role
andOriginalSystem: systems[Ranrot() & 255]]]]; andOriginalSystem: systems[Ranrot() & 255]]]];
// calls UNIVERSE addEntity, all this is set inside leaveWitchspace: AI state GLOBAL, status STATUS_EXITING_WITCHSPACE, ai message: EXITED_WITCHSPACE, then at last STATUS_IN_FLIGHT // The following is set inside leaveWitchspace: AI state GLOBAL, STATUS_EXITING_WITCHSPACE, ai message: EXITED_WITCHSPACE, then STATUS_IN_FLIGHT
[ship leaveWitchspace]; [ship leaveWitchspace];
[ship release]; [ship release];
} }
@ -4199,10 +4200,9 @@ static BOOL MaintainLinkedLists(Universe* uni)
[se setRoll: 0.0]; [se setRoll: 0.0];
} }
[(StationEntity *)se setPlanet:[self planet]]; [(StationEntity *)se setPlanet:[self planet]];
// if this station is a carrier, we need the status to be STATUS_IN_FLIGHT, otherwise STATUS_ACTIVE is fine.
[se setStatus:[se maxFlightSpeed] > 0 ? STATUS_IN_FLIGHT : STATUS_ACTIVE];
} }
else [se setStatus:STATUS_IN_FLIGHT]; // stations used to have STATUS_ACTIVE, they're all STATUS_IN_FLIGHT now.
[se setStatus:STATUS_IN_FLIGHT];
} }
} }
else else