В теме 15 сообщений

RASTAMAN
Великий Гуру

дать админку. 

Автор команды: TheSeLToN.

Спойлер

#define COLOR_GREEN 0x9EC73DAA

 

Спойлер

CMD:makeadmin(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] < 5) return true;
        if(sscanf(params, "ui", params[0], params[1])) return
                SCM(playerid, -1, "{FFFF00}[!]{DEDEDE} Используйте: /makeadmin [playerid] [уровень]");
        if(!IsPlayerConnected(params[0])) return
                SCM(playerid, -1, "{FF6347}[X]{DEDEDE} Игрока нет в сети.");
        if(params[1] < 1 || params[1] > 5) return
                SCM(playerid, -1, "{FF6347}[X]{DEDEDE} Уровень должен быть не менее 1 и не более 5!");
        PlayerInfo[params[0]][pAdmin] = params[1];
        static const fmt_str[] = "Вы были назначены администратором %d уровня. Назначил: %s.";
        new string[sizeof(fmt_str)-2+2-2+MAX_PLAYER_NAME];
        format(string, sizeof(string), fmt_str, params[1], PlayerInfo[playerid][pName]);
        SCM(params[0], COLOR_GREEN, string);
        static const fmt_str_2[] = "Вы назначили игрока %s, администратором %d уровня.";
        new string_2[sizeof(fmt_str_2)-2+MAX_PLAYER_NAME-2+2];
        format(string_2, sizeof(string_2), fmt_str_2, PlayerInfo[params[0]][pName], params[1]);
        SCM(playerid, COLOR_GREEN, string_2);
        return true;
}

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
LilPokemon
Гуру форума
46 минут назад, Tera HammerYT сказал:

Кто даст чтобы не ID надо было а НИК?

 

Для оффлайн выдачи ? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
HAZZY
Свой человек
if(PlayerInfo[params[0]][pAdmin] >= 5)
		return SCM(playerid, -1, "{FF6347}[X]{DEDEDE} Нельзя повышать/понижать Гл.Админа!");

Было бы неплохо добавить такую проверку. А также разнообразить выдачу, типа если админ уже администратор и выдаешь ему ранг выше ,то выводить сообщение "вас повысили в ранге" и шото такое.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Tera HammerYT тут нужно уже будет действия с базой данных производить. Без указания версии mySQL и структуры базы данных не обойтись. Проще будет, если вы назовете основу вашего мода. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Gamer Boom
Новичок

C:\Users\qq226\OneDrive\Ðàáî÷èé ñòîë\server\gamemodes\bare.pwn(788) : warning 203: symbol is never used: "makeadmin"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Новичок

@Gamer Boom возможно есть такая же команда, попробуйте изменить

 

Заметка от DEST , создано

Вы уже не модератор, поэтому не выполняйте его функции.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Карлос Сименсон
Новичок

C:\Users\Ðîñòèê\Desktop\Ñåðâåð Arzamas RP\gamemodes\JRP.pwn(24870) : error 017: undefined symbol "PlayerInfo"
C:\Users\Ðîñòèê\Desktop\Ñåðâåð Arzamas RP\gamemodes\JRP.pwn(24870) : warning 215: expression has no effect
C:\Users\Ðîñòèê\Desktop\Ñåðâåð Arzamas RP\gamemodes\JRP.pwn(24870) : error 001: expected token: ";", but found "]"
C:\Users\Ðîñòèê\Desktop\Ñåðâåð Arzamas RP\gamemodes\JRP.pwn(24870) : error 029: invalid expression, assumed zero
C:\Users\Ðîñòèê\Desktop\Ñåðâåð Arzamas RP\gamemodes\JRP.pwn(24870) : fatal error 107: too many error messages on one line

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Вован123
Новичок

Куда вводить эти команды???Я просто пока что не особо разбираюсь)

 

@Shakoladka Не помогло

Заметка от Shakoladka , создано

Объединил сообщения

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
m1n1vv
Свой человек
Спойлер

