[AMX] Tổng hợp Code, Plug do Mem chế hoặc giới thiệu

Thảo luận trong 'Counter Strike' bắt đầu bởi Orpheus, 22/1/11.

  1. huucuong_2107198

    huucuong_2107198 Dragon Quest

    Tham gia ngày:
    29/12/09
    Bài viết:
    1,449
    Calm down mans!
    @Dias: Người khác giúp đỡ phải THANKS ko được LANH CHANH kẻo bị ăn HÀNH :5cool_big_smile:. Có anh PTS thì ko chịu hỏi, hỏi lung ta lung tung rồi la :6cool_what:!
     
  2. _[G]aCon_

    _[G]aCon_ Mr & Ms Pac-Man

    Tham gia ngày:
    8/3/13
    Bài viết:
    175
    Vần vãi :))

    :2onion18::2onion18::2onion18:

    :soldier_baby18: -> :2cool_beated:
     
  3. ngochai9a7

    ngochai9a7 Dragon Quest

    Tham gia ngày:
    5/1/12
    Bài viết:
    1,450
    Mò trên ailienmod thấy có cái plugin Hidden CSO (gần giống thôi)
    PHP:
    /*
    *
    * AMX Mod X script
    * theHidden - mod by Filip Lachacz (kaver.dot[attera]gmail.com ; www.kaver.dl.pl)
    *
    */

    #include <amxmodx>
    #include <amxmisc>
    #include <fun>
    #include <cstrike>
    #include <fakemeta>
    #include <engine>
    #include <hamsandwich>

    #define VERSION "1.01"

    #define KeysCharacterSelection (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9) // Keys: 1234567890
    #define KeysClassSelection (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<8)|(1<<9) // Keys: 1234569

    new Models[][] = {"terror""leet""arctic""guerilla""urban""gsg9""sas""gign"}

    new 
    HiddenID 0

    new PlayersClass[32]
    new 
    PlayersModel[32]
    new 
    PlayersMsgShown[32]

    new 
    LightLevel 109
    new LightMode 1

    new CurClasses[6]
    new 
    MaxClasses[6]

    new 
    FwdKeyValue
    new Ent

    new hpTaskTicks
    new hpTaskMessage[256]

    new 
    hidden_description

    new hidden_speed
    new hidden_health 
    new hidden_health_recover
    new hidden_gravity 

    new hidden_class_a1
    new hidden_class_a2
    new hidden_class_a3
    new hidden_class_s1
    new hidden_class_s2
    new hidden_class_s3

    public hpTask()
    {
        if(
    is_user_aliveHiddenID) && is_user_connected(HiddenID) && CsTeams:cs_get_user_team(HiddenID) == CS_TEAM_T
        {
            if(
    hpTaskTicks 0)
            {
                
    hpTaskTicks--
                
    client_print(HiddenIDprint_centerhpTaskMessage)
                
            }
            else 
    client_print(HiddenIDprint_center"%d HP"get_user_health(HiddenID))
        }
    }    

    public 
    countCurClasses()
    {
        new 
    players[32],count
        get_players
    playerscount)
        
        
    CurClasses[0] = 0
        CurClasses
    [1] = 0
        CurClasses
    [2] = 0
        CurClasses
    [3] = 0
        CurClasses
    [4] = 0
        CurClasses
    [5] = 0
        
        
    new i
        
    for(i=0i<count-1i++)
        {
            
    CurClasses[PlayersClass[i]]++
        }
    }

    public 
    countMaxClasses()
    {
        new 
    players[32],count
        get_players
    (playerscount)
        
    MaxClasses[0] = floatround(count*get_pcvar_float(hidden_class_a1), floatround_ceil)
        
    MaxClasses[1] = floatround(count*get_pcvar_float(hidden_class_a2), floatround_ceil)
        
    MaxClasses[2] = floatround(count*get_pcvar_float(hidden_class_a3), floatround_ceil)
        
    MaxClasses[3] = floatround(count*get_pcvar_float(hidden_class_s1), floatround_ceil)
        
    MaxClasses[4] = floatround(count*get_pcvar_float(hidden_class_s2), floatround_ceil)
        
    MaxClasses[5] = floatround(count*get_pcvar_float(hidden_class_s3), floatround_ceil)
    }

    public 
    pfn_keyvalue(entid)
    {
        new class[
    24], temp1[2], temp2[2]
        
    copy_keyvalue(class, 23temp11temp21)
        
        if (
    equal(class, "info_map_parameters")) {
            if(
    Ent)
            {
                
    remove_entity(Ent)
                
    Ent 0
            
    }
            
            
    DispatchKeyValue(entid"buying""3")
        }
    }

    public 
    Forward_KeyValue(const EntIndex, const KvdHandle)
    {
        if(
    pev_valid(EntIndex))
        {
            new 
    szClassName[32]
            
    get_kvd(KvdHandleKV_ClassNameszClassNamecharsmax(szClassName))
            
            if(
    equal(szClassName"armoury_entity"))
            {
                
    engfunc(EngFunc_RemoveEntityEntIndex)
                return 
    FMRES_SUPERCEDE
            
    }    
        }
        
        return 
    FMRES_IGNORED
    }

    public 
    plugin_precache()
    {
        
    FwdKeyValue register_forward(FM_KeyValue"Forward_KeyValue")
        
        
    Ent create_entity("info_map_parameters")
        
    DispatchKeyValue(Ent"buying""3")
        
    DispatchKeyValue(Ent"bombradius""500")
        
    DispatchSpawn(Ent)
    }

    public 
    plugin_init()
    {
        
    register_plugin("theHidden"VERSION"Filip Lachacz")
        
        
    register_menucmd(register_menuid("ClassSelection"), KeysClassSelection"PressedClassSelection")
        
    register_menucmd(register_menuid("CharacterSelection"), KeysCharacterSelection"PressedCharacterSelection")
        
    register_clcmd("chooseteam","chooseteam")
        
    register_event("Damage","event_damage","b")
        
    register_event("ResetHUD","event_spawn","be")
        
    register_event"CurWeapon""event_cur_weapon""be""1=1" )
        
    register_logevent("round_end"2"1=Round_End")
        
        
    RegisterHam(Ham_Touch"weaponbox""fw_TouchWeapon")
        
    RegisterHam(Ham_Touch"armoury_entity""fw_TouchWeapon")
        
    RegisterHam(Ham_Touch"weapon_shield""fw_TouchWeapon")
        
        
    register_clcmd("hidden_info","show_info")
        
        
    hidden_description register_cvar("hidden_description""1")

        
    hidden_speed register_cvar("hidden_speed""900.0")
        
    hidden_health register_cvar("hidden_health""600")
        
    hidden_health_recover register_cvar("hidden_health_recover""10")
        
    hidden_gravity register_cvar("hidden_gravity""0.75")
        
        
    hidden_class_a1 register_cvar("hidden_class_a1""0.2125")
        
    hidden_class_a2 register_cvar("hidden_class_a2""0.1875")
        
    hidden_class_a3 register_cvar("hidden_class_a3""0.1875")
        
    hidden_class_s1 register_cvar("hidden_class_s1""0.12")
        
    hidden_class_s2 register_cvar("hidden_class_s2""0.2125")
        
    hidden_class_s3 register_cvar("hidden_class_s3""0.07")
        
        
        
    unregister_forward(FM_KeyValueFwdKeyValue)
        
    register_forwardFM_GetGameDescription"gameDescription"); 
        
        
    register_dictionary("theHidden.txt")
        
        for(new 
    i=0i<32i++) 
        {
            
    PlayersClass[i] = random_num(05)
            
    PlayersModel[i] = random_num(07)
            
    PlayersMsgShown[i] = 0
        
    }
        
        
    set_task(10.0"lightTask"0""0"b")
        
    set_task(0.1"hpTask"0""0"b")
    }

    public 
    fw_TouchWeapon(weapon,id)
    {
        if (!
    is_user_connected(id))
            return 
    HAM_IGNORED
        
        
    if(HiddenID==id)
            return 
    HAM_SUPERCEDE
        
        
    return HAM_IGNORED
    }


    public 
    gameDescription()

        if(
    get_pcvar_num(hidden_description)!=0)
        {
            
    forward_returnFMV_STRING"theHidden")
            return 
    FMRES_SUPERCEDE
        
    }
        return 
    FMRES_IGNORED
    }

    public 
    event_damage(id)
    {
        new 
    VictimID id    
        
    new DamageTook read_data)
        new 
    DamageType read_data)
        new 
    WeaponIDAttackerID
        AttackerID 
    get_user_attacker(VictimIDWeaponID)
        new 
    Health get_user_health(AttackerID)
        if(
    AttackerID==HiddenID && VictimID!=HiddenID && DamageTook>&& WeaponID==CSW_KNIFE)
        {
            new 
    players[32],count
            get_players
    (playerscount)
            
    set_user_health(HiddenIDHealth+DamageTook+get_pcvar_num(hidden_health_recover)*count)
            new 
    VictimName[32]
            
    get_user_name(VictimIDVictimName31)
            
    hpTaskTicks 15
            format
    (hpTaskMessage256"%L"HiddenID"MSG_TOOK_DAMAGE"DamageTookVictimNameDamageTook+10*count)
        }
    }

    public 
    lightTask(id)
    {
        if(
    LightMode==0LightLevel++; else LightLevel--
        if(
    LightLevel>=109LightMode 1
        
    if(LightLevel<=97LightMode 0
        
    new temp[2]
        
    temp[0]=LightLevel
        temp
    [1]=0
        set_lights
    (temp)
    }

    public 
    send_message(text[256])
    {
        
    message_begin(MSG_ALLget_user_msgid("SayText"), {0,0,0}, 0)
        
    write_byte(1)
        
    write_string(text)
        
    message_end()
    }

    public 
    client_connect(id)
    {
        
    PlayersMsgShown[id-1] = 1
    }

    public 
    client_impulse(idimpulse)
    {
        if(
    impulse == 100 && CsTeams:get_user_team(id) == CS_TEAM_T) return PLUGIN_HANDLED_MAIN
        
    return PLUGIN_CONTINUE
    }

    public 
    event_spawn(id)
    {
        if(
    HiddenID==idhpTaskTicks=0
        set_task
    (0.1,"player_spawn",id)
        
    countMaxClasses()
    }

    public 
    round_start(id)
    {
        
    set_task(0.1,"newround",id)
        
    }

    public 
    event_cur_weapon(id)
    {
        if(
    id==HiddenIDset_user_maxspeed(HiddenIDget_pcvar_float(hidden_speed))
    }

    public 
    show_info(id)
    {
        
    client_print(idprint_console"theHidden 1.01 by Kaver")
        return 
    PLUGIN_HANDLED
    }

    public 
    chooseteam(id)
    {
        
    ShowClassSelection(id)
        return 
    PLUGIN_HANDLED
    }

    public 
    player_spawn(id)
    {    
        if(
    PlayersMsgShown[id-1]==1)
        {
            
    ShowCharacterSelection(id)
            
    PlayersMsgShown[id-1] = 0
        
    }
        if(
    id==HiddenIDcs_set_user_team(idCS_TEAM_T); else cs_set_user_team(idCS_TEAM_CT)
        
    set_user_godmode(id0)
        
    strip_user_weapons(id)
        switch(
    cs_get_user_team(id))
        {
            case 
    CS_TEAM_CT
            {
                
    cs_set_user_model(idModels[PlayersModel[id-1]])
                
    cs_set_user_nvg(id0)
                
    set_user_hitzones(0id255)
                
    set_user_maxspeed(id, -1.0)
                
    set_user_gravity(id1.0)
                
    give_item(id"weapon_knife")
                switch(
    PlayersClass[id-1])
                {
                    case 
    0:
                    {
                        
    give_item(id"weapon_deagle")
                        
    give_item(id"ammo_50ae")
                        
    give_item(id"ammo_50ae")
                        
    give_item(id"weapon_m3")
                        
    give_item(id"ammo_buckshot")
                        
    give_item(id"ammo_buckshot")
                        
    give_item(id"ammo_buckshot")
                        
    give_item(id"ammo_buckshot")
                    }
                    case 
    1:
                    {
                        
    give_item(id"weapon_p228")
                        
    give_item(id"ammo_357sig")
                        
    give_item(id"ammo_357sig")
                        
    give_item(id"weapon_m4a1")
                        
    give_item(id"ammo_556nato")
                    }
                    case 
    2:
                    {
                        
    give_item(id"weapon_fiveseven")
                        
    give_item(id"ammo_57mm")
                        
    give_item(id"weapon_ak47")
                        
    give_item(id"ammo_762nato")
                    }
                    case 
    3:
                    {
                        
    give_item(id"weapon_smokegrenade")
                        
    give_item(id"weapon_fiveseven")
                        
    give_item(id"ammo_57mm")
                        
    give_item(id"weapon_xm1014")
                        
    give_item(id"ammo_buckshot")
                        
    give_item(id"ammo_buckshot")
                        
    give_item(id"ammo_buckshot")
                        
    give_item(id"ammo_buckshot")
                    }
                    case 
    4:
                    {
                        
    give_item(id"weapon_smokegrenade")
                        
    give_item(id"weapon_p228")
                        
    give_item(id"ammo_357sig")
                        
    give_item(id"ammo_357sig")
                        
    give_item(id"weapon_p90")
                        
    give_item(id"ammo_57mm")
                    }
                    case 
    5:
                    {
                        
                        
    give_item(id"weapon_smokegrenade")
                        
    give_item(id"weapon_fiveseven")
                        
    give_item(id"ammo_57mm")
                        
    give_item(id"weapon_m249")
                        
    give_item(id,"ammo_556natobox")
                        
    give_item(id,"ammo_556natobox")
                    }
                }
                
    set_user_rendering(id,kRenderFxNone,0,0,0,kRenderTransAlpha,255)
            }
            case 
    CS_TEAM_T:
            {
                
    cs_set_user_model(id"vip")
                
    set_user_rendering(id,kRenderFxNone,0,0,0,kRenderTransAlpha,25)
                
    cs_set_user_nvg(id1)
                
    give_item(id"weapon_hegrenade")
                
    give_item(id"weapon_flashbang")
                
    give_item(id"weapon_knife")
                
                
    set_user_maxspeed(idget_pcvar_float(hidden_speed))
                
                
    set_user_gravity(idget_pcvar_float(hidden_gravity))
                
    set_user_hitzones(0id253)
                
                new 
    players[32],count
                get_players
    (playerscount)
                
    set_user_health(idget_pcvar_num(hidden_health)+25*count)
                
                
    hpTaskTicks 30
                format
    (hpTaskMessage256"%L "id"MSG_HIDDEN_YOU")
            }
        }
    }

    public 
    round_end(id)
    {
        
    HiddenID++
        new 
    players[32],count
        get_players
    (playerscount)
        
        
    //client_print(0, print_chat, "[theHidden] DEBUG: HiddenID=%d; count=%d;", HiddenID, count)
        
        
    if(HiddenID>count)
        {
            
    cs_set_user_team(HiddenID-1CS_TEAM_CT)
            
    HiddenID 1
            cs_set_user_team
    (HiddenIDCS_TEAM_T)
            } else if(
    HiddenID>0) {
            
    cs_set_user_team(HiddenID-1CS_TEAM_CT)
            
    cs_set_user_team(HiddenIDCS_TEAM_T)
        }
        
        new 
    i
        
    for (i=0i<counti++)
            
    set_user_godmode(players[i], 1)
        
        new 
    name[32]
        
    get_user_info(HiddenID"name"name31)
        
    client_print(0print_chat"[theHidden] %L "LANG_PLAYER"MSG_HIDDEN_NEW"name)
        
    hpTaskTicks 15
        format
    (hpTaskMessage256"%L"HiddenID"MSG_HIDDEN_YOU_RESPAWN")
    }

    public 
    ShowCharacterSelection(id)
    {
        new 
    character[32]
        if(
    PlayersModel[id-1]==0format(character32"PHOENIX CONNEX")
        if(
    PlayersModel[id-1]==1format(character32"ELITE CREW")
        if(
    PlayersModel[id-1]==2format(character32"ARCTIC AVENGERS")
        if(
    PlayersModel[id-1]==3format(character32"GUERILLA WARFARE")
        if(
    PlayersModel[id-1]==4format(character32"SEAL TEAM 6")
        if(
    PlayersModel[id-1]==5format(character32"GSG-9")
        if(
    PlayersModel[id-1]==6format(character32"SAS")
        if(
    PlayersModel[id-1]==7format(character32"GIGN")
        
        new 
    temp[512]
        
    format(temp512"\y%L: \w%s^n^n"id"MSG_MENU_CHAR_CURRENT"character)
        
    format(temp512"%s\y%L:^n\w[1] PHOENIX CONNEX^n[2] ELITE CREW^n[3] ARCTIC AVENGERS^n[4] GUERILLA WARFARE^n[5] SEAL TEAM 6^n[6] GSG-9^n[7] SAS^n[8] GIGN^n\y[9] %L^n[0] %L^n"tempid"MSG_MENU_CHAR"id"MSG_MENU_CHAR_RANDOM"id"MSG_MENU_CLASS_SELECTION")
        
    show_menu(idKeysCharacterSelectiontemp, -1"CharacterSelection"// Display menu
    }

    public 
    PressedCharacterSelection(idkey)
    {
        if(
    key==8PlayersModel[id-1] = random_num(07); else
        if(
    key<8PlayersModel[id-1] = key
        ShowClassSelection
    (id)
    }

    public 
    ShowClassSelection(id)
    {
        
    countCurClasses()
        
    countMaxClasses()
        
        new 
    tempA1[4]
        
    format(tempA13"%d/%d"CurClasses[0], MaxClasses[0])
        new 
    tempA2[4]
        
    format(tempA23"%d/%d"CurClasses[1], MaxClasses[1])
        new 
    tempA3[4]
        
    format(tempA33"%d/%d"CurClasses[2], MaxClasses[2])
        new 
    tempS1[4]
        
    format(tempS13"%d/%d"CurClasses[3], MaxClasses[3])
        new 
    tempS2[4]
        
    format(tempS23"%d/%d"CurClasses[4], MaxClasses[4])
        new 
    tempS3[4]
        
    format(tempS33"%d/%d"CurClasses[5], MaxClasses[5])
        
        new class[
    16]
        if(
    PlayersClass[id-1]==0format(class, 16"ASSAULT A1")
        if(
    PlayersClass[id-1]==1format(class, 16"ASSAULT A2")
        if(
    PlayersClass[id-1]==2format(class, 16"ASSAULT A3")
        if(
    PlayersClass[id-1]==3format(class, 16"SUPPORT S1")
        if(
    PlayersClass[id-1]==4format(class, 16"SUPPORT S2")
        if(
    PlayersClass[id-1]==5format(class, 16"SUPPORT S3")
        
        new 
    temp[512]
        
    format(temp512"\y%L: \w%s^n^n\y%L:^n"id"MSG_MENU_CLASS_CURRENT", class, id"MSG_MENU_CLASS")
        
    format(temp512"%s\w[1] \rAssault  A1\w  {%s}  M3, Night Hawk^n[2] \rAssault  A2\w  {%s}  M4A1, P228^n[3] \rAssault  A3\w  {%s}  AK47, Five-Seven^n^n[4] \rSupport  S1\w  {%s}  XM1014, Five-Seven, smoke granade^n[5] \rSupport  S2\w  {%s}  P90, P228, smoke granade^n[6] \rSupport  S3\w  {%s}  M249 Para, Five-Seven, smoke granade^n^n"temptempA1tempA2tempA3tempS1tempS2tempS3)
        
    format(temp512"%s\y[9] %L^n[0] %L^n"tempid"MSG_MENU_CHAR_SELECTION"id"MSG_MENU_CLOSE")
        
    show_menu(idKeysClassSelectiontemp, -1"ClassSelection")
    }

    public 
    PressedClassSelection(idkey)
    {
        if(
    key==8ShowCharacterSelection(id); else
        if(
    key==PlayersClass[id-1])
        {
            
    ShowClassSelection(id)
            
    client_print(idprint_chat"[theHidden] %L"id"MSG_CLASS_ALREADY")
            
        } else if(
    key<6)
    {
        if(
    CurClasses[key] < MaxClasses[key])
        {
            
    PlayersClass[id-1] = key
            
    new class[16]
            if(
    PlayersClass[id-1]==0format(class, 16"ASSAULT A1")
            if(
    PlayersClass[id-1]==1format(class, 16"ASSAULT A2")
            if(
    PlayersClass[id-1]==2format(class, 16"ASSAULT A3")
            if(
    PlayersClass[id-1]==3format(class, 16"SUPPORT S1")
            if(
    PlayersClass[id-1]==4format(class, 16"SUPPORT S2")
            if(
    PlayersClass[id-1]==5format(class, 16"SUPPORT S3")
            new 
    name[32]
            
    get_user_info(id"name"name31)
            
    client_print(0print_chat"[theHidden] %L"LANG_PLAYER"MSG_CLASS_CHANGE",  name, class)
        }
        else
        {    
            
    ShowClassSelection(id)
            
    client_print(idprint_chat"[theHidden] %L"id"MSG_CLASS_DISALLOWED")
        }
    }
    }
    Cái này thì giết Hidden xong là hết game, bắt đầu round mới chọn 1 người khác làm Hidden =))
    Ai fix lại giúp được không nhỉ :) (Hoặc gợi ý cũng được)
    Thank :9cool_sweet_kiss:
     
  4. redplane

    redplane Legend of Zelda

    Tham gia ngày:
    7/11/09
    Bài viết:
    1,195
    Định release cái plugin realistic shotgun reloading thì ngại xóa code từ CS RED ==!
     
  5. MrKaii

    MrKaii The Warrior of Light

    Tham gia ngày:
    14/6/11
    Bài viết:
    2,208
    Nơi ở:
    Hà Nội
    @ngochai: remake lại thì mệt lắm, mà cậu mới học amx nên tôi nghĩ cậu nên bắt đầu từ mấy thứ đ.giản thôi, lao vào mod mode làm j
    Tốt nhất là khỏi làm đi, làm mấy mod này khj chơi vs bot mất tính cân bằng, chơi lan thì ko nói. Tốt nhất là mod súng là hay nhất :) hoặc mấy mode hay như csdm, gungame, classic.
     
  6. Kinzu

    Kinzu Mario & Luigi

    Tham gia ngày:
    24/12/12
    Bài viết:
    817
    Ai có đống sma của melee weapons trong CSO NST ko ạ, em muốn xem cách làm mấy cái xung quanh knife.
     
  7. ngochai9a7

    ngochai9a7 Dragon Quest

    Tham gia ngày:
    5/1/12
    Bài viết:
    1,450
    Mình có của bộ nguyên bộ plugin nst này :1cool_byebye: Nhưng đó là bản cũ, nếu lấy thì pm

    - - - Updated - - -

    Giờ chưa có ý tưởng mới gì bác ạ (mới được có 2 cái: 1 cái mua wpn, 1 cái để cheat) =))
     
  8. Kinzu

    Kinzu Mario & Luigi

    Tham gia ngày:
    24/12/12
    Bài viết:
    817
    Bản nào bác, để em down bản đó luôn, bác cứ ném lên đi :D.
     
  9. ngochai9a7

    ngochai9a7 Dragon Quest

    Tham gia ngày:
    5/1/12
    Bài viết:
    1,450
    Bản này từ ver 1011 rồi =))
    này thì 30 kí tự
     

    Các file đính kèm:

  10. _[G]aCon_

    _[G]aCon_ Mr & Ms Pac-Man

    Tham gia ngày:
    8/3/13
    Bài viết:
    175
    mod AVA mà chơi xong mê cmnr hết muốn cs :]]

    _buiducduy_111

    - - - Updated - - -

    mod AVA mà chơi xong mê cmnr hết muốn cs :]]

    _buiducduy_111
     
  11. MrKaii

    MrKaii The Warrior of Light

    Tham gia ngày:
    14/6/11
    Bài viết:
    2,208
    Nơi ở:
    Hà Nội
    sao ko thấy bài của gacon nhỉ, server đang lag à :|
     
  12. Kinzu

    Kinzu Mario & Luigi

    Tham gia ngày:
    24/12/12
    Bài viết:
    817
    Làm thế nào để làm đc mấy vũ khí mà chuột phải delay cao vd như Xẻng trong CF nhỉ, em chỉ biết chỉnh speed khi giữ chuột giữa 2 lần chém thôi, còn time thì vẫn mặc định của CS, dam ko đúng theo anim =,=, bác nào thông não vs =,=
     
  13. andretom1

    andretom1 Youtube Master Race

    Tham gia ngày:
    9/3/13
    Bài viết:
    37
    Có ai có CSO-NST cho up dùm cái plugin NST_Knife.amx dùm cái :3cool_embarrassed:
     
  14. _[G]aCon_

    _[G]aCon_ Mr & Ms Pac-Man

    Tham gia ngày:
    8/3/13
    Bài viết:
    175
    set_task ......... ExecuteHamB(Ham_Weapon_SecondaryAttack, ENT_WPN)

    - - - Updated - - -

    Spam nốt 2 bài....... hoặc ExecuteHamB(Ham_Weapon_PrimarayAttack, ENT_WPN) (click chuột trái)

    - - - Updated - - -

    Đừng quên disable damage mặc định nha

    - - - Updated - - -

    Plugin của ai cũng ko nhớ nữa ~.~

    PHP:
    #include <amxmodx>
    #include <cstrike>
    #include <fakemeta>
    #include <engine>
    #include <hamsandwich>
    #include <wpn_menu>
    #include <zombieplague>
    #include <xs>

    enum _:Hammer_Anim
    {
        
    anim_idle 0,
        
    anim_slash,
        
    anim_draw,
        
    anim_movestab,
        
    anim_idlestab,
        
    anim_stab,
        
    anim_drawstab,
        
    anim_moveslash
    }


    new 
    g_HasHammer[33],g_iModeStab[33],g_ItemID

    new const v_model[64] = "models/ks/v_hammer.mdl"
    new const p_model[64] = "models/ks/p_hammer.mdl"

    public plugin_init()
    {
        
    register_plugin("Hammer","1.0","teo")
        
        
    register_event("CurWeapon","Ev_CurWeapon","be","1=1")
        
    register_event("Damage","Ev_Damage" "b" ,"2>0")
        
    register_forward(FM_CmdStart,"Fw_CmdStart")
        
    register_forward(FM_TraceLine,"Fw_TraceLine")
        
    register_forward(FM_TraceHull,"Fw_TraceHull")
        
    register_forward(FM_EmitSound,"Fw_EmitSound")
        
    register_forward(FM_PlayerPreThink,"Fw_PlayerPreThink")
        
    register_forward(FM_PlayerPostThink,"Fw_PlayerPostThink")
        
        
    RegisterHam(Ham_TraceAttack,"player","Fw_TraceAttack")
        
    RegisterHam(Ham_Spawn,"player","Fw_Spawn_Post",1)
        
    RegisterHam(Ham_Weapon_SendWeaponAnim,"weapon_knife","Fw_Weapon_SendWeaponAnim")
        
    RegisterHam(Ham_Weapon_WeaponIdle,"weapon_knife","Fw_Weapon_WeaponIdle")
        
    RegisterHam(Ham_Weapon_SecondaryAttack,"weapon_knife","Fw_SecondaryAttack_Post",1)
        
    RegisterHam(Ham_Item_Deploy,"weapon_knife","Fw_Item_Deploy_Post",1)
        
        
        
        
    g_ItemID register_melee("Hammer",500)
    }

    public 
    plugin_precache()
    {
        
    precache_model(v_model)
        
    precache_model(p_model)
        
        
    precache_sound("weapons/hammer_swing.wav")
        
    precache_sound("weapons/hammer_hit_stab.wav")
        
    precache_sound("weapons/hammer_hit_slash.wav")
        
    precache_sound("weapons/hammer_draw.wav")
        
    }

    public 
    client_connect(id)    reset_var(id)
    public 
    client_disconnect(id)    reset_var(id)
    public 
    Fw_Spawn_Post(id)    reset_var(id)
    public 
    zp_user_infected_post(id)    reset_var(id)
    public 
    zp_user_humanized_post(id)    reset_var(id)

    public 
    Ev_CurWeapon(id)
    {

        if(!
    is_user_alive(id) || zp_get_user_zombie(id))
            return 
    PLUGIN_CONTINUE
            
        
    new weap read_data(2)
        
        if(
    g_HasHammer[id] && weap == CSW_KNIFE)
        {
            
    set_pev(id,pev_viewmodel2,v_model)
            
    set_pev(id,pev_weaponmodel2,p_model)
        
        }
        return 
    PLUGIN_CONTINUE
    }

    public 
    Ev_Damage(id)
    {
        if(!
    is_user_alive(id))
            return 
    PLUGIN_CONTINUE

        
    new weapon attacker get_user_attacker(id weapon)

        if(!
    is_user_alive(attacker))
            return 
    PLUGIN_CONTINUE

        
    if(weapon == CSW_KNIFE && g_HasHammer[attacker] && g_iModeStab[attacker])
        {
            new 
    Float:vec[3]
            new 
    Float:oldvelo[3]
            
    get_user_velocity(idoldvelo)
            
    create_velocity_vector(id attacker vec)
            
    vec[0] += oldvelo[0]
            
    vec[1] += oldvelo[1]
            
    set_user_velocity(id vec)
        }

        return 
    PLUGIN_CONTINUE
    }

    public 
    Fw_TraceAttack(victim,id,Float:damage)
    {
        if(!
    is_user_connected(victim) || !is_user_alive(id))
            return 
    HAM_IGNORED
        
        
    if(!g_HasHammer[id] || get_user_weapon(id) != CSW_KNIFE)
            return 
    HAM_IGNORED
            
        SetHamParamFloat
    (3,damage*8.50)
        
        return 
    HAM_IGNORED
    }

    public 
    Fw_Weapon_SendWeaponAnim(ent,anim)
    {
        static 
    id 
        id 
    pev(ent,pev_owner)
        if(!
    pev_valid(ent) || !is_user_connected(id))
            return 
    HAM_IGNORED
            
        
    if(g_HasHammer[id] && get_pdata_float(ent,47,4)>0.0 && get_user_weapon(id)==CSW_KNIFE)
            return 
    HAM_SUPERCEDE

        
    return HAM_IGNORED
    }

    public 
    Fw_Weapon_WeaponIdle(ent)
    {
        static 
    id 
        id 
    pev(ent,pev_owner)
        if(!
    pev_valid(ent) || !is_user_connected(id))
            return 
    HAM_IGNORED
            
        
    if(g_HasHammer[id] && get_pdata_float(ent,46,4)>0.0 && get_user_weapon(id)==CSW_KNIFE)
            return 
    HAM_SUPERCEDE

        
    return HAM_IGNORED
    }

    public 
    Fw_SecondaryAttack_Post(ent)
    {
        static 
    id 
        id 
    pev(ent,pev_owner)
        if(!
    pev_valid(ent) || !is_user_connected(id))
            return 
    HAM_IGNORED
            
        
    if(!g_HasHammer[id])
            return 
    HAM_IGNORED
        
        
    if(!g_iModeStab[id])    
        {
            
    set_pdata_float(ent,46,1.30,4)
            
    set_pdata_float(ent,47,1.30,4)
        }
        else
        {
            
    set_pdata_float(ent,46,2.30,4)
            
    set_pdata_float(ent,47,2.30,4)
        }
        
    set_pdata_float(ent,48,9999999.0,4)
        
        return 
    HAM_IGNORED
    }
    public 
    Fw_Item_Deploy_Post(ent)
    {
        static 
    id
        id 
    pev(ent,pev_owner)
        if(!
    pev_valid(ent) || !is_user_connected(id))
            return 
    HAM_IGNORED
            
        
    if(g_HasHammer[id])
        {    
            if(!
    g_iModeStab[id])
            {
                
    set_weapon_anim(id,anim_draw)
                
    set_pdata_float(ent,46,2.0,4)
                
    set_pdata_float(ent,47,0.7,4)
            }
            else
            {
                
    set_weapon_anim(id,anim_drawstab)
                
    set_pdata_float(ent,46,1.50,4)
                
    set_pdata_float(ent,47,0.7,4)
            }
        }
        
        
        return 
    HAM_IGNORED
    }

    public 
    Fw_CmdStart(id,handle,seed)
    {
        static 
    iButton,iEnt
        iButton 
    get_uc(handle,UC_Buttons)
        
    iEnt find_ent_by_owner(-1"weapon_knife"id)
        
        if(
    get_pdata_float(iEnt,47,4) > 0.0)    return
        
        if(
    g_HasHammer[id] && get_user_weapon(id)==CSW_KNIFE)
        {
            if(
    iButton&IN_ATTACK)
            {
                
    set_uc(handle,UC_Buttons,iButton&~IN_ATTACK)
                if(!
    g_iModeStab[id])
                {
                    
    set_task(1.2,"task_hammer_attack",id+1000)
                    
                    
    set_weapon_anim(id,anim_slash)
                    
                    
    set_pdata_float(iEnt,46,2.0,4)
                    
    set_pdata_float(iEnt,47,2.0,4)
                }
                
                else
                {
                    
                    
    set_task(0.001,"task_hammer_attack",id+1000)
                    
                    
    set_weapon_anim(id,anim_stab)
                    
                    
    set_pdata_float(iEnt,46,2.5,4)
                    
    set_pdata_float(iEnt,47,2.5,4)
                }
            }
            else if(
    iButton&IN_ATTACK2)
            {
                
    set_uc(handle,UC_Buttons,iButton&~IN_ATTACK2)
                
                if(!
    g_iModeStab[id])
                {
                    
    g_iModeStab[id] = 1
                    
                    set_weapon_anim
    (id,anim_movestab)
                    
                    
    set_pdata_float(iEnt,46,1.8,4)
                    
    set_pdata_float(iEnt,47,1.8,4)
                    
    set_pdata_float(iEnt,48,99999.0,4)
                    
                }
                else
                {
                    
    g_iModeStab[id] = 0
                    
                    set_weapon_anim
    (id,anim_moveslash)
                    
                    
    set_pdata_float(iEnt,46,1.8,4)
                    
    set_pdata_float(iEnt,47,1.8,4)
                    
    set_pdata_float(iEnt,48,99999.0,4)
                }
                
            }
        }
    }

    public 
    task_hammer_attack(taskid)
    {
        new 
    id taskid 1000
        
        
    new ent find_ent_by_owner(-1,"weapon_knife",id)
        
        if(!
    is_user_alive(id) || !g_HasHammer[id] || get_user_weapon(id) != CSW_KNIFE)
            return
            
        
    ExecuteHamB(Ham_Weapon_SecondaryAttack,ent)
        
    }



    public 
    Fw_TraceLine(Float:vector_start[3], Float:vector_end[3], ignored_monsteridhandle)
    {
        if (!
    is_user_alive(id))
            return 
    FMRES_IGNORED
        
        
    if (get_user_weapon(id) != CSW_KNIFE)
            return 
    FMRES_IGNORED
            
        
    if( !g_HasHammer[id])
            return 
    HAM_IGNORED;
            
        if (
    get_pdata_float(get_pdata_cbase(id3735), 464) <= 0.0)
            return 
    FMRES_IGNORED
        
        
    new Float:vecStart[3], Float:vecEnd[3], Float:v_angle[3], Float:v_forward[3], Float:view_ofs[3], Float:fOrigin[3]
        
    pev(idpev_originfOrigin)
        
    pev(idpev_view_ofsview_ofs)
        
    xs_vec_add(fOriginview_ofsvecStart)
        
    pev(idpev_v_anglev_angle)
        
    engfunc(EngFunc_MakeVectorsv_angle)
        
    get_global_vector(GL_v_forwardv_forward)
        
        
    xs_vec_mul_scalar(v_forward130.0v_forward)
        
    xs_vec_add(vecStartv_forwardvecEnd)
        
        
    engfunc(EngFunc_TraceLinevecStartvecEndignored_monsteridhandle)
        
        return 
    FMRES_SUPERCEDE
    }

    public 
    Fw_TraceHull(Float:vector_start[3], Float:vector_end[3], ignored_monsterhullidhandle)
    {
        if (!
    is_user_alive(id))
            return 
    FMRES_IGNORED
        
        
    if (get_user_weapon(id) != CSW_KNIFE)
            return 
    FMRES_IGNORED
            
        
    if( !g_HasHammer[id])
            return 
    HAM_IGNORED;
        
        if (
    get_pdata_float(get_pdata_cbase(id3735), 464) <= 0.0)
            return 
    FMRES_IGNORED
        
        
    new Float:vecStart[3], Float:vecEnd[3], Float:v_angle[3], Float:v_forward[3], Float:view_ofs[3], Float:fOrigin[3]
        
    pev(idpev_originfOrigin)
        
    pev(idpev_view_ofsview_ofs)
        
    xs_vec_add(fOriginview_ofsvecStart)
        
    pev(idpev_v_anglev_angle)
        
    engfunc(EngFunc_MakeVectorsv_angle)
        
    get_global_vector(GL_v_forwardv_forward)
        
        
    xs_vec_mul_scalar(v_forward130.0v_forward)
        
    xs_vec_add(vecStartv_forwardvecEnd)
        
        
    engfunc(EngFunc_TraceHullvecStartvecEndignored_monsterhullidhandle)
        
        return 
    FMRES_SUPERCEDE
    }

    public 
    Fw_EmitSound(id,channel,const sound[])
    {
        if(!
    is_user_connected(id) || !g_HasHammer[id] || get_user_weapon(id) != CSW_KNIFE)
            return 
    FMRES_IGNORED
            
        
    if(equal(sound,"weapons/knife_stab.wav"))
        {
            if(!
    g_iModeStab[id])
                
    emit_sound(id,CHAN_AUTO,"weapons/hammer_hit_slash.wav",1.0,ATTN_NORM,0,PITCH_NORM)
            else
                
    emit_sound(id,CHAN_AUTO,"weapons/hammer_hit_stab.wav",1.0,ATTN_NORM,0,PITCH_NORM)
            
        }
        else if(
    equal(sound,"weapons/knife_hitwall1.wav") || equal(sound,"weapons/knife_slash1.wav") || equal(sound,"weapons/knife_slash2.wav") )
        {
            
    emit_sound(id,CHAN_AUTO,"weapons/hammer_swing.wav",1.0,ATTN_NORM,0,PITCH_NORM)
        }
        else
        {
            return 
    FMRES_IGNORED
        
    }
        
        return 
    FMRES_SUPERCEDE
    }

    public 
    Fw_PlayerPreThink(id)
    {
        if(!
    is_user_connected(id) || !g_HasHammer[id] || get_user_weapon(id) != CSW_KNIFE)
            return 
    FMRES_IGNORED
            
        
    if(get_pdata_float(find_ent_by_owner(-1,"weapon_knife",id),46,4) > 0.0)
            return 
    FMRES_IGNORED
            
        
    if(!g_iModeStab[id])
        {
            
    set_weapon_anim(id,anim_idle)
        }
        else
        {
            
    set_weapon_anim(id,anim_idlestab)
        }
        return 
    FMRES_IGNORED
    }

    public 
    Fw_PlayerPostThink(id)
    {
        if(!
    is_user_connected(id) || !g_HasHammer[id] || get_user_weapon(id) != CSW_KNIFE)
            return 
    FMRES_IGNORED
            
        
    if(!g_iModeStab[id])
        {
            
    set_pev(id,pev_maxspeed,250.0)
        }
        else
        {
            
    set_pev(id,pev_maxspeed,100.0)
        }
        return 
    FMRES_IGNORED
    }


    public 
    melee_selected(id,itemid)
    {
        if(
    itemid != g_ItemID)
            return
            
        
    g_HasHammer[id] = 1
        reset_user_knife
    (id)
        
    }

    reset_var(id)
    {
        
    g_HasHammer[id] = 0
        g_iModeStab
    [id] = 0
    }


    stock create_velocity_vector(victim,attacker,Float:velocity[3])
    {
        if(!
    is_user_alive(victim) || !is_user_alive(attacker))
            return 
    0;

        new 
    Float:vicorigin[3]
        new 
    Float:attorigin[3]
        
    entity_get_vector(victim   EV_VEC_origin vicorigin)
        
    entity_get_vector(attacker EV_VEC_origin attorigin)

        new 
    Float:origin2[3]
        
    origin2[0] = vicorigin[0] - attorigin[0]
        
    origin2[1] = vicorigin[1] - attorigin[1]

        new 
    Float:largestnum 0.0

        
    if(floatabs(origin2[0])>largestnumlargestnum floatabs(origin2[0])
        if(
    floatabs(origin2[1])>largestnumlargestnum floatabs(origin2[1])

        
    origin2[0] /= largestnum
        origin2
    [1] /= largestnum

        velocity
    [0] = ( origin2[0] * (20.0 3000) ) / get_entity_distance(victim attacker)
        
    velocity[1] = ( origin2[1] * (20.0 3000) ) / get_entity_distance(victim attacker)
        if(
    velocity[0] <= 20.0 || velocity[1] <= 20.0)
            
    velocity[2] = random_float(200.0 275.0)

        return 
    1
    }
    stock reset_user_knife(id)
    {
        if(
    user_has_weapon(idCSW_KNIFE))
            
    ExecuteHamB(Ham_Item_Deployfind_ent_by_owner(-1"weapon_knife"id))
        
    engclient_cmd(id"weapon_knife")
        
    emessage_begin(MSG_ONEget_user_msgid("CurWeapon"), _id)
        
    ewrite_byte(1
        
    ewrite_byte(CSW_KNIFE
        
    ewrite_byte(-1)
        
    emessage_end()
    }
    stock set_weapon_anim(idanim)
    {
        
    set_pev(idpev_weaponanimanim)
        
        
    message_begin(MSG_ONE_UNRELIABLESVC_WEAPONANIM_id)
        
    write_byte(anim)
        
    write_byte(pev(id,pev_body))
        
    message_end()
    }    
    - - - Updated - - -

    sao chưa sửa được ta ........ !!!!
     
  15. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    [Dproto 0.9.187 (2013)]
    - Dạo này có rất nhiều câu hỏi về việc Steam đã Update HLDS làm cho việc sử dụng dproto là không thể, nhưng không sao. Steam Update HLDS thì Crock cũng Update dproto :)

    *Đặc Điểm:
    - Hỗ trợ HLDS 2013
    - Anti Flood UDP (cho HLDS)
    - Patch Server (Làm cho Non-Steam, Steam, P47, P48 đều có thể vào được server)

    Download: http://cs.rin.ru/forum/viewtopic.php?f=29&t=55986&sid=1cb1b61f47e0b01a8532122074e4fa8d
    (Thích thì down ở attachment dưới đây)
     

    Các file đính kèm:

  16. Kinzu

    Kinzu Mario & Luigi

    Tham gia ngày:
    24/12/12
    Bài viết:
    817
    Tưởng bác viết tut gì :v.
     
  17. hatchodoitavui

    hatchodoitavui Youtube Master Race

    Tham gia ngày:
    17/5/10
    Bài viết:
    7
    em mạo muội xin PLUGIN nhảy + bắn + rút súng nhanh như CS 1.1 đc ko ạ
    ko thì bác nào chỉ em cách làm plugin đó em tự làm cũng dc :D đam mê sẵn sàng học để tự làm 2 kái đó thôi
    Bác nào có lòng hảo tâm thì giúp còn ko thì đừng spam dạng như "sang 1.1 mà chơi"
    lý do: CS1.1 h` đang được chuộng lại ở VN nếu có plugin cho 1.6 giống vài điểm với CS11 tiên lượng sẽ đắt khách, CS11 bắn thích nhưng lỗi quá:
    - Lỗi bắn ko HS, chỉ tâm vào đầu bắn trúng, tóe máu nhưng nó tính như vào ngực và vai nên mất ít máu, vác hẳn AWP zoom lên kê mồm bắn chết ko HS =))
    - Lỗi bật 2 tâm súng 46 (zoom 2 của AWP) khi lia tâm sang ngang sẽ thấy nó lúc đi lúc ko, chuột đi nhưng tâm ko đi (mình dùng DA và sensei)
    2 lỗi trên rất là ảnh hưởng vì bắn thường xuyên gặp đó là chưa kể
    - Lỗi ném bom xuyên tường

    - - - Updated - - -

    buny thì đã có cái này nhưng nó chỉ cho map KZ thôi ko có cs_italy và em ko biết cài, cài xong vào game ko chạy đc
    Mã:
    http://forums.alliedmods.net/showthread.php?p=610329
    nhảy bắn đã có cái này nhưng cũng biết cài vào game ko chạy đc
    Mã:
    http://forums.alliedmods.net/showthread.php?t=138117
    cái này hình như là delay súng nhanh thì phải em cũng ko biết cài
    Mã:
    http://forums.alliedmods.net/showthread.php?p=1193990
     
  18. ngochai9a7

    ngochai9a7 Dragon Quest

    Tham gia ngày:
    5/1/12
    Bài viết:
    1,450
    Khai báo tên plugin trong plugin.ini chưa =))
     
  19. NguLongHaKhac

    NguLongHaKhac T.E.T.Я.I.S

    Tham gia ngày:
    5/2/11
    Bài viết:
    653
    Nơi ở:
    MC
    Có bạn nào có plugin hiện hud máu,ap + hình súng không :1cool_byebye: ngồi mò bộ plug của csred mà tách ra nó cứ khó khó kiểu gì ấy :2cool_sad:
     
  20. Kinzu

    Kinzu Mario & Luigi

    Tham gia ngày:
    24/12/12
    Bài viết:
    817
    http://forums.alliedmods.net/showthread.php?t=138117

    Down về, cài rồi chỉnh thông số là đc.
     

Chia sẻ trang này