Русское сообщество по скриптингу

Улучшить плагин "За 1 место в топе дается админка и т.д"

Все вопросы по работе и настройке AMXX и его плагинов.

Модератор: liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только вопросов по AMX Mod X и его плагинам.

Улучшить плагин "За 1 место в топе дается админка и т.д"

Сообщение xakep1488 » 19 авг 2017, 16:55

Хочу улучшить плагин чтобы флаги прописывались не по нику а по steam id.
Но не знаю как. Чтобы игроки под чужим ником не заходили кто на 1 месте в топе. От подмены steam id стоит защита.
Код: Выделить всё
#include <amxmodx>
#include <csx>

new szVipFlags,szAdminFlags,szImmunity;

public plugin_init() {
 register_plugin("Auto Admin&Vip", "1.0", "Seroff");
 register_event("HLTV", "szRound", "a", "1=0", "2=0");
 szVipFlags=register_cvar("av_vipflags","it");
 szAdminFlags=register_cvar("av_adminflags","cdefiju");
 szImmunity=register_cvar("av_adminimmflags","");
}

public szRound()
{
 for(new id=1;id<33;id++){
  if(is_user_connected(id)){
    set_task(0.1,"admvip",id);
  }
 }
}

public admvip(id){
 if(get_user_flags(id) & read_flags(g_pcvar(szImmunity))) return 0;
 new stats[8],bodyhits[8],irank
 irank 
= get_user_stats(id,stats,bodyhits);
 switch(irank){
   case 1:{
     if(get_user_flags(id) & read_flags(g_pcvar(szAdminFlags))) return 0;
     set_user_flags(id,read_flags(g_pcvar(szAdminFlags)));
     ChatColor(id,"^3Вы ^1получили ^4админку ^1за ^4первое место ^1в ^4топе^1!");
     ChatColor(0,"^1Игрок ^3%s ^1получил ^4админку ^1за ^4первое место ^1в ^4топе^1!`",g_name_user(id));
   }
   case 2:{
     if(get_user_flags(id) & read_flags(g_pcvar(szVipFlags))) return 0;
     set_user_flags(id,read_flags(g_pcvar(szVipFlags)));
     ChatColor(id,"^3Вы ^1получили ^4випку ^1за ^4второе место ^1в ^4топе^1!");
     ChatColor(0,"^1Игрок ^3%s ^1получил ^4випку ^1за ^4второе место ^1в ^4топе^1!",g_name_user(id));
   }
   case 3:{
     if(get_user_flags(id) & read_flags("z")) return 0;
     set_user_flags(id,read_flags("z"));
     ChatColor(id,"^1У ^3вас ^1нету ^4не админки, не випки ^1за ^4трете место ^1в ^4топе^1!");
   }
 }
 return 0;
}

stock g_pcvar(pcvar){
 new szString[64];
 get_pcvar_string(pcvar,szString,sizeof(szString)-1);
 return szString;
}

stock g_name_user(id){
 new name[32]
 get_user_name(id,name,sizeof(name)-1);
 return name;
}

stock ChatColor(const id, const input[], any:...) {
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)
    replace_all(msg, 190, "!g", "^4") // Green Color
    replace_all(msg, 190, "!y", "^1") // Default Color
    replace_all(msg, 190, "!team", "^3") // Team Color
    if (id) players[0] = id; else get_players(players, count, "ch"); {
        for (new i = 0; i < count; i++) {
            if (is_user_connected(players[i])) {
                message_begin(MSG_ONE, get_user_msgid("SayText"), _, players[i])
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
        }
    }
}
Аватара пользователя
xakep1488
 
Сообщения: 1
Зарегистрирован: 25 сен 2016, 11:10
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Опыт программирования: Меньше месяца
Языки программирования: amxx

Re: Улучшить плагин "За 1 место в топе дается админка и т.д"

Сообщение oReo » 23 сен 2017, 15:58

xakep1488, админы прописываются в users.ini? Если да, то щас приеду, скину код
деструктор решает все проблемы: нет переменной - нет проблемы (с) Subb98
Аватара пользователя
oReo
 
Сообщения: 165
Зарегистрирован: 24 май 2017, 05:59
Благодарил (а): 10 раз.
Поблагодарили: 5 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Pawn

Re: Улучшить плагин "За 1 место в топе дается админка и т.д"

Сообщение Subb98 » 23 сен 2017, 17:08

oReo, первый пост:

19 августа

23 сентября:

Если да, то щас приеду, скину код

Ну ладно, хоть год один и тот же. :crazy:
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5485
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1329 раз.
Поблагодарили: 2343 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP


Вернуться в Вопросы по AMXX и его плагинам

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9