From 62ffe7e4e2673225aea12c4687a4770305c3d639 Mon Sep 17 00:00:00 2001
From: Randy Heit <rheit@zdoom.fake>
Date: Tue, 19 Nov 2013 19:42:13 -0600
Subject: [PATCH] Add NOGRAVITY to every Raven actor with FLOATBOB

- Fixed: Heretic and Hexen completely skip all normal Z processing on
  mobjs with FLOATBOB set. To emulate that, we need to add NOGRAVITY to
  everything with that flag set.
---
 wadsrc/static/actors/heretic/hereticammo.txt      | 1 +
 wadsrc/static/actors/heretic/hereticarmor.txt     | 2 ++
 wadsrc/static/actors/heretic/hereticartifacts.txt | 4 ++++
 wadsrc/static/actors/hexen/blastradius.txt        | 1 +
 wadsrc/static/actors/hexen/boostarmor.txt         | 1 +
 wadsrc/static/actors/hexen/clericholy.txt         | 1 +
 wadsrc/static/actors/hexen/fighterquietus.txt     | 1 +
 wadsrc/static/actors/hexen/flechette.txt          | 1 +
 wadsrc/static/actors/hexen/fog.txt                | 1 +
 wadsrc/static/actors/hexen/healingradius.txt      | 1 +
 wadsrc/static/actors/hexen/magestaff.txt          | 1 +
 wadsrc/static/actors/hexen/mana.txt               | 4 ++++
 wadsrc/static/actors/hexen/speedboots.txt         | 1 +
 wadsrc/static/actors/hexen/summon.txt             | 1 +
 wadsrc/static/actors/hexen/teleportother.txt      | 1 +
 wadsrc/static/actors/raven/artiegg.txt            | 2 ++
 wadsrc/static/actors/raven/artitele.txt           | 1 +
 wadsrc/static/actors/raven/ravenartifacts.txt     | 6 ++++++
 wadsrc/static/actors/raven/ravenhealth.txt        | 1 +
 19 files changed, 32 insertions(+)

