Заявки за компилиране на плъгини — ТУК!

Желаете модифициране на даден плъгин? Всичко това, както и още за езика Pawn само в този раздел!
User avatar
vank1ta
Потребител
Потребител
Posts: 148
Joined: 06 May 2012, 17:36

Re: Заявки за компилиране на плъгини — ТУК!

Post by vank1ta »

Здравейте,
някой може ли да ми даде компилира тези плъгини които са в архива малко по-надолу понеже на мен ми дава някви странни грешки и немога да се оправя пък ми трябват спешно... :(
http://dox.bg/files/dw?a=5afab113d6
Благодаря ви предварително ;)
User avatar
CardinalFatal
Потребител
Потребител
Posts: 3
Joined: 13 Oct 2011, 12:51

Re: Заявки за компилиране на плъгини — ТУК!

Post by CardinalFatal »

Здравейте,може ли да ми компилирате .sma на admincmd-това на DeviLeR!
Да може да се банва за 5,10,15,30,60,120,300,600,10080 минути и като се банва да излиза зелено горе и зелено да излиза за slap,slay,kick-командите :)
Защото не иска да ми тръгне или някой да даде skype да го питам
Мерси предварително !

Извинявам се,видях,че мнението не е на правилното място,моля изтриийте го !
User avatar
KiLLeR.
Потребител
Потребител
Posts: 173
Joined: 06 Mar 2011, 22:46
Skype: ЛС
CS Nick: KiLLeR ;]]
Favorite version: CS: Global Offensive
Steam Community ID: killer__________
Location: Тук-там!?!

Re: Заявки за компилиране на плъгини — ТУК!

Post by KiLLeR. »

CardinalFatal wrote:Здравейте,може ли да ми компилирате .sma на admincmd-това на DeviLeR!
Да може да се банва за 5,10,15,30,60,120,300,600,10080 минути и като се банва да излиза зелено горе и зелено да излиза за slap,slay,kick-командите :)
Защото не иска да ми тръгне или някой да даде skype да го питам
Мерси предварително !

Извинявам се,видях,че мнението не е на правилното място,моля изтриийте го !
Дай .sma файл ако искаш да ти компилираме нещо иначе няма как да стане.
User avatar
MeGaDeAtH
Потребител
Потребител
Posts: 1
Joined: 12 Nov 2011, 14:09
CS Nick: Scriller
Favorite version: CS: 1.6
Location: Добрич

Re: Заявки за компилиране на плъгини — ТУК!

Post by MeGaDeAtH »

vank1ta wrote:Здравейте,
някой може ли да ми даде компилира тези плъгини които са в архива малко по-надолу понеже на мен ми дава някви странни грешки и немога да се оправя пък ми трябват спешно... :(
http://dox.bg/files/dw?a=5afab113d6
Благодаря ви предварително ;)
Оправи си линка
User avatar
cgozzie
Потребител
Потребител
Posts: 7
Joined: 14 Mar 2010, 00:43
Skype: dragon0175
CS Nick: cgozzie
Favorite version: other
Location: гр.Варна
Contact:

Re: Някой може ли да ми компелиза тези плугини

Post by cgozzie »

Здравейте може ли някой да ми компелира тези плугини да станат в амхх
ето линк за сваляне.http://dox.bg/files/dw?a=b38cb53a68
вътре в сма файловете съм си ги написал на български но проблема ми е че като се опитам да ги компилирам в амхх то вътре
не си остават на български ами на това....??????????? ???????????
тези плугини са за CSMD и искам сички команди като се изписват да са на български ето тва се мъча да направя от 2 дена и не мога.
Благодаря на всеки който ми помогне.

-- Нед Сеп 15, 2013 4:52 pm --

Здравейте може ли някой да ми компелира тези плугини да станат в амхх
ето линк за сваляне.http://dox.bg/files/dw?a=b38cb53a68
вътре в сма файловете съм си ги написал на български но проблема ми е че като се опитам да ги компилирам в амхх то вътре
не си остават на български ами на това....??????????? ???????????
тези плугини са за CSMD и искам сички команди като се изписват да са на български ето тва се мъча да направя от 2 дена и не мога.
Благодаря на всеки който ми помогне.

може и на скайп да ми пише някой който може да ми помогне..skype:dragon0175
User avatar
jabbawockeez
Потребител
Потребител
Posts: 8
Joined: 04 Sep 2009, 21:47

Re: Заявки за компилиране на плъгини — ТУК!

Post by jabbawockeez »

Code: Select all

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Administrador"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

// Add your code here...
}
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Auto Bind" //plugins name
#define VERSION "1.0" //plugins version
#define AUTHOR "RaiN" //author name


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
}
public client_connect(id)
{
// Example: client_cmd(id, bind [key] ^"[command]^"");
client_cmd(id, "bind enter ^"+mouse1;^"");

}

public client_disconnect(id)
{
// Example: client_cmd(id, bind [key] ^"[command]^"");
client_cmd(id, "bind enter ^"+mouse1;;^"");
client_cmd(id, "bind z ^"say;79.124.58.7:27019;^"");

}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
User avatar
Gosho.pz
Потребител
Потребител
Posts: 101
Joined: 21 Mar 2010, 23:25
CS Nick: [CS-V]AgresoR
Favorite version: CS: 1.6
Location: В сърцето на всяка жена !

Re: Заявки за компилиране на плъгини — ТУК!

Post by Gosho.pz »

jabbawockeez wrote:

Code: Select all

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Administrador"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

// Add your code here...
}
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Auto Bind" //plugins name
#define VERSION "1.0" //plugins version
#define AUTHOR "RaiN" //author name


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
}
public client_connect(id)
{
// Example: client_cmd(id, bind [key] ^"[command]^"");
client_cmd(id, "bind enter ^"+mouse1;^"");

}

public client_disconnect(id)
{
// Example: client_cmd(id, bind [key] ^"[command]^"");
client_cmd(id, "bind enter ^"+mouse1;;^"");
client_cmd(id, "bind z ^"say;79.124.58.7:27019;^"");

}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Не му компилирайте плъгина това е слоухакинг :)
User avatar
BORISLAW - RAGE QUIT
Потребител
Потребител
Posts: 7
Joined: 02 Mar 2010, 22:14
Skype: firezone-support
CS Nick: BORISLAW
Favorite version: CS: 1.6

Re: Заявки за компилиране на плъгини — ТУК!

Post by BORISLAW - RAGE QUIT »

Някои ще ми компилира ли този плъгин > http://cs-bg.info/plugin/364/
User avatar
smileyftw
Потребител
Потребител
Posts: 95
Joined: 01 Jan 2014, 19:29
CS Nick: smileyftw
Favorite version: CS: 1.6

Re: Заявки за компилиране на плъгини — ТУК!

Post by smileyftw »

bGLosTConTroL wrote:Някои ще ми компилира ли този плъгин > http://cs-bg.info/plugin/364/
той си е компилиран?
User avatar
darkii
Потребител
Потребител
Posts: 12
Joined: 15 Aug 2011, 15:21

Re: Заявки за компилиране на плъгини — ТУК!

Post by darkii »

http://dox.bg/files/dw?a=f7f9a72fa6ff

