Temporarily suppress certain bits of normal population during missions
(avoids giving the player potentially powerful assistance)
This commit is contained in:
parent
dbe6cb109e
commit
b82db62594
@ -71,6 +71,8 @@ this.systemWillPopulate = function ()
|
||||
if (missionVariables.cloakcounter > 6 && system.countShipsWithRole("asp-cloaked") === 0)
|
||||
{
|
||||
// Then trigger the ambush!
|
||||
// ensure all normal system population is set up first
|
||||
worldScripts["oolite-populator"].systemWillPopulate();
|
||||
system.setPopulator("oolite-cloaking-device-mission",
|
||||
{
|
||||
priority: 50,
|
||||
@ -90,6 +92,17 @@ this.systemWillPopulate = function ()
|
||||
}
|
||||
}
|
||||
});
|
||||
/* Then remove most ships from the default populator which
|
||||
* might attack the cloaked group. The repopulator will add more
|
||||
* later. */
|
||||
system.setPopulator("oolite-interceptors-witchpoint",null);
|
||||
system.setPopulator("oolite-hunters-route1",null);
|
||||
system.setPopulator("oolite-hunters-medium-route1",null);
|
||||
system.setPopulator("oolite-hunters-medium-route3",null);
|
||||
system.setPopulator("oolite-hunters-heavy-route1",null);
|
||||
system.setPopulator("oolite-hunters-heavy-route3",null);
|
||||
system.setPopulator("oolite-police-route1",null);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -166,10 +166,15 @@ this.missionScreenOpportunity = function ()
|
||||
|
||||
this.systemWillPopulate = function()
|
||||
{
|
||||
// galaxy+system parts of this check shouldn't be necessary
|
||||
if (galaxyNumber === 1 &&
|
||||
system.ID === 193 &&
|
||||
missionVariables.conhunt === "STAGE_1")
|
||||
{
|
||||
// ensure all normal system population is set up first
|
||||
worldScripts["oolite-populator"].systemWillPopulate();
|
||||
|
||||
// then add the Constrictor
|
||||
system.setPopulator("oolite-constrictor-mission",
|
||||
{
|
||||
priority: 50,
|
||||
@ -183,5 +188,17 @@ this.systemWillPopulate = function()
|
||||
constrictor[0].setScript("oolite-constrictor.js");
|
||||
}
|
||||
});
|
||||
|
||||
/* Then remove most ships from the default populator which
|
||||
* might attack the Constrictor. The repopulator will add more
|
||||
* later. */
|
||||
system.setPopulator("oolite-interceptors-witchpoint",null);
|
||||
system.setPopulator("oolite-hunters-route1",null);
|
||||
system.setPopulator("oolite-hunters-medium-route1",null);
|
||||
system.setPopulator("oolite-hunters-medium-route3",null);
|
||||
system.setPopulator("oolite-hunters-heavy-route1",null);
|
||||
system.setPopulator("oolite-hunters-heavy-route3",null);
|
||||
system.setPopulator("oolite-police-route1",null);
|
||||
|
||||
}
|
||||
};
|
||||
|
@ -43,12 +43,26 @@ this.startUp = function()
|
||||
{
|
||||
// for translations
|
||||
this.$medicalReg = new RegExp(expandDescription("[medical-word]"),"i");
|
||||
this.$populatorRun = 0;
|
||||
}
|
||||
|
||||
|
||||
/* This allows this.systemWillPopulate to be called by scripts running
|
||||
* before it, so that its entries are in place before they try to
|
||||
* modify them. Generally useful if you want to modify the basic
|
||||
* system population. */
|
||||
this.shipWillEnterWitchspace = function()
|
||||
{
|
||||
this.$populatorRun = 0; // reset variable after all population complete
|
||||
}
|
||||
|
||||
/* Basic system population */
|
||||
this.systemWillPopulate = function()
|
||||
{
|
||||
if (this.$populatorRun)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
/* Priority range 0-99 used by Oolite default populator */
|
||||
// anything added here with priority > 20 will be cancelled by the
|
||||
@ -629,14 +643,6 @@ this.systemWillPopulate = function()
|
||||
|
||||
// hunters
|
||||
// 5/6 go route 1, and back. 50% faster ships than traders, on average
|
||||
initial = hlight * 5/6 * (l1length*2 / 900000) * (1.0-0.1*(7-system.info.government));
|
||||
system.setPopulator("oolite-hunters-route1",
|
||||
{
|
||||
priority: 40,
|
||||
location: "LANE_WP",
|
||||
groupCount: randomise(initial),
|
||||
callback: this._addLightHunter.bind(this)
|
||||
});
|
||||
initial = hlight * 1/6 * (trilength / 900000) * (1.0-0.1*(7-system.info.government));
|
||||
system.setPopulator("oolite-hunters-triangle",
|
||||
{
|
||||
@ -645,6 +651,14 @@ this.systemWillPopulate = function()
|
||||
groupCount: randomise(initial),
|
||||
callback: this._addLightHunter.bind(this)
|
||||
});
|
||||
initial = hlight * 5/6 * (l1length*2 / 900000) * (1.0-0.1*(7-system.info.government));
|
||||
system.setPopulator("oolite-hunters-route1",
|
||||
{
|
||||
priority: 40,
|
||||
location: "LANE_WP",
|
||||
groupCount: randomise(initial),
|
||||
callback: this._addLightHunter.bind(this)
|
||||
});
|
||||
initial = hmedium * l1length/900000 * (2/3) * 2/3;
|
||||
system.setPopulator("oolite-hunters-medium-route1",
|
||||
{
|
||||
@ -949,7 +963,7 @@ this.systemWillPopulate = function()
|
||||
this._debugP("Thargoid (ST)",pset["oolite-thargoid-strike"].groupCount);
|
||||
|
||||
// and the initial ships are done...
|
||||
|
||||
this.$populatorRun = 1;
|
||||
}
|
||||
|
||||
|
||||
@ -1239,6 +1253,10 @@ this.systemWillRepopulate = function()
|
||||
|
||||
this.interstellarSpaceWillPopulate = function()
|
||||
{
|
||||
if (this.$populatorRun)
|
||||
{
|
||||
return;
|
||||
}
|
||||
system.setPopulator("oolite-interstellar-thargoids",
|
||||
{
|
||||
priority: 10,
|
||||
@ -1248,6 +1266,7 @@ this.interstellarSpaceWillPopulate = function()
|
||||
system.addShips("thargoid",1,pos,0);
|
||||
}
|
||||
});
|
||||
this.$populatorRun = 1;
|
||||
}
|
||||
|
||||
this.interstellarSpaceWillRepopulate = function()
|
||||
@ -1270,6 +1289,10 @@ this.interstellarSpaceWillRepopulate = function()
|
||||
|
||||
this.novaSystemWillPopulate = function()
|
||||
{
|
||||
if (this.$populatorRun)
|
||||
{
|
||||
return;
|
||||
}
|
||||
// just burnt-out rubble
|
||||
system.setPopulator("oolite-nova-cinders",
|
||||
{
|
||||
@ -1282,7 +1305,7 @@ this.novaSystemWillPopulate = function()
|
||||
system.addShips("cinder",10,pos,25600);
|
||||
}
|
||||
});
|
||||
|
||||
this.$populatorRun = 1;
|
||||
}
|
||||
|
||||
|
||||
|
@ -138,6 +138,9 @@ this.systemWillPopulate = function()
|
||||
{
|
||||
if (missionVariables.thargplans === "RUNNING" && galaxyNumber === 2)
|
||||
{
|
||||
// ensure all normal system population is set up first
|
||||
worldScripts["oolite-populator"].systemWillPopulate();
|
||||
|
||||
system.setPopulator("oolite-thargoidplans-mission-a",
|
||||
{
|
||||
priority: 50,
|
||||
@ -179,6 +182,9 @@ this.systemWillPopulate = function()
|
||||
this._waveCount++;
|
||||
}
|
||||
|
||||
/* Make sure the player doesn't get too much help from other ships! */
|
||||
system.setPopulator("oolite-interceptors-witchpoint",null);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user