diff --git a/wadsrc/static/actors/heretic/hereticammo.txt b/wadsrc/static/actors/heretic/hereticammo.txt
index 96a20352b..8f02cce0a 100644
--- a/wadsrc/static/actors/heretic/hereticammo.txt
+++ b/wadsrc/static/actors/heretic/hereticammo.txt
@@ -221,6 +221,7 @@ ACTOR BagOfHolding : BackpackItem 8
 	Inventory.PickupMessage "$TXT_ITEMBAGOFHOLDING"
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	States
 	{
 	Spawn:
diff --git a/wadsrc/static/actors/heretic/hereticarmor.txt b/wadsrc/static/actors/heretic/hereticarmor.txt
index e027f4f47..40ca671da 100644
--- a/wadsrc/static/actors/heretic/hereticarmor.txt
+++ b/wadsrc/static/actors/heretic/hereticarmor.txt
@@ -6,6 +6,7 @@ Actor SilverShield : BasicArmorPickup 85
 	Game Heretic
 	SpawnID 68
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.Pickupmessage "$TXT_ITEMSHIELD1"
 	Inventory.Icon "SHLDA0"
 	Armor.Savepercent 50
@@ -25,6 +26,7 @@ Actor EnchantedShield : BasicArmorPickup 31
 	Game Heretic
 	SpawnID 69
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.Pickupmessage "$TXT_ITEMSHIELD2"
 	Inventory.Icon "SHD2A0"
 	Armor.Savepercent 75
diff --git a/wadsrc/static/actors/heretic/hereticartifacts.txt b/wadsrc/static/actors/heretic/hereticartifacts.txt
index 67d3946b9..404e5ba39 100644
--- a/wadsrc/static/actors/heretic/hereticartifacts.txt
+++ b/wadsrc/static/actors/heretic/hereticartifacts.txt
@@ -7,6 +7,7 @@ ACTOR SuperMap : MapRevealer 35
 	+COUNTITEM
 	+INVENTORY.ALWAYSPICKUP
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.MaxAmount 0
 	Inventory.PickupMessage "$TXT_ITEMSUPERMAP"
 	States
@@ -26,6 +27,7 @@ ACTOR ArtiInvisibility : PowerupGiver 75
 	SpawnID 135
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	RenderStyle Translucent
 	Alpha 0.4
@@ -51,6 +53,7 @@ ACTOR ArtiTomeOfPower : PowerupGiver 86 native
 	SpawnID 134
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	Inventory.Icon "ARTIPWBK"
 	Powerup.Type Weaponlevel2
@@ -94,6 +97,7 @@ ACTOR ArtiTimeBomb : Inventory 34 native
 	SpawnID 72
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.INVBAR
 	+INVENTORY.FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/hexen/blastradius.txt b/wadsrc/static/actors/hexen/blastradius.txt
index ad98d7ecc..28af3e698 100644
--- a/wadsrc/static/actors/hexen/blastradius.txt
+++ b/wadsrc/static/actors/hexen/blastradius.txt
@@ -4,6 +4,7 @@ ACTOR ArtiBlastRadius : CustomInventory 10110
 	Game Hexen
 	SpawnID 74
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.DefMaxAmount
 	Inventory.PickupFlash "PickupFlash"
 	+INVBAR +FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/hexen/boostarmor.txt b/wadsrc/static/actors/hexen/boostarmor.txt
index 607c8d66a..8aa6b6eeb 100644
--- a/wadsrc/static/actors/hexen/boostarmor.txt
+++ b/wadsrc/static/actors/hexen/boostarmor.txt
@@ -7,6 +7,7 @@ ACTOR ArtiBoostArmor : Inventory 8041 native
 	SpawnID 22
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.DefMaxAmount
 	Inventory.PickupFlash "PickupFlash"
 	+INVBAR +FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/hexen/clericholy.txt b/wadsrc/static/actors/hexen/clericholy.txt
index e97be8b17..cebc44610 100644
--- a/wadsrc/static/actors/hexen/clericholy.txt
+++ b/wadsrc/static/actors/hexen/clericholy.txt
@@ -8,6 +8,7 @@ ACTOR ClericWeaponPiece : WeaponPiece
 	Inventory.ForbiddenTo FighterPlayer, MagePlayer
 	WeaponPiece.Weapon CWeapWraithverge
 	+FLOATBOB
+	+NOGRAVITY
 }
 
 // Cleric Weapon Piece 1 ----------------------------------------------------
diff --git a/wadsrc/static/actors/hexen/fighterquietus.txt b/wadsrc/static/actors/hexen/fighterquietus.txt
index a77e851d8..b5ecd22e4 100644
--- a/wadsrc/static/actors/hexen/fighterquietus.txt
+++ b/wadsrc/static/actors/hexen/fighterquietus.txt
@@ -8,6 +8,7 @@ ACTOR FighterWeaponPiece : WeaponPiece
 	Inventory.ForbiddenTo ClericPlayer, MagePlayer
 	WeaponPiece.Weapon FWeapQuietus
 	+FLOATBOB
+	+NOGRAVITY
 }
 
 // Fighter Weapon Piece 1 ---------------------------------------------------
diff --git a/wadsrc/static/actors/hexen/flechette.txt b/wadsrc/static/actors/hexen/flechette.txt
index 6e12bff53..74c7a0a6a 100644
--- a/wadsrc/static/actors/hexen/flechette.txt
+++ b/wadsrc/static/actors/hexen/flechette.txt
@@ -99,6 +99,7 @@ ACTOR ArtiPoisonBag : Inventory 8000 native
 	Game Hexen
 	SpawnID 72
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.DefMaxAmount
 	Inventory.PickupFlash "PickupFlash"
 	+INVBAR +FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/hexen/fog.txt b/wadsrc/static/actors/hexen/fog.txt
index 81f5aeea5..91fdfc3ee 100644
--- a/wadsrc/static/actors/hexen/fog.txt
+++ b/wadsrc/static/actors/hexen/fog.txt
@@ -6,6 +6,7 @@ ACTOR FogSpawner 10000
 	Game Hexen
 	+NOSECTOR +NOBLOCKMAP
 	+FLOATBOB
+	+NOGRAVITY
 	+INVISIBLE
 
 	action native A_FogSpawn();
diff --git a/wadsrc/static/actors/hexen/healingradius.txt b/wadsrc/static/actors/hexen/healingradius.txt
index e0556915b..97efc0449 100644
--- a/wadsrc/static/actors/hexen/healingradius.txt
+++ b/wadsrc/static/actors/hexen/healingradius.txt
@@ -6,6 +6,7 @@ ACTOR ArtiHealingRadius : Inventory 10120 native
 	Game Hexen
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.DefMaxAmount
 	+INVENTORY.INVBAR 
 	+INVENTORY.PICKUPFLASH
diff --git a/wadsrc/static/actors/hexen/magestaff.txt b/wadsrc/static/actors/hexen/magestaff.txt
index aa75ed446..a8584aae7 100644
--- a/wadsrc/static/actors/hexen/magestaff.txt
+++ b/wadsrc/static/actors/hexen/magestaff.txt
@@ -8,6 +8,7 @@ ACTOR MageWeaponPiece : WeaponPiece
 	Inventory.ForbiddenTo FighterPlayer, ClericPlayer
 	WeaponPiece.Weapon MWeapBloodscourge
 	+FLOATBOB
+	+NOGRAVITY
 }
 
 // Mage Weapon Piece 1 ------------------------------------------------------
diff --git a/wadsrc/static/actors/hexen/mana.txt b/wadsrc/static/actors/hexen/mana.txt
index ee7ddd37c..97bc419c8 100644
--- a/wadsrc/static/actors/hexen/mana.txt
+++ b/wadsrc/static/actors/hexen/mana.txt
@@ -11,6 +11,7 @@ ACTOR Mana1 : Ammo 122
 	Radius 8
 	Height 8
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.Icon "MAN1I0"
 	Inventory.PickupMessage "$TXT_MANA_1"
 	States
@@ -34,6 +35,7 @@ ACTOR Mana2 : Ammo 124
 	Radius 8
 	Height 8
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.Icon "MAN2G0"
 	Inventory.PickupMessage "$TXT_MANA_2"
 	States