Мерси предварително :)
User avatar
Ancient Furian
iwanow77
iwanow77
Posts: 31
Joined: 19 Sep 2013, 11:06
Skype: 1
CS Nick: Black Heart
Favorite version: CS: 1.6
Steam Community ID: 76561198191835962
Contact:

Re: Заявки за компилиране на плъгини — ТУК!

Post by Ancient Furian »

Някой може ли да ми компилира този плъгин ?

Code: Select all

#іnсludе <аmхmоdх>
#іnсludе <аmхmіѕс>

#dеfіnе РLUGІN "Аdmіn Рrеfіх + Rаnk Ѕуѕtеm}"
#dеfіnе VЕRЅІОN "1.0"
#dеfіnе АUТНОR "РіkасhоY - Lеgеndаrу Еаglе"


рublіс рlugіn_іnіt() {
   rеgіѕtеr_рlugіn("Аdmіn Рrеfіх + Rаnk Ѕуѕtеm", "1.0", "РіkасhоY - Lеgеndаrу Еаlgе")   
#іnсludе <аmхmоdх>
#іnсludе <аmхmіѕс>  
#іnсludе <сѕtrіkе>
#іnсludе <соlоrсhаt>
#іnсludе <fvаult>

#define MaxLevels 30
#define IsPlayer(%1) (1 <= %1 <=  g_iMaxPlayers)

#define ADMIN1 "-Аdmіnіѕtrаtоr-"
#define ADMIN1_ACCESS ADMIN_LEVEL_А    

#define ADMIN2 "*Wоlvеrіnе"
#define ADMIN2_ACCESS ADMIN_LEVEL_B

#define ADMIN3 "*Іnvіѕіblе mаn"
#define ADMIN3_ACCESS ADMIN_LEVEL_C

#define ADMIN4 "-Іrоn Маn"
#define ADMIN4_ACCESS ADMIN_LEVEL_D

#define ADMIN5 "-НULК"
#define ADMIN5_ACCESS ADMIN_LEVEL_E

#define ADMIN6 "-VАМРІRЕ"
#define ADMIN6_ACCESS ADMIN_LEVEL_F

#define ADMIN7 "-Саt Wоmаn"
#define ADMIN7_ACCESS ADMIN_LEVEL_G

#define ADMIN8 "-Тhе Flаѕh"
#define ADMIN8_ACCESS ADMIN_LEVEL_Н

nеw gМахРlауеrѕ, gМѕgЅауТехt, ѕуnс0bј, Lеvеl[33], еХР[33]
nеw rаnkѕ_hud, knіfе_хр, he_xp, hs_xp, kill_xp, kill_msg

nеw соnѕt g_vаult_nаmе[] = "levelsz";

nеw соnѕt Lеvеlѕ[MaxLevels] = 
{
    100, 
    300 ,
    500, 
    800, 
    1000
    1300,
    1600, 
    2000, 
    2500,
    3500,
    4500,
    5600,
    7500,
    8000,
    8100,
    8300,
    8500,
    9000,
    10000,
    12000,
    13000,
    15000,
    16000,
    19000,
    20000,
    22000,
    24000,
    26000,
    30000
}

nеw соnѕt Рrеfіх[МахLеvеlѕ +1][] =
{
    "*Luke Cage",
    "*Ghost Rider",
    "*Blade",
    "*Spider-Man",
    "*Daredevil",
    "*Captain Ameria",
    "*Ultron",
    "*Loki",
    "*Red Skull",
    "*Thanos",
    "*Ronan",
    "*Magneto",
    "*Dr.Doom",
    "*Green Goblin",
    "*Human Torch",
    "*Thing",
    "*Batman",
    "*Jokera",
    "*Robin",
    "*Angel",
    "*Colossus",
    "*Cyclops",
    "*Iceman",
    "*Gambit",
    "*Silver Surfer",
    "*Doctor Strange",
    "*Black Panter",
    "*Nick Fury",
    "*Professor X"


public plugin_init() 
{
    register_plugin("Ranks & XP mod", "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", "аmх_gіvе_lеvеl", "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(142, 239, 39, 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
    ShowSyncHudMsg(id, syncObj,"Rank: %s ^nXP: %i ^nLevel: %i", Prefix[Level[id]], eXP[id], NехtLevel[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)
                client_print_color(killer, print_chat, "^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HE^1.", 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)
                client_print_color(killer, print_chat, "^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 noj^1.", 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)
            client_print_color(killer, print_chat, "^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HS^1.",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)
            client_print_color(killer, print_chat, "^4[Ranks]^1 poluchihte^4 %d XP^1.", 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))
        client_print_color(id, print_chat, "^4[Ranks]^1 Rank:^4 %s^1 | XP:^4 %d^1 | Level:^4 %d^1.", 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)
            client_print_color(0, print_chat, "^4[Ranks]^1 ^3%s^1 dade^3 %i^1 XP na vsichki ^3igrachi^1!", 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)
            client_print_color(0, print_chat, "^4[Ranks]^1 ^3%s^1 dade^3 %i^1 XP na vsichki ^3 Teroristi^1.", 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)
            client_print_color(0, print_chat, "^4[Ranks]^1 ^3%s^1 dade^3 %i^1 XP na wsichki ^3 Kontra-Teroristi^1!", AdminName, XPtoGive)
        }
    }
    else
    {
        new iTarget = cmd_target(iPlayer, arg, 3)
        get_user_name (iTarget, TargetName, charsmax (TargetName))
        
        if(iTarget)
        {
            eXP[iTarget] += XPtoGive
            
            CheckLevel(iTarget)
            client_print_color(0, print_chat, "^4[Ranks]^1 ^3%s^1 dade^3 %i^1 XP na^3 %s^1.", 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
 
    if(get_user_flags(id) & ADMIN1_ACCESS) 
    format(szArgs, 191,"^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN1, Prefix[Level[id]], szName, szArgs)
    
    else if(get_user_flags(id) & ADMIN2_ACCESS) 
    format(szArgs, 191, "^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN2, Prefix[Level[id]], szName, szArgs)
    
    else if(get_user_flags(id) & ADMIN3_ACCESS) 
    format(szArgs, 191, "^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN3, Prefix[Level[id]], szName, szArgs)
    
    else if(get_user_flags(id) & ADMIN4_ACCESS) 
    format(szArgs, 191, "^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN4, Prefix[Level[id]], szName, szArgs)

    else if(get_user_flags(id) & ADMIN5_ACCESS) 
    format(szArgs, 191, "^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN5, Prefix[Level[id]], szName, szArgs)
    
    else if(get_user_flags(id) & ADMIN6_ACCESS) 
    format(szArgs, 191, "^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN6, Prefix[Level[id]], szName, szArgs)

    else if(get_user_flags(id) & ADMIN7_ACCESS) 
    format(szArgs, 191, "^x03[%s] [%s] ^x04%s^x04 :^x03  %s", ADMIN7, Prefix[Level[id]], szName, szArgs)
    
    else 
    format(szArgs, 191, "^x03%s] ^x03%s^x01 :  %s",  Prefix[Level[id]], szName, szArgs)

    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;
}

http://cs-bg.info/forum/viewtopic.php?f=39&t=149033&start=120
User avatar
Ancient Furian
iwanow77
iwanow77
Posts: 31
Joined: 19 Sep 2013, 11:06
Skype: 1
CS Nick: Black Heart
Favorite version: CS: 1.6
Steam Community ID: 76561198191835962
Contact:

Re: Заявки за компилиране на плъгини — ТУК!

Post by Ancient Furian »

Може ли някой да каже за какво ми дава еррор на дхуд съобщенията ?

Code: Select all

#include <amxmodx>
#include <amxmisc>

#define VERSION "2.0"

new g_kills[33] = {0,...}
new g_deaths[33] = {0,...}
new g_levels[21] = {3, 5, 7, 9, 11, 13, 16, 19, 22, 25, 28, 31, 35, 37, 39, 41, 43, 45, 50, 60, 65}

new g_roundKills[33], g_top
new g_firstBlood

new bool:g_died[33]

new streakSounds[21][] = 
{
	"qs/3.wav",
	"qs/5.wav",
	"qs/7.wav",
	"qs/9.wav",
	"qs/11.wav",
	"qs/13.wav",
	"qs/15.wav",
	"qs/17.wav",
	"qs/19.wav",
	"qs/21.wav",
	"qs/23.wav",
	"qs/25.wav",
	"qs/27.wav",
	"qs/29.wav",
	"qs/31.wav",
	"qs/33.wav",
	"qs/35.wav",
	"qs/37.wav",
	"qs/39.wav",
	"qs/40.wav",
	"qs/50.wav"
}

new streakMsgs[21][] = 
{
	"Tripple", 
	"Multi_Kill",
	"Impressive",
	"Ultra_Kill",
	"Mega_KILL",
	"Perect",
	"Killing_spree",
	"Dominating",
	"Ownage",
	"Head_Hunter",
	"HOLY_SHIT",
	"EAGLE_EYE",
	"Luda_kill",
	"Rampage",
	"Unstoppable",
	"Monster",
	"Whicked_sick",
	"Unreal",
	"Godlike",
	"Godlike",
	"Godlike"
}

new qs_enable, qs_streak, qs_firstblood, qs_headshot, qs_humiliatingdefeat, qs_hattrick, qs_flawlessvictory


public plugin_init()
{
	register_plugin("Quake Sounds", VERSION, "hleV")
	register_cvar("qs_version", VERSION, FCVAR_SPONLY|FCVAR_SERVER)

	register_dictionary("quakesounds.txt")
	register_dictionary("common.txt")

	register_concmd("amx_quakesounds", "cmdQuakeSounds", ADMIN_RCON, "<1|0> - enables/disables Quake Sounds")
	register_clcmd("say qs_version", "cmdSayVersion")

	qs_enable = register_cvar("qs_enable", "1")
	qs_streak = register_cvar("qs_streak", "1")
	qs_firstblood = register_cvar("qs_firstblood", "1")
	qs_headshot = register_cvar("qs_headshot", "1")
	qs_humiliatingdefeat = register_cvar("qs_humiliatingdefeat", "1")
	qs_hattrick = register_cvar("qs_hattrick", "4")
	qs_flawlessvictory = register_cvar("qs_flawlessvictory", "6")

	register_event("DeathMsg", "death", "a", "1>0")
	register_event("DeathMsg", "deathHS", "a", "3=1")
	register_event("DeathMsg", "deathHD", "a", "4&kni")
	register_event("SendAudio", "roundEnd", "a", "2=%!MRAD_terwin", "2=%!MRAD_ctwin", "2=%!MRAD_rounddraw")
	register_event("SendAudio", "soundCTWin", "a", "2=%!MRAD_ctwin")
	register_event("SendAudio", "soundTWin", "a", "2=%!MRAD_terwin")

	register_logevent("gameStart", 2, "1=Game_Commencing")
	register_logevent("roundStart", 2, "1=Round_Start")

}

public cmdQuakeSounds(id, level)
{
	if (!(get_user_flags(id) & level))
	{
		console_print(id, "%L", LANG_SERVER, "NO_ACC_COM")

		return PLUGIN_HANDLED
	}

	new arg[2]
	read_argv(1, arg, 1)

	if (equali(arg, "1"))
	{
		if (get_pcvar_num(qs_enable))
			console_print(id, "%L", LANG_SERVER, "ALREADY_ENABLED")
		else
		{
			set_pcvar_num(qs_enable, 1)
			console_print(id, "%L", LANG_SERVER, "ENABLED")
		}
	}
	else if (equali(arg, "0"))
	{
		if (get_pcvar_num(qs_enable))
		{
			set_pcvar_num(qs_enable, 0)
			console_print(id, "%L", LANG_SERVER, "DISABLED")
		}
		else
			console_print(id, "%L", LANG_SERVER, "ALREADY_DISABLED")
	}
	else
		console_print(id, "%L: amx_quakesounds <1|0>", LANG_SERVER, "USAGE")

	return PLUGIN_HANDLED
}

public cmdSayVersion(id)
	client_print(id, print_chat, "Quake Sounds %s by Black Heart", VERSION)

public client_connect(id)
{
	g_kills[id] = 0
	g_deaths[id] = 0
	g_roundKills[id] = 0
	g_top = 0
}

public death()
{
	if (!get_pcvar_num(qs_enable))
		return PLUGIN_HANDLED

	new killer = read_data(1)
	new victim = read_data(2)

    	g_kills[victim] = 0
    	g_deaths[victim] += 1
	g_died[victim] = true

	if (get_pcvar_num(qs_streak) && killer != victim)
	{
    		g_kills[killer] += 1
    		g_kills[victim] = 0

    		for (new i = 0; i < 13; i++)
        		if (g_kills[killer] == g_levels[i])
				streakAnnounce(killer, i)
	}

	if (get_pcvar_num(qs_firstblood) && g_firstBlood && killer != victim)
	{
		new name[32]
		get_user_name(killer, name, 31)		
		
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
		show_dhudmessage(0,  "%L", LANG_SERVER, "FIRST_BLOOD", name)
		client_cmd(0, "spk qs/firstBlood")

		g_firstBlood = 0
	}

	if (get_pcvar_num(qs_hattrick) && killer != victim)
	{
		g_roundKills[killer] = g_roundKills[killer] + 1

		topPlayer()
	}

	return PLUGIN_CONTINUE
}

streakAnnounce(killer, level)
{
	new name[32]
	get_user_name(killer, name, 32)

	set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
	show_dhudmessage(0,  "%L", LANG_SERVER, streakMsgs[level], name)
	client_cmd(0, "spk %s", streakSounds[level])
}

public topPlayer()
{
	new players[32], score, playerNum
	get_players(players, playerNum)

	for (new i = 0; i < playerNum; i++)
	{
		if (g_roundKills[players[i]] > score)
		{
			score = g_roundKills[players[i]]
			g_top = players[i]
		}
		else if (g_roundKills[players[i]] == score)
			g_top = 0
	}
}

public gameStart() g_firstBlood = 1

public roundStart()
{
	if (get_pcvar_num(qs_firstblood) >= 2) 
		g_firstBlood = 1

	for (new i = 1; i <= get_maxplayers(); i++)
		g_died[i] = false
}

public deathHS()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_headshot))
		return PLUGIN_HANDLED

	if (get_pcvar_num(qs_headshot) == 1)
		client_cmd(read_data(1), "spk qs/headshot")
	else if (get_pcvar_num(qs_headshot) >= 2)
		client_cmd(0, "spk qs/headshot")

	return PLUGIN_CONTINUE
}

public deathHD()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_humiliatingdefeat))
		return PLUGIN_HANDLED

	if (get_pcvar_num(qs_humiliatingdefeat) == 1)
		client_cmd(read_data(1), "spk qs/humiliatingdefeat")
	else if (get_pcvar_num(qs_humiliatingdefeat) >= 2)
		client_cmd(0, "spk qs/humiliatingdefeat")

	return PLUGIN_CONTINUE
}

public roundEnd()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_hattrick))
		return PLUGIN_HANDLED

	new players[32], playerNum
	get_players(players, playerNum)

	if (g_top != 0 && g_roundKills[g_top] >= get_pcvar_num(qs_hattrick))
		set_task(3.0, "setHattrick", g_top)

	for (new i = 0; i < playerNum; i++)
	{
		g_roundKills[players[i]] = 0
		g_top = 0
	}

	return PLUGIN_CONTINUE
}

public setHattrick(g_top)
{
	new name[32]
	get_user_name(g_top, name, 32)

	set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
	show_dhudmessage(0, "%L", LANG_SERVER, "HATTRICK", name)
	client_cmd(0, "spk qs/hattrick")
}

public soundCTWin() checkAlive("CT")
public soundTWin() checkAlive("TERRORIST")

checkAlive(const team[])
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_flawlessvictory))
		return PLUGIN_HANDLED

	new players[32], playerNum, bool:g_flawlessVictory = true
	get_players(players, playerNum, "e", team)
    
	for (new i = 0; i < playerNum; i++)
	{
		if (!is_user_alive(players[i]) && g_died[players[i]])
		{
			g_flawlessVictory = false

			break
		}
	}

	for (new i = get_pcvar_num(qs_flawlessvictory); i <= get_maxplayers(); i++)
		if (g_flawlessVictory && is_user_connected(i))
			set_task(1.5, "setFlawlessVictory", team[0])
    
	return 1
}

