PDA

Просмотр полной версии : [Вопрос] Несколько вопросов



iDiego
21.12.2014, 10:41
В общем, если я выдаю админку в игре, другому игроку, то после перезахода она слетает. А если выдаю через папку scriptfiles, то она сохраняется.
Команда:

CMD:arang(playerid,params[]){
if(p_info[playerid][p_admin] == 7) return true;
if(sscanf(params,"dd",params[0],params[1])) return SendClientMessage(playerid, 0xAFAFAFAA, "Используйте: /arang [id] [уровень]");
if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, 0xAFAFAFAA, "Такого игрока не существует!");
if(params[0] == playerid) return SendClientMessage(playerid, 0xAFAFAFAA, "Введеный вами ID совпадает с вашим ID");
if(params[1] > 7 || params[1] < 0) return SendClientMessage(playerid, 0xAFAFAFAA, "От 0 до 5 уровня!");
static const
fmt_str0[] = "[A][ВНИМАНИЕ] %s назначила(а) на пост администратора %s %d уровня",
fmt_str1[] = "%s назначил(а) Вас администратором %d уровня";
const
size0 = sizeof(fmt_str0)+MAX_PLAYER_NAME*2-6+11,
size1 = sizeof(fmt_str1)+MAX_PLAYER_NAME-4+11;
#if size0 > size1
#define size size0
#else
#define size size1
#endif
new str[size];
#undef size
p_info[params[0]][p_admin] = params[1];
format(str,sizeof(str),fmt_str0,p_info[playerid][p_nick],p_info[params[0]][p_nick],p_info[params[0]][p_admin]);
WriteRusLog("admin_log.txt", str);
SendAdminMessage(0xFF0000AA, str);
format(str,sizeof(str),fmt_str1,p_info[playerid][p_nick],p_info[params[0]][p_admin]);
SendClientMessage(params[0], 0xFFFF00AA, str);
SavePlayer(playerid);
return 1;}
И еще:

SetPVarInt(playerid, "DMZONE", 0);
SpawnPlayer(playerid);
dm -= 1;
dm1 -= 1;
SetPlayerInterior(playerid,0);
}
Можно как-то отделить эти два выхода из ДМа? Проблема в том, что когда я захожу на ДМ 1, то пишет, что на первом ДМе 1 человек, а на втором 0, когда выхожу, то на первом ДМе 0, а на втором -1. Можно как-то это исправить?

L0ndl3m
21.12.2014, 13:17
1.

SavePlayer(playerid);
замените на:

SavePlayer(params[0]);

На счёт второго, я вам отписывался в ЛС. Я отписывался как полностью правильно делать мини-систему ДМ-зон.