- fix: no more mission.runScreen flight related crashes.
- more js missions cleanup. git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2783 127b21dd-08f5-0310-b4b7-95ae10353056
This commit is contained in:
parent
7d870400f1
commit
472b08f9af
@ -109,7 +109,7 @@ this.missionOffers = function ()
|
|||||||
if (galaxyNumber < 2 && !missionVariables.conhunt && player.score > 255)
|
if (galaxyNumber < 2 && !missionVariables.conhunt && player.score > 255)
|
||||||
{
|
{
|
||||||
// there are no options to deal with, we don't need a callback function.
|
// there are no options to deal with, we don't need a callback function.
|
||||||
mission.runScreen({titleKey:"constrictor_hunt_title", messageKey:"constrictor_hunt_brief1", model: "constrictor"}, null);
|
mission.runScreen({titleKey:"constrictor_hunt_title", messageKey:"constrictor_hunt_brief1", model: "constrictor"});
|
||||||
if (galaxyNumber === 0)
|
if (galaxyNumber === 0)
|
||||||
{
|
{
|
||||||
mission.addMessageTextKey("constrictor_hunt_brief1a"); // galaxy = 0
|
mission.addMessageTextKey("constrictor_hunt_brief1a"); // galaxy = 0
|
||||||
@ -124,7 +124,7 @@ this.missionOffers = function ()
|
|||||||
}
|
}
|
||||||
if (missionVariables.conhunt === "CONSTRICTOR_DESTROYED") // Variable is set by the ship script
|
if (missionVariables.conhunt === "CONSTRICTOR_DESTROYED") // Variable is set by the ship script
|
||||||
{
|
{
|
||||||
mission.runScreen({titleKey:"constrictor_hunt_title", messageKey:"constrictor_hunt_debrief", model: "constrictor"}, null);
|
mission.runScreen({titleKey:"constrictor_hunt_title", messageKey:"constrictor_hunt_debrief", model: "constrictor"});
|
||||||
player.credits += 5000;
|
player.credits += 5000;
|
||||||
player.bounty = 0; // legal status
|
player.bounty = 0; // legal status
|
||||||
player.score += 256; // ship kills
|
player.score += 256; // ship kills
|
||||||
|
@ -57,26 +57,26 @@ this.missionOffers = function ()
|
|||||||
if (missionVariables.nova === "NOVA_ESCAPED_SYSTEM")
|
if (missionVariables.nova === "NOVA_ESCAPED_SYSTEM")
|
||||||
{
|
{
|
||||||
player.ship.removeAllCargo();
|
player.ship.removeAllCargo();
|
||||||
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_hero", background:"solar.png"}, null);
|
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_hero", background:"solar.png"});
|
||||||
player.ship.manifest["Gem-Stones"] += 100;
|
player.ship.manifest["Gem-Stones"] += 100;
|
||||||
this.endTheMission();
|
this.endTheMission();
|
||||||
}
|
}
|
||||||
else if (missionVariables.nova === "NOVA_ESCAPE_POD")
|
else if (missionVariables.nova === "NOVA_ESCAPE_POD")
|
||||||
{
|
{
|
||||||
player.ship.removeAllCargo(); // can only be done while docked.
|
player.ship.removeAllCargo(); // can only be done while docked.
|
||||||
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_disappointed", background:"solar.png"}, null);
|
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_disappointed", background:"solar.png"});
|
||||||
this.endTheMission();
|
this.endTheMission();
|
||||||
}
|
}
|
||||||
else if (missionVariables.nova === "NOVA_ESCAPE_OTHER")
|
else if (missionVariables.nova === "NOVA_ESCAPE_OTHER")
|
||||||
{
|
{
|
||||||
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_ignored", background:"solar.png"}, null);
|
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_ignored", background:"solar.png"});
|
||||||
this.endTheMission();
|
this.endTheMission();
|
||||||
}
|
}
|
||||||
else if (missionVariables.nova === "NOVA_ESCAPE_COWARD" && !system.sun.isGoingNova && !system.sun.hasGoneNova)
|
else if (missionVariables.nova === "NOVA_ESCAPE_COWARD" && !system.sun.isGoingNova && !system.sun.hasGoneNova)
|
||||||
{
|
{
|
||||||
player.decreaseContractReputation();
|
player.decreaseContractReputation();
|
||||||
player.decreasePassengerReputation();
|
player.decreasePassengerReputation();
|
||||||
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_disappointed", background:"solar.png"}, null);
|
mission.runScreen({titleKey:"oolite_nova_title", messageKey:"oolite_nova_disappointed", background:"solar.png"});
|
||||||
this.endTheMission();
|
this.endTheMission();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -49,7 +49,7 @@ this.missionOffers = function ()
|
|||||||
player.score > 1280 &&
|
player.score > 1280 &&
|
||||||
system.ID !== 83)
|
system.ID !== 83)
|
||||||
{
|
{
|
||||||
mission.runScreen({titleKey:"thargoid_plans_title", messageKey:"thargoid_plans_brief1"}, null);
|
mission.runScreen({titleKey:"thargoid_plans_title", messageKey:"thargoid_plans_brief1"});
|
||||||
missionVariables.thargplans = "PRELUDE";
|
missionVariables.thargplans = "PRELUDE";
|
||||||
mission.setInstructionsKey("thargoid_plans_info1");
|
mission.setInstructionsKey("thargoid_plans_info1");
|
||||||
mission.markSystem(83);
|
mission.markSystem(83);
|
||||||
@ -58,7 +58,7 @@ this.missionOffers = function ()
|
|||||||
system.ID === 83)
|
system.ID === 83)
|
||||||
{
|
{
|
||||||
mission.unmarkSystem(83);
|
mission.unmarkSystem(83);
|
||||||
mission.runScreen({titleKey:"thargoid_plans_title", messageKey:"thargoid_plans_brief2", model: "thargoid"}, null);
|
mission.runScreen({titleKey:"thargoid_plans_title", messageKey:"thargoid_plans_brief2", model: "thargoid"});
|
||||||
missionVariables.thargplans = "RUNNING";
|
missionVariables.thargplans = "RUNNING";
|
||||||
mission.setInstructionsKey("thargoid_plans_info2");
|
mission.setInstructionsKey("thargoid_plans_info2");
|
||||||
mission.markSystem(36);
|
mission.markSystem(36);
|
||||||
@ -66,7 +66,7 @@ this.missionOffers = function ()
|
|||||||
else if (missionVariables.thargplans === "RUNNING" &&
|
else if (missionVariables.thargplans === "RUNNING" &&
|
||||||
system.ID === 36)
|
system.ID === 36)
|
||||||
{
|
{
|
||||||
mission.runScreen({titleKey:"thargoid_plans_title", messageKey:"thargoid_plans_debrief", model: "thargoid"}, null);
|
mission.runScreen({titleKey:"thargoid_plans_title", messageKey:"thargoid_plans_debrief", model: "thargoid"});
|
||||||
player.score += 256; // ship kills
|
player.score += 256; // ship kills
|
||||||
mission.setInstructions(null); // reset the mission briefing
|
mission.setInstructions(null); // reset the mission briefing
|
||||||
missionVariables.thargplans = "MISSION_COMPLETE";
|
missionVariables.thargplans = "MISSION_COMPLETE";
|
||||||
|
@ -402,9 +402,8 @@ static JSBool MissionRunScreen(JSContext *context, JSObject *this, uintN argc, j
|
|||||||
if (argc>0) {
|
if (argc>0) {
|
||||||
if (!JSVAL_IS_NULL(argv[0]) && !JSVAL_IS_VOID(argv[0]) && !JSVAL_IS_OBJECT(argv[0]))
|
if (!JSVAL_IS_NULL(argv[0]) && !JSVAL_IS_VOID(argv[0]) && !JSVAL_IS_OBJECT(argv[0]))
|
||||||
{
|
{
|
||||||
OOReportJSBadArguments(context, nil, @"Mission.runScreen", 1, argv, @"Invalid argument", @"object");
|
OOReportJSBadArguments(context, @"Mission", @"runScreen", 1, argv, @"Invalid argument", @"object");
|
||||||
*outResult = BOOLToJSVal(NO);
|
return NO;
|
||||||
return YES;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!JSVAL_IS_NULL(argv[0]) && !JSVAL_IS_VOID(argv[0]) && JSVAL_IS_OBJECT(argv[0])) params = JSVAL_TO_OBJECT(argv[0]);
|
if (!JSVAL_IS_NULL(argv[0]) && !JSVAL_IS_VOID(argv[0]) && JSVAL_IS_OBJECT(argv[0])) params = JSVAL_TO_OBJECT(argv[0]);
|
||||||
@ -413,9 +412,8 @@ static JSBool MissionRunScreen(JSContext *context, JSObject *this, uintN argc, j
|
|||||||
if (argc > 1) function = argv[1];
|
if (argc > 1) function = argv[1];
|
||||||
if (!JSVAL_IS_OBJECT(function) || (!JSVAL_IS_NULL(function) && !JS_ObjectIsFunction(context, JSVAL_TO_OBJECT(function))))
|
if (!JSVAL_IS_OBJECT(function) || (!JSVAL_IS_NULL(function) && !JS_ObjectIsFunction(context, JSVAL_TO_OBJECT(function))))
|
||||||
{
|
{
|
||||||
OOReportJSBadArguments(context, nil, @"Mission.runScreen", 1, argv + 1, @"Invalid argument", @"function");
|
OOReportJSBadArguments(context, @"Mission", @"runScreen", 1, argv + 1, @"Invalid argument", @"function");
|
||||||
*outResult = BOOLToJSVal(NO);
|
return NO;
|
||||||
return YES;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
str=@"title";
|
str=@"title";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user