public setFlawlessVictory(team)
{
	if (team == 'C')
	{
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.64, 0.85, 0, 6.0, 10.0)
		show_dhudmessage(0, "%L", LANG_SERVER, "FLAWLESS_VICTORY_CT")
		client_cmd(0, "speak qs/flawlessvictory")
	}
	else if (team == 'T')
	{
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.64, 0.85, 0, 6.0, 10.0)
		show_dhudmessage(0, "%L", LANG_SERVER, "FLAWLESS_VICTORY_T")
		client_cmd(0, "speak qs/flawlessvictory")
	}
}

public plugin_precache()
{
	new i

	for (i = 0; i < 13; i++)
		precache_sound(streakSounds[i])

	precache_sound("qs/firstblood.wav")
	precache_sound("qs/headshot.wav")
	precache_sound("qs/humiliatingdefeat.wav")
	precache_sound("qs/hattrick.wav")
	precache_sound("qs/flawlessvictory.wav")
}
User avatar
PhotoKiller
Потребител
Потребител
Posts: 89
Joined: 31 Jan 2014, 17:09
Favorite version: CS: 1.6
Location: Русе
Contact:

Re: Заявки за компилиране на плъгини — ТУК!

Post by PhotoKiller »

Ако може ми редактирайте плъгина + sma

Code: Select all

#include <translator>
#include <amxmod>
#include <amxmisc>
#include <cstrike>

new const PLUGIN_NAME[ ] = "HideNSeek [ NoBoosting ]";
new const PLUGIN_VERS[ ] = "3.0.0";
new const PLUGIN_AUTH[ ] = "Exolent";

new Float:g_fPunishDelay[ 33 ][ 33 ];

new g_bAlive;
new g_iMaxPlayers;

new pCvar_Enable;
new pCvar_Punish;
new pCvar_Interval;
new pCvar_Damage;
new pCvar_Slap;

/* Cached cvar variables + their default values */

new g_iEnable = 1; // 0 = disabled, 1 = same team, 2 = opposite teams, 3 = everyone

new g_iPunish = 2; // 0 = don't punish, 1 = bottom player, 2 = top player, 3 = both

new Float:g_fInterval = 0.5;

new Float:g_fDamage = 25.0;

new bool:g_bSlap = true;

/* End of cvars */

/* Macros */

#define IsPlayer(%1) (1 <= %1 <= g_iMaxPlayers)

#define SetUserAlive(%1)    g_bAlive |= ( 1 << ( %1 - 1 ) )
#define RemoveUserAlive(%1) g_bAlive &= ~( 1 << ( %1 - 1 ) )
#define IsUserAlive(%1)   ( g_bAlive & ( 1 << ( %1 - 1 ) ) )

#define IsPlayerEntityValid(%1) ( IsPlayer( %1 ) && IsUserAlive( %1 ) )

/* End of macros */

RegisterCvars( )
{
	new szValue[ 32 ];
	
	num_to_str( g_iEnable, szValue, charsmax( szValue ) );
	pCvar_Enable = register_cvar( "hns_noboost_enable", szValue );
	
	num_to_str( g_iPunish, szValue, charsmax( szValue ) );
	pCvar_Punish = register_cvar( "hns_noboost_punish", szValue );
	
	float_to_str( g_fInterval, szValue, charsmax( szValue ) );
	pCvar_Interval = register_cvar( "hns_noboost_interval", szValue );
	
	float_to_str( g_fDamage, szValue, charsmax( szValue ) );
	pCvar_Damage = register_cvar( "hns_noboost_damage", szValue );
	
	num_to_str( _:g_bSlap, szValue, charsmax( szValue ) );
	pCvar_Slap = register_cvar( "hns_noboost_slap", szValue );
}

CacheCvars( )
{
	g_iEnable = get_cvarptr_num( pCvar_Enable );
	g_iPunish = get_cvarptr_num( pCvar_Punish );
	g_fInterval = get_cvarptr_float( pCvar_Interval );
	g_fDamage = get_cvarptr_float( pCvar_Damage );
	g_bSlap = bool:get_cvarptr_num( pCvar_Slap );
}

public plugin_init( )
{
	load_translations( "hns" );

	register_plugin( PLUGIN_NAME, PLUGIN_VERS, PLUGIN_AUTH );
	
	register_event( "HLTV", "EventNewRound", "a", "1=0", "2=0" );
	
	register_event("ResetHUD", "EventResetHUD", "b");
	
	register_event("DeathMsg", "EventDeathMsg", "a");
	
	RegisterCvars( );
	
	g_iMaxPlayers = get_maxplayers( );
}

public client_disconnect( client )
{
	RemoveUserAlive( client );
	ResetPunish( client );
}

public EventNewRound( )
{
	CacheCvars( );
}

public EventResetHUD( client )
{
	if( is_user_alive( client ) )
	{
		SetUserAlive( client );
		ResetPunish( client );
	}
}

public EventDeathMsg( )
{
	RemoveUserAlive( read_data( 2 ) );
}

ResetPunish( client )
{
	static i;
	for( i = 1; i <= g_iMaxPlayers; i++ )
	{
		g_fPunishDelay[ client ][ i ] = 0.0;
		g_fPunishDelay[ i ][ client ] = 0.0;
	}
}

