From 4982558bbf89a3be6efb80eb9e96949694dfda27 Mon Sep 17 00:00:00 2001
From: Christoph Oelckers <coelckers@zdoom.fake>
Date: Wed, 12 Apr 2006 21:49:03 +0000
Subject: [PATCH] SVN r34 (trunk)

---
 docs/rh-log.txt                 | 5 +++++
 src/g_doom/a_doomkeys.cpp       | 2 --
 src/g_heretic/a_heretickeys.cpp | 1 -
 src/g_shared/a_decals.cpp       | 6 +++---
 src/g_shared/a_sharedglobal.h   | 2 +-
 src/version.h                   | 2 +-
 6 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/docs/rh-log.txt b/docs/rh-log.txt
index 635a34a75..21849c66c 100644
--- a/docs/rh-log.txt
+++ b/docs/rh-log.txt
@@ -1,3 +1,8 @@
+April 12, 2006 (Changes by Graf Zahl)
+- Fixed: SAVEVER was still 231 although MINSAVEVER was 232.
+- Fixed: Decal spreading used an incorrect z-coordinate. It has to use
+  the one originally passed to DImpactDecal::StaticCreate.
+
 April 11, 2006
 - Fixed: GCC misoptimized the SWAP macros in farchive.cpp.
 - Fixed: Compiling with mingw once again works.
diff --git a/src/g_doom/a_doomkeys.cpp b/src/g_doom/a_doomkeys.cpp
index 73d62eafe..af35a1f27 100644
--- a/src/g_doom/a_doomkeys.cpp
+++ b/src/g_doom/a_doomkeys.cpp
@@ -69,7 +69,6 @@ class ARedCard : public ADoomKey
 	DECLARE_ACTOR (ARedCard, ADoomKey)
 public:
 	const char *PickupMessage ();
-	const char *NeedKeyMessage (bool remote, int keynum);
 };
 
 FState ARedCard::States[] =
@@ -95,7 +94,6 @@ class ABlueSkull : public ADoomKey
 	DECLARE_ACTOR (ABlueSkull, ADoomKey)
 public:
 	const char *PickupMessage ();
-	const char *NeedKeyMessage (bool remote, int keynum);
 };
 
 FState ABlueSkull::States[] =
diff --git a/src/g_heretic/a_heretickeys.cpp b/src/g_heretic/a_heretickeys.cpp
index 41baf6e61..3231bf369 100644
--- a/src/g_heretic/a_heretickeys.cpp
+++ b/src/g_heretic/a_heretickeys.cpp
@@ -18,7 +18,6 @@ class AKeyGreen : public AHereticKey
 	DECLARE_ACTOR (AKeyGreen, AHereticKey)
 public:
 	const char *PickupMessage ();
-	const char *NeedKeyMessage (bool remote, int keynum);
 };
 
 FState AKeyGreen::States[] =
diff --git a/src/g_shared/a_decals.cpp b/src/g_shared/a_decals.cpp
index 7ed3a71d0..de0dbdbc6 100644
--- a/src/g_shared/a_decals.cpp
+++ b/src/g_shared/a_decals.cpp
@@ -493,7 +493,7 @@ void DBaseDecal::SpreadRight (fixed_t r, side_t *feelwall, fixed_t wallsize)
 	}
 }
 
-void DBaseDecal::Spread (const FDecalTemplate *tpl, side_t *wall)
+void DBaseDecal::Spread (const FDecalTemplate *tpl, side_t *wall, fixed_t spread_z)
 {
 	FTexture *tex;
 	vertex_t *v1;
@@ -514,7 +514,7 @@ void DBaseDecal::Spread (const FDecalTemplate *tpl, side_t *wall)
 	DecalRight = DecalWidth - DecalLeft;
 	SpreadSource = this;
 	SpreadTemplate = tpl;
-	SpreadZ = z;
+	SpreadZ = spread_z;
 
 
 	// Try spreading left first
@@ -662,7 +662,7 @@ DImpactDecal *DImpactDecal::StaticCreate (const FDecalTemplate *tpl, fixed_t x,
 		}
 
 		// Spread decal to nearby walls if it does not all fit on this one
-		decal->Spread (tpl, wall);
+		decal->Spread (tpl, wall, z);
 	}
 	return decal;
 }
diff --git a/src/g_shared/a_sharedglobal.h b/src/g_shared/a_sharedglobal.h
index 85a0f4b02..b83ca0171 100644
--- a/src/g_shared/a_sharedglobal.h
+++ b/src/g_shared/a_sharedglobal.h
@@ -65,7 +65,7 @@ public:
 	fixed_t GetRealZ (const side_s *wall) const;
 	void SetShade (DWORD rgb);
 	void SetShade (int r, int g, int b);
-	void Spread (const FDecalTemplate *tpl, side_s *wall);
+	void Spread (const FDecalTemplate *tpl, side_s *wall, fixed_t spread_z);
 
 	static void SerializeChain (FArchive &arc, DBaseDecal **firstptr);
 	static void MoveChain (DBaseDecal *first, fixed_t x, fixed_t y);
diff --git a/src/version.h b/src/version.h
index 39e093e96..452a9852b 100644
--- a/src/version.h
+++ b/src/version.h
@@ -43,7 +43,7 @@ enum { GAMEVERSION = 205 };
 // SAVEVER is the version of the information stored in level snapshots.
 // Note that SAVEVER is not directly comparable to VERSION.
 // SAVESIG should match SAVEVER.
-#define SAVEVER 231
+#define SAVEVER 232
 #define SAVESIG "ZDOOMSAVE232"
 // This is so that derivates can use the same savegame versions without worrying about engine compatibility
 #define GAMESIG "ZDOOM"