swappable spawns

This commit is contained in:
RandomityGuy 2024-07-17 22:24:19 +05:30
parent e7e50cf865
commit 8a1997190a
17 changed files with 24756 additions and 10162 deletions

View file

@ -88,7 +88,7 @@ new SimGroup(MissionGroup) {
scale = "1 1 1";
dataBlock = "Tornado";
};
new SimGroup(GemSpawns) {
new SimGroup(OldVersion) {
new Item() {
position = "0.43 -6.1 5.7";
@ -388,6 +388,243 @@ new SimGroup(MissionGroup) {
rotate = "1";
};
};
new SimGroup(NewVersion) {
new Item() {
position = "0.43 -6.1 5.7";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "7.2 -7.6 9.35";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "4.9 7.45 1.8";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-1.9 -6.9 1.8";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "10.29 11.25 8.47";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-4.3 6.25 0.7";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-0.9 10.6 4.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "7.24 -0.12 3.17";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "8.2 2.4 4.1";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "4.75 13.25 8.23988";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "9.64 8.1 5.47";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "1.4 13.8 6.85";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-5.9 11.3 5.95";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-7.2 7.5 2.76";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-11 3.55 3.10058";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-11 -1.66 5.49";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-7.6 -5 5.8";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-4.73 -2.2 1.7";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-5.4 1 1.12";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "-1.25 6.34 0.43";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "2.64 0.93 0.43";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "0.5 -2 2.65";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "9.75 -2.26 5.8";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "12.8 -2.18 8.8";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "13.5 -6.25 10.05";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "13.2 4.7 4.12109";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
};
};
new SimGroup(SpawnPoints) {
new Trigger() {

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -12,6 +12,9 @@ new SimGroup(MissionGroup) {
time = "240000";
maxGemsPerSpawn = "6";
radiusFromGem = "15";
RedSpawnChance = "0.9";
yellowSpawnChance = "0.8";
blueSpawnChance = "0.25";
alarmStartTime = "20";
game = "PlatinumQuest";
overviewHeight = "5";
@ -255,8 +258,16 @@ new SimGroup(MissionGroup) {
rotate = "1";
};
};
new SimGroup(GemGroup) {
new SimGroup(OldVersion) {
new Item() {
position = "13.875 -21.375 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemPlatinum";
collideable = "0";
static = "1";
rotate = "1";
};
new Item() {
position = "12.8 5.55 31.875";
rotation = "1 0 0 0";
@ -978,15 +989,814 @@ new SimGroup(MissionGroup) {
rotate = "1";
};
};
new Item() {
position = "13.875 -21.375 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemPlatinum";
collideable = "0";
static = "1";
rotate = "1";
};
new SimGroup(NewVersion) {
new Item() {
position = "12.8 5.55 31.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "7.2 -0.35 35.05";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemBlue";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-5.63809 4.25 46.1283";
rotation = "0 -1 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "4.35133 -5.875 47.2";
rotation = "0 1 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "6.3 -7.875 47.1";
rotation = "0 1 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-1.6 4.125 45.1188";
rotation = "0 -1 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-3.6102 2.225 45.6213";
rotation = "0 -1 0 14";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-5.6 -13.9 46.1188";
rotation = "0 -1 0 14";
scale = "1 1 1";
dataBlock = "GemItemBlue";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-1.25 -7.9 45.7188";
rotation = "0 1 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "0.25 -9.875 46.125";
rotation = "0 1 0 14";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-5.7 -6.15 46.1437";
rotation = "0 -1 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-11.625 -9.75 46.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-13.5 -7.875 46.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-11.875 -1.95 37.45";
rotation = "1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-11.625 -1.75 46.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-9.875 -4.275 38.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "6.625 4.125 36.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "11.875 2.625 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "15.875 0.625 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "10.125 -16.625 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "15.875 -9.375 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "5 -12.875 31.125";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "1.375 -14.5 30.8125";
rotation = "-1 0 0 26.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "8.75 -12.5 31.7768";
rotation = "-1 0 0 25";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "3 -17.75 29.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "6.75 -22.35 29.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "7.875 -1.375 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "6.75 -16.75 29.8747";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "4.9 -20.35 30.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-6 -15 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-5 -9.375 32.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-9 -18 30.3203";
rotation = "1 0 0 17.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-13.2326 -22.4 31.7903";
rotation = "0 -1 0 21.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-8.25 -22.875 31.375";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-15.25 -14.375 31.625";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-15.25 -12.75 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-15.25 -18.75 32.5469";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-11.25 -18.625 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-13.125 -8.7 35.55";
rotation = "-1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-12.875 -15.6535 33.9446";
rotation = "1 0 0 14";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-10.126 2.37117 31.7499";
rotation = "-1 0 0 26.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-1.626 2.37117 31.7499";
rotation = "-1 0 0 26.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-10.75 -2.375 30.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-4.12664 -0.875 29.8758";
rotation = "0 -1 0 25";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-13.375 2.875 32.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-14.875 -4.75 32.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "0.25 -1.5 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-9 7.5 32.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "0.875 -1.325 30.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-3.25 -4.25 31.3125";
rotation = "1 0 0 26.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-7.375 -5.75 32.0625";
rotation = "1 0 0 26.5";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-18.625 1 31.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-17.375 2.875 31.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-19.125 5.625 31.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-2.75 5.625 32.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-7 8 36.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-2.75 5.625 36.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-13.375 -4.3 39.625";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-6.75 -5.375 37.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "3.875 6.6 36.8774";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-4 -2.5 36.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "2.75 -2.5 36.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "12 -10 38.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "8.75 -6.25 36.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "12.625 -4.5 36";
rotation = "1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "18.65 -4.05 35.55";
rotation = "1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "15 -8.55 38.05";
rotation = "1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "15 7.5 32.375";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "5.88 3.5 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "19 7.75 31.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "12.8715 1.55 32.6259";
rotation = "0 -1 0 14";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "19 3.5 31.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "19.125 -8.05 37.55";
rotation = "1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "16.625 -10.625 38.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "8.4 -9.85 47.375";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-1.525 -22.425 28.8747";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-1.25 -17.75 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "3 -10.5 38.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "5.75 -8.55 38.05";
rotation = "1 0 0 45";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "13.875 -21.375 28.875";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
};
new Marker(Glassy) {
position = "0 0 0";
rotation = "1 0 0 0";

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -83,7 +83,7 @@ new SimGroup(MissionGroup) {
dataBlock = "InBoundsTrigger";
polyhedron = "0.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000 -1.0000000 0.0000000 0.0000000 0.0000000 1.0000000";
};
new SimGroup(GemSpawns) {
new SimGroup(OldVersion) {
new Item() {
position = "-5.119 -33.9338 87.05";
@ -644,6 +644,674 @@ new SimGroup(MissionGroup) {
rotate = "1";
};
};
new SimGroup(NewVersion) {
new Item() {
position = "-5.119 -33.9338 87.05";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "0.238877 0.0126674 98.07";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemBlue";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "22 -30 87.75";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "35.5353 -35.5405 87.3425";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "27.5072 -35.4542 87.3425";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "30 -22 87.75";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "35.6136 -27.204 87.3425";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "10 -39 89.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-9.75 -39 87";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-4.97052 -42.5558 87.45";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "4.97378 -42.4702 89.65";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "0.0565414 -38.9513 88.2";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "5.05292 -33.9597 89.3";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "10 39 91.55";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "14 -22 87.75";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "16.6313 -8.21968 87.3906";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "8.5249 -16.4699 87.3";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "8.5055 -8.48848 87.3";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "5.07831 39.0507 92.5";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "16.4695 8.54622 89.55";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "22 13 90";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "8.44139 8.63251 89.6";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "8.422 16.6139 89.55";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "5.1134 42.551 92";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "35.4799 27.4735 89.55";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "35.5582 35.81 89.7";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "22 30 90";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "27.4324 35.5412 89.55";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-26 -5 85.5";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-8.55246 -16.6579 85.0617";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-8.47416 -8.32136 85.1117";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-22 -14 85.5";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-18.25 -8.75 85.0617";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-26.5 -35.5 85.0537";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-22 -29 85.5";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-30 -22 85.5";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-35.5629 -35.4318 85.0537";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-35.5823 -27.4504 85.0537";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-22 13 92.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-8.46983 8.55635 91.8";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-8.39153 16.8929 91.85";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-16.4979 8.64265 91.75";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-14 22 92.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-22 30 92.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-30 22 92.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "-27.5413 35.7754 91.95";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-35.6477 27.5252 91.85";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-35.6671 35.5066 91.85";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "34.1436 5.22408 91.55";
rotation = "0 0 -1 88.8085";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "39.1597 5.07842 92.5";
rotation = "0 0 -1 88.8085";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "42.6506 4.968 91.95";
rotation = "0 0 -1 88.8085";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "39.0302 0.125002 90.5";
rotation = "0 0 -1 88.8085";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "42.5294 -4.97594 89.7";
rotation = "0 0 -1 88.8085";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "38.9305 -9.68146 89.25";
rotation = "0 0 -1 88.8084";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
noRespawn = "0";
};
new Item() {
position = "33.9062 -4.94508 89.3";
rotation = "0 0 -1 88.8085";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-9.99996 39.0046 93.8";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-4.93289 39.1572 94.7";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-4.83079 42.6484 94.25";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "0.0208478 39.0396 92.65";
rotation = "0 0 1 181.055";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "39 -39 90.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-39 -39 88";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "39 39 92.5";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemYellow";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-39 39 94.75";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemBlue";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "30 22 90";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemRed";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
new Item() {
position = "-31.5 12.5 91.25";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "GemItemBlue";
collideable = "0";
static = "1";
rotate = "1";
noParticles = "0";
};
};
new SimGroup(SpawnPoints) {
new Trigger() {

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -107,6 +107,7 @@ typedef ServerSettings = {
var forceSpectators:Bool;
var quickRespawn:Bool;
var competitiveMode:Bool;
var oldSpawns:Bool;
}
typedef PlayStatistics = {
@ -213,6 +214,7 @@ class Settings {
forceSpectators: false,
quickRespawn: true,
competitiveMode: false,
oldSpawns: false
}
public static var levelStatistics:Map<String, PlayStatistics> = [];
@ -424,6 +426,9 @@ class Settings {
serverSettings = json.serverSettings;
}
#if js
if (serverSettings.oldSpawns == null) {
serverSettings.oldSpawns = false;
}
if (optionsSettings.marbleIndex == null) {
optionsSettings.marbleIndex = 0;
optionsSettings.marbleSkin = "base";

View file

@ -84,8 +84,10 @@ class CollisionEntity implements IOctreeObject implements IBVHObject {
}
public function dispose() {
for (s in this.surfaces)
s.dispose();
if (this.surfaces != null) {
for (s in this.surfaces)
s.dispose();
}
go = null;
surfaces = null;
bvh = null;

View file

@ -22,7 +22,7 @@ class MPServerDlg extends GuiImage {
this.horizSizing = Center;
this.vertSizing = Center;
this.position = new Vector(100, 17);
this.extent = new Vector(440, 446);
this.extent = new Vector(440, 486);
function loadButtonImages(path:String) {
var normal = ResourceLoader.getResource('${path}_n.png', ResourceLoader.getImage, this.imageResources).toTile();
@ -43,7 +43,7 @@ class MPServerDlg extends GuiImage {
var cancelBtn = new GuiButton(loadButtonImages("data/ui/mp/join/cancel"));
cancelBtn.vertSizing = Top;
cancelBtn.horizSizing = Left;
cancelBtn.position = new Vector(123, 384);
cancelBtn.position = new Vector(123, 424);
cancelBtn.extent = new Vector(94, 45);
cancelBtn.pressedAction = (e) -> {
MarbleGame.canvas.popDialog(this);
@ -53,7 +53,7 @@ class MPServerDlg extends GuiImage {
var saveBtn = new GuiButton(loadButtonImages("data/ui/mp/join/save"));
saveBtn.horizSizing = Left;
saveBtn.vertSizing = Top;
saveBtn.position = new Vector(223, 384);
saveBtn.position = new Vector(223, 424);
saveBtn.extent = new Vector(94, 45);
this.addChild(saveBtn);
@ -96,6 +96,7 @@ class MPServerDlg extends GuiImage {
var curServerForceSpectators = Settings.serverSettings.forceSpectators;
var curServerQuickRespawn = Settings.serverSettings.quickRespawn;
var curServerCompetitive = Settings.serverSettings.competitiveMode;
var curServerOldSpawns = Settings.serverSettings.oldSpawns;
saveBtn.pressedAction = (e) -> {
Settings.serverSettings.name = curServerName;
@ -105,6 +106,7 @@ class MPServerDlg extends GuiImage {
Settings.serverSettings.forceSpectators = curServerForceSpectators;
Settings.serverSettings.quickRespawn = curServerQuickRespawn;
Settings.serverSettings.competitiveMode = curServerCompetitive;
Settings.serverSettings.oldSpawns = curServerOldSpawns;
if (Net.isHost) {
Net.serverInfo.name = curServerName;
Net.serverInfo.description = curServerDescription;
@ -112,7 +114,7 @@ class MPServerDlg extends GuiImage {
Net.serverInfo.password = curServerPassword;
MasterServerClient.instance.sendServerInfo(Net.serverInfo); // Update data on master server
NetCommands.sendServerSettings(Settings.serverSettings.name, Settings.serverSettings.description, Settings.serverSettings.quickRespawn,
Settings.serverSettings.forceSpectators, Settings.serverSettings.competitiveMode);
Settings.serverSettings.forceSpectators, Settings.serverSettings.competitiveMode, Settings.serverSettings.oldSpawns);
}
Settings.save();
MarbleGame.canvas.popDialog(this);
@ -122,7 +124,7 @@ class MPServerDlg extends GuiImage {
serverSettingsContainer.vertSizing = Height;
serverSettingsContainer.horizSizing = Left;
serverSettingsContainer.position = new Vector(16, 65);
serverSettingsContainer.extent = new Vector(390, 306);
serverSettingsContainer.extent = new Vector(390, 346);
this.addChild(serverSettingsContainer);
var serverName = new GuiText(markerFelt18);
@ -332,5 +334,28 @@ class MPServerDlg extends GuiImage {
curServerCompetitive = !curServerCompetitive;
};
serverSettingsContainer.addChild(competitiveChk);
var oldSpawns = new GuiText(markerFelt18);
oldSpawns.text.text = "Old Spawns:";
oldSpawns.text.textColor = 0xFFFFFF;
oldSpawns.text.dropShadow = {
dx: 1 * Settings.uiScale,
dy: 1 * Settings.uiScale,
alpha: 0.5,
color: 0
};
oldSpawns.position = new Vector(0, 39 * 8);
oldSpawns.extent = new Vector(206, 14);
serverSettingsContainer.addChild(oldSpawns);
var oldSpawnsChk = new GuiButton(loadButtonImages("data/ui/mp/lb_chkbx"));
oldSpawnsChk.position = new Vector(359, 9 * 5 + 29 * 9 + 4);
oldSpawnsChk.extent = new Vector(31, 31);
oldSpawnsChk.buttonType = Toggle;
oldSpawnsChk.pressed = curServerOldSpawns;
oldSpawnsChk.pressedAction = (sender) -> {
curServerOldSpawns = !curServerOldSpawns;
};
serverSettingsContainer.addChild(oldSpawnsChk);
}
}

View file

@ -182,7 +182,7 @@ class MainMenuGui extends GuiImage {
versionText.vertSizing = Bottom;
versionText.position = new Vector(502, 61);
versionText.extent = new Vector(97, 72);
versionText.text.text = "<p align=\"center\">1.5.4</p>";
versionText.text.text = '<p align=\"center\">${MarbleGame.currentVersion}</p>';
versionText.text.dropShadow = {
dx: 1 * Settings.uiScale,
dy: 1 * Settings.uiScale,

View file

@ -68,6 +68,10 @@ class MissionElementScriptObject extends MissionElementBase {
var spawnchanceyellow:String;
var spawnchanceblue:String;
var spawnchanceplatinum:String;
var redspawnchance:String;
var yellowspawnchance:String;
var bluespawnchance:String;
var platinumspawnchance:String;
public function new() {
_type = MissionElementType.ScriptObject;

View file

@ -24,6 +24,7 @@ import src.AudioManager;
import src.ResourceLoader;
import net.Net;
import src.MarbleGame;
import src.Util;
@:structInit
@:publicFields
@ -81,6 +82,7 @@ class HuntMode extends NullMode {
override function missionScan(mission:Mission) {
function scanMission(simGroup:MissionElementSimGroup) {
var elToRemove = [];
for (element in simGroup.elements) {
if ([MissionElementType.Trigger].contains(element._type)) {
var spawnSphere:MissionElementTrigger = cast element;
@ -90,9 +92,27 @@ class HuntMode extends NullMode {
spawnPointTaken.push(false);
}
} else if (element._type == MissionElementType.SimGroup) {
scanMission(cast element);
var scanPls = true;
if (Net.connectedServerInfo.oldSpawns) {
if (element._name.toLowerCase() == "newversion") {
// Remove this
elToRemove.push(element);
scanPls = false;
}
} else {
if (element._name.toLowerCase() == "oldversion") {
// Remove this
elToRemove.push(element);
scanPls = false;
}
}
if (scanPls)
scanMission(cast element);
}
}
while (elToRemove.length > 0) {
simGroup.elements.remove(elToRemove.pop());
}
}
scanMission(mission.root);
};
@ -299,22 +319,41 @@ class HuntMode extends NullMode {
var gemPos = gemElem.gem.getAbsPos().getPosition();
if (level.mission.missionInfo.game == "PlatinumQuest") {
// Spawn chances!
var chance = switch (gemElem.gem.gemColor.toLowerCase()) {
case "red.gem":
level.mission.missionInfo.spawnchancered != null ? Std.parseFloat(level.mission.missionInfo.spawnchancered) : 0.9;
case "yellow.gem":
level.mission.missionInfo.spawnchanceyellow != null ? Std.parseFloat(level.mission.missionInfo.spawnchanceyellow) : 0.65;
case "blue.gem":
level.mission.missionInfo.spawnchanceblue != null ? Std.parseFloat(level.mission.missionInfo.spawnchanceblue) : 0.35;
case "platinum.gem":
level.mission.missionInfo.spawnchanceplatinum != null ? Std.parseFloat(level.mission.missionInfo.spawnchanceplatinum) : 0.18;
default:
1.0;
};
var choice = Math.random();
if (choice > chance)
continue; // Don't spawn!
if (Net.connectedServerInfo.oldSpawns) {
// Spawn chances!
var chance = switch (gemElem.gem.gemColor.toLowerCase()) {
case "red.gem":
level.mission.missionInfo.spawnchancered != null ? Std.parseFloat(level.mission.missionInfo.spawnchancered) : 0.9;
case "yellow.gem":
level.mission.missionInfo.spawnchanceyellow != null ? Std.parseFloat(level.mission.missionInfo.spawnchanceyellow) : 0.65;
case "blue.gem":
level.mission.missionInfo.spawnchanceblue != null ? Std.parseFloat(level.mission.missionInfo.spawnchanceblue) : 0.35;
case "platinum.gem":
level.mission.missionInfo.spawnchanceplatinum != null ? Std.parseFloat(level.mission.missionInfo.spawnchanceplatinum) : 0.18;
default:
1.0;
};
var choice = Math.random();
if (choice > chance)
continue; // Don't spawn!
} else {
// Spawn chances!
var chance = switch (gemElem.gem.gemColor.toLowerCase()) {
case "red.gem":
level.mission.missionInfo.redspawnchance != null ? Std.parseFloat(level.mission.missionInfo.redspawnchance) : 0.9;
case "yellow.gem":
level.mission.missionInfo.yellowspawnchance != null ? Std.parseFloat(level.mission.missionInfo.yellowspawnchance) : 0.65;
case "blue.gem":
level.mission.missionInfo.bluespawnchance != null ? Std.parseFloat(level.mission.missionInfo.bluespawnchance) : 0.35;
case "platinum.gem":
level.mission.missionInfo.platinumspawnchance != null ? Std.parseFloat(level.mission.missionInfo.platinumspawnchance) : 0.18;
default:
1.0;
};
var choice = Math.random();
if (choice > chance)
continue; // Don't spawn!
}
}
results.push({
@ -533,6 +572,13 @@ class HuntMode extends NullMode {
}
level.schedule(level.timeState.currentAttemptTime + 2, () -> {
if (Util.isTouchDevice()) {
MarbleGame.instance.touchInput.setControlsEnabled(false);
}
#if js
var pointercontainer = js.Browser.document.querySelector("#pointercontainer");
pointercontainer.hidden = false;
#end
MarbleGame.canvas.pushDialog(new MPEndGameGui());
level.setCursorLock(false);
return 0;