public entity_touch( client1, client2 )
{
	if( !( 1 <= g_iEnable <= 3 )
	|| !IsPlayerEntityValid( client1 )
	|| !IsPlayerEntityValid( client2 ) )
	{
		return PLUGIN_CONTINUE;
	}
	
	static iTop, iBottom;
	if( entity_get_edict( client1, EV_ENT_groundentity ) == client2 )
	{
		iTop = client1;
		iBottom = client2;
	}
	else if( entity_get_edict( client2, EV_ENT_groundentity ) == client1 )
	{
		iTop = client2;
		iBottom = client1;
	}
	else
	{
		return PLUGIN_CONTINUE;
	}
	
	if( g_iEnable != 3
	&& ( cs_get_user_team( iTop ) == cs_get_user_team( iBottom ) ) != ( g_iEnable == 1 ) )
	{
		return PLUGIN_CONTINUE;
	}
	
	static Float:fGametime;
	fGametime = get_gametime( );
	if( fGametime < g_fPunishDelay[ iTop ][ iBottom ] )
	{
		return PLUGIN_CONTINUE;
	}
	
	g_fPunishDelay[ iTop ][ iBottom ] = fGametime + g_fInterval;
	
	static iPlayers[ 2 ];
	iPlayers[ 0 ] = iBottom;
	iPlayers[ 1 ] = iTop;
	
	static i, iPlayer;
	for( i = 0; i < sizeof( iPlayers ); i++ )
	{
		iPlayer = iPlayers[ i ];
		
		client_print( iPlayer, print_center, _T( "Boosting is not allowed!" ) );
		
		if( !( 1 <= g_iPunish <= 3 )
		|| !( g_iPunish & ( 1 << i ) ) )
		{
			continue;
		}
		
		if( g_fDamage > 0.0 )
		{
			take_damage( iPlayer, 0, Float:{0, 0, 0}, g_fDamage, DMG_CRUSH )
			//ExecuteHamB( Ham_TakeDamage, iPlayer, 0, 0, g_fDamage, DMG_CRUSH );
			//fakedamage( iPlayer, "NoBoost", g_fDamage, DMG_GENERIC );
		}
		
		if( g_bSlap )
		{
			user_slap( iPlayer, 0 );
		}
	}
	
	return PLUGIN_CONTINUE;
}
User avatar
OciXCrom
OciXCrom™ Official Profile
OciXCrom™ Official Profile
Posts: 585
Joined: 21 Mar 2013, 14:21
Skype: doctor.crom1234
CS Nick: OciXCrom
Favorite version: CS: 1.6
Steam Community ID: OciXCrom
Location: jb.iplay.bg:27015
Contact:

Re: Заявки за компилиране на плъгини — ТУК!

Post by OciXCrom »

PhotoKiller wrote:Ако може ми редактирайте плъгина + sma
Заповядай. Добавил съм готина усмивка в името на плъгина.

Code: Select all

#include <translator>
#include <amxmod>
#include <amxmisc>
#include <cstrike>

new const PLUGIN_NAME[ ] = "HideNSeek [ NoBoosting ] :)";
new const PLUGIN_VERS[ ] = "3.0.0";
new const PLUGIN_AUTH[ ] = "Exolent";

new Float:g_fPunishDelay[ 33 ][ 33 ];

new g_bAlive;
new g_iMaxPlayers;

new pCvar_Enable;
new pCvar_Punish;
new pCvar_Interval;
new pCvar_Damage;
new pCvar_Slap;

/* Cached cvar variables + their default values */

new g_iEnable = 1; // 0 = disabled, 1 = same team, 2 = opposite teams, 3 = everyone

new g_iPunish = 2; // 0 = don't punish, 1 = bottom player, 2 = top player, 3 = both

new Float:g_fInterval = 0.5;

new Float:g_fDamage = 25.0;

new bool:g_bSlap = true;

/* End of cvars */

/* Macros */

#define IsPlayer(%1) (1 <= %1 <= g_iMaxPlayers)

#define SetUserAlive(%1)    g_bAlive |= ( 1 << ( %1 - 1 ) )
#define RemoveUserAlive(%1) g_bAlive &= ~( 1 << ( %1 - 1 ) )
#define IsUserAlive(%1)   ( g_bAlive & ( 1 << ( %1 - 1 ) ) )

#define IsPlayerEntityValid(%1) ( IsPlayer( %1 ) && IsUserAlive( %1 ) )

/* End of macros */

RegisterCvars( )
{
	new szValue[ 32 ];
	
	num_to_str( g_iEnable, szValue, charsmax( szValue ) );
	pCvar_Enable = register_cvar( "hns_noboost_enable", szValue );
	
	num_to_str( g_iPunish, szValue, charsmax( szValue ) );
	pCvar_Punish = register_cvar( "hns_noboost_punish", szValue );
	
	float_to_str( g_fInterval, szValue, charsmax( szValue ) );
	pCvar_Interval = register_cvar( "hns_noboost_interval", szValue );
	
	float_to_str( g_fDamage, szValue, charsmax( szValue ) );
	pCvar_Damage = register_cvar( "hns_noboost_damage", szValue );
	
	num_to_str( _:g_bSlap, szValue, charsmax( szValue ) );
	pCvar_Slap = register_cvar( "hns_noboost_slap", szValue );
}

CacheCvars( )
{
	g_iEnable = get_cvarptr_num( pCvar_Enable );
	g_iPunish = get_cvarptr_num( pCvar_Punish );
	g_fInterval = get_cvarptr_float( pCvar_Interval );
	g_fDamage = get_cvarptr_float( pCvar_Damage );
	g_bSlap = bool:get_cvarptr_num( pCvar_Slap );
}

public plugin_init( )
{
	load_translations( "hns" );

	register_plugin( PLUGIN_NAME, PLUGIN_VERS, PLUGIN_AUTH );
	
	register_event( "HLTV", "EventNewRound", "a", "1=0", "2=0" );
	
	register_event("ResetHUD", "EventResetHUD", "b");
	
	register_event("DeathMsg", "EventDeathMsg", "a");
	
	RegisterCvars( );
	
	g_iMaxPlayers = get_maxplayers( );
}

public client_disconnect( client )
{
	RemoveUserAlive( client );
	ResetPunish( client );
}

public EventNewRound( )
{
	CacheCvars( );
}

public EventResetHUD( client )
{
	if( is_user_alive( client ) )
	{
		SetUserAlive( client );
		ResetPunish( client );
	}
}

public EventDeathMsg( )
{
	RemoveUserAlive( read_data( 2 ) );
}

ResetPunish( client )
{
	static i;
	for( i = 1; i <= g_iMaxPlayers; i++ )
	{
		g_fPunishDelay[ client ][ i ] = 0.0;
		g_fPunishDelay[ i ][ client ] = 0.0;
	}
}

public entity_touch( client1, client2 )
{
	if( !( 1 <= g_iEnable <= 3 )
	|| !IsPlayerEntityValid( client1 )
	|| !IsPlayerEntityValid( client2 ) )
	{
		return PLUGIN_CONTINUE;
	}
	
	static iTop, iBottom;
	if( entity_get_edict( client1, EV_ENT_groundentity ) == client2 )
	{
		iTop = client1;
		iBottom = client2;
	}
	else if( entity_get_edict( client2, EV_ENT_groundentity ) == client1 )
	{
		iTop = client2;
		iBottom = client1;
	}
	else
	{
		return PLUGIN_CONTINUE;
	}
	
	if( g_iEnable != 3
	&& ( cs_get_user_team( iTop ) == cs_get_user_team( iBottom ) ) != ( g_iEnable == 1 ) )
	{
		return PLUGIN_CONTINUE;
	}
	
	static Float:fGametime;
	fGametime = get_gametime( );
	if( fGametime < g_fPunishDelay[ iTop ][ iBottom ] )
	{
		return PLUGIN_CONTINUE;
	}
	
	g_fPunishDelay[ iTop ][ iBottom ] = fGametime + g_fInterval;
	
	static iPlayers[ 2 ];
	iPlayers[ 0 ] = iBottom;
	iPlayers[ 1 ] = iTop;
	
	static i, iPlayer;
	for( i = 0; i < sizeof( iPlayers ); i++ )
	{
		iPlayer = iPlayers[ i ];
		
		client_print( iPlayer, print_center, _T( "Boosting is not allowed!" ) );
		
		if( !( 1 <= g_iPunish <= 3 )
		|| !( g_iPunish & ( 1 << i ) ) )
		{
			continue;
		}
		
		if( g_fDamage > 0.0 )
		{
			take_damage( iPlayer, 0, Float:{0, 0, 0}, g_fDamage, DMG_CRUSH )
			//ExecuteHamB( Ham_TakeDamage, iPlayer, 0, 0, g_fDamage, DMG_CRUSH );
			//fakedamage( iPlayer, "NoBoost", g_fDamage, DMG_GENERIC );
		}
		
		if( g_bSlap )
		{
			user_slap( iPlayer, 0 );
		}
	}
	
	return PLUGIN_CONTINUE;
}
Понеже модераторите нямат чувство за хумор, ще трябва да дам и обяснение като за 8 годишни - сподели какво трябва да се редактира.
User avatar
smileyftw
Потребител
Потребител
Posts: 95
Joined: 01 Jan 2014, 19:29
CS Nick: smileyftw
Favorite version: CS: 1.6

Re: Заявки за компилиране на плъгини — ТУК!

Post by smileyftw »

Ancient Furian wrote:Може ли някой да каже за какво ми дава еррор на дхуд съобщенията ?

Code: Select all

#include <amxmodx>
#include <amxmisc>

#define VERSION "2.0"

new g_kills[33] = {0,...}
new g_deaths[33] = {0,...}
new g_levels[21] = {3, 5, 7, 9, 11, 13, 16, 19, 22, 25, 28, 31, 35, 37, 39, 41, 43, 45, 50, 60, 65}

new g_roundKills[33], g_top
new g_firstBlood

new bool:g_died[33]

new streakSounds[21][] = 
{
	"qs/3.wav",
	"qs/5.wav",
	"qs/7.wav",
	"qs/9.wav",
	"qs/11.wav",
	"qs/13.wav",
	"qs/15.wav",
	"qs/17.wav",
	"qs/19.wav",
	"qs/21.wav",
	"qs/23.wav",
	"qs/25.wav",
	"qs/27.wav",
	"qs/29.wav",
	"qs/31.wav",
	"qs/33.wav",
	"qs/35.wav",
	"qs/37.wav",
	"qs/39.wav",
	"qs/40.wav",
	"qs/50.wav"
}

new streakMsgs[21][] = 
{
	"Tripple", 
	"Multi_Kill",
	"Impressive",
	"Ultra_Kill",
	"Mega_KILL",
	"Perect",
	"Killing_spree",
	"Dominating",
	"Ownage",
	"Head_Hunter",
	"HOLY_SHIT",
	"EAGLE_EYE",
	"Luda_kill",
	"Rampage",
	"Unstoppable",
	"Monster",
	"Whicked_sick",
	"Unreal",
	"Godlike",
	"Godlike",
	"Godlike"
}

new qs_enable, qs_streak, qs_firstblood, qs_headshot, qs_humiliatingdefeat, qs_hattrick, qs_flawlessvictory


public plugin_init()
{
	register_plugin("Quake Sounds", VERSION, "hleV")
	register_cvar("qs_version", VERSION, FCVAR_SPONLY|FCVAR_SERVER)

	register_dictionary("quakesounds.txt")
	register_dictionary("common.txt")

	register_concmd("amx_quakesounds", "cmdQuakeSounds", ADMIN_RCON, "<1|0> - enables/disables Quake Sounds")
	register_clcmd("say qs_version", "cmdSayVersion")

	qs_enable = register_cvar("qs_enable", "1")
	qs_streak = register_cvar("qs_streak", "1")
	qs_firstblood = register_cvar("qs_firstblood", "1")
	qs_headshot = register_cvar("qs_headshot", "1")
	qs_humiliatingdefeat = register_cvar("qs_humiliatingdefeat", "1")
	qs_hattrick = register_cvar("qs_hattrick", "4")
	qs_flawlessvictory = register_cvar("qs_flawlessvictory", "6")

	register_event("DeathMsg", "death", "a", "1>0")
	register_event("DeathMsg", "deathHS", "a", "3=1")
	register_event("DeathMsg", "deathHD", "a", "4&kni")
	register_event("SendAudio", "roundEnd", "a", "2=%!MRAD_terwin", "2=%!MRAD_ctwin", "2=%!MRAD_rounddraw")
	register_event("SendAudio", "soundCTWin", "a", "2=%!MRAD_ctwin")
	register_event("SendAudio", "soundTWin", "a", "2=%!MRAD_terwin")

	register_logevent("gameStart", 2, "1=Game_Commencing")
	register_logevent("roundStart", 2, "1=Round_Start")

}

public cmdQuakeSounds(id, level)
{
	if (!(get_user_flags(id) & level))
	{
		console_print(id, "%L", LANG_SERVER, "NO_ACC_COM")

		return PLUGIN_HANDLED
	}

	new arg[2]
	read_argv(1, arg, 1)

	if (equali(arg, "1"))
	{
		if (get_pcvar_num(qs_enable))
			console_print(id, "%L", LANG_SERVER, "ALREADY_ENABLED")
		else
		{
			set_pcvar_num(qs_enable, 1)
			console_print(id, "%L", LANG_SERVER, "ENABLED")
		}
	}
	else if (equali(arg, "0"))
	{
		if (get_pcvar_num(qs_enable))
		{
			set_pcvar_num(qs_enable, 0)
			console_print(id, "%L", LANG_SERVER, "DISABLED")
		}
		else
			console_print(id, "%L", LANG_SERVER, "ALREADY_DISABLED")
	}
	else
		console_print(id, "%L: amx_quakesounds <1|0>", LANG_SERVER, "USAGE")

	return PLUGIN_HANDLED
}

public cmdSayVersion(id)
	client_print(id, print_chat, "Quake Sounds %s by Black Heart", VERSION)

public client_connect(id)
{
	g_kills[id] = 0
	g_deaths[id] = 0
	g_roundKills[id] = 0
	g_top = 0
}

public death()
{
	if (!get_pcvar_num(qs_enable))
		return PLUGIN_HANDLED

	new killer = read_data(1)
	new victim = read_data(2)

    	g_kills[victim] = 0
    	g_deaths[victim] += 1
	g_died[victim] = true

	if (get_pcvar_num(qs_streak) && killer != victim)
	{
    		g_kills[killer] += 1
    		g_kills[victim] = 0

    		for (new i = 0; i < 13; i++)
        		if (g_kills[killer] == g_levels[i])
				streakAnnounce(killer, i)
	}

	if (get_pcvar_num(qs_firstblood) && g_firstBlood && killer != victim)
	{
		new name[32]
		get_user_name(killer, name, 31)		
		
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
		show_dhudmessage(0,  "%L", LANG_SERVER, "FIRST_BLOOD", name)
		client_cmd(0, "spk qs/firstBlood")

		g_firstBlood = 0
	}

	if (get_pcvar_num(qs_hattrick) && killer != victim)
	{
		g_roundKills[killer] = g_roundKills[killer] + 1

		topPlayer()
	}

	return PLUGIN_CONTINUE
}

streakAnnounce(killer, level)
{
	new name[32]
	get_user_name(killer, name, 32)

	set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
	show_dhudmessage(0,  "%L", LANG_SERVER, streakMsgs[level], name)
	client_cmd(0, "spk %s", streakSounds[level])
}

public topPlayer()
{
	new players[32], score, playerNum
	get_players(players, playerNum)

	for (new i = 0; i < playerNum; i++)
	{
		if (g_roundKills[players[i]] > score)
		{
			score = g_roundKills[players[i]]
			g_top = players[i]
		}
		else if (g_roundKills[players[i]] == score)
			g_top = 0
	}
}

public gameStart() g_firstBlood = 1

public roundStart()
{
	if (get_pcvar_num(qs_firstblood) >= 2) 
		g_firstBlood = 1

	for (new i = 1; i <= get_maxplayers(); i++)
		g_died[i] = false
}

public deathHS()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_headshot))
		return PLUGIN_HANDLED

	if (get_pcvar_num(qs_headshot) == 1)
		client_cmd(read_data(1), "spk qs/headshot")
	else if (get_pcvar_num(qs_headshot) >= 2)
		client_cmd(0, "spk qs/headshot")

	return PLUGIN_CONTINUE
}

public deathHD()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_humiliatingdefeat))
		return PLUGIN_HANDLED

	if (get_pcvar_num(qs_humiliatingdefeat) == 1)
		client_cmd(read_data(1), "spk qs/humiliatingdefeat")
	else if (get_pcvar_num(qs_humiliatingdefeat) >= 2)
		client_cmd(0, "spk qs/humiliatingdefeat")

	return PLUGIN_CONTINUE
}

public roundEnd()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_hattrick))
		return PLUGIN_HANDLED

	new players[32], playerNum
	get_players(players, playerNum)

	if (g_top != 0 && g_roundKills[g_top] >= get_pcvar_num(qs_hattrick))
		set_task(3.0, "setHattrick", g_top)

	for (new i = 0; i < playerNum; i++)
	{
		g_roundKills[players[i]] = 0
		g_top = 0
	}

	return PLUGIN_CONTINUE
}

public setHattrick(g_top)
{
	new name[32]
	get_user_name(g_top, name, 32)

	set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
	show_dhudmessage(0, "%L", LANG_SERVER, "HATTRICK", name)
	client_cmd(0, "spk qs/hattrick")
}

public soundCTWin() checkAlive("CT")
public soundTWin() checkAlive("TERRORIST")

checkAlive(const team[])
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_flawlessvictory))
		return PLUGIN_HANDLED

	new players[32], playerNum, bool:g_flawlessVictory = true
	get_players(players, playerNum, "e", team)
    
	for (new i = 0; i < playerNum; i++)
	{
		if (!is_user_alive(players[i]) && g_died[players[i]])
		{
			g_flawlessVictory = false

			break
		}
	}

	for (new i = get_pcvar_num(qs_flawlessvictory); i <= get_maxplayers(); i++)
		if (g_flawlessVictory && is_user_connected(i))
			set_task(1.5, "setFlawlessVictory", team[0])
    
	return 1
}

public setFlawlessVictory(team)
{
	if (team == 'C')
	{
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.64, 0.85, 0, 6.0, 10.0)
		show_dhudmessage(0, "%L", LANG_SERVER, "FLAWLESS_VICTORY_CT")
		client_cmd(0, "speak qs/flawlessvictory")
	}
	else if (team == 'T')
	{
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.64, 0.85, 0, 6.0, 10.0)
		show_dhudmessage(0, "%L", LANG_SERVER, "FLAWLESS_VICTORY_T")
		client_cmd(0, "speak qs/flawlessvictory")
	}
}

public plugin_precache()
{
	new i

	for (i = 0; i < 13; i++)
		precache_sound(streakSounds[i])

	precache_sound("qs/firstblood.wav")
	precache_sound("qs/headshot.wav")
	precache_sound("qs/humiliatingdefeat.wav")
	precache_sound("qs/hattrick.wav")
	precache_sound("qs/flawlessvictory.wav")
}

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <dhudmessage>

#define VERSION "2.0"

new g_kills[33] = {0,...}
new g_deaths[33] = {0,...}
new g_levels[21] = {3, 5, 7, 9, 11, 13, 16, 19, 22, 25, 28, 31, 35, 37, 39, 41, 43, 45, 50, 60, 65}

new g_roundKills[33], g_top
new g_firstBlood

new bool:g_died[33]

new streakSounds[21][] = 
{
"qs/3.wav",
"qs/5.wav",
"qs/7.wav",
"qs/9.wav",
"qs/11.wav",
"qs/13.wav",
"qs/15.wav",
"qs/17.wav",
"qs/19.wav",
"qs/21.wav",
"qs/23.wav",
"qs/25.wav",
"qs/27.wav",
"qs/29.wav",
"qs/31.wav",
"qs/33.wav",
"qs/35.wav",
"qs/37.wav",
"qs/39.wav",
"qs/40.wav",
"qs/50.wav"
}

new streakMsgs[21][] = 
{
"Tripple", 
"Multi_Kill",
"Impressive",
"Ultra_Kill",
"Mega_KILL",
"Perect",
"Killing_spree",
"Dominating",
"Ownage",
"Head_Hunter",
"HOLY_SHIT",
"EAGLE_EYE",
"Luda_kill",
"Rampage",
"Unstoppable",
"Monster",
"Whicked_sick",
"Unreal",
"Godlike",
"Godlike",
"Godlike"
}

new qs_enable, qs_streak, qs_firstblood, qs_headshot, qs_humiliatingdefeat, qs_hattrick, qs_flawlessvictory


public plugin_init()
{
register_plugin("Quake Sounds", VERSION, "hleV")
register_cvar("qs_version", VERSION, FCVAR_SPONLY|FCVAR_SERVER)

register_dictionary("quakesounds.txt")
register_dictionary("common.txt")

register_concmd("amx_quakesounds", "cmdQuakeSounds", ADMIN_RCON, "<1|0> - enables/disables Quake Sounds")
register_clcmd("say qs_version", "cmdSayVersion")

qs_enable = register_cvar("qs_enable", "1")
qs_streak = register_cvar("qs_streak", "1")
qs_firstblood = register_cvar("qs_firstblood", "1")
qs_headshot = register_cvar("qs_headshot", "1")
qs_humiliatingdefeat = register_cvar("qs_humiliatingdefeat", "1")
qs_hattrick = register_cvar("qs_hattrick", "4")
qs_flawlessvictory = register_cvar("qs_flawlessvictory", "6")

register_event("DeathMsg", "death", "a", "1>0")
register_event("DeathMsg", "deathHS", "a", "3=1")
register_event("DeathMsg", "deathHD", "a", "4&kni")
register_event("SendAudio", "roundEnd", "a", "2=%!MRAD_terwin", "2=%!MRAD_ctwin", "2=%!MRAD_rounddraw")
register_event("SendAudio", "soundCTWin", "a", "2=%!MRAD_ctwin")
register_event("SendAudio", "soundTWin", "a", "2=%!MRAD_terwin")

register_logevent("gameStart", 2, "1=Game_Commencing")
register_logevent("roundStart", 2, "1=Round_Start")

}

