Attached Files | getmapchecksum.diff [^] (2,211 bytes) 2023-01-07 02:34 [Show Content] [Hide Content]# HG changeset patch
# User TDRR <srb2gamer@gmail.com>
# Date 1673058475 14400
# Fri Jan 06 22:27:55 2023 -0400
# Node ID c6a51c1066a769fe88712d076d542cd242a584f7
# Parent d71e6eb5bec483faef87665903dd65e9283482be
Added GetMapChecksum ACS function.
diff -r d71e6eb5bec4 -r c6a51c1066a7 src/p_acs.cpp
--- a/src/p_acs.cpp Fri Dec 16 10:46:24 2022 -0500
+++ b/src/p_acs.cpp Fri Jan 06 22:27:55 2023 -0400
@@ -5325,7 +5325,7 @@
ACSF_GetGamemodeState,
ACSF_SetDBEntry,
ACSF_GetDBEntry,
- ACSF_SetDBEntryString,
+ ACSF_SetDBEntryString, // 110
ACSF_GetDBEntryString,
ACSF_IncrementDBEntry,
ACSF_PlayerIsLoggedIn,
@@ -5335,7 +5335,7 @@
ACSF_FreeDBResults,
ACSF_GetDBResultKeyString,
ACSF_GetDBResultValueString,
- ACSF_GetDBResultValue,
+ ACSF_GetDBResultValue, // 120
ACSF_GetDBEntryRank,
ACSF_RequestScriptPuke,
ACSF_BeginDBTransaction,
@@ -5345,7 +5345,7 @@
ACSF_SystemTime,
ACSF_GetTimeProperty,
ACSF_Strftime,
- ACSF_SetDeadSpectator,
+ ACSF_SetDeadSpectator, // 130
ACSF_SetActivatorToPlayer,
ACSF_SetCurrentGamemode,
ACSF_GetCurrentGamemode,
@@ -5355,7 +5355,7 @@
ACSF_GetPlayerChasecam,
ACSF_SetPlayerScore,
ACSF_GetPlayerScore,
- ACSF_InDemoMode,
+ ACSF_InDemoMode, // 140
ACSF_SetActionScript,
ACSF_SetPredictableValue,
ACSF_GetPredictableValue,
@@ -5365,12 +5365,13 @@
ACSF_NamedSendNetworkString,
ACSF_GetChatMessage,
ACSF_GetMapRotationSize,
- ACSF_GetMapRotationInfo,
+ ACSF_GetMapRotationInfo,// 150
ACSF_GetCurrentMapPosition,
ACSF_GetEventResult,
ACSF_GetActorSectorLocation,
ACSF_ChangeTeamScore,
ACSF_SetGameplaySetting,
+ ACSF_GetMapChecksum,
// ZDaemon
ACSF_GetTeamScore = 19620, // (int team)
@@ -7884,6 +7885,24 @@
}
break;
}
+
+ case ACSF_GetMapChecksum:
+ {
+ MapData *pMap = P_OpenMapData(level.mapname, false);
+ if(!pMap)
+ return GlobalACSStrings.AddString("");
+
+ BYTE checksumRaw[16];
+ pMap->GetChecksum(checksumRaw);
+
+ char checksumStr[33];
+ checksumStr[32] = '\0';
+
+ for(size_t i = 0; i < sizeof(checksumRaw); i++)
+ sprintf(&checksumStr[i*2], "%02X", checksumRaw[i]);
+
+ return GlobalACSStrings.AddString(checksumStr);
+ }
default:
break;
|