Код:
#include <a_samp>
#include <dini>
#include <dudb>
#include <sscanf2>
//DCMD
#define SERVER_USER_FILE "%s.ini"
#define DIALOG_INFO 55
#define SCM SendClientMessage
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#pragma unused ret_memcpy
#pragma tabsize 0
//new PlayerInfo[MAX_PLAYERS][pInfo];
new gPlayerLogged[MAX_PLAYERS];
new VIP[MAX_PLAYERS];
main()
{
print("Welcome to San Andreas");
print("Mode : WTSA");
print("Vytvorili : RonnyCZ a Johnny Law");
print("Welcome To San Andreas");
}
public OnGameModeInit()
{
UsePlayerPedAnims ();
SetGameModeText("test");
return 1;
}
public OnPlayerConnect(playerid)
{
VIP[playerid] = 0;
gPlayerLogged[playerid] = 0;
new file[128];
format(file, sizeof file, "%s.ini", Name(playerid));
if (!dini_Exists(file))
{
new string[600];
new str[64], IPplayer[16];
strcat(string,"Welcome to server mode {00FFFF}Welcome To San Andreas - WTSA.eu\n");
strcat(string,"\n");
strcat(string,"{FFFFFF}Tento {00FFFF}Nick {FFFFFF}still there.\n");
strcat(string,"\n");
strcat(string,"{FF0000}Registration required!\n");
strcat(string,"\n");
format(str, sizeof str, "{FFFFFF}Nick: {00FFFF}%s \n", Name(playerid));
strcat(string, str);
GetPlayerIp(playerid, IPplayer, 16);
format(str, sizeof str, "{FFFFFF}IP: {00FFFF}%s \n", IPplayer);
strcat(string, str);
ShowPlayerDialog(playerid, 81, DIALOG_STYLE_PASSWORD, "Registrace", string, "Registrovat", "Odpojit");
}
if(fexist(file))
{
new string[700];
new str[64], IPplayer[16];
strcat(string,"{FFFFFF}Welcome back to server mode {00FFFF}Welcome To San Andreas - WTSA.eu\n");
strcat(string,"\n");
strcat(string,"{FFFFFF}Tento {00FFFF}Nick {FFFFFF}uћ existuje.\n");
strcat(string,"Zadejte heslo:\n");
strcat(string,"\n");
format(str, sizeof str, "{FFFFFF}Nick: {00FFFF}%s \n", Name(playerid));
strcat(string, str);
GetPlayerIp(playerid, IPplayer, 16);
format(str, sizeof str, "{FFFFFF}IP: {00FFFF}%s \n", IPplayer);
strcat(string, str);
ShowPlayerDialog(playerid, 82, DIALOG_STYLE_PASSWORD, "Login", string, "OK", "KICK");
}
new string[250];
format(string,sizeof string,"{778899}[ {7CFC00}Connect {778899}] Player {7CFC00}%s {778899}(ID: {7CFC00}%d{778899}) came to the server",Name(playerid),playerid);
SendClientMessageToAll(0xFFFFFFAA,string);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new file[256];
format(file, sizeof(file), SERVER_USER_FILE, Name(playerid));
if(gPlayerLogged[playerid] == 1)
{
dini_IntSet(file, "VIP",VIP[playerid]);
}
gPlayerLogged[playerid] = 0;
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(setvip,6,cmdtext);
if(!strcmp(cmdtext, "/info", true))
{
new string [100000];
new str[64], IPplayer[16];
strcat(string,"{00FF00}=======================Zбkladnн Informace=======================\n");
format(str, sizeof str, "{FFFFFF}Vбљ Nick - {00FFFF}%s \n", Name(playerid));
strcat(string, str);
GetPlayerIp(playerid, IPplayer, 16);//mmnt
format(str, sizeof str, "{FFFFFF}Vaљe IP - {00FFFF}%s \n", IPplayer);
format(str, sizeof str, "{FFFFFF}VIP - {00FFFF}%d \n", VIP[playerid]);
strcat(string, str);
ShowPlayerDialog(playerid,DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Info o hrбči", string, "OK", "");
return 1;
}
return SCM(playerid, -1, "{FF0000}[ {F0F0F0}Server {FF0000}] {F0F0F0} -> Unknown command, use the command -> {FF0000}/help");
}
dcmd_setvip(playerid, params[])
{
new lvl, ID;
if(sscanf(params, "ud", ID, lvl)) return SendClientMessage(playerid, 0xFF0000AA, "{FF0000}[ {FFFFFF} Server {FF0000} ] {FFFF00} /setvip [ID] [Level]");
if(lvl < 0 || lvl > 1) return SendClientMessage(playerid, -1, "{FF0000}[ {FFFFFF} Server {FF0000} ] {FFFF00} Poor range! From only [0-1]");
if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, -1, "{FF0000} {FFFFFF} Server {FF0000}] The player is not online ! ");
if(IsPlayerAdmin(playerid))
{
VIP[ID] = lvl;
new string[138];
format(string,sizeof string,"{FFD700}[ VIP ]{FF0000}Admin %s set players %s VIP Level %d",Name(playerid),Name(ID),lvl);
SendClientMessageToAll(0xFFFFFFAA,string);
}
else SendClientMessage(playerid, -1, "{FF0000} [ {FFFFFF} Server {FF0000}] you do not have rcon!");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if (dialogid == 81)
{
new file[64], string[128];
format(file, sizeof(file), SERVER_USER_FILE, Name(playerid));
if(!response) return Kick(playerid);
if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 81, DIALOG_STYLE_PASSWORD, " registered", " registered", "Registrovat", "Odpojit");
dini_Create(file);
dini_IntSet(file, "Password", udb_hash(inputtext));
dini_IntSet(file, "VIP",VIP[playerid] = 0);
new IPplayer[16];
GetPlayerIp(playerid, IPplayer, 16);
format(string,128, "{FF0000}[ {FFFFFF} Server {FF0000}] {FFFFFF} Nick : %s | Password : %s | IP : %s", Name(playerid), inputtext, IPplayer);
SendClientMessage(playerid, -1, string);
format(string,128, "{FF0000}[{FFFFFF} Server {FF0000}] {FFFFFF} You're registered", Name(playerid), inputtext);
SendClientMessage(playerid, -1, string);
SendClientMessage(playerid, 0xFFFFFF, string);
gPlayerLogged[playerid] = 1;
}
if (dialogid == 82)
{
new file[64];
format(file, sizeof(file), SERVER_USER_FILE, Name(playerid));
if(!response) return Kick(playerid);
if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 81, DIALOG_STYLE_PASSWORD, "You're registered", "Pamatuj si Heslo", "OK", "Kick");
new tmp;
tmp = dini_Int(file, "Password");
if(udb_hash(inputtext) != tmp)
{
new string[500];
new str[64], IPplayer[16];
strcat(string,"{FFFFFF}Welcome retroactively server mode {00FFFF}Welcome To San Andreas - WTSA.eu\n");
strcat(string,"\n");
strcat(string,"{FFFFFF}Tento {00FFFF}Nick {FFFFFF}already exists.\n");
strcat(string,"Zadejte heslo:\n");
strcat(string,"\n");
strcat(string,"\n");
format(str, sizeof str, "{FFFFFF}Nick: {00FFFF}%s \n", Name(playerid));
strcat(string, str);
GetPlayerIp(playerid, IPplayer, 16);
format(str, sizeof str, "{FFFFFF}IP: {00FFFF}%s \n", IPplayer);
strcat(string, str);
ShowPlayerDialog(playerid, 82, DIALOG_STYLE_PASSWORD, "Login",string, "OK", "Kick");
}
else
{
gPlayerLogged[playerid] = 1;
//
VIP[playerid] = dini_Int(file, "VIP");
SendClientMessage(playerid,0xFFFFFF, "{FF0000}[ {FFFFFF}Server {FF0000}] {FFFFFF} Successful Login");
}
return 1;
}
return 0;
}
stock Name(playerid)
{
new n[MAX_PLAYER_NAME];
GetPlayerName(playerid,n,sizeof(n));
return n;
}
When I put the server writes that "Unknown" and does not command or registering anything please help Thank You
I took some of my fashion I did not do it again 'cause vip come to a different mode so i went Taking of store need only why I do not