PDA

Просмотр полной версии : [Вопрос] ДМ зоны



iDiego
21.12.2014, 00:54
В общем, у меня в диалоге (/dm - переходы на дм) есть справа кол-во человек на зонах. Дело в том, что когда мы начали тестить, то итог был такой: что мы на зоне мы были в двоем, и у нас у обоих в количестве человек в зоне, пишет: 1 чел., т.е. пишет только самого себя.
Может посоветуете, куда что добавить?
Команда /dm:

CMD:dm(playerid, params[])
{
new string[100];
if(p_info[playerid][p_jail] > 0) return SendClientMessage(playerid, 0xAFAFAFAA, "Вы в jail'e ! Для просмотра времени до снятия затычки используйте: {CCCC00}/time");
format(string,100,"{ffffff}ДМ 1{ff6600} [%d чел.]\n{ffffff}ДМ 2{ff6600} [%d чел.]",GetPVarInt(playerid, "DMZONE") == 1,GetPVarInt(playerid, "DMZONE") == 2);
ShowPlayerDialog(playerid, 155, DIALOG_STYLE_LIST,"{ff6600}Выбор Death Match зоны",string,"Далее","Отмена");
return true;
}

Функция спавна:

if(GetPVarInt(playerid, "DMZONE") == 1)
{
new DM1 = random(sizeof(DMONESPAWN));
SetPlayerPos(playerid, DMONESPAWN[DM1][0], DMONESPAWN[DM1][1], DMONESPAWN[DM1][2]);
SetPlayerInterior(playerid,17);
GivePlayerWeapon(playerid,31,300);
GivePlayerWeapon(playerid,25,300);
GivePlayerWeapon(playerid,24,200);
SetPlayerFacingAngle(playerid,DMONESPAWN[DM1][3]);
} одна, для примера.

L0ndl3m
21.12.2014, 00:56
Создайте глобальную переменную. При входе на ДМ-Зону увеличивайте её значение на единицу. При выходе игрока - вычитайте.

iDiego
21.12.2014, 01:31
Создайте глобальную переменную. При входе на ДМ-Зону увеличивайте её значение на единицу. При выходе игрока - вычитайте.
Спасибо, разобрался. Все в порядке.
Еще один вопросик, что ты там говорил про OnPlayerDisconnect? Туда что объявить надо? dm -= 1;?

L0ndl3m
21.12.2014, 01:35
Да.

iDiego
21.12.2014, 01:36
Да.

Да, все отлично работает, спасибо. :)