Raised This Month: $ Target: $400
 0% 

my 2nd function just returns its usage but 1st work, but they are almost the same =_=


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Owyn
Veteran Member
Join Date: Nov 2007
Old 12-19-2008 , 21:04   my 2nd function just returns its usage but 1st work, but they are almost the same =_=
Reply With Quote #1

Code:
#include <amxmodx> 
#include <amxmisc> 

#define BLIND        (1<<0)

new PlayerFlags[33]
new gmsgFade

public amx_blind(id, level, cid)
{ 
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[32] 
    read_argv(1, arg, 31) 
    new user = cmd_target(id, arg, 5) 
    if(!user) 
        return PLUGIN_HANDLED

    new authid[16], name2[32], authid2[16], name[32]
    get_user_authid(id, authid, 15)
    get_user_name(id, name, 31)
    get_user_authid(user, authid2, 15)
    get_user_name(user, name2, 31)

    if(PlayerFlags[user] & BLIND)
    {
        console_print(id, "Client ^"%s^" is already blind", name2)
        return PLUGIN_HANDLED
    }
    else
    {
        new bIndex[2]
        bIndex[0] = user
        PlayerFlags[user] += BLIND
        set_task(1.0, "delay_blind", 0, bIndex, 2)
        message_begin(MSG_ONE, gmsgFade, {0,0,0}, user) // use the magic #1 for "one client"  
        write_short(1<<12) // fade lasts this long duration  
        write_short(1<<8) // fade lasts this long hold time  
        write_short(1<<0) // fade type IN 
        write_byte(0) // fade red  
        write_byte(0) // fade green  
        write_byte(0) // fade blue    
        write_byte(255) // fade alpha    
        message_end()
    }
    switch(get_cvar_num("amx_show_activity"))
    {
        case 2:   server_cmd("amx_chat ADMIN %s: blinded %s", name, name2)
        case 1:   server_cmd("amx_chat ADMIN: blinded %s", name2)

    }
    console_print(id, "Client ^"%s^" blinded", name2) 
    return PLUGIN_HANDLED 
}

public amx_unblind(id, level, cid)
{ 
    if(!cmd_access(id, level, cid, 4)) 
        return PLUGIN_HANDLED

    new arg[32] 
    read_argv(1, arg, 31) 
    new user = cmd_target(id, arg, 5) 
    if(!user)
        return PLUGIN_HANDLED

    new authid[16], name2[32], authid2[16], name[32] 
    get_user_authid(id, authid, 15) 
    get_user_name(id, name, 31) 
    get_user_authid(user, authid2, 15) 
    get_user_name(user, name2, 31)
    
    if(PlayerFlags[user] & BLIND)
    {
        new bIndex[2]
        bIndex[0] = user
        PlayerFlags[user] -= BLIND
        message_begin(MSG_ONE, gmsgFade, {0,0,0}, user) // use the magic #1 for "one client"  
        write_short(1<<12) // fade lasts this long duration  
        write_short(1<<8) // fade lasts this long hold time  
        write_short(1<<1) // fade type OUT 
        write_byte(0) // fade red  
        write_byte(0) // fade green  
        write_byte(0) // fade blue    
        write_byte(255) // fade alpha    
        message_end()
    }
    else
    {
        console_print(id, "Client ^"%s^" is already unblind", name2)
        return PLUGIN_HANDLED
    }
    switch(get_cvar_num("amx_show_activity"))
    {
        case 2:   server_cmd("amx_chat ADMIN %s: unblinded %s", name, name2)
        case 1:   server_cmd("amx_chat ADMIN: unblinded %s", name2) 
    }
    console_print(id, "Client ^"%s^" unblinded", name2) 
    return PLUGIN_HANDLED
}

public screen_fade(id) 
{
    new bIndex[2]
    bIndex[0] = id
    set_task(0.5, "delay_blind", 0, bIndex, 2)
    return PLUGIN_CONTINUE
}

public delay_blind(bIndex[])
{
    new id = bIndex[0]
    if(PlayerFlags[id])
    {
        // Blind Bit  
        message_begin(MSG_ONE, gmsgFade, {0,0,0}, id) // use the magic #1 for "one client" 
        write_short(1<<0) // fade lasts this long duration 
        write_short(1<<0) // fade lasts this long hold time 
        write_short(1<<2) // fade type HOLD 
        write_byte(0) // fade red 
        write_byte(0) // fade green 
        write_byte(0) // fade blue  
        write_byte(255) // fade alpha  
        message_end() 
    }
    return PLUGIN_CONTINUE
}

public plugin_init()
{
    register_plugin("AMX Blind","v1.0","T(+)rget")
    
    gmsgFade = get_user_msgid("ScreenFade") 
    register_event("ScreenFade", "screen_fade", "b")

    register_concmd("amx_blind","amx_blind", ADMIN_KICK, "<authid, nick or #userid>") 
    register_concmd("amx_unblind","amx_unblind", ADMIN_KICK, "<authid, nick or #userid>") 
    register_cvar("amx_show_activity","2")

    return PLUGIN_CONTINUE 
}
i can use amx_blind name fine but when i want to use amx_unblind
it just returns its usage in console:

Quote:
amx_unblind name
Usage: amx_unblind <authid, nick or #userid
happened to me after updating my server to new version, please help me to fix unblind command, thx
Owyn is offline
Send a message via ICQ to Owyn
danielkza
AMX Mod X Plugin Approver
Join Date: May 2007
Location: São Paulo - Brasil
Old 12-19-2008 , 21:06   Re: my 2nd function just returns its usage but 1st work, but they are almost the same
Reply With Quote #2

You inverted the cmd_targets' parameter count. In amx_blind it should be 4, and in amx_unblind it should be 2.
__________________

Community / No support through PM
danielkza is offline
Owyn
Veteran Member
Join Date: Nov 2007
Old 12-20-2008 , 05:58   Re: my 2nd function just returns its usage but 1st work, but they are almost the same
Reply With Quote #3

thx, that was suspicious =)
Owyn is offline
Send a message via ICQ to Owyn
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 09:11.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode