[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. kungfulon

    kungfulon Fire in the hole! Lão Làng GVN Sorcerer

    Tham gia ngày:
    1/5/11
    Bài viết:
    2,535
    Viết như mi thì ai hiểu[​IMG]
    Tùy từng trường hợp mà hiểu nó theo những nghĩa khác nhau[​IMG]
     
  2. teobrvt1995

    teobrvt1995 T.E.T.Я.I.S

    Tham gia ngày:
    19/9/10
    Bài viết:
    691
    cái đó là gì nhi? nói nghe coi dias :))
     
  3. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    Decompile AMXX -> sma//////////////////////////////
     
  4. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
    Mấy anh cho em hỏi làm sao để có vòng sáng quanh người và ko bị damge ạ (Plugins đấu đội ấy)
     
  5. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    Nếu là models thì TE_MODEL, sprite thì TE_SPRITE
     
  6. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
    Còn cái protect ko cho gây damage ạ.. Bác nói kĩ hơn dùm em.. em chẳng hỉu gì!
     
  7. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    - Cái vòng màu xanh đó là model hoặc sprite nếu vậy thì message begin với TE_MODEL hoặc TE_SPRITE. Vào message_const cho biết cần write những gì
    - Protect ko cho gây dmg dễ mà

    PHP:
    #include <hamsandwich>

    new bool:can_be_damaged[33]

    public 
    plugin_init()
    {
            
    RegisterHam(Ham_TakeDamage"player""fw_takedmg")

            
    register_clcmd("say /i-dont-want-to-die""no_damage")
    }

    public 
    no_damage(id)
    {
           
    can_be_damaged[id] = true
    }

    public 
    fw_takedmg(victiminflictorattackerFloat:damagedamagebits)
    {
           if(!
    can_be_damaged[victim])
                     return 
    HAM_SUPERCEDE

           
    return HAM_HANDLED
    }
     
  8. kungfulon

    kungfulon Fire in the hole! Lão Làng GVN Sorcerer

    Tham gia ngày:
    1/5/11
    Bài viết:
    2,535
    Bot vẫn dính dmg và bắn vẫn tóe máu đấy=))
     
  9. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    Thì đổi Ham_TakeDamage -> Ham_TraceAttack
    P/S: QUay lại trang trước đi ta có câu hỏi đó
     
  10. teobrvt1995

    teobrvt1995 T.E.T.Я.I.S

    Tham gia ngày:
    19/9/10
    Bài viết:
    691
    Dùng godmode của fun module ,TE_GLOW để tạo vòng sáng, set_rendering để tạo ánh sáng cho player
     
  11. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
    Các bác sửa dùm em cái này với... Thanks các bác nhìu... :)
    ::::::
    - Warning line 77 "if (cs_get_user_team(attacker) == CS_TEAM_T) g_t++"
    - Khi respawn chỉ có user bị strip vũ khí và mất hết tiền còn bot thì ko bị "trip all weapon", tiền thì vẫn có đủ 16k mua súng :(
    - Ko có protect cho player mới hồi sinh, ko có vòng sáng quanh người (chỉ cần màu đỏ thôi bác ạ, em tìm trong fun ko thấy :( _)
    PHP:

    // Khai báo
    #include <amxmodx>
    #include <amxmisc>
    #include <hamsandwich>
    #include <fun>
    #include <cstrike>


    #define PLUGIN    "DeathMatch"
    #define AUTHOR    "Bui Duc DUy"
    #define VERSION    "1.0"

    new max_kill,g_tg_ct cvar_maxkill,attacker

    enum 
    (+=100)
    {
        
    TASK_SPAWM 2000,
        
    TASK_HUD,
        
    TASK_OUT,
        
    TASK_HIDE
        
    }
    #define ID_TASK_SPAWM (taskid - TASK_SPAWM)
    #define ID_TASK_HUD (taskid - TASK_HUD)
    #define ID_TASK_OUT (taskid - TASK_OUT)
    #define ID_TASK_HIDE (taskid - TASK_HIDE)

    public plugin_init()
    {
        
    register_plugin(PLUGINVERSIONAUTHOR)
        
    // register 
        
    register_event("DeathMsg""event_DeathMsg""a")
        
    register_concmd("bdd_respawm_admin","respawm_admin")
        
    RegisterHamHam_Spawn"player""fwdPlayerSpawn"1)
        
        
    cvar_maxkill register_cvar("bdd_dm_maxkill","150")
        
    max_kill get_pcvar_num(cvar_maxkill)
        
        
    set_task(1.0"check_score"___"b")
        
    }


    //  Hiện hud bảng điểm
    public client_putinserver(id)
    {
        
    set_task(0.1"show_hud"id__"b")
    }

    public 
    show_hud(id)
    {
        if(
    is_user_connected(id))
        {
            
    set_hudmessage(255255255, -1.00.0102.02.0)
            
    show_hudmessage(id"[GR] %i |  %i  |  %i [BL]"g_ct,max_killg_t)
        } 
        else 
        {
            
    remove_task(id)
        }
    }


    // Player hồi sinh , nhưng mà ko có hiệu quả với BOT
    public fwdPlayerSpawn(id)
    {
        
    cs_set_user_money(id,0)
        
    set_task(1.0,"hide_weapon",id+TASK_HIDE)
    }

    // Xem có ai chết để respawn cho người đó. Ở đây em phải để bot riêng và user riêng , tại vì lúc hiện cái thanh   bartime mà
    // để cho bot nữa thì nó bác lỗi MSG_ONE với MSG_ONE... gì gì đấy ạ> ? Các bác sửa dùm em lun nha :)

    public event_DeathMsg()
    {
        for (new 
    id 1id 33id++)
        {
            if (!
    is_user_alive(id) && is_user_bot(id)) set_task(7.0,"respawn_a_player",id+TASK_SPAWM)    
            if (!
    is_user_alive(id) && !is_user_bot(id)) client_cmd(id,"bdd_respawm_admin")
                
        }    
        
        
    attacker read_data(1)
        if (
    cs_get_user_team(attacker) == CS_TEAM_Tg_t++  // Warning chỗ này
        
    else g_ct++
    }

    // Kiểm tra điểm để thoát game
    public check_score(id)
    {
        if (
    g_ct == max_kill
        {
            for (new 
    id 1id <33;id++)
            {
                if (!
    is_user_bot(id))
                {
                    if (
    cs_get_user_team(id) == CS_TEAM_CT)
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Success")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    } 
                    else
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Fail")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    }
                }
            }
            
        }
        else if (
    g_t == max_kill
        {
            for (new 
    id 1id <33;id++)
            {
                if (!
    is_user_bot(id))
                {
                    if (
    cs_get_user_team(id) == CS_TEAM_T)
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Success")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    } 
                    else
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Fail")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    }
                }
            }
        }
    }

    public 
    me_out(taskid)
    {
        new 
    id ID_TASK_OUT
        client_cmd
    (id,"quit")
    }

    public 
    respawm_admin(id)
    {
        
        
    show_bartime(id7)
        
    set_task(7.0,"respawn_a_player",id+TASK_SPAWM)    
    }


        
    public 
    respawn_a_player(taskid)
    {
        new 
    id ID_TASK_SPAWM
        ExecuteHamB
    (Ham_CS_RoundRespawnid)
        if (
    task_exists(id+TASK_HUD)) remove_task(id+TASK_HUD)
        if (
    task_exists(id+TASK_SPAWM)) remove_task(id+TASK_SPAWM)
    }


    public 
    hide_weapon(taskid)
    {
        new 
    id ID_TASK_HIDE
        
    new wpnclipammo
        wpn 
    get_user_weapon(id,clip,ammo)
        if (
    wpn != CSW_KNIFE
        {
            
    strip_user_weapons(id)
            
    give_item(id,"weapon_knife")
        }
        if (
    task_exists(id+TASK_HIDE)) remove_task(id+TASK_HIDE)
    }
    //Func
    stock show_bartime(idtotal_time)
    {
        
    emessage_begin(MSG_ONE,108,{0,0,0},id)
        
    ewrite_short(total_time)
        
    emessage_end()
        return
    }
     
    Chỉnh sửa cuối: 28/11/11
  12. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    - Ta compile ko thấy warning chắc là chú sắp xếp code không đúng dòng là nó bị vậy đó
    - Với bot, strip của nó nó lại mua lại... Cái code mua là nó gắn trong dll của bot chứ nó ko mua = menu của player nên ko chặn nó mụa dc
    - Muốn có vòng sáng quanh người kiểu vầy phải không ?
    [​IMG]
    PHP:
    set_user_rendering(idkRenderFxGlowShell02550kRenderNormal255// Vòng sáng màu xanh lục
     
  13. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
    Vậy làm sao bỏ được C4 ra khỏi chế độ này ạ (nếu ko được dùng Envent CurWeapon) ? Thằng bot nó vẫn có C4 :(

    ---------- Post added at 19:49 ---------- Previous post was at 19:29 ----------

    Ôi ko, cái code trên ko chạy kìa... anh fix lun giùm em với
    PHP:


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


    #define PLUGIN    "DeathMatch"
    #define AUTHOR    "Bui Duc DUy"
    #define VERSION    "1.0"

    new max_kill,g_tg_ct cvar_maxkill,attacker
    new bool:protect[33

    enum (+=100)
    {
        
    TASK_SPAWM 2000,
        
    TASK_HUD,
        
    TASK_OUT,
        
    TASK_HIDE,
        
    TASK_PROTECT
    }
    #define ID_TASK_SPAWM (taskid - TASK_SPAWM)
    #define ID_TASK_HUD (taskid - TASK_HUD)
    #define ID_TASK_OUT (taskid - TASK_OUT)
    #define ID_TASK_HIDE (taskid - TASK_HIDE)
    #define ID_PROTECT (taskid - TASK_PROTECT)

    public plugin_init()
    {
        
    register_plugin(PLUGINVERSIONAUTHOR)
        
    // register 
        
    register_event("DeathMsg""event_DeathMsg""a")
        
    register_concmd("bdd_respawm_admin","respawm_admin")
        
        
    RegisterHam(Ham_Spawn"player""fwdPlayerSpawn"1)
        
    RegisterHam(Ham_TraceAttack"player""fw_trace"// ko có tác  dụng gì
        
    RegisterHam(Ham_TakeDamage"player""fw_takedamage")  // ko có tác  dụng gì
        
        
    cvar_maxkill register_cvar("bdd_dm_maxkill","150")
        
    max_kill get_pcvar_num(cvar_maxkill)
        
        
    set_task(1.0"check_score"___"b")
        
    }

    public 
    client_putinserver(id)
    {
        
    set_task(0.1"show_hud"id__"b")
    }

    public 
    show_hud(id)
    {
        if(
    is_user_connected(id))
        {
            
    set_hudmessage(255255255, -1.00.0102.02.0)
            
    show_hudmessage(id"[GR] %i |  %i  |  %i [BL]"g_ct,max_killg_t)
        } 
        else 
        {
            
    remove_task(id)
        }
    }

    // respawm
    public fwdPlayerSpawn(id)
    {
        
    protect[id] = true
        cs_set_user_money
    (id,0)
        
    set_task(1.0,"hide_weapon",id+TASK_HIDE)
        
    fm_set_rendering(idkRenderFxGlowShell25500kRenderNormal16)
        
    set_task(7.0"DisableTheProtection"id TASK_PROTECT)
    }

    public 
    fw_trace(victimidattackerFloat:damageFloat:direction[3], traceresultdamagebits)
    {
        if(
    protect[victim]) return HAM_SUPERCEDE
        
    return HAM_IGNORED// Warning
    }  

    public 
    fw_takedamage(victiminflictorattackerFloat:damage)
    {
        if(
    protect[victim]) return HAM_SUPERCEDE
        
    return HAM_IGNORED// Warning


    public 
    DisableTheProtection(taskid)
    {
        new 
    id ID_PROTECT
        protect
    [id] = false
        fm_set_rendering
    (idkRenderFxGlowShell000kRenderNormal16)
    }

    public 
    event_DeathMsg()
    {
        for (new 
    id 1id 33id++)
        {
            if (!
    is_user_alive(id) && is_user_bot(id)) set_task(7.0,"respawn_a_player",id+TASK_SPAWM)    
            if (!
    is_user_alive(id) && !is_user_bot(id)) client_cmd(id,"bdd_respawm_admin")
                
        }    
        
        
    attacker read_data(1)
        if (
    cs_get_user_team(attacker) == CS_TEAM_Tg_t++ 
        else 
    g_ct++
    }
    public 
    check_score(id)
    {
        if (
    g_ct == max_kill
        {
            for (new 
    id 1id <33;id++)
            {
                if (!
    is_user_bot(id))
                {
                    if (
    cs_get_user_team(id) == CS_TEAM_CT)
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Success")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    } 
                    else
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Fail")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    }
                }
            }
            
        }
        else if (
    g_t == max_kill
        {
            for (new 
    id 1id <33;id++)
            {
                if (!
    is_user_bot(id))
                {
                    if (
    cs_get_user_team(id) == CS_TEAM_T)
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Success")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    } 
                    else
                    {
                        
    set_hudmessage(255,0,0,-1.0,-1.006.02.00.00.0, -1)
                        
    show_hudmessage(id"Mission Fail")
                        
    set_task(5.0,"me_out",id+TASK_OUT)
                    }
                }
            }
        }
    }

    public 
    me_out(taskid)
    {
        new 
    id ID_TASK_OUT
        client_cmd
    (id,"quit")
    }

    public 
    respawm_admin(id)
    {
        
        
    show_bartime(id7)
        
    set_task(7.0,"respawn_a_player",id+TASK_SPAWM)    
    }


        
    public 
    respawn_a_player(taskid)
    {
        new 
    id ID_TASK_SPAWM
        ExecuteHamB
    (Ham_CS_RoundRespawnid)
        if (
    task_exists(id+TASK_HUD)) remove_task(id+TASK_HUD)
        if (
    task_exists(id+TASK_SPAWM)) remove_task(id+TASK_SPAWM)
    }

    public 
    hide_weapon(taskid)
    {
        new 
    id ID_TASK_HIDE
        
    new wpnclipammo
        wpn 
    get_user_weapon(id,clip,ammo)
        if (
    wpn != CSW_KNIFE
        {
            
    strip_user_weapons(id)
            
    give_item(id,"weapon_knife")
        }
        if (
    task_exists(id+TASK_HIDE)) remove_task(id+TASK_HIDE)
    }
    //Func
    stock show_bartime(idtotal_time)
    {
        
    emessage_begin(MSG_ONE,108,{0,0,0},id)
        
    ewrite_short(total_time)
        
    emessage_end()
        return
    }

    stock fm_set_rendering(indexfx=kRenderFxNoner=255g=255b=255render=kRenderNormalamount=16)
    {
        
    set_pev(indexpev_renderfxfx)
        new 
    Float:RenderColor[3]
        
    RenderColor[0] = float(r)
        
    RenderColor[1] = float(g)
        
    RenderColor[2] = float(b)
        
    set_pev(indexpev_rendercolorRenderColor)
        
    set_pev(indexpev_rendermoderender)
        
    set_pev(indexpev_renderamtfloat(amount))

        return 
    1
    }
     
    Chỉnh sửa cuối: 28/11/11
  14. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
    Ai vô giúp em với!!!! Help me please!
     
  15. cs_pro1

    cs_pro1 Mr & Ms Pac-Man

    Tham gia ngày:
    15/7/10
    Bài viết:
    119
    Ai có Plugin này mình xin nhaplugin g4u_armoury.amxx thank plugin thêm súng vào map của G4u
     
  16. huucuong_210719

    huucuong_210719 Youtube Master Race

    Tham gia ngày:
    4/9/11
    Bài viết:
    28
    Thấy topic vắng vẻ qua vô góp vui xíu.
    Đặt hàng: 1 func input là 1 string (số), out put là các chữ số ở các hàng đơn vị, chục, trăm ...
    EX:
    public fun(string)
    {
    .....
    }
    call: fun("1234") sẽ trả về 1, 2 , 3, 4.
    Ai làm được đầu tiên cộng rep

    ---------- Post added at 08:22 ---------- Previous post was at 08:13 ----------

    Ko ai làm thì thôi nha ! Dễ quá mà !
     
  17. sontung0

    sontung0 Dragon Quest

    Tham gia ngày:
    27/5/09
    Bài viết:
    1,333
    PHP:
    /**
     * @param iNum        So can phan tich
     * @param iSize        So phan tu muon lay (iSize = 0 thi lay tat ca)
     */
    stock Array:num_parse(iNumiSize 0)
    {
        
    iNum abs(iNum)
        
        if (!
    iSize)
        {
            new 
    sStr[32]
            
    num_to_str(iSizesStrcharsmax(sStr))
            
    iSize strlen(iSize)
        }
        
        new Array:
    aOut ArrayCreate(11)
        while (
    ArraySize(aOut) < iSize)
        {
            new 
    iCell = (iNum) ? (iNum 10) ? 0
            
            iNum 
    = (iNum iCell) / 10
            
            ArrayPushCell
    (aOutiCell)
        }
        
        return 
    aOut;
    }
    VD:
    PHP:
        new Array:aNum num_parse(1234)
        for (new 
    0ArraySize(aNum); i++)
        {
            new 
    iNumber ArrayGetCell(aNumi)
        }
        
    // ket qua tra ve se la "0123"
        // còn nếu num_parse(123, 2) thi ket qua se là "23"
    cộng rep đê :>
    chắc định làm score ;))
     
    Chỉnh sửa cuối: 30/11/11
  18. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    @sontung0:
    - PM mấy lần ko help :|
    - Thông thường thì mình sài TE_SPRAY để tạo ra lửa và cho bay tới phía trước... Nếu sài VelocityByAim thì bay đụng nó sẽ dội lại mà của CSO NST B3 sài cách gì để nó ko bị dội lại mặc dù vẫn bay thẳng nhỉ ?...
     
  19. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
  20. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    @buiducduy:
    - Cái này làm gì có link down...

    @All:
    - Ai help mình cách làm cho npc ko bị đứng ko nhỉ ?, nếu như bọn nó mà đi thẳng hàng thì không hay, có cách nào làm cho nó nếu bị đứng thì đi qua trái hoặc phải 1 tý :-?. Mù tịt ở đoạn check if đứng
    [video=youtube;EddpfjFEei8]http://www.youtube.com/watch?v=EddpfjFEei8[/URL][/video]
     

Chia sẻ trang này