Raised This Month: $ Target: $400
 0% 

What is wrong with this code?


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
kikifrh
Senior Member
Join Date: May 2009
Old 12-31-2009 , 09:28   What is wrong with this code?
Reply With Quote #1

Code:
/*
*   _______     _      _  __          __
*  | _____/    | |    | | \ \   __   / /
*  | |         | |    | |  | | /  \ | |
*  | |         | |____| |  | |/ __ \| |
*  | |   ___   | ______ |  |   /  \   |
*  | |  |_  |  | |    | |  |  /    \  |
*  | |    | |  | |    | |  | |      | |
*  | |____| |  | |    | |  | |      | |
*  |_______/   |_|    |_|  \_/      \_/
*
*
*
*  Last Edited: 12-06-09
*
*  ============
*   Changelog:
*  ============
*
*  v1.1
*    -Bug Fixes
*
*  v1.0
*    -Initial Release
*
*/
#include < amxmodx >
#include < amxmisc >
#include < geoip >

#define SHOW_COLOR        1
#define SHOW_CONNECT        2
#define SHOW_DISCONNECT        4
#define PLAY_SOUND_CONNECT    8
#define PLAY_SOUND_DISCONNECT    16

new display_type_pcvar

new name[33][32]
new authid[33][32]
new country[33][46]
new ip[33][32]

new connect_soundfile[64]
new disconnect_soundfile[64]

new saytext_msgid

public plugin_init()
{
    register_plugin("GHW Connect Messages","1.1","GHW_Chronic")
    display_type_pcvar = register_cvar("cm_flags","31")
    register_cvar("cm_connect_string","[AMXX] %name (%ip) has connected (%country).")
    register_cvar("cm_disconnect_string","[AMXX] %name (%ip) has disconnected (%country).")

        register_clcmd("say /myip","ClCmd_Say",0)
        register_clcmd("say /showip","ClCmd_Say",0)
        register_clcmd("say /aboutme","ClCmd_Say",0)
        register_clcmd("say /info","ClCmd_Say",0)
        register_clcmd("say /myinfo","ClCmd_Say",0)
        register_concmd("say /playerips","showcountry",0,"ADMIN_KICK");
        register_concmd("say /showips","showcountry",0,"ADMIN_KICK");
        register_concmd("say /aboutall","showcountry",0,"ADMIN_KICK");

    saytext_msgid = get_user_msgid("SayText")
}

public plugin_precache()
{
    register_cvar("cm_connect_sound","buttons/bell1.wav")
    register_cvar("cm_disconnect_sound","fvox/blip.wav")

    get_cvar_string("cm_connect_sound",connect_soundfile,63)
    get_cvar_string("cm_disconnect_sound",disconnect_soundfile,63)

    precache_sound(connect_soundfile)
    precache_sound(disconnect_soundfile)
}

public client_putinserver(id)
{
    if(!is_user_bot(id))
    {
        get_client_info(id)

        new display_type = get_pcvar_num(display_type_pcvar)
        if(display_type & SHOW_CONNECT)
        {
            new string[200]
            get_cvar_string("cm_connect_string",string,199)
            format(string,199,"^x01%s",string)

            if(display_type & SHOW_COLOR)
            {
                new holder[46]

                format(holder,45,"^x04%s^x01",name[id])
                replace(string,199,"%name",holder)

                format(holder,45,"^x04%s^x01",authid[id])
                replace(string,199,"%steamid",holder)

                format(holder,45,"^x04%s^x01",country[id])
                replace(string,199,"%country",holder)

                format(holder,45,"^x04%s^x01",ip[id])
                replace(string,199,"%ip",holder)
            }
            else
            {
                replace(string,199,"%name",name[id])
                replace(string,199,"%steamid",authid[id])
                replace(string,199,"%country",country[id])
                replace(string,199,"%ip",ip[id])
            }

            new num, players[32], player
            get_players(players,num,"ch")
            for(new i=0;i<num;i++)
            {
                player = players[i]

                message_begin(MSG_ONE,saytext_msgid,{0,0,0},player)
                write_byte(player)
                write_string(string)
                message_end()

                if(display_type & PLAY_SOUND_CONNECT)
                {
                    new stringlen = strlen(connect_soundfile)
                    if(connect_soundfile[stringlen - 1]=='v' && connect_soundfile[stringlen - 2]=='a' && connect_soundfile[stringlen - 3]=='w') //wav
                    {
                        client_cmd(player,"spk ^"sound/%s^"",connect_soundfile)
                    }
                    if(connect_soundfile[stringlen - 1]=='3' && connect_soundfile[stringlen - 2]=='p' && connect_soundfile[stringlen - 3]=='m') //wav
                    {
                        client_cmd(player,"mp3 play ^"sound/%s^"",connect_soundfile)
                    }
                }
            }
        }
    }
}

