Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

SpawnPlayerMenu(JBE)

, Помощь [РЕШЕНО]
Статус пользователя hitmanEN
сообщение 3.4.2016, 18:29
Сообщение #1


Стаж: 10 лет
Город: Санкт-Петербург


Сообщений: 401
Благодарностей: 92
Полезность: 187

Доброго времени суток! Прошу помощи)

Нужно сделать так чтобы можно было использовать это без ограничений, пытался сделать не получилось.
Буду благодарен кто поможет!

Код:
Cmd_SpawnPlayer(id) return Show_SpawnPlayerMenu(id, g_iMenuPosition[id] = 0);
Show_SpawnPlayerMenu(id, iPos)
{
if(iPos < 0) return PLUGIN_HANDLED;
jbe_informer_offset_up(id);
new iPlayersNum;
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(IsNotSetBit(g_iBitUserConnected, i) || IsSetBit(g_iBitUserAdmin, i)) continue;
g_iMenuPlayers[id][iPlayersNum++] = i;
}
new iStart = iPos * PLAYERS_PER_PAGE;
if(iStart > iPlayersNum) iStart = iPlayersNum;
iStart = iStart - (iStart % 8);
g_iMenuPosition[id] = iStart / PLAYERS_PER_PAGE;
new iEnd = iStart + PLAYERS_PER_PAGE;
if(iEnd > iPlayersNum) iEnd = iPlayersNum;
new szMenu[512], iLen, iPagesNum = (iPlayersNum / PLAYERS_PER_PAGE + ((iPlayersNum % PLAYERS_PER_PAGE) ? 1 : 0));
switch(iPagesNum)
{
case 0:
{
UTIL_SayText(id, "!g[JBE] %L", id, "JBE_CHAT_ID_PLAYERS_NOT_VALID");
switch(g_iUserTeam[id])
{
case 1, 2: return Show_SuperAdminMenu(id);
default: return PLUGIN_HANDLED;
}
}
default: iLen = formatex(szMenu, charsmax(szMenu), "\y%L \w[%d|%d]^n^n", id, "JBE_MENU_SPAWN_PLAYER_TITLE", iPos + 1, iPagesNum);
}
new szName[32], i, iKeys = (1<<9), b;
for(new a = iStart; a < iEnd; a++)
{
i = g_iMenuPlayers[id][a];
get_user_name(i, szName, charsmax(szName));
iKeys |= (1<<b);
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[\y%d\r] \w%s^n", ++b, szName);
}
for(new i = b; i < PLAYERS_PER_PAGE; i++) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n");
if(iEnd < iPlayersNum)
{
iKeys |= (1<<8);
formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n\r[\y9\r] \w%L^n\r[\y0\r] \w%L", id, "JBE_MENU_NEXT", id, iPos ? "JBE_MENU_BACK" : "JBE_MENU_EXIT");
}
else formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n^n\r[\y0\r] \w%L", id, iPos ? "JBE_MENU_BACK" : "JBE_MENU_EXIT");
return show_menu(id, iKeys, szMenu, -1, "Show_SpawnPlayerMenu");
}

public Handle_SpawnPlayerMenu(id, iKey)
{
switch(iKey)
{
case 8: return Show_SpawnPlayerMenu(id, ++g_iMenuPosition[id]);
case 9: return Show_SpawnPlayerMenu(id, --g_iMenuPosition[id]);
default:
{
new iTarget = g_iMenuPlayers[id][g_iMenuPosition[id] * PLAYERS_PER_PAGE + iKey];
if(IsNotSetBit(g_iBitUserAlive, iTarget))
{
ExecuteHamB(Ham_Spawn, iTarget);
}
}
}
return Show_SpawnPlayerMenu(id, g_iMenuPosition[id]);
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Inline
сообщение 4.4.2016, 15:34
Сообщение #2


Стаж: 10 лет

Сообщений: 139
Благодарностей: 80
Полезность: 447

Если ты про ограничение связанное с админами то убери на 9-ой строке
Код:
|| IsSetBit(g_iBitUserAdmin, i)


Не читай
Не забывай нажимать кнопку "спасибо"
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: