[TЪРСЯ]АРМУ-РАНКС

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
NORTHSIDE
Извън линия
Потребител
Потребител
Мнения: 43
Регистриран на: 10 Яну 2017, 22:28
Местоположение: /rs
Обратна връзка:

[TЪРСЯ]АРМУ-РАНКС

Мнение от NORTHSIDE » 25 Яну 2017, 20:05

Здравейте Търся обработен плъгин както в на WalkZ сервера ARMY_RANKS Да ми го пише отдоло А не отгоре или може да се настрои от някаде Искам да ми е като неговото много ме кефи! Благодаря Предварително.Eто ви 1 снимка от имгур. :tnx:
http://imgur.com/a/HIB36
там дето пише Rank: Newbie| Next Rank: Rookie|XP 1/60 Това ми трябва моля ви помогнете.
Последно промяна от OciXCrom на 26 Яну 2017, 22:41, променено общо 1 път.
Причина: Гледай къде си пускаш темите!!!
Изображение

Аватар
bullic
Извън линия
Мнения: 49
Регистриран на: 13 Ное 2016, 11:53

Re: [TЪРСЯ]АРМУ-РАНКС

Мнение от bullic » 25 Яну 2017, 20:21

Не мисля, някой да ти го направи безплатно защото е привейт плъгин!
Изображение

Аватар
stop cry!
Извън линия
Потребител
Потребител
Мнения: 382
Регистриран на: 07 Яну 2017, 02:18
Се отблагодари: 2 пъти
Получена благодарност: 1 път

Re: [TЪРСЯ]АРМУ-РАНКС

Мнение от stop cry! » 29 Яну 2017, 11:27

Е търсих из гоогле 30м

и намерих

Код за потвърждение: Избери целия код

#define MaxLevels 10
Ако искаш повече ранкове да добавиш правиш го на 15/20 колкото имаш

