Cyberdogs guns #268

This commit is contained in:
Cong
2022-04-27 21:48:30 +10:00
parent 18c9e8a5e6
commit 9f16fc79c6
26 changed files with 456 additions and 25 deletions

View File

@@ -17,6 +17,15 @@
"SeekFactor": -1
},
"Bullets": [
{
"Name": "fist",
"Power": 1,
"Hit": {
"Flesh": {
"Sound": "hits/fist_flesh"
}
}
},
{
"Name": "chainsaw",
"Power": 2,
@@ -27,7 +36,7 @@
}
},
{
"Name": "chainsaw x2",
"Name": "chainsaw_x2",
"Power": 4,
"Hit": {
"Flesh": {
@@ -36,7 +45,7 @@
}
},
{
"Name": "chainsaw x3",
"Name": "chainsaw_x3",
"Power": 6,
"Hit": {
"Flesh": {
@@ -45,7 +54,7 @@
}
},
{
"Name": "chainsaw x4",
"Name": "chainsaw_x4",
"Power": 8,
"Hit": {
"Flesh": {
@@ -54,7 +63,7 @@
}
},
{
"Name": "chainsaw x5",
"Name": "chainsaw_x5",
"Power": 10,
"Hit": {
"Flesh": {
@@ -128,17 +137,6 @@
}
}
},
{
"Name": "laser",
"Pic": {
"Type": "Directional",
"Sprites": "particles/beam"
},
"Spark": "spark_red",
"Speed": 384,
"Range": 110,
"Power": 5
},
{
"Name": "sniper",
"Pic": {
@@ -225,6 +223,17 @@
"Range": 50,
"Power": 10
},
{
"Name": "laser_dumb",
"Pic": {
"Type": "Directional",
"Sprites": "particles/beam"
},
"Spark": "spark_red",
"Speed": 384,
"Range": 110,
"Power": 5
},
{
"Name": "pulse_green",
"Pic": {
@@ -301,7 +310,16 @@
]
},
{
"Name": "explosion",
"Name": "explosion_cast",
"SpeedLow": 0,
"SpeedHigh": 4096,
"Range": 1,
"OutOfRangeGuns": [
"explosion_ball"
]
},
{
"Name": "explosion_ball",
"Pic": {
"Type": "Animated",
"Sprites": "particles/explosion_small",

View File

@@ -2,10 +2,10 @@
"Version": 16,
"Title": "Cyberdogs",
"Author": "Ronny Wester & Cong Xu",
"Description": "Everyone familiar with Warhammer 40k or Space Hulk/Crusade/Marine? \nMore or less the same thing 8-)\nYou (and optionally a buddy) assume the roles of [insert favourite martial profession here] and are sent on missions. \nAll missions consist of collecting objects/wasting baddies/blowing up enemy installations and then head home.",
"Description": "Everyone familiar with Warhammer 40k or Space Hulk\/Crusade\/Marine? \nMore or less the same thing 8-)\nYou (and optionally a buddy) assume the roles of [insert favourite martial profession here] and are sent on missions. \nAll missions consist of collecting objects\/wasting baddies\/blowing up enemy installations and then head home.",
"Ammo": true,
"SkipWeaponMenu": false,
"RandomPickups": false,
"DoorOpenTicks": 0,
"Missions": 0
"Missions": 1
}

View File

@@ -0,0 +1,3 @@
Images extracted from Cyberdogs
By Ronny Wester
http://creativecommons.org/licenses/by/3.0/

Binary file not shown.

After

Width:  |  Height:  |  Size: 737 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 658 B

View File

@@ -0,0 +1,4 @@
Adapted from 141 Military Icons Set by AngryMeteor.com
http://opengameart.org/content/141-military-icons-set
http://creativecommons.org/licenses/by/3.0/

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 817 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 684 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 784 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 747 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 710 B

View File

@@ -0,0 +1,195 @@
{
"Version": 3,
"Guns": [
{
"Pic": "chainsaw",
"Icon": "chainsaw",
"Name": "Chainsaw",
"Bullet": "chainsaw",
"Cost": 0,
"Lock": 0,
"Sound": "",
"SoundLockLength": 50,
"CanShoot": false
},
{
"Pic": "chainsaw",
"Icon": "chainsaw",
"Name": "Chainsaw x2",
"Bullet": "chainsaw_x2",
"Cost": 0,
"Lock": 0,
"Sound": "",
"SoundLockLength": 50,
"CanShoot": false
},
{
"Pic": "chainsaw",
"Icon": "chainsaw",
"Name": "Chainsaw x3",
"Bullet": "chainsaw_x3",
"Cost": 0,
"Lock": 0,
"Sound": "",
"SoundLockLength": 50,
"CanShoot": false
},
{
"Pic": "chainsaw",
"Icon": "chainsaw",
"Name": "Chainsaw x4",
"Bullet": "chainsaw_x4",
"Cost": 0,
"Lock": 0,
"Sound": "",
"SoundLockLength": 50,
"CanShoot": false
},
{
"Pic": "chainsaw",
"Icon": "chainsaw",
"Name": "Chainsaw x5",
"Bullet": "chainsaw_x5",
"Cost": 0,
"Lock": 0,
"Sound": "",
"SoundLockLength": 50,
"CanShoot": false
},
{
"Pic": "",
"Icon": "fist",
"Name": "Fists",
"Description": "A melee weapon of last resort",
"Bullet": "fist",
"Cost": 0,
"Lock": 0,
"Sound": "",
"SoundLockLength": 50,
"SwitchSound": "knuckles",
"CanShoot": false,
"CanDrop": false
},
{
"Pic": "chaingun",
"Name": "MiniGun",
"Icon": "minigun",
"Bullet": "mg",
"Lock": 7,
"Sound": "lmg",
"SwitchSound": "mg_switch",
"MuzzleFlashParticle": "muzzle_flash_mg",
"Brass": "brass_big",
"Ammo": "Bullets"
},
{
"Pic": "launcher",
"Name": "Launcher",
"Icon": "launcher",
"Bullet": "grenade",
"Lock": 30,
"Sound": "bottle_pop",
"SwitchSound": "swarmer_switch",
"Elevation": 24,
"Ammo": "Grenades"
},
{
"Pic": "flamer",
"Grips": 2,
"Name": "Flamer",
"Icon": "flamer",
"Bullet": "flame",
"Lock": 7,
"Sound": "flamer",
"SwitchSound": "flamer_switch",
"SoundLockLength": 36,
"MuzzleFlashParticle": "muzzle_flash_flamer",
"Ammo": "Gas tank"
},
{
"Name": "Powergun",
"Icon": "powergun",
"Bullet": "sniper",
"Lock": 40,
"Sound": "fusion",
"SwitchSound": "powergun_switch",
"MuzzleFlashParticle": "muzzle_flash_powergun",
"Ammo": "Cells"
},
{
"Pic": "blaster_yellow",
"Name": "Lazer",
"Bullet": "laser",
"Lock": 65,
"Sound": "powergun",
"MuzzleFlashSprite": "muzzle_flash_big",
"MuzzleFlashColor": "ffff00",
"MuzzleFlashDuration": 5
},
{
"Pic": "blaster_yellow",
"Name": "TurboLazer",
"Bullet": "turbo_laser",
"Lock": 35,
"Sound": "powergun",
"MuzzleFlashSprite": "muzzle_flash_big",
"MuzzleFlashColor": "ffff00",
"MuzzleFlashDuration": 5
},
{
"Pic": "pistol",
"Name": "Blaster",
"Icon": "blaster",
"Bullet": "pulse",
"Lock": 12,
"Sound": "pulse",
"SwitchSound": "pulse_switch",
"MuzzleFlashParticle": "muzzle_flash_pulse",
"Ammo": "Mini cells"
},
{
"Pic": "rifle",
"Grips": 2,
"Name": "MegaGun",
"Icon": "megagun",
"Bullet": "megagrenade",
"Lock": 30,
"Sound": "swell",
"SwitchSound": "heatseeker_switch",
"MuzzleFlashParticle": "muzzle_flash_heatseeker",
"Ammo": "Rockets",
"Shake": {
"Amount": 8,
"CameraSubjectOnly": true
}
},
{
"Name": "DumbGun",
"Bullet": "laser_dumb",
"Lock": 40,
"Sound": "pistol"
},
{
"Pic": "zapper_green",
"Name": "Gun",
"Bullet": "pulse_green",
"Lock": 30,
"Sound": "pistol"
}
],
"PseudoGuns" : [
{
"Name": "explosion",
"Bullet": "explosion_cast",
"Recoil": 6.28,
"SpreadCount": 5,
"Shake": {
"Amount": 10
}
},
{
"Name": "explosion_ball",
"Bullet": "explosion_ball"
}
]
}

View File

@@ -1,3 +1,211 @@
{
"Missions": []
"Missions": [{
"Title": "Test",
"Description": "Testing mission",
"Type": "Static",
"Width": 48,
"Height": 48,
"ExitStyle": "hazard",
"KeyStyle": "office",
"Objectives": [],
"Enemies": [],
"SpecialChars": [],
"MapObjectDensities": [],
"EnemyDensity": 0,
"Weapons": [],
"WeaponPersist": false,
"SkipDebrief": false,
"TileClasses": {
"0": {
"Name": "wall",
"Type": "Wall",
"Style": "steel",
"Mask": "848484ff",
"MaskAlt": "008400ff",
"CanWalk": false,
"IsOpaque": true,
"Shootable": true,
"IsRoom": false,
"DamageBullet": ""
},
"1": {
"Name": "tile",
"Type": "Floor",
"Style": "recessed",
"Mask": "484848ff",
"MaskAlt": "008400ff",
"CanWalk": true,
"IsOpaque": false,
"Shootable": false,
"IsRoom": false,
"DamageBullet": ""
}
},
"Tiles": ["0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0",
"0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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": "Chainsaw spawner",
"Positions": [[7, 3]]
},
{
"MapObject": "Chainsaw x2 spawner",
"Positions": [[7, 5]]
},
{
"MapObject": "Chainsaw x3 spawner",
"Positions": [[7, 7]]
},
{
"MapObject": "Chainsaw x4 spawner",
"Positions": [[7, 9]]
},
{
"MapObject": "Chainsaw x5 spawner",
"Positions": [[7, 11]]
},
{
"MapObject": "Fists spawner",
"Positions": [[7, 13]]
},
{
"MapObject": "MiniGun spawner",
"Positions": [[9, 3]]
},
{
"MapObject": "Launcher spawner",
"Positions": [[9, 5]]
},
{
"MapObject": "Flamer spawner",
"Positions": [[9, 7]]
},
{
"MapObject": "Powergun spawner",
"Positions": [[9, 9]]
},
{
"MapObject": "Lazer spawner",
"Positions": [[9, 11]]
},
{
"MapObject": "TurboLazer spawner",
"Positions": [[9, 13]]
},
{
"MapObject": "Blaster spawner",
"Positions": [[9, 15]]
},
{
"MapObject": "MegaGun spawner",
"Positions": [[9, 17]]
}],
"StaticCharacters": [],
"StaticObjectives": [],
"StaticKeys": [],
"StaticPickups": [],
"Start": [0, 0],
"Exits": [{
"Rect": [28,
2,
9,
9],
"Mission": 1,
"Hidden": false
}],
"AltFloorsEnabled": true
}]
}

View File

@@ -293,8 +293,8 @@ static void MissionDrawExitStyle(
static const char *MissionGetCharacterCountStr(UIObject *o, void *data)
{
static char s[128];
UNUSED(o);
Campaign *co = data;
UNUSED(data);
Campaign *co = o->Data;
const Mission *m = CampaignGetCurrentMission(co);
if (!m)
return NULL;
@@ -304,8 +304,8 @@ static const char *MissionGetCharacterCountStr(UIObject *o, void *data)
static const char *MissionGetSpecialCountStr(UIObject *o, void *data)
{
static char s[128];
UNUSED(o);
Campaign *co = data;
UNUSED(data);
Campaign *co = o->Data;
if (!CampaignGetCurrentMission(co))
return NULL;
sprintf(

View File

@@ -61,7 +61,10 @@ EditorResult EditMissionOptions(EventHandlers *handlers, Mission *m)
MissionOptionsData data;
memset(&data, 0, sizeof data);
data.m = m;
strcpy(data.Title, m->Title);
if (m->Title)
{
strcpy(data.Title, m->Title);
}
if (m->Description)
{
strcpy(data.Description, m->Description);
@@ -113,7 +116,7 @@ static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data)
DrawTextbox(ctx, mData->Description, 1024, "Description", NK_EDIT_BOX);
nk_layout_row_dynamic(ctx, ROW_HEIGHT, 1);
bool dynamicMusic = mData->m->Music.Type == MUSIC_SRC_DYNAMIC;
if (DrawCheckbox(ctx, "Custom Music", "", &dynamicMusic))
if (DrawCheckbox(ctx, "Custom Music", NULL, &dynamicMusic))
{
changed = true;
mData->m->Music.Type = dynamicMusic ? MUSIC_SRC_DYNAMIC : MUSIC_SRC_GENERAL;