mirror of
https://github.com/cxong/cdogs-sdl.git
synced 2025-07-23 07:23:01 +02:00
Missions can have no exits (fixes #501)
Update campaigns to have some missions with no exits
This commit is contained in:
@@ -6,5 +6,6 @@
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 10
|
||||
}
|
@@ -112,6 +112,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 3,
|
||||
"ExitEnabled": false,
|
||||
"DoorsEnabled": true
|
||||
},
|
||||
{
|
||||
@@ -258,6 +259,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 2,
|
||||
@@ -396,6 +398,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 3,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 2,
|
||||
@@ -491,7 +494,7 @@
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "office",
|
||||
"Style": "dungeon",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
@@ -515,6 +518,7 @@
|
||||
"WallPad": 1
|
||||
},
|
||||
"Squares": 1,
|
||||
"ExitEnabled": false,
|
||||
"DoorsEnabled": true
|
||||
},
|
||||
{
|
||||
@@ -624,6 +628,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 1,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": false,
|
||||
"Min": 0,
|
||||
@@ -724,6 +729,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": false,
|
||||
"DoorsEnabled": true
|
||||
},
|
||||
{
|
||||
@@ -830,6 +836,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 3,
|
||||
"ExitEnabled": true,
|
||||
"DoorsEnabled": true
|
||||
},
|
||||
{
|
||||
@@ -954,6 +961,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 1,
|
||||
@@ -1084,6 +1092,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 1,
|
||||
@@ -1223,6 +1232,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": false,
|
||||
"Min": 2,
|
||||
|
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"Version": 14,
|
||||
"Version": 16,
|
||||
"Title": "AI Insurgency II",
|
||||
"Author": "Sauer2",
|
||||
"Description": "You work in the industrial crime department. A big vendor of robotic parts has complained about strangely behaving parts, suspecting sabotage. You were assigned to look into it.",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 10
|
||||
}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"Version": 11,
|
||||
"Version": 16,
|
||||
"Title": "Antares III Conspiracy",
|
||||
"Author": "Sauer2",
|
||||
"Description": "You are an MP officer on Antares III, a small colony on the planet Jugular 5. This seems like a routine mission: A helpful citizen claims that he has recovered a smuggler spot in a cave on a walk. Check that out.",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 6
|
||||
}
|
@@ -1,11 +1,14 @@
|
||||
{
|
||||
"Version": 13,
|
||||
"Characters": [{
|
||||
"Class": "Dragon",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "882800",
|
||||
"Body": "ff8136",
|
||||
"Legs": "58589c",
|
||||
"Hair": "9c0000",
|
||||
"Class": "Jones",
|
||||
"HairType": "hogan",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "882800ff",
|
||||
"Body": "ff8136ff",
|
||||
"Legs": "58589cff",
|
||||
"Hair": "9c0000ff",
|
||||
"Feet": "58589cff",
|
||||
"speed": 256,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 40,
|
||||
@@ -16,12 +19,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Ogre Boss",
|
||||
"Skin": "9c0000",
|
||||
"Arms": "ff8136",
|
||||
"Body": "9c5858",
|
||||
"Legs": "b79536",
|
||||
"Hair": "363636",
|
||||
"Class": "Ogre",
|
||||
"HairType": "mohawk",
|
||||
"Skin": "9c0000ff",
|
||||
"Arms": "ff8136ff",
|
||||
"Body": "9c5858ff",
|
||||
"Legs": "b79536ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "b79536ff",
|
||||
"speed": 128,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -33,11 +38,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "b79536",
|
||||
"Body": "ff8136",
|
||||
"Legs": "58589c",
|
||||
"Hair": "000000",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "b79536ff",
|
||||
"Body": "ff8136ff",
|
||||
"Legs": "58589cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "58589cff",
|
||||
"speed": 256,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 40,
|
||||
@@ -49,11 +55,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "882800",
|
||||
"Arms": "9c5858",
|
||||
"Body": "882800",
|
||||
"Legs": "149c14",
|
||||
"Hair": "58589c",
|
||||
"Skin": "882800ff",
|
||||
"Arms": "9c5858ff",
|
||||
"Body": "882800ff",
|
||||
"Legs": "149c14ff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "149c14ff",
|
||||
"speed": 320,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 40,
|
||||
@@ -65,11 +72,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "149c14",
|
||||
"Arms": "363636",
|
||||
"Body": "363636",
|
||||
"Legs": "363636",
|
||||
"Hair": "d25106",
|
||||
"Skin": "149c14ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 384,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 50,
|
||||
@@ -80,12 +88,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "WarBaby",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "363636",
|
||||
"Body": "363636",
|
||||
"Legs": "363636",
|
||||
"Hair": "000000",
|
||||
"Class": "Jones",
|
||||
"HairType": "beret",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 384,
|
||||
"Gun": "Powergun",
|
||||
"maxHealth": 50,
|
||||
@@ -96,12 +106,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Smith",
|
||||
"Skin": "b79536",
|
||||
"Arms": "363636",
|
||||
"Body": "363636",
|
||||
"Legs": "363636",
|
||||
"Hair": "000000",
|
||||
"Class": "Jones",
|
||||
"HairType": "flattop",
|
||||
"Skin": "b79536ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 384,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 50,
|
||||
@@ -113,11 +125,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "58589c",
|
||||
"Arms": "363636",
|
||||
"Body": "363636",
|
||||
"Legs": "363636",
|
||||
"Hair": "58589c",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "58589cff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Flamer",
|
||||
"maxHealth": 50,
|
||||
@@ -128,12 +142,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Professor",
|
||||
"Skin": "000000",
|
||||
"Arms": "363636",
|
||||
"Body": "363636",
|
||||
"Legs": "363636",
|
||||
"Hair": "000000",
|
||||
"Class": "Jones",
|
||||
"HairType": "professor",
|
||||
"Skin": "000000ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 512,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -144,12 +160,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Professor",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "ffffff",
|
||||
"Body": "363636",
|
||||
"Legs": "58589c",
|
||||
"Hair": "363636",
|
||||
"Class": "Jones",
|
||||
"HairType": "professor",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "58589cff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "58589cff",
|
||||
"speed": 192,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -161,11 +179,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "58589c",
|
||||
"Arms": "58589c",
|
||||
"Body": "58589c",
|
||||
"Legs": "9c9c9c",
|
||||
"Hair": "149c14",
|
||||
"Skin": "58589cff",
|
||||
"Arms": "58589cff",
|
||||
"Body": "58589cff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "149c14ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 192,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -177,11 +196,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "882800",
|
||||
"Arms": "149c14",
|
||||
"Body": "149c14",
|
||||
"Legs": "363636",
|
||||
"Hair": "ff8136",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "882800ff",
|
||||
"Arms": "149c14ff",
|
||||
"Body": "149c14ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "ff8136ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 192,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -193,11 +214,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "363636",
|
||||
"Arms": "ffffff",
|
||||
"Body": "d25106",
|
||||
"Legs": "ff8136",
|
||||
"Hair": "149c14",
|
||||
"Skin": "363636ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "d25106ff",
|
||||
"Legs": "ff8136ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "ff8136ff",
|
||||
"speed": 192,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -208,12 +230,14 @@
|
||||
"actionDelay": 18
|
||||
},
|
||||
{
|
||||
"Class": "Wolf",
|
||||
"Skin": "d25106",
|
||||
"Arms": "ffffff",
|
||||
"Body": "58589c",
|
||||
"Legs": "9c9c9c",
|
||||
"Hair": "363636",
|
||||
"Class": "Jones",
|
||||
"HairType": "dutch",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "58589cff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 192,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -224,12 +248,14 @@
|
||||
"actionDelay": 42
|
||||
},
|
||||
{
|
||||
"Class": "Bob",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "ffffff",
|
||||
"Body": "9c5858",
|
||||
"Legs": "ff8136",
|
||||
"Hair": "882800",
|
||||
"Class": "Jones",
|
||||
"HairType": "beard",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "9c5858ff",
|
||||
"Legs": "ff8136ff",
|
||||
"Hair": "882800ff",
|
||||
"Feet": "ff8136ff",
|
||||
"speed": 192,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -240,12 +266,14 @@
|
||||
"actionDelay": 27
|
||||
},
|
||||
{
|
||||
"Class": "Professor",
|
||||
"Skin": "000000",
|
||||
"Arms": "363636",
|
||||
"Body": "363636",
|
||||
"Legs": "363636",
|
||||
"Hair": "000000",
|
||||
"Class": "Jones",
|
||||
"HairType": "professor",
|
||||
"Skin": "000000ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Flamer",
|
||||
"maxHealth": 60,
|
||||
@@ -257,11 +285,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "b79536",
|
||||
"Arms": "ffffff",
|
||||
"Body": "9c9c9c",
|
||||
"Legs": "58589c",
|
||||
"Hair": "000000",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "b79536ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "9c9c9cff",
|
||||
"Legs": "58589cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "58589cff",
|
||||
"speed": 256,
|
||||
"Gun": "Confusion bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -273,11 +303,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "b79536",
|
||||
"Arms": "149c14",
|
||||
"Body": "b79536",
|
||||
"Legs": "149c14",
|
||||
"Hair": "000000",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "b79536ff",
|
||||
"Arms": "149c14ff",
|
||||
"Body": "b79536ff",
|
||||
"Legs": "149c14ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "149c14ff",
|
||||
"speed": 256,
|
||||
"Gun": "Molotovs",
|
||||
"maxHealth": 40,
|
||||
@@ -289,11 +321,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Mad bug-eye",
|
||||
"Skin": "000000",
|
||||
"Arms": "363636",
|
||||
"Body": "149c14",
|
||||
"Legs": "363636",
|
||||
"Hair": "000000",
|
||||
"Skin": "000000ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "149c14ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 384,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 40,
|
||||
@@ -305,11 +338,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "363636",
|
||||
"Body": "b79536",
|
||||
"Legs": "363636",
|
||||
"Hair": "58589c",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "b79536ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 384,
|
||||
"Gun": "Launcher",
|
||||
"maxHealth": 200,
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"Version": 11,
|
||||
"Version": 16,
|
||||
"Title": "Development Hell",
|
||||
"Author": "Sauer2",
|
||||
"Description": "You work for a military data center in a desert nearby Texas. Suddenly all security bots run amok and start to kill all researchers.",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 6
|
||||
}
|
@@ -1,11 +1,14 @@
|
||||
{
|
||||
"Version": 13,
|
||||
"Characters": [{
|
||||
"Class": "Smith",
|
||||
"Skin": "ff8136",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "363636",
|
||||
"Hair": "ff6c00",
|
||||
"Class": "Jones",
|
||||
"HairType": "flattop",
|
||||
"Skin": "ff8136ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "ff6c00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -16,44 +19,14 @@
|
||||
"actionDelay": 5
|
||||
},
|
||||
{
|
||||
"Class": "Bob",
|
||||
"Skin": "d25106",
|
||||
"Arms": "004870",
|
||||
"Body": "004464",
|
||||
"Legs": "00282c",
|
||||
"Hair": "c00000",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
"flags": 39977984,
|
||||
"probabilityToMove": 100,
|
||||
"probabilityToTrack": 0,
|
||||
"probabilityToShoot": 0,
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Bob",
|
||||
"Skin": "d25106",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "363636",
|
||||
"Hair": "363636",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
"flags": 39977984,
|
||||
"probabilityToMove": 100,
|
||||
"probabilityToTrack": 0,
|
||||
"probabilityToShoot": 0,
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "f4944c",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "ac5400",
|
||||
"Hair": "8c4400",
|
||||
"Class": "Jones",
|
||||
"HairType": "beard",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "004870ff",
|
||||
"Body": "004464ff",
|
||||
"Legs": "00282cff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "00282cff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -65,27 +38,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "d25106",
|
||||
"Arms": "ffffff",
|
||||
"Body": "5c5c5c",
|
||||
"Legs": "004870",
|
||||
"Hair": "363636",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
"flags": 39977984,
|
||||
"probabilityToMove": 100,
|
||||
"probabilityToTrack": 0,
|
||||
"probabilityToShoot": 0,
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Ice",
|
||||
"Skin": "603000",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "003038",
|
||||
"Hair": "004800",
|
||||
"HairType": "beard",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -97,11 +56,66 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "c0ac3c",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "00ac00",
|
||||
"Hair": "402000",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "f4944cff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "ac5400ff",
|
||||
"Hair": "8c4400ff",
|
||||
"Feet": "ac5400ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
"flags": 39977984,
|
||||
"probabilityToMove": 100,
|
||||
"probabilityToTrack": 0,
|
||||
"probabilityToShoot": 0,
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "5c5c5cff",
|
||||
"Legs": "004870ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "004870ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
"flags": 39977984,
|
||||
"probabilityToMove": 100,
|
||||
"probabilityToTrack": 0,
|
||||
"probabilityToShoot": 0,
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"HairType": "shades",
|
||||
"Skin": "603000ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "003038ff",
|
||||
"Hair": "004800ff",
|
||||
"Feet": "003038ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
"flags": 39977984,
|
||||
"probabilityToMove": 100,
|
||||
"probabilityToTrack": 0,
|
||||
"probabilityToShoot": 0,
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "c0ac3cff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "00ac00ff",
|
||||
"Hair": "402000ff",
|
||||
"Feet": "00ac00ff",
|
||||
"speed": 256,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 40,
|
||||
@@ -113,11 +127,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "502800",
|
||||
"Arms": "ffffff",
|
||||
"Body": "00c0c0",
|
||||
"Legs": "363636",
|
||||
"Hair": "5c345c",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "502800ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "00c0c0ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "5c345cff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -129,11 +145,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "f4944c",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "fcfcfc",
|
||||
"Hair": "fce000",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "f4944cff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "fcfcfcff",
|
||||
"Hair": "fce000ff",
|
||||
"Feet": "fcfcfcff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -144,12 +162,14 @@
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Ice",
|
||||
"Skin": "d25106",
|
||||
"Arms": "fc9000",
|
||||
"Body": "fc9000",
|
||||
"Legs": "004870",
|
||||
"Hair": "363636",
|
||||
"Class": "Jones",
|
||||
"HairType": "shades",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "fc9000ff",
|
||||
"Body": "fc9000ff",
|
||||
"Legs": "004870ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "004870ff",
|
||||
"speed": 320,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -160,12 +180,14 @@
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Dragon",
|
||||
"Skin": "d25106",
|
||||
"Arms": "ffffff",
|
||||
"Body": "fc1800",
|
||||
"Legs": "363636",
|
||||
"Hair": "fc6800",
|
||||
"Class": "Jones",
|
||||
"HairType": "hogan",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "fc1800ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "fc6800ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 40,
|
||||
@@ -176,12 +198,14 @@
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Wolf",
|
||||
"Skin": "804000",
|
||||
"Arms": "ffffff",
|
||||
"Body": "ffffff",
|
||||
"Legs": "363636",
|
||||
"Hair": "00fc00",
|
||||
"Class": "Jones",
|
||||
"HairType": "dutch",
|
||||
"Skin": "804000ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "00fc00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -192,12 +216,14 @@
|
||||
"actionDelay": 23
|
||||
},
|
||||
{
|
||||
"Class": "Wolf",
|
||||
"Skin": "c0ac3c",
|
||||
"Arms": "ffffff",
|
||||
"Body": "484848",
|
||||
"Legs": "363636",
|
||||
"Hair": "341c00",
|
||||
"Class": "Jones",
|
||||
"HairType": "dutch",
|
||||
"Skin": "c0ac3cff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "484848ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "341c00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -209,11 +235,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "d25106",
|
||||
"Arms": "ffffff",
|
||||
"Body": "00fcfc",
|
||||
"Legs": "348434",
|
||||
"Hair": "882800",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "d25106ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "00fcfcff",
|
||||
"Legs": "348434ff",
|
||||
"Hair": "882800ff",
|
||||
"Feet": "348434ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 40,
|
||||
@@ -224,12 +252,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Dragon",
|
||||
"Skin": "882800",
|
||||
"Arms": "ffffff",
|
||||
"Body": "5c5c5c",
|
||||
"Legs": "004870",
|
||||
"Hair": "58589c",
|
||||
"Class": "Jones",
|
||||
"HairType": "hogan",
|
||||
"Skin": "882800ff",
|
||||
"Arms": "ffffffff",
|
||||
"Body": "5c5c5cff",
|
||||
"Legs": "004870ff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "004870ff",
|
||||
"speed": 256,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 40,
|
||||
@@ -241,11 +271,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Cyborg",
|
||||
"Skin": "ffffff",
|
||||
"Arms": "000000",
|
||||
"Body": "000000",
|
||||
"Legs": "000000",
|
||||
"Hair": "b79536",
|
||||
"HairType": "cyborg",
|
||||
"Skin": "ffffffff",
|
||||
"Arms": "000000ff",
|
||||
"Body": "000000ff",
|
||||
"Legs": "000000ff",
|
||||
"Hair": "ff0000ff",
|
||||
"Feet": "000000ff",
|
||||
"speed": 128,
|
||||
"Gun": "Chemo gun",
|
||||
"maxHealth": 100,
|
||||
@@ -257,11 +289,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Mad bug-eye",
|
||||
"Skin": "fcb800",
|
||||
"Arms": "a00000",
|
||||
"Body": "fce000",
|
||||
"Legs": "840000",
|
||||
"Hair": "840000",
|
||||
"Skin": "fcb800ff",
|
||||
"Arms": "a00000ff",
|
||||
"Body": "fce000ff",
|
||||
"Legs": "840000ff",
|
||||
"Hair": "840000ff",
|
||||
"Feet": "840000ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 50,
|
||||
@@ -273,11 +306,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Mad bug-eye",
|
||||
"Skin": "fcb800",
|
||||
"Arms": "ac0000",
|
||||
"Body": "fc6800",
|
||||
"Legs": "e00000",
|
||||
"Hair": "ff8136",
|
||||
"Skin": "fcb800ff",
|
||||
"Arms": "ac0000ff",
|
||||
"Body": "fc6800ff",
|
||||
"Legs": "e00000ff",
|
||||
"Hair": "ff8136ff",
|
||||
"Feet": "e00000ff",
|
||||
"speed": 256,
|
||||
"Gun": "Chemo bombs",
|
||||
"maxHealth": 50,
|
||||
@@ -289,11 +323,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Mad bug-eye",
|
||||
"Skin": "9c0000",
|
||||
"Arms": "9c0000",
|
||||
"Body": "9c0000",
|
||||
"Legs": "9c0000",
|
||||
"Hair": "b79536",
|
||||
"Skin": "9c0000ff",
|
||||
"Arms": "9c0000ff",
|
||||
"Body": "9c0000ff",
|
||||
"Legs": "9c0000ff",
|
||||
"Hair": "b79536ff",
|
||||
"Feet": "9c0000ff",
|
||||
"speed": 256,
|
||||
"Gun": "Molotovs",
|
||||
"maxHealth": 50,
|
||||
@@ -304,12 +339,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Ogre Boss",
|
||||
"Skin": "9c0000",
|
||||
"Arms": "9c0000",
|
||||
"Body": "363636",
|
||||
"Legs": "fc4000",
|
||||
"Hair": "fc6800",
|
||||
"Class": "Ogre",
|
||||
"HairType": "mohawk",
|
||||
"Skin": "9c0000ff",
|
||||
"Arms": "9c0000ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "fc4000ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "fc4000ff",
|
||||
"speed": 512,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 50,
|
||||
@@ -320,12 +357,14 @@
|
||||
"actionDelay": 22
|
||||
},
|
||||
{
|
||||
"Class": "Ogre Boss",
|
||||
"Skin": "9c0000",
|
||||
"Arms": "9c0000",
|
||||
"Body": "363636",
|
||||
"Legs": "9c0000",
|
||||
"Hair": "9c0000",
|
||||
"Class": "Ogre",
|
||||
"HairType": "mohawk",
|
||||
"Skin": "9c0000ff",
|
||||
"Arms": "9c0000ff",
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c0000ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "9c0000ff",
|
||||
"speed": 512,
|
||||
"Gun": "Knife",
|
||||
"maxHealth": 50,
|
||||
@@ -337,11 +376,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "000000",
|
||||
"Arms": "363636",
|
||||
"Body": "000000",
|
||||
"Legs": "363636",
|
||||
"Hair": "9c0000",
|
||||
"Skin": "000000ff",
|
||||
"Arms": "363636ff",
|
||||
"Body": "000000ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "9c0000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 512,
|
||||
"Gun": "Molotovs",
|
||||
"maxHealth": 500,
|
||||
@@ -353,11 +393,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "ffffff",
|
||||
"Arms": "9c9c9c",
|
||||
"Body": "ffffff",
|
||||
"Legs": "9c9c9c",
|
||||
"Hair": "58589c",
|
||||
"Skin": "ffffffff",
|
||||
"Arms": "9c9c9cff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 512,
|
||||
"Gun": "Knife",
|
||||
"maxHealth": 200,
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"Version": 14,
|
||||
"Version": 16,
|
||||
"Title": "Grave Intent",
|
||||
"Author": "clovehoof",
|
||||
"Description": "\"Millions are screaming, the dead are still living. This Earth has died, yet no one has seen.\"\n --Electric Wizard",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 7
|
||||
}
|
@@ -1,12 +1,13 @@
|
||||
{
|
||||
"Version": 12,
|
||||
"Version": 13,
|
||||
"Characters": [{
|
||||
"Class": "Bones",
|
||||
"Skin": "eff377",
|
||||
"Arms": "bd5151",
|
||||
"Body": "645c5c",
|
||||
"Legs": "3c5f56",
|
||||
"Hair": "ff0202",
|
||||
"Skin": "eff377ff",
|
||||
"Arms": "bd5151ff",
|
||||
"Body": "645c5cff",
|
||||
"Legs": "3c5f56ff",
|
||||
"Hair": "ff0202ff",
|
||||
"Feet": "3c5f56ff",
|
||||
"speed": 240,
|
||||
"Gun": "Knife",
|
||||
"maxHealth": 20,
|
||||
@@ -17,12 +18,14 @@
|
||||
"actionDelay": 30
|
||||
},
|
||||
{
|
||||
"Class": "Bob",
|
||||
"Skin": "b8725c",
|
||||
"Arms": "ec1212",
|
||||
"Body": "4665a8",
|
||||
"Legs": "514938",
|
||||
"Hair": "c94311",
|
||||
"Class": "Jones",
|
||||
"HairType": "beard",
|
||||
"Skin": "b8725cff",
|
||||
"Arms": "ec1212ff",
|
||||
"Body": "4665a8ff",
|
||||
"Legs": "514938ff",
|
||||
"Hair": "c94311ff",
|
||||
"Feet": "514938ff",
|
||||
"speed": 320,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -34,11 +37,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Bones",
|
||||
"Skin": "ff7e00",
|
||||
"Arms": "f78313",
|
||||
"Body": "464040",
|
||||
"Legs": "430303",
|
||||
"Hair": "ff0202",
|
||||
"Skin": "ff7e00ff",
|
||||
"Arms": "f78313ff",
|
||||
"Body": "464040ff",
|
||||
"Legs": "430303ff",
|
||||
"Hair": "ff0202ff",
|
||||
"Feet": "430303ff",
|
||||
"speed": 208,
|
||||
"Gun": "Flamer",
|
||||
"maxHealth": 45,
|
||||
@@ -49,12 +53,14 @@
|
||||
"actionDelay": 40
|
||||
},
|
||||
{
|
||||
"Class": "Grunt",
|
||||
"Skin": "5b2d1b",
|
||||
"Arms": "c2d0ba",
|
||||
"Body": "202520",
|
||||
"Legs": "404040",
|
||||
"Hair": "2f458e",
|
||||
"Class": "Jones",
|
||||
"HairType": "riot_helmet",
|
||||
"Skin": "5b2d1bff",
|
||||
"Arms": "c2d0baff",
|
||||
"Body": "202520ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "2f458eff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 192,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 30,
|
||||
@@ -66,11 +72,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Bones",
|
||||
"Skin": "86dfff",
|
||||
"Arms": "3f3c7e",
|
||||
"Body": "5f2893",
|
||||
"Legs": "508036",
|
||||
"Hair": "ff0000",
|
||||
"Skin": "86dfffff",
|
||||
"Arms": "3f3c7eff",
|
||||
"Body": "5f2893ff",
|
||||
"Legs": "508036ff",
|
||||
"Hair": "ff0000ff",
|
||||
"Feet": "508036ff",
|
||||
"speed": 258,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 10,
|
||||
@@ -82,11 +89,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Bones",
|
||||
"Skin": "f0f0f0",
|
||||
"Arms": "fffcfc",
|
||||
"Body": "fffcfc",
|
||||
"Legs": "fffafa",
|
||||
"Hair": "ff0000",
|
||||
"Skin": "f0f0f0ff",
|
||||
"Arms": "fffcfcff",
|
||||
"Body": "fffcfcff",
|
||||
"Legs": "fffafaff",
|
||||
"Hair": "ff0000ff",
|
||||
"Feet": "fffafaff",
|
||||
"speed": 510,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 20,
|
||||
@@ -98,11 +106,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Big Bones",
|
||||
"Skin": "a06bf5",
|
||||
"Arms": "a475d4",
|
||||
"Body": "312b2b",
|
||||
"Legs": "40433f",
|
||||
"Hair": "000000",
|
||||
"Skin": "a06bf5ff",
|
||||
"Arms": "a475d4ff",
|
||||
"Body": "312b2bff",
|
||||
"Legs": "40433fff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "40433fff",
|
||||
"speed": 225,
|
||||
"Gun": "Launcher",
|
||||
"maxHealth": 500,
|
||||
@@ -114,11 +123,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Big Bones",
|
||||
"Skin": "be9bf3",
|
||||
"Arms": "bc97e0",
|
||||
"Body": "ca8dd7",
|
||||
"Legs": "705faa",
|
||||
"Hair": "000000",
|
||||
"Skin": "be9bf3ff",
|
||||
"Arms": "bc97e0ff",
|
||||
"Body": "ca8dd7ff",
|
||||
"Legs": "705faaff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "705faaff",
|
||||
"speed": 360,
|
||||
"Gun": "Launcher",
|
||||
"maxHealth": 200,
|
||||
|
@@ -5,12 +5,8 @@
|
||||
"Type": "Cave",
|
||||
"Width": 24,
|
||||
"Height": 48,
|
||||
"WallStyle": "granite",
|
||||
"FloorStyle": "cobble",
|
||||
"RoomStyle": "recessed",
|
||||
"ExitStyle": "plate2",
|
||||
"KeyStyle": "plain2",
|
||||
"DoorStyle": "office",
|
||||
"Objectives": [{
|
||||
"Description": "Find out where you are",
|
||||
"Type": "Explore",
|
||||
@@ -48,13 +44,54 @@
|
||||
"Density": 40
|
||||
}],
|
||||
"EnemyDensity": 2,
|
||||
"Weapons": ["Knife",
|
||||
"Pistol"],
|
||||
"Weapons": ["Knife", "Pistol"],
|
||||
"Song": "graveintent1.xm",
|
||||
"WallMask": "5c5c84",
|
||||
"FloorMask": "282848",
|
||||
"RoomMask": "707070",
|
||||
"AltMask": "008400",
|
||||
"TileClasses": {
|
||||
"Wall": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "granite",
|
||||
"Mask": "5c5c84ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Floor": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "cobble",
|
||||
"Mask": "282848ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Room": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "recessed",
|
||||
"Mask": "707070ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "office",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
}
|
||||
},
|
||||
"FillPercent": 40,
|
||||
"Repeat": 4,
|
||||
"R1": 5,
|
||||
@@ -70,6 +107,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": false,
|
||||
"DoorsEnabled": false
|
||||
},
|
||||
{
|
||||
@@ -78,12 +116,8 @@
|
||||
"Type": "Cave",
|
||||
"Width": 48,
|
||||
"Height": 48,
|
||||
"WallStyle": "granite",
|
||||
"FloorStyle": "cobble",
|
||||
"RoomStyle": "recessed",
|
||||
"ExitStyle": "plate2",
|
||||
"KeyStyle": "plain2",
|
||||
"DoorStyle": "office",
|
||||
"Objectives": [{
|
||||
"Description": "Find your personal jumpgate",
|
||||
"Type": "Collect",
|
||||
@@ -127,13 +161,54 @@
|
||||
"Density": 70
|
||||
}],
|
||||
"EnemyDensity": 10,
|
||||
"Weapons": ["Knife",
|
||||
"Pistol"],
|
||||
"Weapons": ["Knife", "Pistol"],
|
||||
"Song": "",
|
||||
"WallMask": "484870",
|
||||
"FloorMask": "20203c",
|
||||
"RoomMask": "707070",
|
||||
"AltMask": "008400",
|
||||
"TileClasses": {
|
||||
"Wall": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "granite",
|
||||
"Mask": "484870ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Floor": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "cobble",
|
||||
"Mask": "20203cff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Room": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "recessed",
|
||||
"Mask": "707070ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "office",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
}
|
||||
},
|
||||
"FillPercent": 40,
|
||||
"Repeat": 4,
|
||||
"R1": 5,
|
||||
@@ -149,6 +224,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": false,
|
||||
"DoorsEnabled": true
|
||||
},
|
||||
{
|
||||
@@ -157,12 +233,8 @@
|
||||
"Type": "Classic",
|
||||
"Width": 48,
|
||||
"Height": 36,
|
||||
"WallStyle": "rock",
|
||||
"FloorStyle": "dirt",
|
||||
"RoomStyle": "checker",
|
||||
"ExitStyle": "plate2",
|
||||
"KeyStyle": "plain2",
|
||||
"DoorStyle": "dungeon2",
|
||||
"Objectives": [{
|
||||
"Description": "Cut a path to the surface",
|
||||
"Type": "Kill",
|
||||
@@ -229,13 +301,54 @@
|
||||
"Density": 5
|
||||
}],
|
||||
"EnemyDensity": 10,
|
||||
"Weapons": ["Knife",
|
||||
"Pistol"],
|
||||
"Weapons": ["Knife", "Pistol"],
|
||||
"Song": "",
|
||||
"WallMask": "34345c",
|
||||
"FloorMask": "20203c",
|
||||
"RoomMask": "707070",
|
||||
"AltMask": "3c3c3c",
|
||||
"TileClasses": {
|
||||
"Wall": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "rock",
|
||||
"Mask": "34345cff",
|
||||
"MaskAlt": "3c3c3cff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Floor": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "dirt",
|
||||
"Mask": "20203cff",
|
||||
"MaskAlt": "3c3c3cff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Room": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "checker",
|
||||
"Mask": "707070ff",
|
||||
"MaskAlt": "3c3c3cff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "dungeon2",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
}
|
||||
},
|
||||
"Walls": 0,
|
||||
"WallLength": 48,
|
||||
"CorridorWidth": 3,
|
||||
@@ -250,6 +363,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 2,
|
||||
@@ -267,12 +381,8 @@
|
||||
"Type": "Cave",
|
||||
"Width": 37,
|
||||
"Height": 35,
|
||||
"WallStyle": "rock",
|
||||
"FloorStyle": "cobble",
|
||||
"RoomStyle": "checker",
|
||||
"ExitStyle": "hazard",
|
||||
"KeyStyle": "office",
|
||||
"DoorStyle": "blast",
|
||||
"Objectives": [{
|
||||
"Description": "Kill the guardian",
|
||||
"Type": "Kill",
|
||||
@@ -289,8 +399,7 @@
|
||||
"Required": 0,
|
||||
"Flags": 4
|
||||
}],
|
||||
"Enemies": [0,
|
||||
2],
|
||||
"Enemies": [0, 2],
|
||||
"SpecialChars": [7],
|
||||
"MapObjectDensities": [{
|
||||
"MapObject": "skull2",
|
||||
@@ -329,10 +438,52 @@
|
||||
"Pistol",
|
||||
"Shotgun"],
|
||||
"Song": "",
|
||||
"WallMask": "484870",
|
||||
"FloorMask": "301c1c",
|
||||
"RoomMask": "20203c",
|
||||
"AltMask": "8484ac",
|
||||
"TileClasses": {
|
||||
"Wall": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "rock",
|
||||
"Mask": "484870ff",
|
||||
"MaskAlt": "8484acff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Floor": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "cobble",
|
||||
"Mask": "301c1cff",
|
||||
"MaskAlt": "8484acff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Room": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "checker",
|
||||
"Mask": "20203cff",
|
||||
"MaskAlt": "8484acff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "blast",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
}
|
||||
},
|
||||
"FillPercent": 60,
|
||||
"Repeat": 2,
|
||||
"R1": 6,
|
||||
@@ -348,6 +499,7 @@
|
||||
"WallPad": 1
|
||||
},
|
||||
"Squares": 2,
|
||||
"ExitEnabled": false,
|
||||
"DoorsEnabled": true
|
||||
},
|
||||
{
|
||||
@@ -356,12 +508,8 @@
|
||||
"Type": "Static",
|
||||
"Width": 20,
|
||||
"Height": 100,
|
||||
"WallStyle": "rock",
|
||||
"FloorStyle": "cobble",
|
||||
"RoomStyle": "dirt",
|
||||
"ExitStyle": "plate2",
|
||||
"KeyStyle": "plain2",
|
||||
"DoorStyle": "blast",
|
||||
"Objectives": [],
|
||||
"Enemies": [0,
|
||||
0,
|
||||
@@ -393,191 +541,371 @@
|
||||
"Shotgun",
|
||||
"Pistol"],
|
||||
"Song": "graveintent1.xm",
|
||||
"WallMask": "484870",
|
||||
"FloorMask": "c0c0c0",
|
||||
"RoomMask": "202020",
|
||||
"AltMask": "008400",
|
||||
"Tiles": "1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,0,0,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,0,0,0,0,1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,1,2,2,1,3,3,3,3,3,3,3,3,3,3,3,3,1,2,2,1,1,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1,1,3,3,1,514,514,514,514,514,514,514,514,514,514,514,514,1,3,3,1,1,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,1,1,3,3,3,3,3,3,0,0,0,1,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,1,1,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,1,1,1,0,1,1,0,3,3,3,3,3,1,1,1,3,3,3,3,0,0,0,0,0,1,1,0,3,3,3,1,1,1,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,1,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,1,1,3,3,3,3,3,3,3,3,3,3,3,0,1,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,1,0,0,0,0,0,0,3,3,3,3,3,3,1,1,3,3,3,1,1,1,1,1,0,0,0,0,3,3,3,3,3,3,1,1,3,3,3,3,1,1,1,1,0,0,0,0,3,3,3,3,3,3,3,3,3,1,1,1,1,3,1,3,0,0,0,0,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,0,0,0,0,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,0,0,0,0,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,1,3,3,1,1,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,0,0,0,0,3,3,3,3,3,3,3,3,3,3,1,1,0,3,3,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,1,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,0,1,1,0,0,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,3,1,1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,1,3,0,1,1,3,3,3,3,3,3,3,3,3,3,1,3,3,1,1,1,0,0,0,0,3,3,3,3,3,3,3,3,1,1,1,3,3,3,0,0,0,0,0,0,3,3,3,3,3,3,1,1,1,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,3,0,3,0,0,0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,1,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,1,1,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,1,1,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"TileClasses": {
|
||||
"2": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "blast",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
},
|
||||
"1": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "rock",
|
||||
"Mask": "484870ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"3": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "dirt",
|
||||
"Mask": "202020ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"0": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "cobble",
|
||||
"Mask": "c0c0c0ff",
|
||||
"MaskAlt": "008400ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
}
|
||||
},
|
||||
"Tiles": ["1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1",
|
||||
"0,0,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,0,0",
|
||||
"0,0,1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"1,2,2,1,3,3,3,3,3,3,3,3,3,3,3,3,1,2,2,1",
|
||||
"1,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1",
|
||||
"1,3,3,1,2,2,2,2,2,2,2,2,2,2,2,2,1,3,3,1",
|
||||
"1,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1",
|
||||
"1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,1,1,3,3,3,3,3,3,0,0,0,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,1,1,1",
|
||||
"0,1,1,0,3,3,3,3,3,1,1,1,3,3,3,3,0,0,0,0",
|
||||
"0,1,1,0,3,3,3,1,1,1,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,1,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,1,1,3,3,3,3,3,3,3,3,3,3,3,0,1,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,1,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,1,1,3,3,3,1,1,1,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,1,1,3,3,3,3,1,1,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,1,1,1,1,3,1,3",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3",
|
||||
"0,0,0,0,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3",
|
||||
"0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,1,3,3,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,1,1,0,3,3,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0",
|
||||
"0,0,0,0,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,0",
|
||||
"1,1,0,0,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"1,1,1,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1",
|
||||
"3,1,1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,1",
|
||||
"3,0,1,1,3,3,3,3,3,3,3,3,3,3,1,3,3,1,1,1",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,1,1,1,3,3,3,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,1,1,1,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,3,0,3,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,1,1,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,1,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,1,1,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,1,1,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0",
|
||||
"0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0"],
|
||||
"Access": ["0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,512,512,512,512,512,512,512,512,512,512,512,512,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
|
||||
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"],
|
||||
"StaticItems": [{
|
||||
"MapObject": "statue_behemoth",
|
||||
"Positions": [[14,
|
||||
8],
|
||||
[5,
|
||||
8]]
|
||||
"Positions": [[14, 8],
|
||||
[5, 8]]
|
||||
},
|
||||
{
|
||||
"MapObject": "wall_skull2",
|
||||
"Positions": [[16,
|
||||
8],
|
||||
[3,
|
||||
8]]
|
||||
"Positions": [[16, 8],
|
||||
[3, 8]]
|
||||
},
|
||||
{
|
||||
"MapObject": "tree_dead",
|
||||
"Positions": [[19,
|
||||
7],
|
||||
[0,
|
||||
7]]
|
||||
"Positions": [[19, 7],
|
||||
[0, 7]]
|
||||
},
|
||||
{
|
||||
"MapObject": "Machine gun spawner",
|
||||
"Positions": [[17,
|
||||
35]]
|
||||
"Positions": [[17, 35]]
|
||||
},
|
||||
{
|
||||
"MapObject": "Bullets ammo spawner",
|
||||
"Positions": [[17,
|
||||
34],
|
||||
[18,
|
||||
34],
|
||||
[18,
|
||||
35]]
|
||||
"Positions": [[17, 34],
|
||||
[18, 34],
|
||||
[18, 35]]
|
||||
},
|
||||
{
|
||||
"MapObject": "terminal",
|
||||
"Positions": [[17,
|
||||
63],
|
||||
[14,
|
||||
5]]
|
||||
"Positions": [[17, 63],
|
||||
[14, 5]]
|
||||
},
|
||||
{
|
||||
"MapObject": "table_wood_candle",
|
||||
"Positions": [[1,
|
||||
36],
|
||||
[18,
|
||||
67],
|
||||
[4,
|
||||
2]]
|
||||
"Positions": [[1, 36],
|
||||
[18, 67],
|
||||
[4, 2]]
|
||||
},
|
||||
{
|
||||
"MapObject": "wall_goo",
|
||||
"Positions": [[18,
|
||||
64],
|
||||
[19,
|
||||
63],
|
||||
[14,
|
||||
65],
|
||||
[15,
|
||||
62],
|
||||
[18,
|
||||
72]]
|
||||
"Positions": [[18, 64],
|
||||
[19, 63],
|
||||
[14, 65],
|
||||
[15, 62],
|
||||
[18, 72]]
|
||||
},
|
||||
{
|
||||
"MapObject": "gibs",
|
||||
"Positions": [[19,
|
||||
65]]
|
||||
"Positions": [[19, 65]]
|
||||
},
|
||||
{
|
||||
"MapObject": "bone_blood",
|
||||
"Positions": [[16,
|
||||
67],
|
||||
[17,
|
||||
69]]
|
||||
"Positions": [[16, 67],
|
||||
[17, 69]]
|
||||
},
|
||||
{
|
||||
"MapObject": "skull2",
|
||||
"Positions": [[14,
|
||||
75]]
|
||||
"Positions": [[14, 75]]
|
||||
}],
|
||||
"StaticCharacters": [{
|
||||
"Index": 0,
|
||||
"Positions": [[14,
|
||||
16],
|
||||
[17,
|
||||
12],
|
||||
[18,
|
||||
18],
|
||||
[5,
|
||||
14],
|
||||
[1,
|
||||
18],
|
||||
[7,
|
||||
37],
|
||||
[10,
|
||||
40],
|
||||
[7,
|
||||
42],
|
||||
[13,
|
||||
44],
|
||||
[13,
|
||||
62],
|
||||
[7,
|
||||
56],
|
||||
[9,
|
||||
58],
|
||||
[3,
|
||||
69],
|
||||
[5,
|
||||
71],
|
||||
[14,
|
||||
87],
|
||||
[16,
|
||||
82],
|
||||
[17,
|
||||
86],
|
||||
[13,
|
||||
84],
|
||||
[3,
|
||||
88],
|
||||
[7,
|
||||
91],
|
||||
[2,
|
||||
93],
|
||||
[6,
|
||||
96],
|
||||
[17,
|
||||
75],
|
||||
[16,
|
||||
76]]
|
||||
"Positions": [[14, 16],
|
||||
[17, 12],
|
||||
[18, 18],
|
||||
[5, 14],
|
||||
[1, 18],
|
||||
[7, 37],
|
||||
[10, 40],
|
||||
[7, 42],
|
||||
[13, 44],
|
||||
[13, 62],
|
||||
[7, 56],
|
||||
[9, 58],
|
||||
[3, 69],
|
||||
[5, 71],
|
||||
[14, 87],
|
||||
[16, 82],
|
||||
[17, 86],
|
||||
[13, 84],
|
||||
[3, 88],
|
||||
[7, 91],
|
||||
[2, 93],
|
||||
[6, 96],
|
||||
[17, 75],
|
||||
[16, 76]]
|
||||
},
|
||||
{
|
||||
"Index": 2,
|
||||
"Positions": [[1,
|
||||
35],
|
||||
[7,
|
||||
45],
|
||||
[10,
|
||||
44],
|
||||
[2,
|
||||
64],
|
||||
[10,
|
||||
71],
|
||||
[12,
|
||||
88],
|
||||
[3,
|
||||
97],
|
||||
[8,
|
||||
97]]
|
||||
"Positions": [[1, 35],
|
||||
[7, 45],
|
||||
[10, 44],
|
||||
[2, 64],
|
||||
[10, 71],
|
||||
[12, 88],
|
||||
[3, 97],
|
||||
[8, 97]]
|
||||
},
|
||||
{
|
||||
"Index": 4,
|
||||
"Positions": [[18,
|
||||
38],
|
||||
[16,
|
||||
65],
|
||||
[14,
|
||||
67],
|
||||
[1,
|
||||
79],
|
||||
[2,
|
||||
81],
|
||||
[17,
|
||||
73]]
|
||||
"Positions": [[18, 38],
|
||||
[16, 65],
|
||||
[14, 67],
|
||||
[1, 79],
|
||||
[2, 81],
|
||||
[17, 73]]
|
||||
}],
|
||||
"StaticObjectives": [],
|
||||
"StaticKeys": [{
|
||||
"Index": 1,
|
||||
"Positions": [[2,
|
||||
35]]
|
||||
"Positions": [[2, 35]]
|
||||
}],
|
||||
"Start": [9,
|
||||
1],
|
||||
"Exit": {
|
||||
"Start": [4,
|
||||
93],
|
||||
"End": [15,
|
||||
99]
|
||||
}
|
||||
"StaticPickups": [],
|
||||
"Start": [9, 1],
|
||||
"Exits": [{
|
||||
"Rect": [4,
|
||||
93,
|
||||
11,
|
||||
6],
|
||||
"Mission": 5,
|
||||
"Hidden": false
|
||||
}]
|
||||
},
|
||||
{
|
||||
"Title": "Pandemonium",
|
||||
@@ -585,12 +913,8 @@
|
||||
"Type": "Classic",
|
||||
"Width": 60,
|
||||
"Height": 80,
|
||||
"WallStyle": "rock",
|
||||
"FloorStyle": "dirt",
|
||||
"RoomStyle": "cobble",
|
||||
"ExitStyle": "plate2",
|
||||
"KeyStyle": "plain2",
|
||||
"DoorStyle": "dungeon2",
|
||||
"Objectives": [{
|
||||
"Description": "Destroy all 6 demonic altars",
|
||||
"Type": "Destroy",
|
||||
@@ -668,10 +992,52 @@
|
||||
"Flamer",
|
||||
"Pistol"],
|
||||
"Song": "",
|
||||
"WallMask": "3c3c3c",
|
||||
"FloorMask": "c0c0c0",
|
||||
"RoomMask": "303030",
|
||||
"AltMask": "002800",
|
||||
"TileClasses": {
|
||||
"Wall": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "rock",
|
||||
"Mask": "3c3c3cff",
|
||||
"MaskAlt": "002800ff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Floor": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "dirt",
|
||||
"Mask": "c0c0c0ff",
|
||||
"MaskAlt": "002800ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Room": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "cobble",
|
||||
"Mask": "303030ff",
|
||||
"MaskAlt": "002800ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "dungeon2",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
}
|
||||
},
|
||||
"Walls": 16,
|
||||
"WallLength": 60,
|
||||
"CorridorWidth": 3,
|
||||
@@ -686,6 +1052,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 4,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 2,
|
||||
@@ -703,12 +1070,8 @@
|
||||
"Type": "Classic",
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"WallStyle": "granite",
|
||||
"FloorStyle": "cobble",
|
||||
"RoomStyle": "checker",
|
||||
"ExitStyle": "plate2",
|
||||
"KeyStyle": "plain2",
|
||||
"DoorStyle": "blast",
|
||||
"Objectives": [{
|
||||
"Description": "Kill the Ur-Devil",
|
||||
"Type": "Kill",
|
||||
@@ -794,10 +1157,52 @@
|
||||
"Shotgun",
|
||||
"Pistol"],
|
||||
"Song": "",
|
||||
"WallMask": "202020",
|
||||
"FloorMask": "3c3c3c",
|
||||
"RoomMask": "5c5c5c",
|
||||
"AltMask": "202020",
|
||||
"TileClasses": {
|
||||
"Wall": {
|
||||
"Name": "wall",
|
||||
"Type": "Wall",
|
||||
"Style": "granite",
|
||||
"Mask": "202020ff",
|
||||
"MaskAlt": "202020ff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Floor": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "cobble",
|
||||
"Mask": "3c3c3cff",
|
||||
"MaskAlt": "202020ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": false
|
||||
},
|
||||
"Room": {
|
||||
"Name": "tile",
|
||||
"Type": "Floor",
|
||||
"Style": "checker",
|
||||
"Mask": "5c5c5cff",
|
||||
"MaskAlt": "202020ff",
|
||||
"CanWalk": true,
|
||||
"IsOpaque": false,
|
||||
"Shootable": false,
|
||||
"IsRoom": true
|
||||
},
|
||||
"Door": {
|
||||
"Name": "door",
|
||||
"Type": "Door",
|
||||
"Style": "blast",
|
||||
"Mask": "ffffffff",
|
||||
"MaskAlt": "ffffffff",
|
||||
"CanWalk": false,
|
||||
"IsOpaque": true,
|
||||
"Shootable": true,
|
||||
"IsRoom": true
|
||||
}
|
||||
},
|
||||
"Walls": 4,
|
||||
"WallLength": 60,
|
||||
"CorridorWidth": 2,
|
||||
@@ -812,6 +1217,7 @@
|
||||
"WallPad": 2
|
||||
},
|
||||
"Squares": 1,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 3,
|
||||
|
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"Version": 13,
|
||||
"Version": 16,
|
||||
"Title": "Harmful Crysalis",
|
||||
"Author": "Sauer2",
|
||||
"Description": "You are a miner, looking to mine the rare mineral phleboltinum on Xurion.",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 9
|
||||
}
|
@@ -1,12 +1,14 @@
|
||||
{
|
||||
"Version": 12,
|
||||
"Version": 13,
|
||||
"Characters": [{
|
||||
"Class": "Dragon",
|
||||
"Skin": "d78e20",
|
||||
"Arms": "ec2525",
|
||||
"Body": "6d5555",
|
||||
"Legs": "73874d",
|
||||
"Hair": "e20000",
|
||||
"Class": "Jones",
|
||||
"HairType": "hogan",
|
||||
"Skin": "d78e20ff",
|
||||
"Arms": "ec2525ff",
|
||||
"Body": "6d5555ff",
|
||||
"Legs": "73874dff",
|
||||
"Hair": "e20000ff",
|
||||
"Feet": "73874dff",
|
||||
"speed": 100,
|
||||
"Gun": "Laser Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -18,11 +20,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "51a36f",
|
||||
"Arms": "7e4e4e",
|
||||
"Body": "698e2d",
|
||||
"Legs": "716293",
|
||||
"Hair": "fcf5f3",
|
||||
"Skin": "51a36fff",
|
||||
"Arms": "7e4e4eff",
|
||||
"Body": "698e2dff",
|
||||
"Legs": "716293ff",
|
||||
"Hair": "fcf5f3ff",
|
||||
"Feet": "716293ff",
|
||||
"speed": 142,
|
||||
"Gun": "Pulse rifle",
|
||||
"maxHealth": 60,
|
||||
@@ -33,12 +36,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Wolf",
|
||||
"Skin": "af7948",
|
||||
"Arms": "4a984a",
|
||||
"Body": "61527e",
|
||||
"Legs": "86b14c",
|
||||
"Hair": "646363",
|
||||
"Class": "Jones",
|
||||
"HairType": "dutch",
|
||||
"Skin": "af7948ff",
|
||||
"Arms": "4a984aff",
|
||||
"Body": "61527eff",
|
||||
"Legs": "86b14cff",
|
||||
"Hair": "646363ff",
|
||||
"Feet": "86b14cff",
|
||||
"speed": 274,
|
||||
"Gun": "Knife",
|
||||
"maxHealth": 60,
|
||||
@@ -50,11 +55,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "77dae2",
|
||||
"Arms": "38545d",
|
||||
"Body": "909a6d",
|
||||
"Legs": "565353",
|
||||
"Hair": "27f700",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "77dae2ff",
|
||||
"Arms": "38545dff",
|
||||
"Body": "909a6dff",
|
||||
"Legs": "565353ff",
|
||||
"Hair": "27f700ff",
|
||||
"Feet": "565353ff",
|
||||
"speed": 157,
|
||||
"Gun": "Laser Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -65,12 +72,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Cyber Jones",
|
||||
"Skin": "7e4c1c",
|
||||
"Arms": "b2b3b4",
|
||||
"Body": "9a9a99",
|
||||
"Legs": "565353",
|
||||
"Hair": "000000",
|
||||
"Class": "Cyborg",
|
||||
"HairType": "cyber_shades",
|
||||
"Skin": "7e4c1cff",
|
||||
"Arms": "b2b3b4ff",
|
||||
"Body": "9a9a99ff",
|
||||
"Legs": "565353ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "565353ff",
|
||||
"speed": 135,
|
||||
"Gun": "Laser Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -82,11 +91,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Bug-eye",
|
||||
"Skin": "bf2d26",
|
||||
"Arms": "87dffc",
|
||||
"Body": "653bfa",
|
||||
"Legs": "8fb845",
|
||||
"Hair": "317226",
|
||||
"Skin": "bf2d26ff",
|
||||
"Arms": "87dffcff",
|
||||
"Body": "653bfaff",
|
||||
"Legs": "8fb845ff",
|
||||
"Hair": "317226ff",
|
||||
"Feet": "8fb845ff",
|
||||
"speed": 219,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -98,11 +108,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "2aaa00",
|
||||
"Arms": "9ae6ff",
|
||||
"Body": "368a56",
|
||||
"Legs": "855b5b",
|
||||
"Hair": "003fcb",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "2aaa00ff",
|
||||
"Arms": "9ae6ffff",
|
||||
"Body": "368a56ff",
|
||||
"Legs": "855b5bff",
|
||||
"Hair": "003fcbff",
|
||||
"Feet": "855b5bff",
|
||||
"speed": 157,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -113,12 +125,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Professor",
|
||||
"Skin": "eecf6c",
|
||||
"Arms": "ececec",
|
||||
"Body": "ffffff",
|
||||
"Legs": "565353",
|
||||
"Hair": "fc9c0b",
|
||||
"Class": "Jones",
|
||||
"HairType": "professor",
|
||||
"Skin": "eecf6cff",
|
||||
"Arms": "ecececff",
|
||||
"Body": "ffffffff",
|
||||
"Legs": "565353ff",
|
||||
"Hair": "fc9c0bff",
|
||||
"Feet": "565353ff",
|
||||
"speed": 157,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -130,11 +144,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "fce242",
|
||||
"Arms": "1afa77",
|
||||
"Body": "489f00",
|
||||
"Legs": "917373",
|
||||
"Hair": "3c3423",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "fce242ff",
|
||||
"Arms": "1afa77ff",
|
||||
"Body": "489f00ff",
|
||||
"Legs": "917373ff",
|
||||
"Hair": "3c3423ff",
|
||||
"Feet": "917373ff",
|
||||
"speed": 157,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 60,
|
||||
@@ -145,12 +161,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Ogre Boss",
|
||||
"Skin": "62af9b",
|
||||
"Arms": "806e6e",
|
||||
"Body": "77add4",
|
||||
"Legs": "565353",
|
||||
"Hair": "fc320b",
|
||||
"Class": "Ogre",
|
||||
"HairType": "mohawk",
|
||||
"Skin": "62af9bff",
|
||||
"Arms": "806e6eff",
|
||||
"Body": "77add4ff",
|
||||
"Legs": "565353ff",
|
||||
"Hair": "fc320bff",
|
||||
"Feet": "565353ff",
|
||||
"speed": 157,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 60,
|
||||
@@ -162,11 +180,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "e5903e",
|
||||
"Arms": "4d6fd4",
|
||||
"Body": "69c2b0",
|
||||
"Legs": "d2cdcd",
|
||||
"Hair": "f7d50d",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "e5903eff",
|
||||
"Arms": "4d6fd4ff",
|
||||
"Body": "69c2b0ff",
|
||||
"Legs": "d2cdcdff",
|
||||
"Hair": "f7d50dff",
|
||||
"Feet": "d2cdcdff",
|
||||
"speed": 256,
|
||||
"Gun": "Prox. mine",
|
||||
"maxHealth": 40,
|
||||
@@ -178,11 +198,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "b86825",
|
||||
"Arms": "9d5fd9",
|
||||
"Body": "647271",
|
||||
"Legs": "4a4a4a",
|
||||
"Hair": "ad9933",
|
||||
"Skin": "b86825ff",
|
||||
"Arms": "9d5fd9ff",
|
||||
"Body": "647271ff",
|
||||
"Legs": "4a4a4aff",
|
||||
"Hair": "ad9933ff",
|
||||
"Feet": "4a4a4aff",
|
||||
"speed": 256,
|
||||
"Gun": "Prox. mine",
|
||||
"maxHealth": 40,
|
||||
@@ -193,12 +214,14 @@
|
||||
"actionDelay": 18
|
||||
},
|
||||
{
|
||||
"Class": "Bob",
|
||||
"Skin": "eca15d",
|
||||
"Arms": "465821",
|
||||
"Body": "7ec269",
|
||||
"Legs": "d2cdcd",
|
||||
"Hair": "e70c0c",
|
||||
"Class": "Jones",
|
||||
"HairType": "beard",
|
||||
"Skin": "eca15dff",
|
||||
"Arms": "465821ff",
|
||||
"Body": "7ec269ff",
|
||||
"Legs": "d2cdcdff",
|
||||
"Hair": "e70c0cff",
|
||||
"Feet": "d2cdcdff",
|
||||
"speed": 256,
|
||||
"Gun": "Prox. mine",
|
||||
"maxHealth": 40,
|
||||
@@ -210,11 +233,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "876666",
|
||||
"Arms": "74d44d",
|
||||
"Body": "69c2b0",
|
||||
"Legs": "d2cdcd",
|
||||
"Hair": "aaa09a",
|
||||
"Skin": "876666ff",
|
||||
"Arms": "74d44dff",
|
||||
"Body": "69c2b0ff",
|
||||
"Legs": "d2cdcdff",
|
||||
"Hair": "aaa09aff",
|
||||
"Feet": "d2cdcdff",
|
||||
"speed": 256,
|
||||
"Gun": "Prox. mine",
|
||||
"maxHealth": 40,
|
||||
@@ -226,11 +250,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "b2c6a9",
|
||||
"Arms": "99b699",
|
||||
"Body": "cbe2bd",
|
||||
"Legs": "e3f7ce",
|
||||
"Hair": "62a33c",
|
||||
"Skin": "b2c6a9ff",
|
||||
"Arms": "99b699ff",
|
||||
"Body": "cbe2bdff",
|
||||
"Legs": "e3f7ceff",
|
||||
"Hair": "62a33cff",
|
||||
"Feet": "e3f7ceff",
|
||||
"speed": 464,
|
||||
"Gun": "Monster Bite",
|
||||
"maxHealth": 10,
|
||||
@@ -242,11 +267,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "759869",
|
||||
"Arms": "7ea67e",
|
||||
"Body": "9eb88e",
|
||||
"Legs": "e3f7ce",
|
||||
"Hair": "ff881a",
|
||||
"Skin": "759869ff",
|
||||
"Arms": "7ea67eff",
|
||||
"Body": "9eb88eff",
|
||||
"Legs": "e3f7ceff",
|
||||
"Hair": "ff881aff",
|
||||
"Feet": "e3f7ceff",
|
||||
"speed": 517,
|
||||
"Gun": "Monster Bite",
|
||||
"maxHealth": 20,
|
||||
@@ -258,11 +284,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "759869",
|
||||
"Arms": "7ea67e",
|
||||
"Body": "9eb88e",
|
||||
"Legs": "e3f7ce",
|
||||
"Hair": "fc16b0",
|
||||
"Skin": "759869ff",
|
||||
"Arms": "7ea67eff",
|
||||
"Body": "9eb88eff",
|
||||
"Legs": "e3f7ceff",
|
||||
"Hair": "fc16b0ff",
|
||||
"Feet": "e3f7ceff",
|
||||
"speed": 517,
|
||||
"Gun": "Monster Bite",
|
||||
"maxHealth": 10,
|
||||
@@ -274,11 +301,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "445f3a",
|
||||
"Arms": "639f63",
|
||||
"Body": "8ebd72",
|
||||
"Legs": "52584b",
|
||||
"Hair": "e71818",
|
||||
"Skin": "445f3aff",
|
||||
"Arms": "639f63ff",
|
||||
"Body": "8ebd72ff",
|
||||
"Legs": "52584bff",
|
||||
"Hair": "e71818ff",
|
||||
"Feet": "52584bff",
|
||||
"speed": 464,
|
||||
"Gun": "Monster gas",
|
||||
"maxHealth": 30,
|
||||
@@ -289,12 +317,14 @@
|
||||
"actionDelay": 16
|
||||
},
|
||||
{
|
||||
"Class": "Smith",
|
||||
"Skin": "de864d",
|
||||
"Arms": "5b5555",
|
||||
"Body": "fafff8",
|
||||
"Legs": "ddffd2",
|
||||
"Hair": "7e6415",
|
||||
"Class": "Jones",
|
||||
"HairType": "flattop",
|
||||
"Skin": "de864dff",
|
||||
"Arms": "5b5555ff",
|
||||
"Body": "fafff8ff",
|
||||
"Legs": "ddffd2ff",
|
||||
"Hair": "7e6415ff",
|
||||
"Feet": "ddffd2ff",
|
||||
"speed": 305,
|
||||
"Gun": "Flamer",
|
||||
"maxHealth": 400,
|
||||
@@ -306,11 +336,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "69cb00",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "ff0000",
|
||||
"Skin": "69cb00ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "ff0000ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 357,
|
||||
"Gun": "Pulse rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -321,12 +352,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "WarBaby",
|
||||
"Skin": "d77753",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "4db42d",
|
||||
"Class": "Jones",
|
||||
"HairType": "beret",
|
||||
"Skin": "d77753ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "4db42dff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 357,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 40,
|
||||
@@ -338,11 +371,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "1cc3fc",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "23ff23",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "1cc3fcff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "23ff23ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Launcher",
|
||||
"maxHealth": 40,
|
||||
@@ -353,12 +388,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Wolf",
|
||||
"Skin": "804e12",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "b2b4b2",
|
||||
"Class": "Jones",
|
||||
"HairType": "dutch",
|
||||
"Skin": "804e12ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "b2b4b2ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 40,
|
||||
@@ -369,12 +406,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Goggles",
|
||||
"Skin": "cd9754",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "97ec08",
|
||||
"Class": "Jones",
|
||||
"HairType": "goggles",
|
||||
"Skin": "cd9754ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "97ec08ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Launcher",
|
||||
"maxHealth": 40,
|
||||
@@ -386,11 +425,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "c98838",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "97ec08",
|
||||
"Skin": "c98838ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "97ec08ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Powergun",
|
||||
"maxHealth": 40,
|
||||
@@ -402,11 +442,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Mad bug-eye",
|
||||
"Skin": "fc6100",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "97ec08",
|
||||
"Skin": "fc6100ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "97ec08ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Pulse rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -417,12 +458,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Smith",
|
||||
"Skin": "af9934",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "020202",
|
||||
"Class": "Jones",
|
||||
"HairType": "flattop",
|
||||
"Skin": "af9934ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "020202ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Machine pistol",
|
||||
"maxHealth": 40,
|
||||
@@ -433,12 +476,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Grunt",
|
||||
"Skin": "ad7d4b",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "2e5f08",
|
||||
"Class": "Jones",
|
||||
"HairType": "riot_helmet",
|
||||
"Skin": "ad7d4bff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "2e5f08ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "AArms Needler",
|
||||
"maxHealth": 40,
|
||||
@@ -450,11 +495,13 @@
|
||||
},
|
||||
{
|
||||
"Class": "Lady",
|
||||
"Skin": "e9c095",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "ff5e08",
|
||||
"HairType": "ponytail",
|
||||
"Skin": "e9c095ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "ff5e08ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Machine pistol",
|
||||
"maxHealth": 40,
|
||||
@@ -466,11 +513,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Jones",
|
||||
"Skin": "aa88fc",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "97ec08",
|
||||
"Skin": "aa88fcff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "97ec08ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -481,12 +529,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Goggles",
|
||||
"Skin": "916634",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "0bfc30",
|
||||
"Class": "Jones",
|
||||
"HairType": "goggles",
|
||||
"Skin": "916634ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "0bfc30ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -498,11 +548,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Ogre",
|
||||
"Skin": "62b1e5",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "669f09",
|
||||
"Skin": "62b1e5ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "669f09ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -513,12 +564,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "Ice",
|
||||
"Skin": "dbb190",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "151515",
|
||||
"Class": "Jones",
|
||||
"HairType": "shades",
|
||||
"Skin": "dbb190ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "151515ff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -529,12 +582,14 @@
|
||||
"actionDelay": 15
|
||||
},
|
||||
{
|
||||
"Class": "WarBaby",
|
||||
"Skin": "db8847",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "72955b",
|
||||
"Class": "Jones",
|
||||
"HairType": "beret",
|
||||
"Skin": "db8847ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "72955bff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -546,11 +601,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Bug-eye",
|
||||
"Skin": "fcc200",
|
||||
"Arms": "404040",
|
||||
"Body": "404040",
|
||||
"Legs": "404040",
|
||||
"Hair": "72955b",
|
||||
"Skin": "fcc200ff",
|
||||
"Arms": "404040ff",
|
||||
"Body": "404040ff",
|
||||
"Legs": "404040ff",
|
||||
"Hair": "72955bff",
|
||||
"Feet": "404040ff",
|
||||
"speed": 256,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -562,11 +618,12 @@
|
||||
},
|
||||
{
|
||||
"Class": "Robot",
|
||||
"Skin": "445f3a",
|
||||
"Arms": "eeeeec",
|
||||
"Body": "8ebd72",
|
||||
"Legs": "cbd0c5",
|
||||
"Hair": "56ff00",
|
||||
"Skin": "445f3aff",
|
||||
"Arms": "eeeeecff",
|
||||
"Body": "8ebd72ff",
|
||||
"Legs": "cbd0c5ff",
|
||||
"Hair": "56ff00ff",
|
||||
"Feet": "cbd0c5ff",
|
||||
"speed": 264,
|
||||
"Gun": "Monster psybeam",
|
||||
"maxHealth": 302,
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"Version": 11,
|
||||
"Version": 16,
|
||||
"Title": "Most classified enemy",
|
||||
"Author": "Sauer2",
|
||||
"Description": "The government created you in a military lab. You are a mutant with powers that can be weaponized. But now they got afraid of that powers and aim to \"cut the funds\". You better escape before that happens.",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 12
|
||||
}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,10 +1,11 @@
|
||||
{
|
||||
"Version": 15,
|
||||
"Version": 16,
|
||||
"Title": "Pirates from outer space!",
|
||||
"Author": "Sauer2",
|
||||
"Description": "You are a space security officer on the ship Prodigy IV. The ship is three hours away from Antares III and everyone is happy to leave the ship, when suddenly an unknown ship attacks...",
|
||||
"Ammo": false,
|
||||
"WeaponPersist": false,
|
||||
"SkipWeaponMenu": false,
|
||||
"RandomPickups": true,
|
||||
"Missions": 10
|
||||
}
|
@@ -8,6 +8,7 @@
|
||||
"Body": "149c14ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Laser Pistol",
|
||||
"maxHealth": 40,
|
||||
@@ -25,6 +26,7 @@
|
||||
"Body": "149c14ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 40,
|
||||
@@ -42,6 +44,7 @@
|
||||
"Body": "149c14ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Pulse rifle",
|
||||
"maxHealth": 40,
|
||||
@@ -60,6 +63,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 128,
|
||||
"Gun": "AArms Pulse MG",
|
||||
"maxHealth": 40,
|
||||
@@ -78,6 +82,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -95,6 +100,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 512,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -113,6 +119,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 128,
|
||||
"Gun": "XTech BounceRifle",
|
||||
"maxHealth": 40,
|
||||
@@ -130,6 +137,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -146,6 +154,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -163,6 +172,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 128,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -179,6 +189,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -196,6 +207,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "149c14ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 512,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -212,6 +224,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "c00000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -229,6 +242,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "882800ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -246,6 +260,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "9c5858ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "AArms Pulse MG",
|
||||
"maxHealth": 40,
|
||||
@@ -263,6 +278,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "9c0000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Zeild Particle Shotgun V5",
|
||||
"maxHealth": 40,
|
||||
@@ -279,6 +295,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "ff6c00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "AArms Pulse MG",
|
||||
"maxHealth": 40,
|
||||
@@ -296,6 +313,7 @@
|
||||
"Body": "58589cff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "ff6c00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 256,
|
||||
"Gun": "Grenades",
|
||||
"maxHealth": 40,
|
||||
@@ -313,6 +331,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 256,
|
||||
"Gun": "Machine gun",
|
||||
"maxHealth": 30,
|
||||
@@ -330,6 +349,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "ff8136ff",
|
||||
"Hair": "ff0000ff",
|
||||
"Feet": "ff8136ff",
|
||||
"speed": 256,
|
||||
"Gun": "Shotgun",
|
||||
"maxHealth": 20,
|
||||
@@ -346,6 +366,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 384,
|
||||
"Gun": "Pistol",
|
||||
"maxHealth": 50,
|
||||
@@ -363,6 +384,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c589cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "9c589cff",
|
||||
"speed": 128,
|
||||
"Gun": "Confusion bombs",
|
||||
"maxHealth": 80,
|
||||
@@ -380,6 +402,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c5858ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "9c5858ff",
|
||||
"speed": 256,
|
||||
"Gun": "Knife",
|
||||
"maxHealth": 50,
|
||||
@@ -396,6 +419,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c0000ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "9c0000ff",
|
||||
"speed": 256,
|
||||
"Gun": "Browny gun",
|
||||
"maxHealth": 50,
|
||||
@@ -413,6 +437,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "b79536ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "b79536ff",
|
||||
"speed": 320,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 50,
|
||||
@@ -430,6 +455,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "58589cff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 448,
|
||||
"Gun": "Laser Pistol",
|
||||
"maxHealth": 50,
|
||||
@@ -447,6 +473,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "ff6c00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 128,
|
||||
"Gun": "Sniper rifle",
|
||||
"maxHealth": 150,
|
||||
@@ -464,6 +491,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 192,
|
||||
"Gun": "Flamer",
|
||||
"maxHealth": 120,
|
||||
@@ -481,6 +509,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "ff8136ff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "ff8136ff",
|
||||
"speed": 256,
|
||||
"Gun": "Flamer",
|
||||
"maxHealth": 40,
|
||||
@@ -498,6 +527,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 512,
|
||||
"Gun": "Knife",
|
||||
"maxHealth": 10,
|
||||
@@ -515,6 +545,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "ff0000ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 192,
|
||||
"Gun": "Powergun",
|
||||
"maxHealth": 100,
|
||||
@@ -532,6 +563,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "ff6c00ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 128,
|
||||
"Gun": "Dynamite",
|
||||
"maxHealth": 10,
|
||||
@@ -549,6 +581,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 128,
|
||||
"Gun": "Dynamite",
|
||||
"maxHealth": 10,
|
||||
@@ -566,6 +599,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 128,
|
||||
"Gun": "Dynamite",
|
||||
"maxHealth": 10,
|
||||
@@ -583,6 +617,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "d25106ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 128,
|
||||
"Gun": "Dynamite",
|
||||
"maxHealth": 10,
|
||||
@@ -599,6 +634,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 128,
|
||||
"Gun": "Dynamite",
|
||||
"maxHealth": 10,
|
||||
@@ -616,6 +652,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "000000ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 128,
|
||||
"Gun": "Dynamite",
|
||||
"maxHealth": 10,
|
||||
@@ -632,6 +669,7 @@
|
||||
"Body": "363636ff",
|
||||
"Legs": "363636ff",
|
||||
"Hair": "9c0000ff",
|
||||
"Feet": "363636ff",
|
||||
"speed": 128,
|
||||
"Gun": "Chemo gun",
|
||||
"maxHealth": 120,
|
||||
@@ -649,6 +687,7 @@
|
||||
"Body": "ffffffff",
|
||||
"Legs": "9c9c9cff",
|
||||
"Hair": "363636ff",
|
||||
"Feet": "9c9c9cff",
|
||||
"speed": 256,
|
||||
"Gun": "The Mutilator!!!",
|
||||
"maxHealth": 250,
|
||||
|
@@ -542,11 +542,16 @@
|
||||
"Index": 0,
|
||||
"Positions": [[30, 38]]
|
||||
}],
|
||||
"StaticPickups": [],
|
||||
"Start": [10, 5],
|
||||
"Exit": {
|
||||
"Start": [24, 4],
|
||||
"End": [28, 8]
|
||||
}
|
||||
"Exits": [{
|
||||
"Rect": [24,
|
||||
4,
|
||||
4,
|
||||
4],
|
||||
"Mission": 1,
|
||||
"Hidden": false
|
||||
}]
|
||||
},
|
||||
{
|
||||
"Title": "Pirate ship beaming deck",
|
||||
@@ -666,6 +671,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 2,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 1,
|
||||
@@ -801,6 +807,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 1,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 1,
|
||||
@@ -1038,11 +1045,16 @@
|
||||
"Indices": [0]
|
||||
}],
|
||||
"StaticKeys": [],
|
||||
"StaticPickups": [],
|
||||
"Start": [16, 24],
|
||||
"Exit": {
|
||||
"Start": [14, 2],
|
||||
"End": [18, 5]
|
||||
}
|
||||
"Exits": [{
|
||||
"Rect": [14,
|
||||
2,
|
||||
4,
|
||||
3],
|
||||
"Mission": 4,
|
||||
"Hidden": false
|
||||
}]
|
||||
},
|
||||
{
|
||||
"Title": "To the rescue",
|
||||
@@ -1447,11 +1459,16 @@
|
||||
"Index": 0,
|
||||
"Positions": [[10, 27]]
|
||||
}],
|
||||
"StaticPickups": [],
|
||||
"Start": [24, 26],
|
||||
"Exit": {
|
||||
"Start": [33, 2],
|
||||
"End": [39, 9]
|
||||
}
|
||||
"Exits": [{
|
||||
"Rect": [33,
|
||||
2,
|
||||
6,
|
||||
7],
|
||||
"Mission": 5,
|
||||
"Hidden": false
|
||||
}]
|
||||
},
|
||||
{
|
||||
"Title": "The escape",
|
||||
@@ -1548,6 +1565,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 1,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 1,
|
||||
@@ -1689,6 +1707,7 @@
|
||||
"WallPad": 1
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": false,
|
||||
"Doors": {
|
||||
"Enabled": false,
|
||||
"Min": 4,
|
||||
@@ -1844,6 +1863,7 @@
|
||||
"WallPad": 0
|
||||
},
|
||||
"Squares": 0,
|
||||
"ExitEnabled": true,
|
||||
"Doors": {
|
||||
"Enabled": true,
|
||||
"Min": 2,
|
||||
@@ -2137,11 +2157,16 @@
|
||||
"Index": 1,
|
||||
"Positions": [[3, 18]]
|
||||
}],
|
||||
"StaticPickups": [],
|
||||
"Start": [39, 3],
|
||||
"Exit": {
|
||||
"Start": [37, 2],
|
||||
"End": [42, 5]
|
||||
}
|
||||
"Exits": [{
|
||||
"Rect": [37,
|
||||
2,
|
||||
5,
|
||||
3],
|
||||
"Mission": 9,
|
||||
"Hidden": false
|
||||
}]
|
||||
},
|
||||
{
|
||||
"Title": "Till you drop",
|
||||
@@ -2594,10 +2619,15 @@
|
||||
"Index": 0,
|
||||
"Positions": [[30, 38]]
|
||||
}],
|
||||
"StaticPickups": [],
|
||||
"Start": [10, 5],
|
||||
"Exit": {
|
||||
"Start": [24, 4],
|
||||
"End": [28, 8]
|
||||
}
|
||||
"Exits": [{
|
||||
"Rect": [24,
|
||||
4,
|
||||
4,
|
||||
4],
|
||||
"Mission": 10,
|
||||
"Hidden": false
|
||||
}]
|
||||
}]
|
||||
}
|
@@ -34,37 +34,36 @@
|
||||
#include "gamedata.h"
|
||||
#include "handle_game_events.h"
|
||||
|
||||
static NVec2 PlacePlayerSimple(Map *map)
|
||||
static NVec2 PlacePlayerSimple(const Map *map)
|
||||
{
|
||||
const int halfMap =
|
||||
MAX(map->Size.x * TILE_WIDTH, map->Size.y * TILE_HEIGHT) / 2;
|
||||
int attemptsAwayFromExits = 0;
|
||||
|
||||
struct vec2 pos;
|
||||
|
||||
if (HasExit(gCampaign.Entry.Mode))
|
||||
{
|
||||
// First, try to place at least half the map away from the exit
|
||||
const int halfMap =
|
||||
MAX(map->Size.x * TILE_WIDTH, map->Size.y * TILE_HEIGHT) / 2;
|
||||
// Don't try forever trying to place
|
||||
for (int i = 0; i < 100; i++)
|
||||
{
|
||||
for (int j = 0; j < (int)map->exits.size; j++)
|
||||
{
|
||||
const struct vec2 exitPos = MapGetExitPos(map, j);
|
||||
pos = MapGetRandomPos(map);
|
||||
if (fabsf(pos.x - exitPos.x) > halfMap &&
|
||||
fabsf(pos.y - exitPos.y) > halfMap &&
|
||||
MapIsPosOKForPlayer(map, pos, false))
|
||||
{
|
||||
return Vec2ToNet(pos);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Try to place randomly
|
||||
bool ok = false;
|
||||
do
|
||||
{
|
||||
pos = MapGetRandomPos(map);
|
||||
} while (!MapIsPosOKForPlayer(map, pos, false));
|
||||
ok = MapIsPosOKForPlayer(map, pos, false);
|
||||
if (!ok)
|
||||
continue;
|
||||
if (attemptsAwayFromExits < 100)
|
||||
{
|
||||
attemptsAwayFromExits++;
|
||||
// Try to place at least half the map away from any exits
|
||||
for (int i = 0; i < (int)map->exits.size; i++)
|
||||
{
|
||||
const struct vec2 exitPos = MapGetExitPos(map, i);
|
||||
if (fabsf(pos.x - exitPos.x) > halfMap &&
|
||||
fabsf(pos.y - exitPos.y) > halfMap)
|
||||
{
|
||||
ok = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} while (!ok);
|
||||
return Vec2ToNet(pos);
|
||||
}
|
||||
|
||||
@@ -81,7 +80,7 @@ static NVec2 PlaceActorNear(
|
||||
// 7
|
||||
#define TRY_LOCATION() \
|
||||
pos = svec2_add(nearPos, svec2(dx, dy)); \
|
||||
if (MapIsPosOKForPlayer(map, pos, allowAllTiles)) \
|
||||
if (MapIsPosOKForPlayer(map, pos, allowAllTiles)) \
|
||||
{ \
|
||||
return Vec2ToNet(pos); \
|
||||
}
|
||||
|
@@ -395,15 +395,18 @@ static int GetCmd(TActor *actor, const int delayModifier, const int rollLimit)
|
||||
else if (actor->flags & FLAGS_RESCUED)
|
||||
{
|
||||
// If we haven't completed all objectives, act as follower
|
||||
if (!CanCompleteMission(&gMission) || gMap.exits.size <= 1)
|
||||
if (!CanCompleteMission(&gMission) || gMap.exits.size > 1)
|
||||
{
|
||||
cmd = Follow(actor);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Run towards the only exit
|
||||
const struct vec2 exitPos = MapGetExitPos(&gMap, 0);
|
||||
cmd = AIGoto(actor, exitPos, false);
|
||||
// Run towards the exit if there is one
|
||||
if (gMap.exits.size == 1)
|
||||
{
|
||||
const struct vec2 exitPos = MapGetExitPos(&gMap, 0);
|
||||
cmd = AIGoto(actor, exitPos, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (actor->aiContext->Delay > 0)
|
||||
|
@@ -110,14 +110,10 @@ static void DisplayObjective(
|
||||
}
|
||||
}
|
||||
|
||||
static void DisplayExit(struct vec2i pos, int scale, int flags)
|
||||
static void DisplayExits(
|
||||
const Map *m, const struct vec2i pos, const int scale, const int flags)
|
||||
{
|
||||
if (!HasExit(gCampaign.Entry.Mode))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
CA_FOREACH(const Exit, e, gMap.exits)
|
||||
CA_FOREACH(const Exit, e, m->exits)
|
||||
if (e->Hidden)
|
||||
continue;
|
||||
const struct vec2i exitPos =
|
||||
@@ -319,7 +315,7 @@ void AutomapDraw(SDL_Renderer *renderer, const int flags, const bool showExit)
|
||||
|
||||
if (showExit)
|
||||
{
|
||||
DisplayExit(pos, MAP_FACTOR, flags);
|
||||
DisplayExits(&gMap, pos, MAP_FACTOR, flags);
|
||||
}
|
||||
DisplaySummary();
|
||||
}
|
||||
@@ -348,7 +344,7 @@ void AutomapDrawRegion(
|
||||
DrawObjectivesAndKeys(&gMap, centerOn, scale, flags);
|
||||
if (showExit)
|
||||
{
|
||||
DisplayExit(centerOn, scale, flags);
|
||||
DisplayExits(map, centerOn, scale, flags);
|
||||
}
|
||||
GraphicsSetClip(renderer, oldClip);
|
||||
}
|
||||
|
@@ -257,6 +257,11 @@ static void MapChangeFloor(
|
||||
}
|
||||
}
|
||||
|
||||
bool MapHasExits(const Map *m)
|
||||
{
|
||||
return m->exits.size > 0;
|
||||
}
|
||||
|
||||
// Change the perimeter of tiles around the exit area
|
||||
void MapShowExitArea(Map *map, const int i)
|
||||
{
|
||||
|
@@ -140,6 +140,7 @@ bool MapIsPosOKForPlayer(
|
||||
const Map *map, const struct vec2 pos, const bool allowAllTiles);
|
||||
bool MapIsTileAreaClear(
|
||||
const Map *map, const struct vec2 pos, const struct vec2i size);
|
||||
bool MapHasExits(const Map *m);
|
||||
void MapShowExitArea(Map *map, const int i);
|
||||
// Returns the center of the tile that's the middle of the exit area
|
||||
struct vec2 MapGetExitPos(const Map *m, const int i);
|
||||
|
@@ -368,6 +368,7 @@ static json_t *SaveMissions(CArray *a)
|
||||
json_insert_pair_into_object(
|
||||
node, "Rooms", SaveRooms(mission->u.Classic.Rooms));
|
||||
AddIntPair(node, "Squares", mission->u.Classic.Squares);
|
||||
AddBoolPair(node, "ExitEnabled", mission->u.Classic.ExitEnabled);
|
||||
json_insert_pair_into_object(
|
||||
node, "Doors", SaveClassicDoors(mission));
|
||||
json_insert_pair_into_object(
|
||||
@@ -387,6 +388,7 @@ static json_t *SaveMissions(CArray *a)
|
||||
json_insert_pair_into_object(
|
||||
node, "Rooms", SaveRooms(mission->u.Cave.Rooms));
|
||||
AddIntPair(node, "Squares", mission->u.Cave.Squares);
|
||||
AddBoolPair(node, "ExitEnabled", mission->u.Cave.ExitEnabled);
|
||||
AddBoolPair(node, "DoorsEnabled", mission->u.Cave.DoorsEnabled);
|
||||
break;
|
||||
default:
|
||||
|
@@ -94,15 +94,27 @@ void MapBuild(
|
||||
MapSetupDoors(&mb);
|
||||
MapPrintDebug(mb.Map);
|
||||
|
||||
if (mb.mission->Type == MAPTYPE_CLASSIC)
|
||||
{
|
||||
MapAddDrains(&mb);
|
||||
}
|
||||
|
||||
// Set exit now since we have set up all the tiles
|
||||
if (mb.Map->exits.size == 0)
|
||||
switch (mb.mission->Type)
|
||||
{
|
||||
MapGenerateRandomExitArea(mb.Map, missionIndex);
|
||||
case MAPTYPE_CLASSIC:
|
||||
MapAddDrains(&mb);
|
||||
if (HasExit(gCampaign.Entry.Mode) && mb.mission->u.Classic.ExitEnabled)
|
||||
{
|
||||
MapGenerateRandomExitArea(mb.Map, missionIndex);
|
||||
}
|
||||
break;
|
||||
case MAPTYPE_STATIC:
|
||||
break;
|
||||
case MAPTYPE_CAVE:
|
||||
if (HasExit(gCampaign.Entry.Mode) && mb.mission->u.Cave.ExitEnabled)
|
||||
{
|
||||
MapGenerateRandomExitArea(mb.Map, missionIndex);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
CASSERT(false, "unknown map type");
|
||||
break;
|
||||
}
|
||||
|
||||
// Count total number of reachable tiles, for explored %
|
||||
|
@@ -284,6 +284,8 @@ void LoadMissions(CArray *missions, json_t *missionsNode, int version)
|
||||
&m.u.Classic.Rooms,
|
||||
json_find_first_label(child, "Rooms")->child);
|
||||
LoadInt(&m.u.Classic.Squares, child, "Squares");
|
||||
m.u.Classic.ExitEnabled = true;
|
||||
LoadBool(&m.u.Classic.ExitEnabled, child, "ExitEnabled");
|
||||
LoadClassicDoors(&m, child, "Doors");
|
||||
LoadClassicPillars(&m, child, "Pillars");
|
||||
break;
|
||||
@@ -306,6 +308,8 @@ void LoadMissions(CArray *missions, json_t *missionsNode, int version)
|
||||
LoadRooms(&m.u.Cave.Rooms, roomsNode->child);
|
||||
}
|
||||
LoadInt(&m.u.Cave.Squares, child, "Squares");
|
||||
m.u.Cave.ExitEnabled = true;
|
||||
LoadBool(&m.u.Cave.ExitEnabled, child, "ExitEnabled");
|
||||
if (version < 14)
|
||||
{
|
||||
m.u.Cave.DoorsEnabled = true;
|
||||
|
@@ -498,14 +498,13 @@ bool MissionAllObjectivesComplete(const struct MissionOptions *mo)
|
||||
return true;
|
||||
}
|
||||
|
||||
static int AllSurvivingPlayersInSameExit(void);
|
||||
static bool MoreRescuesNeeded(const struct MissionOptions *mo, const int exit);
|
||||
|
||||
int IsMissionComplete(const struct MissionOptions *mo)
|
||||
bool IsMissionComplete(const struct MissionOptions *mo)
|
||||
{
|
||||
if (!CanCompleteMission(mo))
|
||||
{
|
||||
return -1;
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check if dogfight is complete
|
||||
@@ -520,22 +519,17 @@ int IsMissionComplete(const struct MissionOptions *mo)
|
||||
CA_FOREACH_END()
|
||||
if (numPlayersWithLives <= 1)
|
||||
{
|
||||
return 0;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
const int exit = AllSurvivingPlayersInSameExit();
|
||||
if (exit == -1)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (MoreRescuesNeeded(mo, exit))
|
||||
{
|
||||
return -1;
|
||||
return false;
|
||||
}
|
||||
|
||||
return exit;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool MissionNeedsMoreRescuesInExit(const struct MissionOptions *mo)
|
||||
@@ -544,7 +538,7 @@ bool MissionNeedsMoreRescuesInExit(const struct MissionOptions *mo)
|
||||
return CanCompleteMission(mo) && exit != -1 && MoreRescuesNeeded(mo, exit);
|
||||
}
|
||||
|
||||
static int AllSurvivingPlayersInSameExit(void)
|
||||
int AllSurvivingPlayersInSameExit(void)
|
||||
{
|
||||
// Check that all surviving players are in same exit, and return that exit
|
||||
// Return -1 otherwise
|
||||
|
@@ -136,6 +136,7 @@ typedef struct
|
||||
int CorridorWidth;
|
||||
RoomParams Rooms;
|
||||
int Squares;
|
||||
bool ExitEnabled;
|
||||
struct
|
||||
{
|
||||
bool Enabled;
|
||||
@@ -162,6 +163,7 @@ typedef struct
|
||||
int CorridorWidth;
|
||||
RoomParams Rooms;
|
||||
int Squares;
|
||||
bool ExitEnabled;
|
||||
bool DoorsEnabled;
|
||||
} Cave;
|
||||
} u;
|
||||
@@ -218,8 +220,9 @@ bool MissionCanBegin(void);
|
||||
void MissionBegin(struct MissionOptions *m, const NGameBegin gb);
|
||||
bool CanCompleteMission(const struct MissionOptions *options);
|
||||
bool MissionAllObjectivesComplete(const struct MissionOptions *mo);
|
||||
// Returns exit index or -1 if incomplete
|
||||
int IsMissionComplete(const struct MissionOptions *options);
|
||||
bool IsMissionComplete(const struct MissionOptions *mo);
|
||||
// Returns exit index or -1 if not all players in same exit
|
||||
int AllSurvivingPlayersInSameExit(void);
|
||||
bool MissionNeedsMoreRescuesInExit(const struct MissionOptions *mo);
|
||||
bool MissionHasRequiredObjectives(const struct MissionOptions *mo);
|
||||
void MissionDone(struct MissionOptions *mo, const NMissionEnd end);
|
||||
|
@@ -293,6 +293,7 @@ static void AddMission(
|
||||
m.u.Classic.Rooms = RandomRoomParams();
|
||||
m.u.Classic.Squares = GenerateQuickPlayParam(
|
||||
ConfigGetEnum(&gConfig, "QuickPlay.SquareCount"), 0, 1, 3, 6);
|
||||
m.u.Classic.ExitEnabled = rand() % 2;
|
||||
m.u.Classic.Doors.Enabled = rand() % 2;
|
||||
m.u.Classic.Doors.Min = 1;
|
||||
m.u.Classic.Doors.Max = 6;
|
||||
@@ -311,6 +312,7 @@ static void AddMission(
|
||||
m.u.Cave.Rooms = RandomRoomParams();
|
||||
m.u.Cave.Squares = GenerateQuickPlayParam(
|
||||
ConfigGetEnum(&gConfig, "QuickPlay.SquareCount"), 0, 1, 3, 6);
|
||||
m.u.Cave.ExitEnabled = rand() % 2;
|
||||
m.u.Cave.DoorsEnabled = rand() % 2;
|
||||
break;
|
||||
default:
|
||||
|
@@ -312,6 +312,19 @@ static const char *MissionGetSquareCountStr(UIObject *o, void *data)
|
||||
sprintf(s, "Sqr: %d", CampaignGetCurrentMission(co)->u.Classic.Squares);
|
||||
return s;
|
||||
}
|
||||
static void MissionDrawExitEnabled(
|
||||
UIObject *o, GraphicsDevice *g, struct vec2i pos, void *data)
|
||||
{
|
||||
UNUSED(o);
|
||||
UNUSED(g);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return;
|
||||
DisplayFlag(
|
||||
svec2i_add(pos, o->Pos), "Exit",
|
||||
CampaignGetCurrentMission(co)->u.Classic.ExitEnabled,
|
||||
UIObjectIsHighlighted(o));
|
||||
}
|
||||
static void MissionDrawDoorEnabled(
|
||||
UIObject *o, GraphicsDevice *g, struct vec2i pos, void *data)
|
||||
{
|
||||
@@ -811,6 +824,14 @@ static EditorResult MissionChangeSquareCount(void *data, int d)
|
||||
CLAMP(CampaignGetCurrentMission(co)->u.Classic.Squares + d, 0, 100);
|
||||
return EDITOR_RESULT_CHANGED;
|
||||
}
|
||||
static EditorResult MissionChangeExitEnabled(void *data, int d)
|
||||
{
|
||||
UNUSED(d);
|
||||
Campaign *co = data;
|
||||
CampaignGetCurrentMission(co)->u.Classic.ExitEnabled =
|
||||
!CampaignGetCurrentMission(co)->u.Classic.ExitEnabled;
|
||||
return EDITOR_RESULT_CHANGED;
|
||||
}
|
||||
static EditorResult MissionChangeDoorEnabled(void *data, int d)
|
||||
{
|
||||
UNUSED(d);
|
||||
@@ -1504,6 +1525,13 @@ static UIObject *CreateClassicMapObjs(struct vec2i pos, Campaign *co)
|
||||
o2->ChangeFunc = MissionChangeSquareCount;
|
||||
o2->Pos = pos;
|
||||
UIObjectAddChild(c, o2);
|
||||
pos.x += o2->Size.x;
|
||||
o2 = UIObjectCreate(UITYPE_CUSTOM, 0, pos, o->Size);
|
||||
o2->u.CustomDrawFunc = MissionDrawExitEnabled;
|
||||
o2->Data = co;
|
||||
o2->ChangeFunc = MissionChangeExitEnabled;
|
||||
o2->Pos = pos;
|
||||
UIObjectAddChild(c, o2);
|
||||
|
||||
pos.x = x;
|
||||
pos.y += th;
|
||||
|
@@ -32,10 +32,8 @@
|
||||
|
||||
#include "editor_ui_common.h"
|
||||
|
||||
|
||||
MISSION_CHECK_TYPE_FUNC(MAPTYPE_CAVE)
|
||||
|
||||
|
||||
static const char *MissionGetFillPercentStr(UIObject *o, void *data);
|
||||
static EditorResult MissionChangeFillPercent(void *data, int d);
|
||||
static const char *MissionGetRepeatStr(UIObject *o, void *data);
|
||||
@@ -63,21 +61,23 @@ static const char *MissionGetRoomWallPadStr(UIObject *o, void *data);
|
||||
static EditorResult MissionChangeRoomWallPad(void *data, int d);
|
||||
static const char *MissionGetSquareCountStr(UIObject *o, void *data);
|
||||
static EditorResult MissionChangeSquareCount(void *data, int d);
|
||||
static void MissionDrawExitEnabled(
|
||||
UIObject *o, GraphicsDevice *g, struct vec2i pos, void *data);
|
||||
static void MissionDrawDoorEnabled(
|
||||
UIObject *o, GraphicsDevice *g, struct vec2i pos, void *data);
|
||||
static EditorResult MissionChangeExitEnabled(void *data, int d);
|
||||
static EditorResult MissionChangeDoorEnabled(void *data, int d);
|
||||
UIObject *CreateCaveMapObjs(struct vec2i pos, Campaign *co)
|
||||
{
|
||||
const int th = FontH();
|
||||
UIObject *c = UIObjectCreate(UITYPE_NONE, 0, svec2i_zero(), svec2i_zero());
|
||||
UIObject *o = UIObjectCreate(
|
||||
UITYPE_LABEL, 0, svec2i_zero(), svec2i(50, th));
|
||||
UIObject *o =
|
||||
UIObjectCreate(UITYPE_LABEL, 0, svec2i_zero(), svec2i(50, th));
|
||||
const int x = pos.x;
|
||||
// Check whether the map type matches, and set visibility
|
||||
c->CheckVisible = MissionCheckTypeFunc;
|
||||
c->Data = co;
|
||||
|
||||
|
||||
UIObject *o2 = CreateCampaignSeedObj(pos, co);
|
||||
UIObjectAddChild(c, o2);
|
||||
|
||||
@@ -184,6 +184,15 @@ UIObject *CreateCaveMapObjs(struct vec2i pos, Campaign *co)
|
||||
UIObjectAddChild(c, o2);
|
||||
pos.x += o2->Size.x;
|
||||
o2 = UIObjectCreate(UITYPE_CUSTOM, 0, pos, o->Size);
|
||||
o2->u.CustomDrawFunc = MissionDrawExitEnabled;
|
||||
o2->Data = co;
|
||||
o2->ChangeFunc = MissionChangeExitEnabled;
|
||||
o2->Pos = pos;
|
||||
UIObjectAddChild(c, o2);
|
||||
|
||||
pos.x = x;
|
||||
pos.y += th;
|
||||
o2 = UIObjectCreate(UITYPE_CUSTOM, 0, pos, o->Size);
|
||||
o2->u.CustomDrawFunc = MissionDrawDoorEnabled;
|
||||
o2->Data = co;
|
||||
o2->ChangeFunc = MissionChangeDoorEnabled;
|
||||
@@ -198,7 +207,8 @@ static const char *MissionGetFillPercentStr(UIObject *o, void *data)
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
const Mission *m = CampaignGetCurrentMission(co);
|
||||
if (m == NULL) return NULL;
|
||||
if (m == NULL)
|
||||
return NULL;
|
||||
static char s[128];
|
||||
sprintf(s, "Fill: %d%%", m->u.Cave.FillPercent);
|
||||
return s;
|
||||
@@ -219,7 +229,8 @@ static const char *MissionGetRepeatStr(UIObject *o, void *data)
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
const Mission *m = CampaignGetCurrentMission(co);
|
||||
if (m == NULL) return NULL;
|
||||
if (m == NULL)
|
||||
return NULL;
|
||||
static char s[128];
|
||||
sprintf(s, "Repeat: %d", m->u.Cave.Repeat);
|
||||
return s;
|
||||
@@ -236,7 +247,8 @@ static const char *MissionGetR1Str(UIObject *o, void *data)
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
const Mission *m = CampaignGetCurrentMission(co);
|
||||
if (m == NULL) return NULL;
|
||||
if (m == NULL)
|
||||
return NULL;
|
||||
static char s[128];
|
||||
sprintf(s, "R1: %d", m->u.Cave.R1);
|
||||
return s;
|
||||
@@ -253,7 +265,8 @@ static const char *MissionGetR2Str(UIObject *o, void *data)
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
const Mission *m = CampaignGetCurrentMission(co);
|
||||
if (m == NULL) return NULL;
|
||||
if (m == NULL)
|
||||
return NULL;
|
||||
static char s[128];
|
||||
sprintf(s, "R2: %d", m->u.Cave.R2);
|
||||
return s;
|
||||
@@ -270,7 +283,8 @@ static const char *MissionGetCorridorWidthStr(UIObject *o, void *data)
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
const Mission *m = CampaignGetCurrentMission(co);
|
||||
if (m == NULL) return NULL;
|
||||
if (m == NULL)
|
||||
return NULL;
|
||||
static char s[128];
|
||||
sprintf(s, "CorridorWidth: %d", m->u.Cave.CorridorWidth);
|
||||
return s;
|
||||
@@ -287,9 +301,9 @@ static const char *MissionGetRoomCountStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
sprintf(
|
||||
s, "Rooms: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.Count);
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(s, "Rooms: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.Count);
|
||||
return s;
|
||||
}
|
||||
static const char *MissionGetRoomMinStr(UIObject *o, void *data)
|
||||
@@ -297,7 +311,8 @@ static const char *MissionGetRoomMinStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(s, "RoomMin: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.Min);
|
||||
return s;
|
||||
}
|
||||
@@ -306,7 +321,8 @@ static const char *MissionGetRoomMaxStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(s, "RoomMax: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.Max);
|
||||
return s;
|
||||
}
|
||||
@@ -322,8 +338,8 @@ static EditorResult MissionChangeRoomMin(void *data, int d)
|
||||
Campaign *co = data;
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Min =
|
||||
CLAMP(CampaignGetCurrentMission(co)->u.Cave.Rooms.Min + d, 5, 50);
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Max = MAX(
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Min,
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Max =
|
||||
MAX(CampaignGetCurrentMission(co)->u.Cave.Rooms.Min,
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Max);
|
||||
return EDITOR_RESULT_CHANGED;
|
||||
}
|
||||
@@ -332,8 +348,8 @@ static EditorResult MissionChangeRoomMax(void *data, int d)
|
||||
Campaign *co = data;
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Max =
|
||||
CLAMP(CampaignGetCurrentMission(co)->u.Cave.Rooms.Max + d, 5, 50);
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Min = MIN(
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Min,
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Min =
|
||||
MIN(CampaignGetCurrentMission(co)->u.Cave.Rooms.Min,
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Max);
|
||||
return EDITOR_RESULT_CHANGED;
|
||||
}
|
||||
@@ -344,7 +360,8 @@ static void MissionDrawRoomsOverlap(
|
||||
UNUSED(g);
|
||||
UNUSED(pos);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return;
|
||||
DisplayFlag(
|
||||
svec2i_add(pos, o->Pos), "Room overlap",
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.Overlap,
|
||||
@@ -363,8 +380,10 @@ static const char *MissionGetRoomWallCountStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
sprintf(s, "RoomWalls: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.Walls);
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(
|
||||
s, "RoomWalls: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.Walls);
|
||||
return s;
|
||||
}
|
||||
static const char *MissionGetRoomWallLenStr(UIObject *o, void *data)
|
||||
@@ -372,8 +391,11 @@ static const char *MissionGetRoomWallLenStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
sprintf(s, "RoomWallLen: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.WallLength);
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(
|
||||
s, "RoomWallLen: %d",
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.WallLength);
|
||||
return s;
|
||||
}
|
||||
static const char *MissionGetRoomWallPadStr(UIObject *o, void *data)
|
||||
@@ -381,8 +403,11 @@ static const char *MissionGetRoomWallPadStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
sprintf(s, "RoomWallPad: %d", CampaignGetCurrentMission(co)->u.Cave.Rooms.WallPad);
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(
|
||||
s, "RoomWallPad: %d",
|
||||
CampaignGetCurrentMission(co)->u.Cave.Rooms.WallPad);
|
||||
return s;
|
||||
}
|
||||
static EditorResult MissionChangeRoomWallCount(void *data, int d)
|
||||
@@ -411,7 +436,8 @@ static const char *MissionGetSquareCountStr(UIObject *o, void *data)
|
||||
static char s[128];
|
||||
UNUSED(o);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return NULL;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return NULL;
|
||||
sprintf(s, "Sqr: %d", CampaignGetCurrentMission(co)->u.Cave.Squares);
|
||||
return s;
|
||||
}
|
||||
@@ -422,18 +448,40 @@ static EditorResult MissionChangeSquareCount(void *data, int d)
|
||||
CLAMP(CampaignGetCurrentMission(co)->u.Cave.Squares + d, 0, 100);
|
||||
return EDITOR_RESULT_CHANGED;
|
||||
}
|
||||
static void MissionDrawExitEnabled(
|
||||
UIObject *o, GraphicsDevice *g, struct vec2i pos, void *data)
|
||||
{
|
||||
UNUSED(o);
|
||||
UNUSED(g);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return;
|
||||
DisplayFlag(
|
||||
svec2i_add(pos, o->Pos), "Exit",
|
||||
CampaignGetCurrentMission(co)->u.Cave.ExitEnabled,
|
||||
UIObjectIsHighlighted(o));
|
||||
}
|
||||
static void MissionDrawDoorEnabled(
|
||||
UIObject *o, GraphicsDevice *g, struct vec2i pos, void *data)
|
||||
{
|
||||
UNUSED(o);
|
||||
UNUSED(g);
|
||||
Campaign *co = data;
|
||||
if (!CampaignGetCurrentMission(co)) return;
|
||||
if (!CampaignGetCurrentMission(co))
|
||||
return;
|
||||
DisplayFlag(
|
||||
svec2i_add(pos, o->Pos), "Doors",
|
||||
CampaignGetCurrentMission(co)->u.Cave.DoorsEnabled,
|
||||
UIObjectIsHighlighted(o));
|
||||
}
|
||||
static EditorResult MissionChangeExitEnabled(void *data, int d)
|
||||
{
|
||||
UNUSED(d);
|
||||
Campaign *co = data;
|
||||
Mission *m = CampaignGetCurrentMission(co);
|
||||
m->u.Cave.ExitEnabled = !m->u.Cave.ExitEnabled;
|
||||
return EDITOR_RESULT_CHANGED;
|
||||
}
|
||||
static EditorResult MissionChangeDoorEnabled(void *data, int d)
|
||||
{
|
||||
UNUSED(d);
|
||||
|
@@ -85,7 +85,8 @@ static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data)
|
||||
bool result = true;
|
||||
ExitBrushData *eData = data;
|
||||
Exit *selectedExit = NULL;
|
||||
if (*eData->exitIdx < (int)eData->m->u.Static.Exits.size)
|
||||
if (*eData->exitIdx > 0 &&
|
||||
*eData->exitIdx < (int)eData->m->u.Static.Exits.size)
|
||||
{
|
||||
selectedExit = CArrayGet(&eData->m->u.Static.Exits, *eData->exitIdx);
|
||||
}
|
||||
@@ -168,8 +169,8 @@ static void DrawPropsSidebar(
|
||||
int mission = selectedExit->Mission;
|
||||
mission++;
|
||||
nk_property_int(
|
||||
ctx, "Mission", 1, &mission,
|
||||
(int)eData->co->Setting.Missions.size + 1, 1, 1.f);
|
||||
ctx, "Mission", 1, &mission, (int)eData->co->Setting.Missions.size + 1,
|
||||
1, 1.f);
|
||||
selectedExit->Mission = mission - 1;
|
||||
if (nk_input_is_mouse_hovering_rect(&ctx->input, bounds))
|
||||
{
|
||||
|
24
src/game.c
24
src/game.c
@@ -719,16 +719,17 @@ static void CheckMissionCompletion(const struct MissionOptions *mo)
|
||||
}
|
||||
CA_FOREACH_END()
|
||||
|
||||
const int exitIndex =
|
||||
GetNumPlayers(PLAYER_ALIVE_OR_DYING, false, false) > 0
|
||||
? IsMissionComplete(mo)
|
||||
: -1;
|
||||
if (mo->state == MISSION_STATE_PLAY && exitIndex >= 0)
|
||||
const bool complete =
|
||||
GetNumPlayers(PLAYER_ALIVE_OR_DYING, false, false) > 0 &&
|
||||
IsMissionComplete(mo);
|
||||
const int exitIndex = AllSurvivingPlayersInSameExit();
|
||||
const bool canExit = complete && (!MapHasExits(&gMap) || exitIndex >= 0);
|
||||
if (mo->state == MISSION_STATE_PLAY && canExit)
|
||||
{
|
||||
GameEvent e = GameEventNew(GAME_EVENT_MISSION_PICKUP);
|
||||
GameEventsEnqueue(&gGameEvents, e);
|
||||
}
|
||||
if (mo->state == MISSION_STATE_PICKUP && exitIndex == -1)
|
||||
if (mo->state == MISSION_STATE_PICKUP && !canExit)
|
||||
{
|
||||
GameEvent e = GameEventNew(GAME_EVENT_MISSION_INCOMPLETE);
|
||||
GameEventsEnqueue(&gGameEvents, e);
|
||||
@@ -737,8 +738,15 @@ static void CheckMissionCompletion(const struct MissionOptions *mo)
|
||||
mo->pickupTime + PICKUP_LIMIT <= mo->time)
|
||||
{
|
||||
GameEvent e = GameEventNew(GAME_EVENT_MISSION_END);
|
||||
const Exit *exit = CArrayGet(&gMap.exits, exitIndex);
|
||||
e.u.MissionEnd.Mission = exit->Mission;
|
||||
if (exitIndex >= 0)
|
||||
{
|
||||
const Exit *exit = CArrayGet(&gMap.exits, exitIndex);
|
||||
e.u.MissionEnd.Mission = exit->Mission;
|
||||
}
|
||||
else
|
||||
{
|
||||
e.u.MissionEnd.Mission = mo->index + 1;
|
||||
}
|
||||
GameEventsEnqueue(&gGameEvents, e);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user