хм ну вот собсна почему то выдает ошибку, помоги плиз
Вот код:
/***
Simple teamspeak plugin by hackziner hackziner@gmail.com
cvars:
ts_ip
ts_virtual_server
ts_superadmin
ts_superadmin_password
Commands:
/ teamspeak online //show who is on the teamspeak server
/teamspeak calladmin msg //send a test msg to the teamspeak server
/teamspeak reset //reset request flag
***/
#include <amxmodx>
#include <amxmisc>
#include <sockets>
#define PLUGIN "Ts"
#define VERSION "0.1"
#define AUTHOR "hackziner"
#define QUERYPORT 51234
new tcp_socket
new ts_ip[32]
new ts_virtual_server[32]
new ts_superadmin[32]
new ts_superadmin_password[32]
new status
new format_msg[128]
new clanteg_cvar
new ts_connection_trigger[32]
new request
new request_failover
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
//Yes I know how cvar work, and I won't use PCVAR !
register_cvar("ts_version",VERSION,FCVAR_SERVER)
register_cvar("ts_ip","212.1.226.164",FCVAR_SERVER)
register_cvar("ts_virt ual _se rve r","7656",FCVAR_SERVER)
register_cvar("ts_superadmin","username",FCVAR_PROTECTED)
register_cvar("ts_superadmin_password","password ", FC VA R_PROTECTED)
register_cvar("ts_connection_trigger","/ts2",FCVAR_SERVER)
register_cvar("clanteg_cvar ", "[GG]")
get_cvar_string("ts_ip",ts_ip,31)
get_cvar_string("ts_virtual_server",ts_virtual_server,31)
get_cvar_string("ts_s upera dmin" ,ts_s uperadmin,31)
get_cvar_string("ts_superadmin_password",ts_superadmin_password,31)
get_cvar_string("ts_connection_trigger",ts_conne ct io n_ trigger,31)
register_clcmd("say", "handle_say")
tcp_socket=socket_open(ts_ip,QUERYPORT,SOCKET_TCP,status)
if(status!=0)
{
server_pri nt("TS Module, Connection to TS server FAILED !")
return PLUGIN_CONTINUE
}
set_task(1.0,"get_msg",0,"",0,"b")
request_failover=0;
return PLUGIN_CONTINUE
}
public get_msg(){
static buffer[5012]
static des[5012]
if(socket_change(tcp_socket,1))
{
socket_recv(tcp_socket,buffer,5011)
if(containi(buffer,"[TS]")==0)
{
request=1
format(format_msg,64,"slogin %s %s^n",ts_superadmin,ts_superadmin_password)
socket_send(tcp_socket,format_msg,63)
}
if(containi(buffer,"OK")==0)
{
i f( reque st==1)
{
client_print(0,print_chat,"TS: Superadmin login OK")
server_print("TS: Superadmin login OK")
format(format_msg,64,"sel %s ^n",ts_virtual_server)
socket_send(tcp_socket,format_msg,63)
request=3
}
if(request==3)
{
cli ent_pr int(0, print_ chat,"TS: Virtual server select OK")
server_print("TS: Virtual server select OK")
request=0
}
if(request==4)
{
client_print(0,print_chat,"TS: msg send to ts OK")
server_print("TS: msg send to ts OK")
request=0
}
}
if(request==2)
{
new i
new list[196]
static parse[64]
strtok(buffer,des,5012,buffer,5012,'^n')
format(list,196,"Players in Ts: ")
while(containi(buffer,"^n")>-1)
{
strtok(buffer,des,5012,buffer,5012,'^n')
for(i=0;i<15;i++)
strtok(des,parse,63,des,5012,'^t')
format(list,196,"%s, %s",list,parse)
}
client_print(0,print_chat,"%s",list)
server_print("%s",list)
request=0
}
}
}
public handle_say(id){
static said[192]
read_args(said,192)
if(containi(name, clantag) == -1)
{
static name[40], clantag[40]
get_user_name(id, name, 39)
get_pcvar_string(clanteg_cvar, clantag, 39)
return PLUGIN_CONTINUE }
if(containi(said,ts_connection_trigger)>-1)
{
new html_code[1024];
new username[32];
get_user_name(id, username, 31);
format(html_code,1023,"<HTML><META HTTP-EQUIV=^"Refresh^" CONTENT=^"0; URL=teamspeak://%s:%s?channel=pspsps?nickname=%s^"><BODY bgcolor='black' text='#FFB000'><br><br><br><center>Connecting to Ts-Server, please wait...</center></BODY></HTML>",ts_ip,ts_virtual_server,username);
show_motd(id,html_code,"TeamSpeak2 Connection");
client_print(0,print_chat,"A Player on the server is connecting to teamspeak")
}
if(containi(said,"/teamspeak reset")>-1)
request=0
if (request==0)
{
if(containi(said,"/teamspeak online")>-1)
{
request=2
format(format_msg,64,"pl %s ^n",ts_virtual_server)
socket_send(tcp_socket,format_msg,63)
}
if(containi(said,"/teamspeak calladmin")>-1)
{
new pname[32]
request=2
get_user_name(id,pname,31)
format(format_msg,127,"msg %s %s call an admin '%s'^n",ts_virtual_server,pname,said)
socket_send(tcp_socket,format_msg,63)
request=4
}
}
else
{
c lient_ print(i d,print _chat,"Please retry in few second, there is already a request")
if(request_failover==0)request_failover=1
else
{
request_failover=0;
request=0;
client_print(id,print_chat,"Status Token has been reset, please retry")
}
}
}
public plugin_end ()
{
socket_close(tcp_socket)
}