Код за потвърждение: Избери целия код

        #include <amxmodx>
        #include <amxmisc>
        #include <cstrike>
        #include <colorchat>
        #include <fvault>

        #define MaxLevels 10
        #define IsPlayer(%1) (1 <= %1 <=  g_iMaxPlayers)
     
        new gMaxPlayers, gMsgSayText, syncObj, Level[33], eXP[33]
        new ranks_hud, knife_xp, he_xp, hs_xp, kill_xp, kill_msg

        new const g_vault_name[] = "levelsz";
        new const rprefix[]= "Ranks";

        new const Levels[MaxLevels+1] =
        {
            30,
            80,
            150,
            250,
            360,
            480,
            580,
            750,
            1000,
            1500,
            2100,
        }

        new const Prefix[MaxLevels][] =
        {
            "Novak",
            "Lamer",
            "Bot",
            "Lucker",
            "Dobur",
            "Pro",
            "Champion",
            "General",
            "Gladiator",
            "Darklord"

        }

        public plugin_init()
        {
            register_plugin("AdminPfefix+RankSystem", "1.0", "alt.nick")
           
            register_event("DeathMsg","client_death","a")
            register_clcmd("say", "hook_say")
            register_clcmd("say_team", "hook_say")
           
            register_clcmd("say /rank", "cmdRank")
            register_clcmd("say_team /rank", "cmdRank")
         
           
            ranks_hud = register_cvar("ranks_hud", "1")     // Дали да се появява хъд при влизане в сървъра. Включено 1/0 Изключено
            knife_xp = register_cvar("knife_xp", "5")     // Колко ХР да дава за убийство с нож.
            he_xp = register_cvar("he_xp", "8")        // Колко ХР да дава за убийство с Granata (HE).
            hs_xp = register_cvar("hs_xp", "15")        // Колко ХР да дава за убийство с Headshot.
            kill_xp = register_cvar("kill_xp", "10")        // Колко ХР да дава за нормално убийство.   
            kill_msg = register_cvar("kill_msg", "1")    // Дали да показва кой сте убили и колко ХР сте получили. Включено 1/0 Изключено
           
            register_concmd ("amx_give_xp", "CmdAddXP", ADMIN_LEVEL_A, "<nick | ct | t | @all> <xp>")
           
            gMaxPlayers = get_maxplayers()
            gMsgSayText = get_user_msgid("SayText")

            syncObj     = CreateHudSyncObj()
           
            fvault_load(g_vault_name)
        }

        public ShowHud(id)
        {
            set_hudmessage(185, 239, 251, -1.0, 0.01, 0, 6.0, 1.0, 0.0, 0.0, -1)
            ShowSyncHudMsg(id, syncObj,"Rank : %s ^nXP : %i", Prefix[Level[id]], eXP[id])
        }

        public client_putinserver(id)
        {
            if(get_pcvar_num(ranks_hud) == 1)
                set_task(1.0, "ShowHud", id, _, _, "b")
               
            if(Level[id] < MaxLevels-1)
                while(eXP[id] >= Levels[Level[id]])
                    Level[id] += 1
        }

        public client_death(killer, victim, weapon, hitgroup, TK)
        {       
            if(killer == victim)
                return PLUGIN_HANDLED
               
            new headshot = (hitgroup == HIT_HEAD) ? 1 : 0
           
            switch(weapon)
            {
                case CSW_HEGRENADE:
                {
                    eXP[killer] += get_pcvar_num(he_xp)
                    CheckLevel(killer)
                    SaveData(killer)
                    if(get_pcvar_num(kill_msg) == 1)
                        ColorChat(killer, NORMAL, "^4[%s]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HE^1.", rprefix,  get_pcvar_num(he_xp))
                       
                    return PLUGIN_CONTINUE
                }
                case CSW_KNIFE:
                {
                    eXP[killer] += get_pcvar_num(knife_xp)
                    CheckLevel(killer)
                    SaveData(killer)
                    if(get_pcvar_num(kill_msg) == 1)
                        ColorChat(killer, NORMAL, "^4[%s]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 noj^1.",rprefix, get_pcvar_num(knife_xp))
                   
                    return PLUGIN_CONTINUE
                }
            }
           
            if(headshot)
            {
                eXP[killer] += get_pcvar_num(hs_xp)
                CheckLevel(killer)
                SaveData(killer)
                if(get_pcvar_num(kill_msg) == 1)
                    ColorChat(killer, NORMAL, "^4[%s]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HS^1.",rprefix, get_pcvar_num(hs_xp))
               
                return PLUGIN_CONTINUE
            }
           
            else
            {
                eXP[killer] += get_pcvar_num(kill_xp)
                CheckLevel(killer)
                SaveData(killer)
                if(get_pcvar_num(kill_msg) == 1)
                    ColorChat(killer, NORMAL, "^4[%s]^1 poluchihte^4 %d XP^1.", rprefix, get_pcvar_num(kill_xp))
           
                return PLUGIN_CONTINUE
            }
           
            CheckLevel(killer)
            SaveData(killer)
            return PLUGIN_CONTINUE
        }

        public CheckLevel(id)
        {
            if(Level[id] < MaxLevels-1)
                while(eXP[id] >= Levels[Level[id]])
                    Level[id] += 1
        }

        public client_connect(id)
        {
            LoadData(id)
        }


        public client_disconnect(id)
        {
            SaveData(id)
            eXP[id] = 0
            Level[id] = 0
            remove_task(id)
        }
               

               
        public cmdRank(id)
        {
            if(is_user_connected(id))
                ColorChat(id, NORMAL, "^4[%s]^1 Rank:^4 %s^1 | XP:^4 %d^1 | Level:^4 %d^1.", rprefix, Prefix[Level[id]], eXP[id], Level[id])
        }
               
        public CmdAddXP (iPlayer, level, cid)
        {
            if(!cmd_access(iPlayer, level, cid, 3)) return PLUGIN_HANDLED;
               
            new arg [32]
            read_argv (1, arg, 31)
         
            new AddXP [32]
            read_argv (2, AddXP, charsmax (AddXP))
         
            new XPtoGive = str_to_num (AddXP)
               
            new AdminName [32]
            new TargetName [32]
            get_user_name (iPlayer, AdminName, charsmax (AdminName))
               
            if(arg[0]=='@')
            {
                if(equali(arg[1],"All") || equali(arg[1],"ALL"))
                {
                    new players[32], totalplayers, All
                    get_players(players, totalplayers)
                     
                    for (new i = 0; i < totalplayers; i++)
                    {
                        All = players[i]
                               
                        eXP[All] += XPtoGive
                    }
                   
                    CheckLevel(All)
                    ColorChat(0, NORMAL, "^4[%s]^1 ^3%s^1 dade^4 %i^1 XP na vsichki ^4igrachi^1!", rprefix, AdminName, XPtoGive)
                }
                else if(equali(arg[1],"T") || equali(arg[1],"t"))
                {
                    new players[32], totalplayers, T
                    get_players(players, totalplayers)
                     
                    for (new i = 0; i < totalplayers; i++)
                    {
                        if (get_user_team(players[i]) == 1)
                        {
                            T = players[i]
                                   
                            eXP[T] += XPtoGive
                        }
                    }
                   
                    CheckLevel(T)
                    ColorChat(0, RED, "^4[%s] ^1%s dade^4 %i^1 XP na vsichki ^3 Teroristi^1.", rprefix, AdminName, XPtoGive)
                }
                else if(equali(arg[1],"CT") || equali(arg[1],"ct"))
                {
                    new players[32], totalplayers, CT
                    get_players(players, totalplayers)
                     
                    for(new i = 0; i < totalplayers; i++)
                    {
                        if(get_user_team(players[i]) == 2)
                        {
                            CT = players[i]
                                   
                            eXP[CT] += XPtoGive
                        }
                    }
                   
                    CheckLevel(CT)
                    ColorChat(0, BLUE, "^4[%s]^1 %s^1 dade^4 %i^1 XP na wsichki ^3 Kontra-Teroristi^1!", rprefix, AdminName, XPtoGive)
                }
            }
            else
            {
                new iTarget = cmd_target(iPlayer, arg, 3)
                get_user_name (iTarget, TargetName, charsmax (TargetName))
               
                if(iTarget)
                {
                    eXP[iTarget] += XPtoGive
                   
                    CheckLevel(iTarget)
                    ColorChat(0, NORMAL, "^4[%s]^1 ^3%s^1 dade^4 %i^1 XP na^4 %s^1.", rprefix, AdminName, XPtoGive, TargetName)
                }
            }
            return PLUGIN_HANDLED
        }

        bool:IsValidMessage( szMessage[ ], iLen )
        {
            read_args( szMessage, iLen )
            remove_quotes( szMessage )
           
            new iPos, cChar
            while( 0 <= ( cChar = szMessage[ iPos++ ] ) <= 255 )
            {
                if( cChar != ' ' && cChar != '%' )
                {
                    return true
                }
            }
           
            return false
        }

        public hook_say(id)
        {
            if(!is_user_connected(id))
                return PLUGIN_HANDLED_MAIN
           
            new szArgs[192]
           
            if( !IsValidMessage(szArgs, charsmax(szArgs)))
                return PLUGIN_HANDLED_MAIN

            if(equal(szArgs,"")) return PLUGIN_HANDLED_MAIN

           
            new szName[32]
            get_user_name(id, szName, sizeof szName-1)

            new alive = is_user_alive(id)

            if(contain(szArgs,"@") >= 0)
            return  PLUGIN_HANDLED_MAIN
         
            for(new i = 1; i <= gMaxPlayers; i++)
            {
                if(!is_user_connected(i))
                    continue
           
                if(alive && is_user_alive(i))
                {
                    message_begin(MSG_ONE, gMsgSayText, {0, 0, 0}, i)
                    write_byte(id)
                    write_string(szArgs)
                    message_end()
                }
                else if(!alive && !is_user_alive(i))
                {
                    new format[192]
                    formatex(format,191,"^x01* *DEAD* %s",szArgs)
                    message_begin(MSG_ONE, gMsgSayText, {0, 0, 0}, i)
                    write_byte(id)
                    write_string(format)
                    message_end()
                }
            }
               
            return PLUGIN_HANDLED_MAIN
        }

        public SaveData(id)
        {
            new name[32];
            get_user_name(id,name,31);
            new vaultkey[64],vaultdata[256];
           
            format(vaultkey,63,"%s", name);
            format(vaultdata,255,"%i#%i#",eXP[id],Level[id]);
            fvault_set_data(g_vault_name,vaultkey,vaultdata);
           
            return PLUGIN_CONTINUE;
        }
        public LoadData(id)
        {
            new name[32];
            get_user_name(id,name,31);
            new vaultkey[64],vaultdata[256];
           
            format(vaultkey,63,"%s",name);
            format(vaultdata,255,"%i#%i#",eXP[id],Level[id]);
            fvault_get_data(g_vault_name,vaultkey,vaultdata,charsmax(vaultdata));
           
            replace_all(vaultdata, 255, "#", " ");
            new playerxp[32], playerlevel[32];
            parse(vaultdata, playerxp, 31, playerlevel, 31);
           
            eXP[id] = str_to_num(playerxp);
            Level[id] = str_to_num(playerlevel);
           
            return PLUGIN_CONTINUE;
        }
Променяш само това което е в кода но ако си разбираш може каквото искаш

Код за потвърждение: Избери целия код

     new const Levels[MaxLevels+1] =
        {
            30,
            80,
            150,
            250,
            360,
            480,
            580,
            750,
            1000,
            1500,
            2100,
        }

        new const Prefix[MaxLevels][] =
        {
            "Novak",
            "Lamer",
            "Bot",
            "Lucker",
            "Dobur",
            "Pro",
            "Champion",
            "General",
            "Gladiator",
            "Darklord"

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: Bing [Bot] и 27 госта