shithub: cstory

Download patch

ref: df9dc3e22dc4a39fffb4bb4ceb7d9a0974b5c92b
parent: cffc3af45e46b3c930b608c2ff956af1762fa08d
parent: c838e8ebcb81ef81412ca2832f6ceff0b65972fb
author: Clownacy <[email protected]>
date: Mon Jan 6 14:39:36 EST 2020

Merge branch 'accurate' into portable

--- a/src/ArmsItem.cpp
+++ b/src/ArmsItem.cpp
@@ -446,10 +446,11 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
-					return 0;	// Quit game
-				case 2:
-					return 2;	// Go to game intro
+				case enum_ESCRETURN_exit:
+					return enum_ESCRETURN_exit;	// Quit game
+
+				case enum_ESCRETURN_restart:
+					return enum_ESCRETURN_restart;	// Go to game intro
 			}
 		}
 
@@ -458,10 +459,11 @@
 
 		switch (TextScriptProc())
 		{
-			case 0:
-				return 0;	// Quit game
-			case 2:
-				return 2;	// Go to game intro
+			case enum_ESCRETURN_exit:
+				return enum_ESCRETURN_exit;	// Quit game
+
+			case enum_ESCRETURN_restart:
+				return enum_ESCRETURN_restart;	// Go to game intro
 		}
 
 		// Get currently displayed image
@@ -489,13 +491,13 @@
 		}
 
 		if (!Flip_SystemTask())
-			return 0;	// Quit game
+			return enum_ESCRETURN_exit;	// Quit game
 	}
 
 	// Resume original script
 	LoadTextScript_Stage(old_script_path);
 	gArmsEnergyX = 32; // Displays weapon rotation animation in case the weapon was changed
-	return 1;	// Go to game
+	return enum_ESCRETURN_continue;	// Go to game
 }
 
 BOOL CheckItem(long a)
--- a/src/Ending.cpp
+++ b/src/Ending.cpp
@@ -466,10 +466,11 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
-					return 0;
-				case 2:
-					return 2;
+				case enum_ESCRETURN_exit:
+					return enum_ESCRETURN_exit;
+
+				case enum_ESCRETURN_restart:
+					return enum_ESCRETURN_restart;
 			}
 		}
 
@@ -515,8 +516,8 @@
 		// Draw window
 		PutFramePerSecound();
 		if (!Flip_SystemTask())
-			return 0;
+			return enum_ESCRETURN_exit;
 	}
 
-	return 1;
+	return enum_ESCRETURN_continue;
 }
--- a/src/Escape.cpp
+++ b/src/Escape.cpp
@@ -19,17 +19,17 @@
 		if (gKeyTrg & KEY_ESCAPE) // Escape is pressed, quit game
 		{
 			gKeyTrg = 0;
-			return 0;
+			return enum_ESCRETURN_exit;
 		}
 		if (gKeyTrg & KEY_F1) // F1 is pressed, continue
 		{
 			gKeyTrg = 0;
-			return 1;
+			return enum_ESCRETURN_continue;
 		}
 		if (gKeyTrg & KEY_F2) // F2 is pressed, reset
 		{
 			gKeyTrg = 0;
-			return 2;
+			return enum_ESCRETURN_restart;
 		}
 
 		// Draw screen
@@ -41,9 +41,9 @@
 		{
 			// Quit if window is closed
 			gKeyTrg = 0;
-			return 0;
+			return enum_ESCRETURN_exit;
 		}
 	}
 
-	return 0;
+	return enum_ESCRETURN_exit;
 }
--- a/src/Escape.h
+++ b/src/Escape.h
@@ -1,3 +1,10 @@
 #pragma once
 
+enum enum_ESCRETURN
+{
+	enum_ESCRETURN_exit,
+	enum_ESCRETURN_continue,
+	enum_ESCRETURN_restart
+};
+
 int Call_Escape(void);
--- a/src/Game.cpp
+++ b/src/Game.cpp
@@ -155,9 +155,10 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
+				case enum_ESCRETURN_exit:
 					return 0;
-				case 2:
+
+				case enum_ESCRETURN_restart:
 					return 1;
 			}
 		}
@@ -198,9 +199,10 @@
 		// Update Text Script
 		switch (TextScriptProc())
 		{
-			case 0:
+			case enum_ESCRETURN_exit:
 				return 0;
-			case 2:
+
+			case enum_ESCRETURN_restart:
 				return 1;
 		}
 
@@ -365,9 +367,10 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
+				case enum_ESCRETURN_exit:
 					return 0;
-				case 2:
+
+				case enum_ESCRETURN_restart:
 					return 1;
 			}
 		}
@@ -528,9 +531,10 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
+				case enum_ESCRETURN_exit:
 					return 0;
-				case 2:
+
+				case enum_ESCRETURN_restart:
 					return 1;
 			}
 		}
@@ -608,9 +612,10 @@
 
 				switch (CampLoop())
 				{
-					case 0:
+					case enum_ESCRETURN_exit:
 						return 0;
-					case 2:
+
+					case enum_ESCRETURN_restart:
 						return 1;
 				}
 
@@ -622,9 +627,10 @@
 
 				switch (MiniMapLoop())
 				{
-					case 0:
+					case enum_ESCRETURN_exit:
 						return 0;
-					case 2:
+
+					case enum_ESCRETURN_restart:
 						return 1;
 				}
 			}
@@ -642,9 +648,10 @@
 		{
 			switch (TextScriptProc())
 			{
-				case 0:
+				case enum_ESCRETURN_exit:
 					return 0;
-				case 2:
+
+				case enum_ESCRETURN_restart:
 					return 1;
 			}
 		}
--- a/src/MiniMap.cpp
+++ b/src/MiniMap.cpp
@@ -96,10 +96,11 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
-					return 0;
-				case 2:
-					return 2;
+				case enum_ESCRETURN_exit:
+					return enum_ESCRETURN_exit;
+
+				case enum_ESCRETURN_restart:
+					return enum_ESCRETURN_restart;
 			}
 		}
 
@@ -115,7 +116,7 @@
 
 		PutFramePerSecound();
 		if (!Flip_SystemTask())
-			return 0;
+			return enum_ESCRETURN_exit;
 	}
 
 	rcMiniMap.left = 0;
@@ -140,10 +141,11 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
-					return 0;
-				case 2:
-					return 2;
+				case enum_ESCRETURN_exit:
+					return enum_ESCRETURN_exit;
+
+				case enum_ESCRETURN_restart:
+					return enum_ESCRETURN_restart;
 			}
 		}
 
@@ -172,7 +174,7 @@
 
 		PutFramePerSecound();
 		if (!Flip_SystemTask())
-			return 0;
+			return enum_ESCRETURN_exit;
 	}
 
 	for (f = 8; f >= -1; --f)
@@ -183,10 +185,11 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
-					return 0;
-				case 2:
-					return 2;
+				case enum_ESCRETURN_exit:
+					return enum_ESCRETURN_exit;
+
+				case enum_ESCRETURN_restart:
+					return enum_ESCRETURN_restart;
 			}
 		}
 
@@ -202,10 +205,10 @@
 
 		PutFramePerSecound();
 		if (!Flip_SystemTask())
-			return 0;
+			return enum_ESCRETURN_exit;
 	}
 
-	return 1;
+	return enum_ESCRETURN_continue;
 }
 
 BOOL IsMapping(void)
--- a/src/SelStage.cpp
+++ b/src/SelStage.cpp
@@ -174,10 +174,11 @@
 		{
 			switch (Call_Escape())
 			{
-				case 0:
-					return 0;
-				case 2:
-					return 2;
+				case enum_ESCRETURN_exit:
+					return enum_ESCRETURN_exit;
+
+				case enum_ESCRETURN_restart:
+					return enum_ESCRETURN_restart;
 			}
 		}
 
@@ -185,10 +186,11 @@
 
 		switch (TextScriptProc())
 		{
-			case 0:
-				return 0;
-			case 2:
-				return 2;
+			case enum_ESCRETURN_exit:
+				return enum_ESCRETURN_exit;
+
+			case enum_ESCRETURN_restart:
+				return enum_ESCRETURN_restart;
 		}
 
 #ifdef FIX_BUGS
@@ -210,16 +212,16 @@
 			StopTextScript();
 			LoadTextScript_Stage(old_script_path);
 			*p_event = 0;
-			return 1;
+			return enum_ESCRETURN_continue;
 		}
 
 		PutFramePerSecound();
 
 		if (!Flip_SystemTask())
-			return 0;
+			return enum_ESCRETURN_exit;
 	}
 
 	LoadTextScript_Stage(old_script_path);
 	*p_event = gPermitStage[gSelectedStage].event;
-	return 1;
+	return enum_ESCRETURN_continue;
 }
--- a/src/TextScr.cpp
+++ b/src/TextScr.cpp
@@ -12,6 +12,7 @@
 #include "CommonDefines.h"
 #include "Draw.h"
 #include "Ending.h"
+#include "Escape.h"
 #include "Fade.h"
 #include "Flags.h"
 #include "Flash.h"
@@ -724,7 +725,7 @@
 							SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Error", "Failed to load stage", NULL);
 							#endif
 
-							return 0;
+							return enum_ESCRETURN_exit;
 						}
 					}
 					else if (IS_COMMAND('M','O','V'))
@@ -1059,10 +1060,11 @@
 
 						switch (MiniMapLoop())
 						{
-							case 0:
-								return 0;
-							case 2:
-								return 2;
+							case enum_ESCRETURN_exit:
+								return enum_ESCRETURN_exit;
+
+							case enum_ESCRETURN_restart:
+								return enum_ESCRETURN_restart;
 						}
 					}
 					else if (IS_COMMAND('S','L','P'))
@@ -1071,10 +1073,11 @@
 
 						switch (StageSelectLoop(&z))
 						{
-							case 0:
-								return 0;
-							case 2:
-								return 2;
+							case enum_ESCRETURN_exit:
+								return enum_ESCRETURN_exit;
+
+							case enum_ESCRETURN_restart:
+								return enum_ESCRETURN_restart;
 						}
 
 						JumpTextScript(z);
@@ -1256,10 +1259,11 @@
 
 						switch (Scene_DownIsland(z))
 						{
-							case 0:
-								return 0;
-							case 2:
-								return 2;
+							case enum_ESCRETURN_exit:
+								return enum_ESCRETURN_exit;
+
+							case enum_ESCRETURN_restart:
+								return enum_ESCRETURN_restart;
 						}
 
 						gTS.p_read += 8;
@@ -1266,7 +1270,7 @@
 					}
 					else if (IS_COMMAND('E','S','C'))
 					{
-						return 2;
+						return enum_ESCRETURN_restart;
 					}
 					else
 					{
@@ -1279,7 +1283,7 @@
 						SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Error", str_0, NULL);
 						#endif
 
-						return 0;
+						return enum_ESCRETURN_exit;
 					}
 				}
 				else
@@ -1479,7 +1483,7 @@
 	else
 		g_GameFlags |= 4;
 
-	return 1;
+	return enum_ESCRETURN_continue;
 }
 
 void RestoreTextScript(void)