Зачастую во многих плагинах для сохранения данных между сменой карты используют файлы или localstring как временное хранилище. Данный модуль позволяет сохранить данные по окончанию карты, а потом их получить уже на следующей не используя файлы. За основу был взят модуль от rsKliPPy
Стоит отметить что каждую карту перед вызовом PDS_Save форвада идет очистка всех данных.
Пример плагина
У вас нет разрешения на просмотр ссылки. Вход или Регистрация
Пример плагина
C++:
#include <amxmodx>
#include <PersistentDataStorage>
public plugin_init() {
register_plugin("Custom Data", "0.1", "Test")
new bool:res;
new num;
res = PDS_GetCell("testcell", num);
log_amx("GET CELL %s %d", res ? "true" : "false", num);
new data[2];
res = PDS_GetArray("testarray", data, sizeof data);
log_amx("GET ARRAY %s %d %d", res ? "true" : "false", data[0], data[1]);
new buffer[32];
res = PDS_GetString("teststring", buffer, charsmax(buffer));
log_amx("GET STRING %s '%s'", res ? "true" : "false", buffer);
}
public PDS_Save() {
PDS_SetCell("testcell", 1);
new data[2];
data[0] = 2;
data[1] = 3;
PDS_SetArray("testarray", data, sizeof data);
PDS_SetString("teststring", "test");
}