public ClCmd_Say(id)
{
    client_print(id, "[AMXX] %name (%ip) (%country).")
}

public showcountry(id, level, cid)
{
    if( cmd_access(id, level, cid, 2) )
    {
        new iPlayers[32], iNum, iPlayer, Name[32], IP[16], Country[46];
        get_players(iPlayers, iNum);
        console_print(id, "%name %ip %country");
        for(new i; i < iNum; i++)
        {
            iPlayer = iPlayers[i];
            get_user_ip(iPlayer, IP, charsmax(IP),1);
            get_user_name(iPlayer, Name, charsmax(Name));
            client_print(id, "Information about players has been printed in your console")
            console_print(id, "%name %ip %country");
        }
    }
} 

public get_client_info(id)
{
    get_user_name(id,name[id],31)
    get_user_authid(id,authid[id],31)

    get_user_ip(id,ip[id],31)
    geoip_country(ip[id],country[id])
    if(equal(country[id],"error"))
    {
        if(contain(ip[id],"192.168.")==0 || equal(ip[id],"127.0.0.1") || contain(ip[id],"10.")==0 ||  contain(ip[id],"172.")==0)
        {
            country[id] = "LAN"
        }
        if(equal(ip[id],"loopback"))
        {
            country[id] = "ListenServer User"
        }
        else
        {
            country[id] = "Unknown Country"
        }
    }
}

public client_infochanged(id)
{
    if(!is_user_bot(id))
    {
        get_user_info(id,"name",name[id],31)
    }
}

public client_disconnect(id)
{
    if(!is_user_bot(id))
    {
        new display_type = get_pcvar_num(display_type_pcvar)
        if(display_type & SHOW_DISCONNECT)
        {
            new string[200]
            get_cvar_string("cm_disconnect_string",string,199)
            format(string,199,"^x01%s",string)

            if(display_type & SHOW_COLOR)
            {
                new holder[46]

                format(holder,45,"^x04%s^x01",name[id])
                replace(string,199,"%name",holder)

                format(holder,45,"^x04%s^x01",authid[id])
                replace(string,199,"%steamid",holder)

                format(holder,45,"^x04%s^x01",country[id])
                replace(string,199,"%country",holder)

                format(holder,45,"^x04%s^x01",ip[id])
                replace(string,199,"%ip",holder)
            }
            else
            {
                replace(string,199,"%name",name[id])
                replace(string,199,"%steamid",authid[id])
                replace(string,199,"%country",country[id])
                replace(string,199,"%ip",ip[id])
            }

            new num, players[32], player
            get_players(players,num,"ch")
            for(new i=0;i<num;i++)
            {
                player = players[i]

                message_begin(MSG_ONE,saytext_msgid,{0,0,0},player)
                write_byte(player)
                write_string(string)
                message_end()

                new stringlen = strlen(disconnect_soundfile)
                if(disconnect_soundfile[stringlen - 1]=='v' && disconnect_soundfile[stringlen - 2]=='a' && disconnect_soundfile[stringlen - 3]=='w') //wav
                {
                    client_cmd(player,"spk ^"sound/%s^"",disconnect_soundfile)
                }
                if(disconnect_soundfile[stringlen - 1]=='3' && disconnect_soundfile[stringlen - 2]=='p' && disconnect_soundfile[stringlen - 3]=='m') //wav
                {
                    client_cmd(player,"mp3 play ^"sound/%s^"",disconnect_soundfile)
                }
            }
        }
    }
}
I edited somethings with a friend, and it doesnt work :S
these are the cmd
Code:
        register_clcmd("say /myip","ClCmd_Say",0)
        register_clcmd("say /showip","ClCmd_Say",0)
        register_clcmd("say /aboutme","ClCmd_Say",0)
        register_clcmd("say /info","ClCmd_Say",0)
        register_clcmd("say /myinfo","ClCmd_Say",0)
        register_concmd("say /playerips","showcountry",0,"ADMIN_KICK");
        register_concmd("say /showips","showcountry",0,"ADMIN_KICK");
        register_concmd("say /aboutall","showcountry",0,"ADMIN_KICK");
