- using the js method 'launchPlayer()' during one of the two docking handlers has no longer any undesirable side effect.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@4737 127b21dd-08f5-0310-b4b7-95ae10353056
This commit is contained in:
Eric Walch 2012-01-11 19:43:16 +00:00
parent b4098195cb
commit e5a6411d1a
5 changed files with 11 additions and 4 deletions

View File

@ -15,7 +15,7 @@
{
"WITCHSPACE OKAY" = (wormholeEscorts);
"WITCHSPACE BLOCKED" = (setTargetToFoundTarget, setDestinationWithinTarget, "setDesiredRangeTo: 30000.0", performFlyToRangeFromDestination);
"WITCHSPACE UNAVAILABLE" = ("setAITo: route1traderAI.plist");
"WITCHSPACE UNAVAILABLE" = ("switchAITo: route1traderAI.plist");
UPDATE = (performHyperSpaceExit, "pauseAI: 5.0");
};
FLEE =

View File

@ -4743,6 +4743,7 @@ static bool minShieldLevelPercentageInitialised = false;
scanner_zoom_rate = 0.0f;
[UNIVERSE setDisplayText:NO];
[UNIVERSE setDisplayCursor:NO];
if ([self status] == STATUS_LAUNCHING) return; // a JS script has aborted the docking.
[self setOrientation: kIdentityQuaternion]; // reset orientation to dock
[UNIVERSE setUpBreakPattern:position orientation:orientation forDocking:YES];
@ -4821,6 +4822,7 @@ static bool minShieldLevelPercentageInitialised = false;
OOJSStartTimeLimiterWithTimeLimit(kOOJSLongTimeLimit);
[self doScriptEvent:OOJSID("shipDockedWithStation") withArgument:dockedStation];
OOJSStopTimeLimiter();
if ([self status] == STATUS_LAUNCHING) return;
// if we've not switched to the mission screen yet then proceed normally..
if (gui_screen != GUI_SCREEN_MISSION)

View File

@ -86,7 +86,7 @@ MA 02110-1301, USA.
- (NSArray *) contractList;
- (void) setGuiToManifestScreen;
- (void) setGuiToDeliveryReportScreenWithText:(NSString*) report;
//- (void) setGuiToDeliveryReportScreenWithText:(NSString*) report;
- (void) setGuiToDockingReportScreen;
// ---------------------------------------------------------------------- //

View File

@ -1166,6 +1166,10 @@ static NSString * const kOOLogNoteShowShipyardModel = @"script.debug.note.showSh
}
// Eric 2012-01-02: As far as I see, is the next code unused since at least 1.65 and can be deleted.
// Presenting any arrival messages is integrated in the general 'setGuiToDockingReportScreen'
// and in not likely to be used in future.
/*
- (void) setGuiToDeliveryReportScreenWithText:(NSString*) report
{
OOGUIScreenID oldScreen = gui_screen;
@ -1200,7 +1204,7 @@ static NSString * const kOOLogNoteShowShipyardModel = @"script.debug.note.showSh
[gui setColor:[OOColor yellowColor] forRow:21];
[gui setShowTextCursor:NO];
}
/* ends */
// ends
if (lastTextKey)
{
@ -1223,7 +1227,7 @@ static NSString * const kOOLogNoteShowShipyardModel = @"script.debug.note.showSh
[self noteGUIDidChangeFrom:oldScreen to:gui_screen];
}
}
*/
- (void) setGuiToDockingReportScreen
{

View File

@ -2134,6 +2134,7 @@ static int scriptRandomSeed = -1; // ensure proper random function
{
// ensure autosave is ready for the next unscripted launch
if ([UNIVERSE autoSave]) [UNIVERSE setAutoSaveNow:YES];
if ([self status] == STATUS_DOCKING) [self setStatus:STATUS_DOCKED]; // needed here to prevent the normal update from continuing with docking.
[self leaveDock:dockedStation];
}