PHP Code:
Handle a_Maps = INVALID_HANDLE;
Handle f_MapList = INVALID_HANDLE;
char mapList[PLATFORM_MAX_PATH];
bool g_bIsValidMap = false;
public OnPluginStart()
{
BuildPath(Path_SM, mapList, sizeof(mapList), "configs/maplist.cfg");
LoadMapList();
}
public OnMapStart()
{
g_bIsValidMap = false;
char mapname[64];
GetCurrentMap(mapname, sizeof(mapname));
if (FindStringInArray(a_Maps, mapname) != -1)
g_bIsValidMap = true;
}
public Action LoadMapList()
{
if (FileExists(mapList, false)) {
f_MapList = OpenFile(mapList, "rt");
}
else {
f_MapList = OpenFile(mapList, "at+");
}
if (f_MapList == INVALID_HANDLE)
LogMessage("Error - unable to load or create file: %s", mapList);
a_Maps = CreateArray(256);
char sReadBuffer[256];
int len;
while (!IsEndOfFile(f_MapList) && ReadFileLine(f_MapList, sReadBuffer, sizeof(sReadBuffer))) {
if(sReadBuffer[0] == '/' || IsCharSpace(sReadBuffer[0]))
continue;
ReplaceString(sReadBuffer, sizeof(sReadBuffer), "\n", "");
ReplaceString(sReadBuffer, sizeof(sReadBuffer), "\r", "");
ReplaceString(sReadBuffer, sizeof(sReadBuffer), "\t", "");
ReplaceString(sReadBuffer, sizeof(sReadBuffer), " ", "");
len = strlen(sReadBuffer);
for(new i; i < len; i++) {
if(sReadBuffer[i] == ' ' || sReadBuffer[i] == '/')
{
sReadBuffer[i] = '\0';
break;
}
}
PushArrayString(a_Maps, sReadBuffer);
}
CloseHandle(f_MapList);
}
public Action SomeYourFunction()
{
if(g_bIsValidMap) {
//do your stuff here
}
}
__________________