kod na serwerze co ma odczytywać liczbę graczy na serwerze 2.
stock sprawdz_serwer()
{
new sockets,error
sockets = socket_open("195.114.0.96",27041, SOCKET_UDP,error)
new recv[129]
if(sockets <= 0 || error) {
new err[40]
switch(error) {
case 0: err = "no error"
case 1: err = "error while creating socket"
case 2: err = "couldn't resolve hostname"
case 3: err = "couldn't connect to given hostname:port"
}
log_to_file("blad.log","Couldn't connect to %s:%d, error: %s","195.114.0.96",27041,err)
return 0
}
else if(socket_change(sockets,1)) {
socket_recv(sockets, recv,128)
new info = str_to_num(recv);
if(info>0)
return info
}
return 0
}uzycie
if(sprawdz_serwer()) return PLUGIN_CONTINUE;
Kod na serwerze wysyłającym ilość graczy
#include <amxmodx>
#include <amxmisc>
#include <sockets>
#define PLUGIN "stachu"
#define VERSION "1.0"
#define AUTHOR "Właściciel"
#define TASKID_QUERY 21934807
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
set_task(20.0, "query_servers", TASKID_QUERY, "", 0, "b")
}
public query_servers()
{
new error, sockets
sockets = socket_open("195.114.0.96",27041, SOCKET_UDP,error)
new sData[128]
format(sData, 127,"%i^r^n^r^n",get_playersnum())
socket_send(sockets, sData, strlen(sData))
}Wiem pewnie popełniłem jakiś głupi błąd ale nie mam siły juz nad tym siedzieć wiec proszę was o pomoc.
@ref


Dodatki SourceMod













