mirror of
https://github.com/1dot13/source.git
synced 2026-08-19 14:20:30 +02:00
New option NWSS enables New Weapon Sound System.
Increased SOUND_MAX_CHANNELS to 128 for NWSS to work correctly. New tag in AmmoStrings.xml: <NWSSCaliber> New tags in Weapons.xml: <ubNWSSCase>, <ubNWSSLast>, <szNWSSSound> Fixed some warnings. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8780 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -45,7 +45,8 @@ ammoStartElementHandle(void *userData, const XML_Char *name, const XML_Char **at
|
||||
}
|
||||
else if(pData->curElement == ELEMENT &&
|
||||
(strcmp(name, "AmmoCaliber") == 0 ||
|
||||
strcmp(name, "BRCaliber") == 0 ))
|
||||
strcmp(name, "BRCaliber") == 0 ||
|
||||
strcmp(name, "NWSSCaliber") == 0))
|
||||
{
|
||||
pData->curElement = ELEMENT_PROPERTY;
|
||||
|
||||
@@ -71,13 +72,11 @@ ammoCharacterDataHandle(void *userData, const XML_Char *str, int len)
|
||||
}
|
||||
}
|
||||
|
||||
extern char NWSSCaliber[MAXITEMS][255];
|
||||
|
||||
static void XMLCALL
|
||||
ammoEndElementHandle(void *userData, const XML_Char *name)
|
||||
{
|
||||
#if 0
|
||||
char temp;
|
||||
#endif
|
||||
ammoParseData * pData = (ammoParseData *)userData;
|
||||
|
||||
if(pData->currentDepth <= pData->maxReadDepth) //we're at the end of an element that we've been reading
|
||||
@@ -96,16 +95,8 @@ ammoEndElementHandle(void *userData, const XML_Char *name)
|
||||
pData->curElement = ELEMENT;
|
||||
if(pData->curIndex < pData->maxArraySize)
|
||||
{
|
||||
#if 0
|
||||
for(int i=0;i<min((int)strlen(pData->szCharData),MAX_CHAR_DATA_LENGTH);i++)
|
||||
{
|
||||
temp = pData->szCharData[i];
|
||||
AmmoCaliber[pData->curIndex][i] = temp;
|
||||
}
|
||||
#else
|
||||
MultiByteToWideChar( CP_UTF8, 0, pData->szCharData, -1, AmmoCaliber[pData->curIndex], sizeof(AmmoCaliber[0])/sizeof(AmmoCaliber[0][0]) );
|
||||
AmmoCaliber[pData->curIndex][sizeof(AmmoCaliber[0])/sizeof(AmmoCaliber[0][0]) - 1] = '\0';
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
@@ -114,20 +105,27 @@ ammoEndElementHandle(void *userData, const XML_Char *name)
|
||||
pData->curElement = ELEMENT;
|
||||
if(pData->curIndex < pData->maxArraySize)
|
||||
{
|
||||
#if 0
|
||||
for(int i=0;i<min((int)strlen(pData->szCharData),MAX_CHAR_DATA_LENGTH);i++)
|
||||
{
|
||||
temp = pData->szCharData[i];
|
||||
BobbyRayAmmoCaliber[pData->curIndex][i] = temp;
|
||||
}
|
||||
#else
|
||||
MultiByteToWideChar( CP_UTF8, 0, pData->szCharData, -1, BobbyRayAmmoCaliber[pData->curIndex], sizeof(BobbyRayAmmoCaliber[0])/sizeof(BobbyRayAmmoCaliber[0][0]) );
|
||||
BobbyRayAmmoCaliber[pData->curIndex][sizeof(BobbyRayAmmoCaliber[0])/sizeof(BobbyRayAmmoCaliber[0][0]) - 1] = '\0';
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
else if (strcmp(name, "NWSSCaliber") == 0)
|
||||
{
|
||||
pData->curElement = ELEMENT_LIST;
|
||||
if (pData->curIndex < pData->maxArraySize)
|
||||
{
|
||||
if (strlen(pData->szCharData) < 255)
|
||||
{
|
||||
strcpy(NWSSCaliber[pData->curIndex], pData->szCharData);
|
||||
}
|
||||
else
|
||||
{
|
||||
strncpy(NWSSCaliber[pData->curIndex], pData->szCharData, 254);
|
||||
NWSSCaliber[pData->curIndex][254] = '\0';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pData->maxReadDepth--;
|
||||
}
|
||||
@@ -135,9 +133,6 @@ ammoEndElementHandle(void *userData, const XML_Char *name)
|
||||
pData->currentDepth--;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
BOOLEAN ReadInAmmoStats(STR fileName)
|
||||
{
|
||||
HWFILE hFile;
|
||||
|
||||
Reference in New Issue
Block a user