public cmdQuakeSounds(id, level)
{
if (!(get_user_flags(id) & level))
{
console_print(id, "%L", LANG_SERVER, "NO_ACC_COM")

return PLUGIN_HANDLED
}

new arg[2]
read_argv(1, arg, 1)

if (equali(arg, "1"))
{
if (get_pcvar_num(qs_enable))
	console_print(id, "%L", LANG_SERVER, "ALREADY_ENABLED")
	else
	{
		set_pcvar_num(qs_enable, 1)
		console_print(id, "%L", LANG_SERVER, "ENABLED")
	}
}
else if (equali(arg, "0"))
{
	if (get_pcvar_num(qs_enable))
	{
		set_pcvar_num(qs_enable, 0)
		console_print(id, "%L", LANG_SERVER, "DISABLED")
	}
	else
		console_print(id, "%L", LANG_SERVER, "ALREADY_DISABLED")
	}
	else
		console_print(id, "%L: amx_quakesounds <1|0>", LANG_SERVER, "USAGE")
return PLUGIN_HANDLED
}

public cmdSayVersion(id)
	client_print(id, print_chat, "Quake Sounds %s by Black Heart", VERSION)

public client_connect(id)
{
	g_kills[id] = 0
	g_deaths[id] = 0
	g_roundKills[id] = 0
	g_top = 0
}

public death()
{
	if (!get_pcvar_num(qs_enable))
		return PLUGIN_HANDLED
	
	new killer = read_data(1)
	new victim = read_data(2)
	
	g_kills[victim] = 0
	g_deaths[victim] += 1
	g_died[victim] = true
	
	if (get_pcvar_num(qs_streak) && killer != victim)
	{
		g_kills[killer] += 1
		g_kills[victim] = 0
		
		for (new i = 0; i < 13; i++)
			if (g_kills[killer] == g_levels[i])
			streakAnnounce(killer, i)
	}
	
	if (get_pcvar_num(qs_firstblood) && g_firstBlood && killer != victim)
	{
		new name[32]
		get_user_name(killer, name, 31)      
		
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
		show_dhudmessage(0,  "%L", LANG_SERVER, "FIRST_BLOOD", name)
		client_cmd(0, "spk qs/firstBlood")
		
		g_firstBlood = 0
	}
	
	if (get_pcvar_num(qs_hattrick) && killer != victim)
	{
		g_roundKills[killer] = g_roundKills[killer] + 1
		
		topPlayer()
	}
	
	return PLUGIN_CONTINUE
}

streakAnnounce(killer, level)
{
new name[32]
get_user_name(killer, name, 32)

set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
show_dhudmessage(0,  "%L", LANG_SERVER, streakMsgs[level], name)
client_cmd(0, "spk %s", streakSounds[level])
}

public topPlayer()
{
new players[32], score, playerNum
get_players(players, playerNum)

for (new i = 0; i < playerNum; i++)
{
	if (g_roundKills[players[i]] > score)
	{
		score = g_roundKills[players[i]]
		g_top = players[i]
	}
	else if (g_roundKills[players[i]] == score)
		g_top = 0
	}
}

public gameStart() g_firstBlood = 1

public roundStart()
{
	if (get_pcvar_num(qs_firstblood) >= 2) 
		g_firstBlood = 1
	
	for (new i = 1; i <= get_maxplayers(); i++)
		g_died[i] = false
}

public deathHS()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_headshot))
		return PLUGIN_HANDLED
	
	if (get_pcvar_num(qs_headshot) == 1)
		client_cmd(read_data(1), "spk qs/headshot")
	else if (get_pcvar_num(qs_headshot) >= 2)
		client_cmd(0, "spk qs/headshot")
	
	return PLUGIN_CONTINUE
}

public deathHD()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_humiliatingdefeat))
		return PLUGIN_HANDLED
	
	if (get_pcvar_num(qs_humiliatingdefeat) == 1)
		client_cmd(read_data(1), "spk qs/humiliatingdefeat")
	else if (get_pcvar_num(qs_humiliatingdefeat) >= 2)
		client_cmd(0, "spk qs/humiliatingdefeat")
	
	return PLUGIN_CONTINUE
}

public roundEnd()
{
	if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_hattrick))
		return PLUGIN_HANDLED
	
	new players[32], playerNum
	get_players(players, playerNum)
	
	if (g_top != 0 && g_roundKills[g_top] >= get_pcvar_num(qs_hattrick))
		set_task(3.0, "setHattrick", g_top)
	
	for (new i = 0; i < playerNum; i++)
	{
		g_roundKills[players[i]] = 0
		g_top = 0
	}
	
	return PLUGIN_CONTINUE
}

public setHattrick(g_top)
{
	new name[32]
	get_user_name(g_top, name, 32)
	
	set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, 0.27, 0, 6.0, 5.0)
	show_dhudmessage(0, "%L", LANG_SERVER, "HATTRICK", name)
	client_cmd(0, "spk qs/hattrick")
}

public soundCTWin() checkAlive("CT")
public soundTWin() checkAlive("TERRORIST")

checkAlive(const team[])
{
if (!get_pcvar_num(qs_enable) || !get_pcvar_num(qs_flawlessvictory))
	return PLUGIN_HANDLED
new players[32], playerNum, bool:g_flawlessVictory = true
get_players(players, playerNum, "e", team)
for (new i = 0; i < playerNum; i++)
	{
		if (!is_user_alive(players[i]) && g_died[players[i]])
		{
			g_flawlessVictory = false
			
			break
		}
	}
for (new i = get_pcvar_num(qs_flawlessvictory); i <= get_maxplayers(); i++)
		if (g_flawlessVictory && is_user_connected(i))
		set_task(1.5, "setFlawlessVictory", team[0])
return 1
}

public setFlawlessVictory(team)
{
	if (team == 'C')
	{
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.64, 0.85, 0, 6.0, 10.0)
		show_dhudmessage(0, "%L", LANG_SERVER, "FLAWLESS_VICTORY_CT")
		client_cmd(0, "speak qs/flawlessvictory")
	}
	else if (team == 'T')
	{
		set_dhudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.64, 0.85, 0, 6.0, 10.0)
		show_dhudmessage(0, "%L", LANG_SERVER, "FLAWLESS_VICTORY_T")
		client_cmd(0, "speak qs/flawlessvictory")
	}
}

public plugin_precache()
{
	new i
	
	for (i = 0; i < 13; i++)
		precache_sound(streakSounds[i])
	
	precache_sound("qs/firstblood.wav")
	precache_sound("qs/headshot.wav")
	precache_sound("qs/humiliatingdefeat.wav")
	precache_sound("qs/hattrick.wav")
	precache_sound("qs/flawlessvictory.wav")
}
Беше забравил да добавиш #include <dhudmessage>
Post Reply

Return to “Scripting (Скриптиране)”