@@ -53,6 +55,7 @@ ACTOR Mana3 : CustomInventory 8004
 	Radius 8
 	Height 8
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.PickupMessage "$TXT_MANA_BOTH"
 	States
 	{
@@ -73,6 +76,7 @@ ACTOR ArtiBoostMana : CustomInventory 8003
 	Game Hexen
 	SpawnID 26
 	+FLOATBOB
+	+NOGRAVITY
 	+COUNTITEM
 	+INVENTORY.INVBAR
 	+INVENTORY.PICKUPFLASH
diff --git a/wadsrc/static/actors/hexen/speedboots.txt b/wadsrc/static/actors/hexen/speedboots.txt
index 5fd6703b8..c22699b62 100644
--- a/wadsrc/static/actors/hexen/speedboots.txt
+++ b/wadsrc/static/actors/hexen/speedboots.txt
@@ -5,6 +5,7 @@ ACTOR ArtiSpeedBoots : PowerupGiver 8002
 	Game Hexen
 	SpawnID 13
 	+FLOATBOB
+	+NOGRAVITY
 	+COUNTITEM
 	+INVENTORY.PICKUPFLASH
 	Inventory.Icon ARTISPED
diff --git a/wadsrc/static/actors/hexen/summon.txt b/wadsrc/static/actors/hexen/summon.txt
index a4b3b8584..28c3c3267 100644
--- a/wadsrc/static/actors/hexen/summon.txt
+++ b/wadsrc/static/actors/hexen/summon.txt
@@ -7,6 +7,7 @@ ACTOR ArtiDarkServant : Inventory 86 native
 	SpawnID 16
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.RespawnTics 4230
 	Inventory.DefMaxAmount
 	Inventory.PickupFlash "PickupFlash"
diff --git a/wadsrc/static/actors/hexen/teleportother.txt b/wadsrc/static/actors/hexen/teleportother.txt
index 77a05f6af..49b20a0bd 100644
--- a/wadsrc/static/actors/hexen/teleportother.txt
+++ b/wadsrc/static/actors/hexen/teleportother.txt
@@ -7,6 +7,7 @@ ACTOR ArtiTeleportOther : Inventory 10040 native
 	SpawnID 17
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.INVBAR
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/raven/artiegg.txt b/wadsrc/static/actors/raven/artiegg.txt
index d94f00151..2a9c6867e 100644
--- a/wadsrc/static/actors/raven/artiegg.txt
+++ b/wadsrc/static/actors/raven/artiegg.txt
@@ -31,6 +31,7 @@ ACTOR ArtiEgg : CustomInventory 30
 	SpawnID 14
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.INVBAR
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.FANCYPICKUPSOUND
@@ -85,6 +86,7 @@ ACTOR ArtiPork : CustomInventory 30
 	SpawnID 14
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.INVBAR
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/raven/artitele.txt b/wadsrc/static/actors/raven/artitele.txt
index 79811fd53..b0eedf1cd 100644
--- a/wadsrc/static/actors/raven/artitele.txt
+++ b/wadsrc/static/actors/raven/artitele.txt
@@ -7,6 +7,7 @@ ACTOR ArtiTeleport : Inventory 36 native
 	SpawnID 18
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.INVBAR
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.FANCYPICKUPSOUND
diff --git a/wadsrc/static/actors/raven/ravenartifacts.txt b/wadsrc/static/actors/raven/ravenartifacts.txt
index c02c19c3b..4f31ad5fb 100644
--- a/wadsrc/static/actors/raven/ravenartifacts.txt
+++ b/wadsrc/static/actors/raven/ravenartifacts.txt
@@ -8,6 +8,7 @@ ACTOR ArtiHealth : HealthPickup 82
 	Health 25
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.FANCYPICKUPSOUND
 	Inventory.Icon ARTIPTN2
@@ -32,6 +33,7 @@ ACTOR ArtiSuperHealth : HealthPickup 32
 	Health 100
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.FANCYPICKUPSOUND
 	Inventory.Icon ARTISPHL
@@ -55,6 +57,7 @@ ACTOR ArtiFly : PowerupGiver 83
 	SpawnID 15
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	+INVENTORY.INTERHUBSTRIP
 	Inventory.RespawnTics 4230
@@ -78,6 +81,7 @@ ACTOR ArtiInvulnerability : PowerupGiver 84
 	SpawnID 133
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	Inventory.RespawnTics 4230
 	Inventory.Icon ARTIINVU
@@ -101,6 +105,7 @@ ACTOR ArtiInvulnerability2 : PowerupGiver 84
 	SpawnID 133
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	Inventory.RespawnTics 4230
 	Inventory.Icon ARTIDEFN
@@ -123,6 +128,7 @@ ACTOR ArtiTorch : PowerupGiver 33
 	SpawnID 73
 	+COUNTITEM
 	+FLOATBOB
+	+NOGRAVITY
 	+INVENTORY.PICKUPFLASH
 	Inventory.Icon ARTITRCH
 	Inventory.PickupMessage "$TXT_ARTITORCH"
diff --git a/wadsrc/static/actors/raven/ravenhealth.txt b/wadsrc/static/actors/raven/ravenhealth.txt
index af951be1b..45cbe59b9 100644
--- a/wadsrc/static/actors/raven/ravenhealth.txt
+++ b/wadsrc/static/actors/raven/ravenhealth.txt
@@ -3,6 +3,7 @@ ACTOR CrystalVial : Health 81
 	Game Raven
 	SpawnID 23
 	+FLOATBOB
+	+NOGRAVITY
 	Inventory.Amount 10
 	Inventory.PickupMessage "$TXT_ITEMHEALTH"
 	States