PHP код:
/*
Pawno Edited by
Scripter Gabii/Scripter Bizza
*/
#include <a_samp>
#define TAG[SRC] "{FFBF00}"
#define COL_EASY "{FFF1AF}"
#define COL_WHITE "{FFFFFF}"
#define COL_BLACK "{0E0101}"
#define COL_GREY "{C3C3C3}"
#define COL_GREEN "{6EF83C}"
#define COL_RED "{F81414}"
#define COL_YELLOW "{F3FF02}"
#define COL_ORANGE "{FFAF00}"
#define COL_LIME "{B7FF00}"
#define COL_CYAN "{00FFEE}"
#define COL_LIGHTBLUE "{00C0FF}"
#define COL_BLUE "{0049FF}"
#define COL_MAGENTA "{F300FF}"
#define COL_VIOLET "{B700FF}"
#define COL_PINK "{FF00EA}"
#define COL_MARONE "{A90202}"
#define COL_CMD "{B8FF02}"
#define COL_PARAM "{3FCD02}"
#define COL_SERVER "{AFE7FF}"
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_RED 0xAA3333AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_BLUE 0x0000BBAA
#define COLOR_1BLUE 0x0080FFFF
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_BRIGHTRED 0xFF0000AA
#define COLOR_INDIGO 0x4B00B0AA
#define COLOR_VIOLET 0x9955DEEE
#define COLOR_LIGHTRED 0xFF99AADD
#define COLOR_SEAGREEN 0x00EEADDF
#define COLOR_GRAYWHITE 0xEEEEFFC4
#define COLOR_LIGHTNEUTRALBLUE 0xabcdef66
#define COLOR_GREENISHGOLD 0xCCFFDD56
#define COLOR_LIGHTBLUEGREEN 0x0FFDD349
#define COLOR_NEUTRALBLUE 0xABCDEF01
#define COLOR_LIGHTCYAN 0xAAFFCC33
#define COLOR_LEMON 0xDDDD2357
#define COLOR_MEDIUMBLUE 0x63AFF00A
#define COLOR_NEUTRAL 0xABCDEF97
#define COLOR_BLACK 0x00000000
#define COLOR_NEUTRALGREEN 0x81CFAB00
#define COLOR_DARKGREEN 0x12900BBF
#define COLOR_LIGHTGREEN 0x24FF0AB9
#define COLOR_DARKBLUE 0x300FFAAB
#define COLOR_BLUEGREEN 0x46BBAA00
#define COLOR_PINK 0xFF66FFAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_PURPLE 0x800080AA
#define COLOR_GRAD1 0xB4B5B7FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_RED1 0xFF0000AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_1GREEN 0x6BD700FF
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_BROWN 0x993300AA
#define COLOR_CYAN 0x99FFFFAA
#define COLOR_TAN 0xFFFFCCAA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_KHAKI 0x999900AA
#define COLOR_LIME 0x99FF00AA
#define COLOR_SYSTEM 0xEFEFF7AA
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD4 0xD8D8D8FF
#define COLOR_GRAD6 0xF0F0F0FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD3 0xCBCCCEFF
#define COLOR_GRAD5 0xE3E3E3FF
#define COLOR_GRAD1 0xB4B5B7FF
main()
{
print("\n========================================");
print(" | Pawno Edited by |");
print(" | Scripteri Gabii/Scripter Bizza |");
print(" | Enjoy :D |");
print("=========================================\n");
}
enum pInfo
{
pKey[128],
pTut,
pSex,
pAge,
pOrigin,
pChar,
};
new PlayerInfo[MAX_PLAYERS][pInfo];
new gPlayerAccount[MAX_PLAYERS];
new RegistrationStep[MAX_PLAYERS];
new gPlayerLogged[MAX_PLAYERS];
new gPlayerLogTries[MAX_PLAYERS];
new gOoc[MAX_PLAYERS];
new gNews[MAX_PLAYERS];
new gFam[MAX_PLAYERS];
new TutTime[MAX_PLAYERS];
new MedicBill[MAX_PLAYERS];
forward OnPlayerRegister(playerid, password[]);
forward OnPlayerLogin(playerid,password[]);
forward split(const strsrc[], strdest[][], delimiter);
forward ini_GetKey(line[]);
forward ini_GetValue(line[]);
forward SetPlayerSpawn(playerid);
forward ClearChatbox(playerid, lines);
forward SetPlayerUnjail();
public OnGameModeInit()
{
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
PlayerPlaySound(playerid, 1100, 0.0, 0.0, 0.0);
if(RegistrationStep[playerid] == 0 && gPlayerLogged[playerid] != 1)
{
if (gPlayerAccount[playerid] != 0)
{
new loginstring[256];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"{ffffff}Salut {00bfff}%s{ffffff}, bine ai venit pe {ff0000}saveG RPG{ffffff}. Acest nick este reservat pe server!\n\nLogeaza-te in casuta de mai jos!",loginname);
ShowPlayerDialog(playerid,12346,DIALOG_STYLE_INPUT,"Login saveG",loginstring,"Login",""); //
}
else
{
gPlayerAccount[playerid] = 0;
new regstring[256];
new regname[64];
GetPlayerName(playerid,regname,sizeof(regname));
format(regstring,sizeof(regstring),"{ffffff}Salut {00bfff}%s{ffffff}, bine ai venit pe {ff0000}saveG RPG{ffffff}. Acest nick nu este rezervat pe server!\n\nInregistreaza-te in casuta de mai jos!",regname);
ShowPlayerDialog(playerid,12345,DIALOG_STYLE_INPUT,"Register saveG",regstring,"Register","");
}
}
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
new string[MAX_PLAYER_NAME];
gPlayerAccount[playerid] = 0;
gPlayerLogged[playerid] = 0;
gPlayerLogTries[playerid] = 0;
RegistrationStep[playerid] = 0;
PlayerInfo[playerid][pTut] = 0;
gOoc[playerid] = 0;
gNews[playerid] = 0;
gFam[playerid] = 0;
TutTime[playerid] = 0;
MedicBill[playerid] = 0;
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
SendClientMessage(playerid, COLOR_WHITE,"{30a030}[saveG]: {ffffff}Bine ai venit pe server, asteapta se incarca...");
}
else
{
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid, COLOR_WHITE,"{30a030}[saveG]: {ffffff}Bine ai venit pe server, asteapta se incarca...");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerSpawn(playerid);
return 1;
}
public SetPlayerSpawn(playerid)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pTut] == 0)
{
gOoc[playerid] = 1; gNews[playerid] = 1; gFam[playerid] = 1;
TogglePlayerControllable(playerid, 0);
RegistrationStep[playerid] = 1;
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_WHITE, "{30a030}[saveG]: {ffffff}Bine ai venit pe {ff0000}saveG.ro: RPG Server [0.3D] (BETA){ffffff}.");
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
SendClientMessage(playerid, COLOR_WHITE, "{30a030}[saveG]: {ffffff}Ce sex ai? [{ffd700}Masculin {ffffff}sau {ffd700}Feminin{ffffff}]?");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
}
}
return 1;
}
public OnPlayerLogin(playerid,password[])
{
new string2[256];
new playername2[MAX_PLAYER_NAME];
new playernamesplit[3][MAX_PLAYER_NAME];
GetPlayerName(playerid, playername2, sizeof(playername2));
split(playername2, playernamesplit, '_');
format(string2, sizeof(string2), "users/%s.ini", playername2);
new File: UserFile = fopen(string2, io_read);
if ( UserFile )
{
new PassData[256];
new keytmp[256], valtmp[256];
fread( UserFile , PassData , sizeof( PassData ) );
keytmp = ini_GetKey( PassData );
if( strcmp( keytmp , "Key" , true ) == 0 )
{
valtmp = ini_GetValue( PassData );
strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
{
new key[256], val[256];
new Data[256];
while ( fread( UserFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey( Data );
if( strcmp( key , "Tutorial" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pTut] = strval( val ); }
if( strcmp( key , "Sexul" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSex] = strval( val ); }
if( strcmp( key , "Varsta" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAge] = strval( val ); }
if( strcmp( key , "Origine" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pOrigin] = strval( val ); }
if( strcmp( key , "Char" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pChar] = strval( val ); }
/*if( strcmp( key , "Level" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLevel] = strval( val ); }
if( strcmp( key , "AdminLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
if( strcmp( key , "HelperLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pHelper] = strval( val ); }
if( strcmp( key , "DonateRank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDonateRank] = strval( val ); }
if( strcmp( key , "UpgradePoints" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][gPupgrade] = strval( val ); }*/
}
fclose(UserFile);
}
else
{
new loginstring[128];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"{ffffff}Ne pare rau, dar aceasta parola este gresita, mai ai doua incercari!\n\n{ff0000}Introdu parola corecta in casuta de mai jos!",loginname);
ShowPlayerDialog(playerid,12347,DIALOG_STYLE_INPUT,"Password saveG",loginstring,"Login","");
fclose(UserFile);
gPlayerLogTries[playerid] += 1;
if(gPlayerLogTries[playerid] == 4)
{
Ban(playerid);
}
return 1;
}
gPlayerLogged[playerid] = 1;
SpawnPlayer(playerid);
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
new giver[MAX_PLAYER_NAME];
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new tmp[256];
new string[256];
new giveplayerid;
if(RegistrationStep[playerid] > 0)
{
if(RegistrationStep[playerid] == 1)
{
new idx;
tmp = strtok(text, idx);
if((strcmp("masculin", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("Masculin")))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[playerid][pSex] = 1;
RegistrationStep[playerid] = 2;
SetPlayerSkin(playerid, 18);
PlayerInfo[playerid][pChar] = 18;
ClearChatbox(playerid, 10);
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
format(string, sizeof(string), "» Ok %s, esti Barbat.", sendername);
SendClientMessage(playerid, COLOR_WHITE, string);
SendClientMessage(playerid, COLOR_1BLUE, "{30a030}[saveG]: {ffffff}Ce varsta ai? [{ffd700}zz{ffffff}/{ffd700}ll{ffffff}/{ffd700}aa{ffffff}]?");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
return 0;
}
else if((strcmp("feminin", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("Feminin")))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[playerid][pSex] = 2;
RegistrationStep[playerid] = 2;
SetPlayerSkin(playerid, 41);
PlayerInfo[playerid][pChar] = 41;
ClearChatbox(playerid, 10);
ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
format(string, sizeof(string), "» Ok %s, esti Femeie.", sendername);
SendClientMessage(playerid, COLOR_WHITE, string);
SendClientMessage(playerid, COLOR_1BLUE, "{30a030}[saveG]: {ffffff}Ce varsta ai? [{ffd700}zz{ffffff}/{ffd700}ll{ffffff}/{ffd700}aa{ffffff}]?");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
return 0;
}
else
{
ClearChatbox(playerid, 10);
ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
SendClientMessage(playerid, COLOR_1BLUE, "{30a030}[saveG]: {ffffff}Ce sex ai? [{ffd700}Masculin {ffffff}sau {ffd700}Feminin{ffffff}]?");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
}
return 0;
}
else if(RegistrationStep[playerid] == 2)
{
new year, month,day;
getdate(year, month, day);
new DateInfo[3][20];
split(text, DateInfo, '/');
if(year - strvalEx(DateInfo[2]) > 100 || strvalEx(DateInfo[2]) < 1 || strvalEx(DateInfo[2]) >= year)
{
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
SendClientMessage(playerid, COLOR_1BLUE, "{30a030}[saveG]: {ffffff}Ce varsta ai? [{ffd700}zz{ffffff}/{ffd700}ll{ffffff}/{ffd700}aa{ffffff}]?");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
return 0;
}
new check = year - strvalEx(DateInfo[2]);
if(check == year)
{
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
SendClientMessage(playerid, COLOR_1BLUE, "{30a030}[saveG]: {ffffff}Ce varsta ai? [{ffd700}zz{ffffff}/{ffd700}ll{ffffff}/{ffd700}aa{ffffff}]?");
SendClientMessage(playerid, COLOR_GREEN, "_____________________________________________");
ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
return 0;
}
if(strvalEx(DateInfo[1]) > month)
{
check -= 1;
}
else if(strvalEx(DateInfo[1]) == month && strvalEx(DateInfo[0]) > day)
{
check -= 1;
}
ClearChatbox(playerid, 10);
PlayerInfo[playerid][pOrigin] = 1;
PlayerInfo[playerid][pAge] = check;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "» Ok %s, ai %d anii.", sendername, PlayerInfo[playerid][pAge]);
SendClientMessage(playerid, COLOR_WHITE, string);
ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
TutTime[playerid] = 1;
RegistrationStep[playerid] = 0;
SendClientMessage(playerid, COLOR_1GREEN, "{30a030}[saveG]: {ffffff}Acuma iti vom prezenta un Tutorial legat de Server.");
return 0;
}
return 0;
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new cmd[256];
new tmp[256];
new giveplayerid;
new moneys;
new idx;
cmd = strtok(cmdtext, idx);
//============================================================================//
if(strcmp(cmd, "/ahelp", true) == 0 )
{
return 1;
}
else
{
new Str[256];
format(Str,256,"{F81414}EROARE{FFFFFF}: {FFFFFF}Comanda {6EF83C}%s {FFFFFF}nu exista{F81414}!",cmdtext);
SendClientMessage(playerid,0xFFFFFFAA,Str);
return 1;
}
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerRegister(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
new string3[64];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "users/%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
strmid(PlayerInfo[playerid][pKey], password, 0, strlen(password), 255);
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
format(var, 32, "Tutorial=%d\n",PlayerInfo[playerid][pTut]);fwrite(hFile, var);
format(var, 32, "Sexul=%d\n",PlayerInfo[playerid][pSex]);fwrite(hFile, var);
format(var, 32, "Varsta=%d\n",PlayerInfo[playerid][pAge]);fwrite(hFile, var);
format(var, 32, "Origine=%d\n",PlayerInfo[playerid][pOrigin]);fwrite(hFile, var);
format(var, 32, "Char=%d\n",PlayerInfo[playerid][pChar]);fwrite(hFile, var);
fclose(hFile);
new loginstring[256];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"{ffffff}Salut {00bfff}%s{ffffff}, bine ai venit pe {ff0000}saveG RPG{ffffff}. Acest nick este reservat pe server!\n\nLogeaza-te in casuta de mai jos!",loginname);
ShowPlayerDialog(playerid,12346,DIALOG_STYLE_INPUT,"Login saveG",loginstring,"Login","");
}
}
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public ClearChatbox(playerid, lines)
{
if (IsPlayerConnected(playerid))
{
for(new i=0; i<lines; i++)
{
SendClientMessage(playerid, COLOR_GREY, " ");
}
}
return 1;
}
public SetPlayerUnjail()
{
new plname[MAX_PLAYER_NAME];
new string[256];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(TutTime[i] >= 1)
{
TutTime[i] += 1;
if(TutTime[i] == 3)
{
ClearChatbox(i, 10);
TogglePlayerControllable(i, 0);
ApplyAnimation(i,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
GameTextForPlayer(i, "~y~Bun venit", 5000, 3);
PlayerPlaySound(i, 1097, 0.0, 0.0, 0.0);
SendClientMessage(i, COLOR_LIGHTBLUE, " Tutorial: Bun venit");
SendClientMessage(i, COLOR_GREEN, "");
SendClientMessage(i, 0xFFD700FF, "» Bine ai venit pe server-ul {ff0000}saveG.ro: RPG Server [0.3D] (BETA){ffd700}.");
SendClientMessage(i, 0xFFD700FF, "» Acesta este un server RolePlay, si dorim sa se respecte regulamentul.");
SendClientMessage(i, 0xFFD700FF, "» Pentru inceput iti vom explica anumite lucruri legate de server.");
SendClientMessage(i, 0xFFD700FF, "» Acum iti vom prezenta server-ul, urmariti cu atentie acest tutorial.");
}
else if(TutTime[i] == 14)
{
ClearChatbox(i, 10);
SendClientMessage(i, COLOR_LIGHTBLUE, " Tutorial: Level");
}
else if(TutTime[i] == 16)
{
SendClientMessage(i, COLOR_GREEN, "");
ApplyAnimation(i,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
GameTextForPlayer(i, "~y~Level", 5000, 3);
PlayerPlaySound(i, 1097, 0.0, 0.0, 0.0);
SendClientMessage(i, 0xFFD700FF, "» Pentru a face level pe server ai nevoie de RespectPoints.");
SendClientMessage(i, 0xFFD700FF, "» La fiecare PayDay obti un RespectPoint.");
SendClientMessage(i, 0xFFD700FF, "» Un PayDay il poti obtine la fiecare ora jucata pe server.");
SendClientMessage(i, 0xFFD700FF, "» Pentru a vizualiza detalii despre account-ul tau tasteaza {ff0000}/stats{ffd700}.");
SendClientMessage(i, 0xFFD700FF, "» Cand aveti RespectPoint-ul necesar tastati {ff0000}/buylevel {ffd700}pentru a trece la level-ul urmator.");
}
else if(TutTime[i] == 30)
{
ClearChatbox(i, 10);
SendClientMessage(i, COLOR_LIGHTBLUE, " Tutorial: Joburi");
}
else if(TutTime[i] == 32)
{
SendClientMessage(i, COLOR_GREEN, "");
ApplyAnimation(i,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
GameTextForPlayer(i, "~y~Joburi", 5000, 3);
PlayerPlaySound(i, 1097, 0.0, 0.0, 0.0);
SendClientMessage(i, 0xFFD700FF, "» Pe server-ul nostru poti detine doua joburi (Job Principal si Job Secundar).");
SendClientMessage(i, 0xFFD700FF, "» Pentru Job-ul Principal (Exemplu: News Reporter), trebuie sa postezi pe {ff0000}www.saveG.ro{ffd700}.");
SendClientMessage(i, 0xFFD700FF, "» Pentru Job-ul Secundar (Exemplu: Car Jacker), il poti lua din joc.");
}
else if(TutTime[i] == 50)
{
ClearChatbox(i, 10);
SendClientMessage(i, COLOR_LIGHTBLUE, " Tutorial: Joburile sunt urmatoarele:");
}
else if(TutTime[i] == 54)
{
SendClientMessage(i, COLOR_GREEN, "");
ApplyAnimation(i,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
PlayerPlaySound(i, 1097, 0.0, 0.0, 0.0);
GameTextForPlayer(i, "~y~Joburile sunt urmatoarele:", 5000, 3);
SendClientMessage(i, COLOR_LIGHTBLUE, " » Joburi Principale");
SendClientMessage(i, 0xFFD700FF, "» Police Departament, F.B.I Agency, National Guard, Medics and Fireman, La Cosa Nostra, Yakuza, Hitman Agency,");
SendClientMessage(i, 0xFFD700FF, "» News Reporter, School Instructors, Bloods Gang, Crips Gang, Nortenos Gang si Surenos Gang.");
SendClientMessage(i, COLOR_LIGHTBLUE, " » Joburi Secundare");
SendClientMessage(i, 0xFFD700FF, "» Car Jacker, Drugs Dealer, Arms Dealer, Lawyer, Detective, Bus Drive, Car Mechanic, Car Dealer,");
SendClientMessage(i, 0xFFD700FF, "» BodyGuard, PaperBoy si Whore.");
}
else if(TutTime[i] == 74)
{
ClearChatbox(i, 10);
SendClientMessage(i, COLOR_LIGHTBLUE, " Tutorial: Regulament");
}
else if(TutTime[i] == 76)
{
SendClientMessage(i, COLOR_GREEN, "");
ApplyAnimation(i,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
GameTextForPlayer(i, "~y~Regulament", 5000, 3);
PlayerPlaySound(i, 1097, 0.0, 0.0, 0.0);
SendClientMessage(i, 0xFFD700FF, "» Pe server-ul {ff0000}saveG {ffd700}nu aveti voie sa folositi Coduri.");
SendClientMessage(i, 0xFFD700FF, "» Pe server-ul {ff0000}saveG {ffd700}nu aveti voie sa folositi Nick-uri obsecene.");
SendClientMessage(i, 0xFFD700FF, "» Pe server-ul {ff0000}saveG {ffd700}nu aveti voie sa faceti Bug Abuse.");
SendClientMessage(i, 0xFFD700FF, "» Pe server-ul {ff0000}saveG {ffd700}nu aveti voie sa faceti Reclama.");
SendClientMessage(i, 0xFFD700FF, "» Pe server-ul {ff0000}saveG {ffd700}nu aveti voie sa aveti Cont Clona.");
}
else if(TutTime[i] == 96)
{
ClearChatbox(i, 10);
SendClientMessage(i, COLOR_LIGHTBLUE, " Tutorial: Sfarsit");
}
else if(TutTime[i] == 98)
{
SendClientMessage(i, COLOR_GREEN, "");
ApplyAnimation(i,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
GameTextForPlayer(i, "~y~Sfarsit", 5000, 3);
PlayerPlaySound(i, 1097, 0.0, 0.0, 0.0);
SendClientMessage(i, 0xFFD700FF, "» Cam atata am avut de spus despre server, restul descoperiti voi.");
SendClientMessage(i, 0xFFD700FF, "» Va rugam respecati regulamentul, regulamentul general il gasiti pe {ff0000}www.saveG.ro{ffd700}.");
SendClientMessage(i, 0xFFD700FF, "» Pentru orice problema accesati forum-ul nostru {ff0000}www.saveG.ro{ffd700}.");
SendClientMessage(i, 0xFFD700FF, "» Echipa saveG va ureaza distractie placuta, si nu uitati este DOAR UN JOC.");
SendClientMessage(i, COLOR_GREEN, "» Du-te la Checkpoint-ul marcat cu Rosu pe harta pentru a da Scoala de Soferi.");
SetPlayerCheckpoint(i,325.7980,-1514.4612,36.0325,5.0);
}
else if(TutTime[i] == 115)
{
TutTime[i] = 0; PlayerInfo[i][pTut] = 1;
gOoc[i] = 0; gNews[i] = 0; gFam[i] = 0;
TogglePlayerControllable(i, 1);
MedicBill[i] = 0;
SetPlayerSpawn(i);
SpawnPlayer(i);
ClearChatbox(i, 10);
//PlayerInfo[i][pMuted] = 0;
}
}
}
}
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public split(const strsrc[], strdest[][], delimiter)
{
new i, li;
new aNum;
new len;
while(i <= strlen(strsrc))
{
if(strsrc[i]==delimiter || i==strlen(strsrc))
{
len = strmid(strdest[aNum], strsrc, li, i, 128);
strdest[aNum][len] = 0;
li = i+1;
aNum++;
}
i++;
}
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid])
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "users/%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
format(var, 32, "Tutorial=%d\n",PlayerInfo[playerid][pTut]);fwrite(hFile, var);
}
}
}
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new sendername[MAX_PLAYER_NAME];
new string[128];
if(response)
{
if(dialogid == 12346 || dialogid == 12347)
{
if(strlen(inputtext))
{
new tmppass[64];
strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
OnPlayerLogin(playerid,tmppass);
}
else
{
new loginstring[128];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"{ffffff}Parola gresita.\n{ff0000}Intodu parola corecta mai jos:",loginname);
ShowPlayerDialog(playerid,12347,DIALOG_STYLE_INPUT,"Login",loginstring,"Login","Logout");
gPlayerLogTries[playerid] += 1;
if(gPlayerLogTries[playerid] == 4) { Ban(playerid); }
}
}
if(dialogid == 12345)
{
if(strlen(inputtext))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "users/%s.ini", sendername);
new File: hFile = fopen(string, io_read);
if (hFile)
{
SendClientMessage(playerid, COLOR_YELLOW, "{30a030}[saveG]: {ffd700}Acest Account este deja utilizat, va rugam sa va alegeti alt nick.");
fclose(hFile);
return 1;
}
new tmppass[64];
strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
OnPlayerRegister(playerid,tmppass);
}
else
{
new regstring[128];
new regname[64];
GetPlayerName(playerid,regname,sizeof(regname));
format(regstring,sizeof(regstring),"{ffffff}Bine ai venit {00bfff}%s\n{ffffff}Nu esti Inrgistrat.\nInregistreaza-te mai jos:",regname);
ShowPlayerDialog(playerid,12345,DIALOG_STYLE_INPUT,"Register",regstring,"Register","Logout");
}
}
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
strtok(const stringstrtok[], &index)
{
new length = strlen(stringstrtok);
while ((index < length) && (stringstrtok[index] <= ' '))
{
index++;
}
new offset = index, result[20];
while ((index < length) && (stringstrtok[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = stringstrtok[index];
index++;
}
result[index - offset] = EOS;
return result;
}
stock dini_Exists(filename[])
{
return fexist(filename);
}
stock dini_Remove(filename[])
{
return fremove(filename);
}
stock dini_Create(filename[])
{
if (fexist(filename)) return false;
new File:fhnd;
fhnd=fopen(filename,io_write);
if (fhnd)
{
fclose(fhnd);
return true;
}
return false;
}
stock dini_Set(filename[],key[],value[])
{
new key_length = strlen(key);
new value_length = strlen(value);
if (key_length==0 || key_length+value_length+2>DINI_MAX_STRING) return false;
new File:fohnd, File:fwhnd;
new tmpres[DINI_MAX_STRING];
new bool:wasset=false;
format(tmpres,sizeof(tmpres),"%s.part",filename);
fremove(tmpres);
fohnd=fopen(filename,io_read);
if (!fohnd) return false;
fwhnd=fopen(tmpres,io_write);
if (!fwhnd)
{
fclose(fohnd);
return false;
}
while (fread(fohnd,tmpres))
{
if (
!wasset
&& tmpres[key_length]=='='
&& !strcmp(tmpres, key, true, key_length)
)
{
format(tmpres,sizeof(tmpres),"%s=%s",key,value);
wasset=true;
}
else
{
DINI_StripNewLine(tmpres);
}
fwrite(fwhnd,tmpres);
fwrite(fwhnd,"\r\n");
}
if (!wasset)
{
format(tmpres,sizeof(tmpres),"%s=%s",key,value);
fwrite(fwhnd,tmpres);
fwrite(fwhnd,"\r\n");
}
fclose(fohnd);
fclose(fwhnd);
format(tmpres,sizeof(tmpres),"%s.part",filename);
if (DINI_fcopytextfile(tmpres,filename))
{
return fremove(tmpres);
}
return false;
}
stock dini_IntSet(filename[],key[],value)
{
new valuestring[DINI_MAX_STRING];
format(valuestring,DINI_MAX_STRING,"%d",value);
return dini_Set(filename,key,valuestring);
}
stock dini_Int(filename[],key[])
{
return strval(dini_Get(filename,key));
}
stock dini_FloatSet(filename[],key[],Float:value)
{
new valuestring[DINI_MAX_STRING];
format(valuestring,DINI_MAX_STRING,"%f",value);
return dini_Set(filename,key,valuestring);
}
stock Float:dini_Float(filename[],key[])
{
return floatstr(dini_Get(filename,key));
}
stock dini_Bool(filename[],key[])
{
return strval(dini_Get(filename,key));
}
stock dini_BoolSet(filename[],key[],value)
{
if (value)
{
return dini_Set(filename,key,"1");
}
return dini_Set(filename,key,"0");
}
stock dini_Unset(filename[],key[])
{
new key_length = strlen(key);
if (key_length==0 || key_length+2>DINI_MAX_STRING) return false;
new File:fohnd, File:fwhnd;
new tmpres[DINI_MAX_STRING];
format(tmpres,DINI_MAX_STRING,"%s.part",filename);
fremove(tmpres);
fohnd=fopen(filename,io_read);
if (!fohnd) return false;
fwhnd=fopen(tmpres,io_write);
if (!fwhnd)
{
fclose(fohnd);
return false;
}
while (fread(fohnd,tmpres))
{
if (
tmpres[key_length]=='='
&& !strcmp(tmpres, key, true, key_length)
)
{
}
else
{
DINI_StripNewLine(tmpres);
fwrite(fwhnd,tmpres);
fwrite(fwhnd,"\r\n");
}
}
fclose(fohnd);
fclose(fwhnd);
format(tmpres,DINI_MAX_STRING,"%s.part",filename);
if (DINI_fcopytextfile(tmpres,filename))
{
return fremove(tmpres);
}
return false;
}
stock dini_Get(filename[],key[])
{
new tmpres[DINI_MAX_STRING];
new key_length = strlen(key);
if (key_length==0 || key_length+2>DINI_MAX_STRING) return tmpres;
new File:fohnd;
fohnd=fopen(filename,io_read);
if (!fohnd) return tmpres;
while (fread(fohnd,tmpres))
{
if (
tmpres[key_length]=='='
&& !strcmp(tmpres, key, true, key_length)
)
{
DINI_StripNewLine(tmpres);
strmid(tmpres, tmpres, key_length + 1, strlen(tmpres), DINI_MAX_STRING);
fclose(fohnd);
return tmpres;
}
}
fclose(fohnd);
return tmpres;
}
stock dini_Isset(filename[],key[])
{
new key_length = strlen(key);
if (key_length==0 || key_length+2>DINI_MAX_STRING) return false;
new File:fohnd;
fohnd=fopen(filename,io_read);
if (!fohnd) return false;
new tmpres[DINI_MAX_STRING];
while (fread(fohnd,tmpres))
{
if (
tmpres[key_length]=='='
&& !strcmp(tmpres, key, true, key_length)
)
{
fclose(fohnd);
return true;
}
}
fclose(fohnd);
return false;
}
stock DINI_StripNewLine(string[])
{
new len = strlen(string);
if (string[0]==0) return ;
if ((string[len - 1] == '\n') || (string[len - 1] == '\r'))
{
string[len - 1] = 0;
if (string[0]==0) return ;
if ((string[len - 2] == '\n') || (string[len - 2] == '\r')) string[len - 2] = 0;
}
}
stock DINI_fcopytextfile(oldname[],newname[])
{
new File:ohnd,File:nhnd;
if (!fexist(oldname)) return false;
ohnd=fopen(oldname,io_read);
if (!ohnd) return false;
nhnd=fopen(newname,io_write);
if (!nhnd)
{
fclose(ohnd);
return false;
}
new tmpres[DINI_MAX_STRING];
while (fread(ohnd,tmpres))
{
DINI_StripNewLine(tmpres);
format(tmpres,sizeof(tmpres),"%s\r\n",tmpres);
fwrite(nhnd,tmpres);
}
fclose(ohnd);
fclose(nhnd);
return true;
}
stock ini_GetKey(line[])
{
new keyRes[256];
keyRes[0] = 0;
if ( strfind( line , "=" , true ) == -1 ) return keyRes;
strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
return keyRes;
}
stock ini_GetValue(line[])
{
new valRes[256];
valRes[0]=0;
if ( strfind( line , "=" , true ) == -1 ) return valRes;
strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
return valRes;
}
stock strvalEx( const string[] )
{
if( strlen( string ) >= 50 ) return 0;
return strval(string);
}