it doesnt show nothing when you type :S ; can someone help me fixing this?
current errors:
Code:
Your plugin failed to compile! Read the errors below:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

/home/groups/amxmodx/tmp3/phpoKDusQ.sma(121) : error 035: argument type mismatch (argument 2)
/home/groups/amxmodx/tmp3/phpoKDusQ.sma(136) : error 035: argument type mismatch (argument 2)
/home/groups/amxmodx/tmp3/phpoKDusQ.sma(139) : warning 204: symbol is assigned a value that is never used: "Country"

2 Errors. Could not locate output file /home/groups/amxmodx/public_html/websc3/phpoKDusQ.amx (compile failed).

803190 successful compiles to date.
575212 failed compiles to date.
Old compiler: 101980 compiles before decommission.
This tool by: David "BAILOPAN" Anderson.
thx in advance

Last edited by kikifrh; 12-31-2009 at 09:35.
kikifrh is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 12-31-2009 , 10:00   Re: What is wrong with this code?
Reply With Quote #2

client_print(id, "..." ); -> client_print(id, print_chat, "..." );

geoip_country(ip[id],country[id]) -> geoip_country(ip[id],country[id],charsmax( country[]) )
__________________
Arkshine is offline
kikifrh
Senior Member
Join Date: May 2009
Old 12-31-2009 , 10:04   Re: What is wrong with this code?
Reply With Quote #3

thx, arkshine
with this it should be ok with cmd? (sorry I'm not home and cant test :s)
I can use amxmodx.org and give me this errors:
Code:
Your plugin failed to compile! Read the errors below:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

/home/groups/amxmodx/tmp3/phpafGG1j.sma(136) : error 035: argument type mismatch (argument 2)
/home/groups/amxmodx/tmp3/phpafGG1j.sma(139) : warning 204: symbol is assigned a value that is never used: "Country"

1 Error.

Could not locate output file /home/groups/amxmodx/public_html/websc3/phpafGG1j.amx (compile failed).

803207 successful compiles to date.
575230 failed compiles to date.
Old compiler: 101980 compiles before decommission.
This tool by: David "BAILOPAN" Anderson.



Last edited by kikifrh; 12-31-2009 at 10:06.
kikifrh is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 12-31-2009 , 10:10   Re: What is wrong with this code?
Reply With Quote #4

It compiles fine for me.

You have 2 client_print(). You have probably changed only one.
__________________
Arkshine is offline
kikifrh
Senior Member
Join Date: May 2009
Old 12-31-2009 , 10:12   Re: What is wrong with this code?
Reply With Quote #5

didn't saw the 2nd

now I only have one warning :s
Code:
/home/groups/amxmodx/tmp3/phpzbIjge.sma(139) : warning 204: symbol is assigned a value that is never used: "Country"
as is never used, I think is this one, isnt?
Code:
public showcountry(id, level, cid)
{
    if( cmd_access(id, level, cid, 2) )
    {
        new iPlayers[32], iNum, iPlayer, Name[32], IP[16], Country[46];
p.s: When I delete, it compiles and no warnings/errors show
thx arkshine

Last edited by kikifrh; 12-31-2009 at 10:19.
kikifrh is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 12-31-2009 , 10:19   Re: What is wrong with this code?
Reply With Quote #6

Yes, you simply don't use this var, you can remove it.
__________________
Arkshine is offline
kikifrh
Senior Member
Join Date: May 2009
Old 12-31-2009 , 11:02   Re: What is wrong with this code?
Reply With Quote #7

Thx askshine
kikifrh is offline
Reply


Thread Tools
Display Modes

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 04:02.


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