CMD:makeadmin(playerid, params[])
{
	if (PlayerInfo[playerid][pAdmin] < 5)
		return SendClientMessage(playerid, 0xFFFF00FF, !"Команда доступна с 5 уровня администратора");
	extract params -> new id, lvl; else
		return SendClientMessage(playerid, 0xFFFF00FF, !"[!]{DEDEDE} Используйте: /makeadmin [playerid] [уровень]");
	if (!IsPlayerConnected(id))
		return SendClientMessage(playerid, 0xFF6347FF, !"[X]{DEDEDE} Игрока нет в сети.");
	if (!(1 <= lvl <= 5))
		return SendClientMessage(playerid, 0xFF6347FF, !"[X]{DEDEDE} Уровень должен быть не менее 1 и не более 5!");

	PlayerInfo[id][pAdmin] = lvl;

	static const 
		fmt_str[] = "Вы были назначены администратором %d уровня. Назначил: %s.",
		fmt_str_2[] = "Вы назначили игрока %s, администратором %d уровня.";
	static
		string[sizeof fmt_str + MAX_PLAYER_NAME + 2 - 2*2];

	format(string, sizeof string, fmt_str, lvl, PlayerInfo[playerid][pName]);
	SendClientMessage(id, 0x9EC73DAA, string);
	format(string, sizeof string, fmt_str_2, PlayerInfo[id][pName], lvl);
	SendClientMessage(playerid, 0x9EC73DAA, string);

	return 1;
}

 

 

Отредактировано пользователем m1n1vv

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость SN1KE
Новичок
В 04.01.2018 в 18:56, Гость сказал:

Кто даст чтобы не ID надо было а НИК?

 

Спойлер

CMD:setadmin(playerid, params[])
{
    if(GetString(GetName(playerid), NAME_DEVELOPER_ONE))
    {
        if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
        new playername[24], admin_level;
        if(sscanf(params, "s[24]i", playername, admin_level)) return SendClientMessage(playerid, COLOR_WHITE, "{FD3D28}[Ошибка] {FCFDFD}Введите: /setadmin [ник игрока] [уровень админа]");
        new string[128];
        format(string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s'", playername);
        mysql_tquery(dbHandle, string, "SetAdmin", "isi", playerid, playername, admin_level);
    }
    return true;
}

 

 

Отредактировано пользователем DEST

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#User6020
Новичок

Как занести это в базу данных?

CMD:makeadmin(playerid, params[])
{
    	if(player_info[playerid][ADMIN] < 5) return true;
        if(sscanf(params, "ui", params[0], params[1])) return
                SCM(playerid, -1, "{FFFF00}[!]{DEDEDE} ???????????: /makeadmin [playerid] [???????]");
        if(!IsPlayerConnected(params[0])) return
                SCM(playerid, -1, "{FF6347}[X]{DEDEDE} ?????? ??? ? ????.");
        if(params[1] < 1 || params[1] > 5) return
                SCM(playerid, -1, "{FF6347}[X]{DEDEDE} ??????? ?????? ???? ?? ????? 1 ? ?? ????? 5!");
        player_info[params[0]][ADMIN] = params[1];
        static const fmt_str[] = "?? ???? ????????? ??????????????? %d ??????. ????????: %s.";
        new string[sizeof(fmt_str)-2+2-2+MAX_PLAYER_NAME];
        format(string, sizeof(string), fmt_str, params[1], player_info[playerid][NAME]);
        SCM(params[0], COLOR_WHITE, string);
        static const fmt_str_2[] = "?? ????????? ?????? %s, ??????????????? %d ??????.";
        new string_2[sizeof(fmt_str_2)-2+MAX_PLAYER_NAME-2+2];
        format(string_2, sizeof(string_2), fmt_str_2, player_info[params[0]][NAME], params[1]);
        SCM(playerid, COLOR_WHITE, string_2);
        return true;
}

вот код такой как у меня нет ошибок 

 

enum player
{
	ID,
	NAME[MAX_PLAYER_NAME],
	PASSWORD[65],
	SALT[11],
	EMAIL[65],
	REF,
	REFMONEY,
	SEX,
	RACE,
	AGE,
	SKIN,
	REGDATA[13],
	REGIP[16],
	ADMIN,
	MONEY,
	LVL,
	EXP,
	MINS,
	PIN[2],
	LASTIP[16],
	tempPINCHECK[4],
	tempENTEREDPIN[4],
	GOOGLEAUTH[17],
	GOOGLEAUTHSETTING,
	tempQUESTION[98],
	LOWWORKSKILL[2],
}

Так выглядит мой enum

 

Мне надо в базе изменить ADMIN 0-8 (у меня 8 лвл адм) так чтобы сохранилось. помогите пожалуйста

База хот пхп май админ через open server

Сделал всё по видео урокам (Мод с нуля SAMP #1 | Первоначальная настройка и MySQL [PAWN/PAWNO] - Мод с нуля SAMP #41 | Оптимизация, фикс багов, доработки [PAWN/PAWNO]

Если вы мне поможете буду благодарен

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 03.08.2017 в 23:10, RASTAMAN сказал:

CMD:makeadmin(playerid, params[]) { if(PlayerInfo[playerid][pAdmin] < 5) return true; if(sscanf(params, "ui", params[0], params[1])) return SCM(playerid, -1, "{FFFF00}[!]{DEDEDE} Используйте: /makeadmin [playerid] [уровень]"); if(!IsPlayerConnected(params[0])) return SCM(playerid, -1, "{FF6347}[X]{DEDEDE} Игрока нет в сети."); if(params[1] < 1 || params[1] > 5) return SCM(playerid, -1, "{FF6347}[X]{DEDEDE} Уровень должен быть не менее 1 и не более 5!"); PlayerInfo[params[0]][pAdmin] = params[1]; static const fmt_str[] = "Вы были назначены администратором %d уровня. Назначил: %s."; new string[sizeof(fmt_str)-2+2-2+MAX_PLAYER_NAME]; format(string, sizeof(string), fmt_str, params[1], PlayerInfo[playerid][pName]); SCM(params[0], COLOR_GREEN, string); static const fmt_str_2[] = "Вы назначили игрока %s, администратором %d уровня."; new string_2[sizeof(fmt_str_2)-2+MAX_PLAYER_NAME-2+2]; format(string_2, sizeof(string_2), fmt_str_2, PlayerInfo[params[0]][pName], params[1]); SCM(playerid, COLOR_GREEN, string_2);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Андрей Лазарев
      От Андрей Лазарев
      ROSTOV-HOST.RU - Современный Хостинг Игровых Серверов по невероятно низким ценам и удобной панелью управления 

      — Защита от DDoS-атак 
      — Бесплатная техническая поддержка 
      — Доступ в панель управления и личный кабинет 
      — Переустановка игрового сервера в любое время суток 
      — Редактирование конфигурационных файлов игрового сервера 
      — FTP доступ к файлам игрового сервера 
      — Мониторинг процессов 
      — Изменение количества слотов игрового сервера 
      — Система управления счетами и оплаты услуг 
      — Локальная MySQL база данных 
      — Автоустановка модов
      — Смена (версии / игры) сразу в панели управления


      Цены: с помесячной оплатой
      — GTA: SAMP              - 1слот / 0.40копп.
      — GTA: CRMP              - 1слот / 0.40копп.
      — GTA: MTA                 - 1слот / 0.80копп.
      — GTA: United MP       - 1слот / 0.80копп.
      — MineCraft: PE           - 1слот / 3.00копп.
      — MineCraft                  - 1слот / 5.00копп.
      — Counter Strike 1.6    - 1слот / 4.00копп.
       
      Цены: плати один раз пользуйся до скончания веков
      — 1 200 руб / SA:MP 0.3е/ CR:MP 0.3е/ МТА /    500 слотов
      — 1 800 руб / SA:MP 0.3.7/ CR:MP 0.3.7/ МТА /    1000 слотов
       

      Сайт: https://rostov-host.ru
      Группа в VK: https://vk.com/rostov_host
       
       
    • 9at0z
      От 9at0z
      Flatgame.ru - Хостинг игровых серверов. Gta SAMP: 0.50коп/слот Gta СRMP: 0.50коп/слот MTA: 0.50коп/слот Minecraft: 5руб/слот Counter Stire 1.6: 7руб/слот Все сервера с автоусновкой модов, которые есть доступны. Обширная панель управления сервером. Тестовый периуд 3 дня. И очень много чего интересного!

    • FanVan
      От FanVan

       
      Дешевый хостинг серверов SAMP, CRMP, Minecraft: Java & Bedrock Edition
       
      Помогаем запуститься начинающим проектам без больших вложений.
      Сделаем так, чтобы твои затраты на хостинг уменьшились без потери качества.
       
      Размещаем серверы в Хельсинках, Финляндия на процессоре частотой до 4.8 ГГц и NVMe диске.
      У нас нет красивого сайта, покупка услуг производится через бота в ЛС группы, а управление сервером -- посредством панели Pterodactyl.
      Мы не ограничиваем тебя слотами: все тарифы -- это маленькие компьютеры, ты волен сам устанавливать максимальное количество игроков, без повышения стоимости.
       
      К нам обращаются, когда хостинг начинает съедать большую часть бюджета из-за того, что хостер захотел выпендриться и добавил бесполезный функционал. Но лучше обратиться еще в начале, чтобы уменьшить затраты на хостинг и вложить как можно больше в рекламу.
       
      Никто не идеален, ничто не идеально: мы не можем помочь
      если у тебя высоконагруженный проект если тебе требуется защита от DDOS если тебе нужен пинг -1 если тебе важна автоустановка модов  
      Но ты можешь написать нам в тех. поддержку и, возможно, мы подберем более мощный тариф на отдельном сервере персонально для тебя по цене ниже, чем у других.
       
      Мы стремимся сделать создание сервера доступным каждому. Если остались вопросы или хочешь протестировать оборудование, напиши нам в ЛС группы.