for eqgame 11 jul 2003
Code: Select all
Zoneinfo=006B144CModerator: MacroQuest Developers
Code: Select all
Zoneinfo=006B144C
donations for this month's patches.
Code: Select all
PCHAR ParseMacroParameter(PSPAWNINFO pChar, PCHAR szOriginal)
{
CHAR szOutput[MAX_STRING] = {0};
CHAR szVar[MAX_STRING] = {0};
DWORD i,j = 0;
PCHARINFO pCharInfo = NULL;
[b]PZONEINFO pZone = (PZONEINFO)0x006B144C;//11jul2003[/b]Code: Select all
j+=strlen(GetFullZone(pCharInfo->ZoneBoundId));
[b]// $zone(zem)
} else if (!strncmp("zone(zem)",szVar,9)) {
i+=8;
float BASE_ZEM = 75.0;
float zem = 0;
float bonus = 0;
CHAR szTemp[MAX_STRING] = {0};
zem = pZone->ZoneExpModifier * 100;
bonus = zem - BASE_ZEM;
sprintf(szTemp, "Zone experience modifier: %.1f%% (%.1f%% %s)", zem, (bonus<0) ? 0-bonus : bonus, (bonus<0) ? "penalty" : "bonus" );
strcat(szOutput,szTemp);
DebugSpew("zem- %s",szTemp);
j+=strlen(szTemp);
[/b]// $zone(Unknown)
donations for this month's patches.Code: Select all
FLOAT GetZoneZem (BOOL bSBonus);
Code: Select all
// ***************************************************************************
// Function: GetZoneZem
// Description: Returns the raw ZEM for the current zone.
// ***************************************************************************
FLOAT GetZoneZem(BOOL bSBonus)
{
FLOAT BASE_ZEM = 75.0;
FLOAT ZEM = 0;
FLOAT BONUS = 0;
PZONEINFO ZoneInfo = NULL;
if (!EQADDR_ZONEINFO) return NULL;
ZoneInfo = (PZONEINFO) EQADDR_ZONEINFO;
ZEM = ZoneInfo->ZoneExpModifier *100;
BONUS = ZEM - BASE_ZEM;
if (bSBonus) {
return (FLOAT)BONUS;
} else {
return (FLOAT)ZEM;
}
}
Code: Select all
// $zone(zem)
} else if (!strncmp("zone(zem)",szVar,9)) {
i+=8;
CHAR szTemp[MAX_STRING] = {0};
sprintf(szTemp, "%.1f%", GetZoneZem(false));
strcat(szOutput,szTemp);
j+=strlen(szTemp);
// $zone(bonuz)
} else if (!strncmp("zone(bonus)",szVar,11)) {
i+=10;
CHAR szTemp[MAX_STRING] = {0};
sprintf(szTemp, "%.1f%", GetZoneZem(true));
strcat(szOutput,szTemp);
j+=strlen(szTemp);

