E sub forma de functie. Gamemode-ul e burned la baza.
function Timers() {
new
string[180], szTD[600], anim,
Float: ppHealth, Float: ppArmour,
Float: x, Float: y, Float: z, Float: animpos[3], swinner[180];
foreach(Player, i) {
if(IsPlayerConnected(i) && IsPlayerLogged[i] == 1) {
if(JobWorking[i] == 1) WorkingTime[i] ++;
if(JobLeftTime[i] > 0) {
JobLeftTime[i] --;
if(JobLeftTime[i] == 60) SCM(i, COLOR_YELLOW, "Mai ai la dispozitie 1 minut sa intri in vehiculul de la job.");
if(JobLeftTime[i] == 0) {
SendClientMessage(i, COLOR_GREY, "Job esuat! Ai parasit vehiculul.");
if(playerObject[i] != 0) DestroyPlayerObject(i, playerObject[i]), playerObject[i] = 0;
if(playerObject2[i] != 0) DestroyObject(playerObject2[i]), playerObject2[i] = 0;
JobWorking[i] = 0;
PlayerTextDrawHide(i, JobTD);
if(JobVehicle[i] != 0) { DestroyVehicle(JobVehicle[i]); JobVehicle[i] = 0; }
if(Trailer[i] != 0) { DestroyVehicle(Trailer[i]); Trailer[i] = 0; }
PlayerTextDrawHide(i, InfosTD);
DisablePlayerCheckpointEx(i);
DisablePlayerRaceCheckpointEx(i);
RemovePlayerAttachedObject(i, 6);
RemovePlayerAttachedObject(i, 2);
CP[i] = 0;
JobVehicle[i] = 0;
JobDeelay[i][PlayerInfo[i][pJob]] = 180;
DestroyWoodObject(i);
}
}
if(RaceStarted == 1 && RaceTime == 0 && InRaceArena[i] == 1) {
playerRaceTime[i] ++;
format(string, sizeof(string), "Position: ~y~%d/%d~w~~h~~n~Checkpoints: ~y~%d/%d~w~~h~~n~Race time: ~y~%s", playerRacePlace[i], RacePlayers, RaceCP[i]-1, RaceCheckpoints(), CalculeazaTimp2(playerRaceTime[i]));
PlayerTextDrawSetString(i, CpTD, string);
PlayerTextDrawShow(i, CpTD);
}
if(RepairTimer[i] > 0) {
RepairTimer[i]--;
if(RepairTimer[i] == 0) {
RepairVehicle(VehicleForRepair[i]);
SCM(i, COLOR_GREY, "Vehiculul tau a fost reparat cu succes.");
VehicleForRepair[i] = -1;
PlayerInfo[i][pKits]--;
Update(i, pKitsx);
}
}
if(TutorialActive[i] == 1) TutorialSeconds[i] ++;
if(TutorialSeconds[i] == 20 && TutorialActive[i] == 1) {
TutorialStep[i] ++;
TutorialSeconds[i] = 0;
szTD = "";
switch(TutorialStep[i]) {
case 1: {
TogglePlayerSpectating(i, 1);
for( new j = 0; j <= 50; j++) SendClientMessage(i, COLOR_WHITE, "");
PlayAudioStreamForPlayer(i, "http://www.youtubeinmp3.com/fetch/?video=https://www.youtube.com/watch?v=pk1YRxLu8n4");
SetPlayerVirtualWorld(i, 9999);
PlayerTextDrawHide(i, NameTD);
PlayerTextDrawSetString(i, TutorialTD[1], "~y~Tutorial - Pasul 1:~w~~h~ Intro");
strcat(szTD, "Salut si bine ai venit pe comunitatea FIVE RPG Romania.~n~Pentru inceput, te voi pune la cunostinta cu cateva elemente de baza ale server-ului RPG.~n~");
strcat(szTD, "Pentru a vizualiza majoritatea comenzilor, poti folosi comanda /help.~n~Dupa tastarea acestei comenzi, ti se vor afisa diferite tabele cu fiecare informatie necesara la momentul dat.");
InterpolateCameraPos(i, 1719.8304,-1849.8419,18.7495, 1816.2760,-1849.9463,13.4141, 15000);
InterpolateCameraLookAt(i, 1799.7932,-1865.0728,13.5731, 1799.7932,-1865.0728,13.5731, 15000);
SetPlayerPosEx(i, 1719.8304,-1849.8419,18.7495);
} case 2: {
PlayerTextDrawSetString(i, TutorialTD[1], "~y~Tutorial - Pasul 2:~w~~h~ Cum se fac banii?");
strcat(szTD, "Pentru a iti putea cumpara diferite bunuri, ai nevoie de bani.~n~Poti procura bani din diferite activitati precum lucrand la un job, facand comert cu~n~");
strcat(szTD, "alti jucatori sau savarsind actiuni ilegale precum traficul de droguri sau de arme.~n~Cel mai sigur mod prin care poti face bani usor si rapid sunt job-urile.~n~");
strcat(szTD, "Iti poti alege un job prin intermediul comenzii /jobs.~n~Pentru inceput, iti recomand job-ul Fisher.~n~Poti afla mai multe detalii despre job-ul tau, respectiv comenzile acestuia prin comanda /jobhelp.~n~");
InterpolateCameraPos(i, 1025.008911, -2257.895019, 27.578266, 894.154174, -2173.197998, 16.204189, 15000);
InterpolateCameraLookAt(i, 1021.083007, -2254.932861, 26.676969, 891.013000, -2169.591796, 14.745256, 15000);
SetPlayerPosEx(i, 1025.008911, -2257.895019, 27.578266);
} case 3: {
PlayerTextDrawSetString(i, TutorialTD[1], "~y~Tutorial - Pasul 3:~w~~h~ Factiunile server-ului");
strcat(szTD, "Server-ul nostru dispune in total de 13 factiuni: 3 departamente~n~(Los Santos Police Department, Federal Bureau of Investigations si National Guard),~n~");
strcat(szTD, "5 factiuni pasnice (Los Santos Taxi, News Reporters, Tow Truck Company, School Instructors si Paramedic & Fireman), 4 mafii (Grove Street, Los Aztecas~n~");
strcat(szTD, "Los Aztecas, Los Vagos si The Ballas) si o factiune mixta: Hitman Agency.");
strcat(szTD, "");
strcat(szTD, "");
InterpolateCameraPos(i, 1421.910034, -1582.262817, 40.729099, 1507.106933, -1648.555297, 23.424715, 15000);
InterpolateCameraLookAt(i, 1425.755249, -1585.182006, 39.427848, 1511.111816, -1651.263793, 22.149885, 15000);
SetPlayerPosEx(i, 1421.910034, -1582.262817, 40.729099);
} case 4: {
PlayerTextDrawSetString(i, TutorialTD[1], "~y~Tutorial - Pasul 4:~w~~h~ Serviciile factiunilor");
strcat(szTD, "Fiecare factiune are rolul ei pe server, astfel, daca aveti nevoie de un anumit serviciu,~n~puteti apela la membrii unei factiuni!~n~ Singura metoda prin");
strcat(szTD, " care puteti lua legatura direct cu membrii~n~unei factiuni este prin intermediul comenzii /service.");
InterpolateCameraPos(i, 1880.739990, -1513.968627, 43.872097, 1975.696899, -1472.749633, 29.635717, 15000);
InterpolateCameraLookAt(i, 1884.849731, -1511.396240, 42.650218, 1979.281372, -1469.331787, 28.950380, 15000);
SetPlayerPosEx(i, 1880.739990, -1513.968627, 43.872097);
} case 5: {
PlayerTextDrawSetString(i, TutorialTD[1], "~y~Tutorial - Pasul 5:~w~~h~ Anunturi publice");
strcat(szTD, "Aici se afla CNN-ul din orasul Los Santos.~n~In acest loc puteti posta un anunt prin care va puteti promova produsele~n~de vanzare sau ca doriti sa");
strcat(szTD, " cumparati ceva.~n~Puteti plasa un anunt incepand cu level 5 prin intermediul comenzii (/ad).~n~Fiecare anunt va costa bani iar dupa plasarea unui anunt,~n~va");
strcat(szTD, " trebui sa asteptati cateva secunde pentru a fi postat.~n~Pentru a afla locatiile importante ale server-ului poti folosi comanda (/gps)~n~");
InterpolateCameraPos(i, 1123.2764,-1412.7639,46.0174, 1152.8912,-1498.3093,29.8144, 15000);
InterpolateCameraLookAt(i, 1170.7367,-1489.6268,22.7553, 1170.7367,-1489.6268,22.7553, 15000);
SetPlayerPosEx(i, 1123.2764,-1412.7639,46.0174);
} case 6: {
PlayerTextDrawSetString(i, TutorialTD[1], "~y~Tutorial - Pasul 6:~w~~h~ Sfarsit");
strcat(szTD, "Am ajuns la sfarsitul tutorialului!~n~Speram ca ai inteles cate ceva despre server-ul nostru si iti uram distractie placuta!~n~Poti deschide acest");
strcat(szTD, " tutorial de cate ori doresti prin intermediul comenzii /tutorial.~n~Daca ai nelamuriri cu privinta la modul de joc, foloseste comanda [/newbie] iar un helper iti va raspunde!~n~");
strcat(szTD, "Pe server exista un sistem de realizari, (/realizari). Fiecare realizare obtinuta este recompensata cu bani, puncte premium si un RP.");
InterpolateCameraPos(i, 1719.8304,-1849.8419,18.7495, 1816.2760,-1849.9463,13.4141, 15000);
InterpolateCameraLookAt(i, 1799.7932,-1865.0728,13.5731, 1799.7932,-1865.0728,13.5731, 15000);
SetPlayerPosEx(i, 1719.8304,-1849.8419,18.7495);
} case 7: {
TutorialActive[i] = 0;
if(PlayerInfo[i][pTut] == 0) {
ServerAccounts++;
format(string, sizeof(string), "%s(%d) s-a inregistrat pe server. [#%d]", GetName(i), i, PlayerInfo[i][pSQLID]);
SendAdminMessage(COLOR_LIGHTRED, string, 1);
for( new j = 0; j <= 50; j++) SendClientMessage(i, COLOR_WHITE, "");
SendClientMessage(i, COLOR_YELLOW, "Te-ai inregistrat cu succes! Foloseste comanda /bonus pentru un premiu de inceput.");
SendClientMessage(i, COLOR_YELLOW, "Server-ul ti-a plasat un checkpoint rosu pe mapa catre DMV, locul unde poti lua licenta de condus.");
SendClientMessage(i, COLOR_YELLOW, "Iti uram distractie placuta!");
SetPlayerCheckpointEx(i, 1219.4441,-1813.0352,16.5938, 5.0);
ResetPlayerCash(i);
GivePlayerCash(i, 15000);
PlayerInfo[i][pAccount] = 20000;
format(string, sizeof(string), "UPDATE users SET `Tutorial`='1',`Bank`='20000',`Money`='15000' WHERE `name`='%s'",GetName(i));
mysql_query(SQL, string);
TutTime[i] = 0; PlayerInfo[i][pTut] = 1; gOoc[i] = 0; gNews[i] = 0; gFam[i] = 0; CP[i] = 53;
}
TogglePlayerControllable(i, 1);
TogglePlayerSpectating(i, 0);
SetCameraBehindPlayer(i);
SpawnPlayer(i);
PlayerTextDrawHide(i, TutorialTD[0]);
PlayerTextDrawHide(i, TutorialTD[1]);
}
}
if(TutorialStep[i] >= 1 && TutorialStep[i] <= 6) {
PlayerTextDrawSetString(i, TutorialTD[0], szTD);
PlayerTextDrawShow(i, TutorialTD[0]);
PlayerTextDrawShow(i, TutorialTD[1]);
}
}
if(MoneyTimer[i] > 0) {
MoneyTimer[i]--;
if(MoneyTimer[i] == 0) {
PlayerTextDrawHide(i, MoneyPTD);
MoneyTimer[i] = -1;
}
}
if(CP[i] != 0 && PlayerInfo[i][pShowCP] == 1) {
new str[64], Float: fDistance = GetPlayerDistanceFromPoint(i, CheckpointPos[i][0], CheckpointPos[i][1], CheckpointPos[i][2]);
format(str, sizeof(str), "Distance: %0.1fm", fDistance);
PlayerTextDrawSetString(i, CpTDD, str);
PlayerTextDrawShow(i, CpTDD);
}
if(IsACop(i) && NearWanted[i] == 1) show_near_wanted(i);
if(InTraining[i] == 1 && PlayerInfo[i][pWantedLevel] != 0) {
InTraining[i] = 0;
FactionsSpawns(i);
new t = GetPVarInt(i, "Training");
SetPlayerPosEx(i, Training[t][0], Training[t][1], Training[t][2]);
DeletePVar(i, "Training");
ResetPlayerWeapons(i);
SCM(i, COLOR_YELLOW, "Ai fost scos din sala de antrenament deoarece ai wanted!");
}
if(!PlayerToPoint(100.0, i, LastPos[i][0], LastPos[i][1], LastPos[i][2]) && !IsPlayerInArea(i, -3000, -2274.5, -1776, -859.5) && PlayerInfo[i][pAdmin] == 0 && Exception[i] == 0 && AFKSeconds[i] < 10 && InDealer[i] == 0 && ArenaSpec[i] == -1 && GetPlayerState(i) != PLAYER_STATE_PASSENGER && Spectate[i] == 255 && GetPlayerSurfingVehicleID(i) != INVALID_VEHICLE_ID) {
if(ServerSystem[0] == 0) {
WarningsCheat[i] += 2;
if(WarningsCheat[i] >= 4) {
/*format(string, sizeof(string), "AdmWarning: %s (%d) este suspectat de teleport hack.", GetName(i), i);
SendAdminMessage(COLOR_WARNING, string, 1);*/
NightBot(i, "Cheats (teleport-hack)");
WarningsCheat[i] = -3;
}
}
}
if(WarningsCheat[i] > 0) WarningsCheat[i] --;
if(Exception[i] > 0) Exception[i] --;
if(GetPlayerWeapon(i) >= 8 && GetPlayerWeapon(i) != 46 && GetPlayerWeapon(i) != 43 && PlayerInfo[i][pGunLic] == 0) {
if(ServerSystem[1] == 0 ) NightBot(i, "Cheats (weapon-hack)");
}
if(GetPlayerState(i) == PLAYER_STATE_DRIVER && GetPlayerInterior(i) == 0) {
if(!nearPNS(i) && VehicleExist[GetPlayerVehicleID(i)] == 1 && PlayerInfo[i][pAdmin] == 0) {
new Float: vhp;
GetVehicleHealth(GetPlayerVehicleID(i), vhp);
if(vhp == 1000) {
//if(ServerSystem[7] == 0) NightBot(i, "Cheats (repair-hack)");
RemovePlayerFromVehicle(i);
}
}
if(!nearPNS2(i) && NearPNS[i] == 1) DisableRemoteVehicleCollisions(i, 0), NearPNS[i] = 0;
if(nearPNS2(i)) {
DisableRemoteVehicleCollisions(i, 1);
NearPNS[i] = 1;
}
}
if(GetPlayerState(i) == PLAYER_STATE_DRIVER) Checkvehinfo(i);
if(TradeTime[i] > 0) {
TradeTime[i] --;
new id = TradeID[i];
format(string, sizeof(string), "00:0%d", TradeTime[i]);
PlayerTextDrawSetString(i, TradePTD[6], string);
PlayerTextDrawSetString(id, TradePTD[6], string);
PlayerTextDrawShow(i, TradePTD[6]);
PlayerTextDrawShow(id, TradePTD[6]);
if(TradeTime[i] == 0) {
FinishTrade(i);
PlayerTextDrawHide(i, TradePTD[6]);
PlayerTextDrawHide(id, TradePTD[6]);
}
}
if(SafeRTime[i] > 0) {
SafeRTime[i] --;
if(SafeRTime[i] == 0) {
TogglePlayerControllable(i,1);
BagTime[i] = 60;
Freezed[i] = 0;
SendClientMessage(i, COLOR_YELLOW, "* Ai la dispozitie un minut sa duci sacul in spatele unui vehicul. (Apasa tasta Y)");
SetPlayerAttachedObject( i, 0, 1550, 1, 0.024558, -0.279748, -0.060589, 6.105677, 137.291320, 147.132202, 1.019888, 1.000000, 1.000000 );
ClearAnimations(i);
}
}
if(BagTime[i] > 0) {
BagTime[i] --;
if(BagTime[i] == 0) {
if(JobWorking[i] == 1 && PlayerInfo[i][pJob] == 3) {
SendClientMessage(i, COLOR_GREY, "Job esuat! Nu ai dus lemenele la timp.");
if(playerObject[i] != 0) DestroyPlayerObject(i, playerObject[i]), playerObject[i] = 0;
if(playerObject2[i] != 0) DestroyObject(playerObject2[i]), playerObject2[i] = 0;
JobWorking[i] = 0;
PlayerTextDrawHide(i, JobTD);
if(JobVehicle[i] != 0) { DestroyVehicle(JobVehicle[i]); JobVehicle[i] = 0; }
if(Trailer[i] != 0) { DestroyVehicle(Trailer[i]); Trailer[i] = 0; }
PlayerTextDrawHide(i, InfosTD);
DisablePlayerCheckpointEx(i);
DisablePlayerRaceCheckpointEx(i);
RemovePlayerAttachedObject(i, 6);
RemovePlayerAttachedObject(i, 2);
SetPlayerSpecialAction(i,0);
CP[i] = 0;
JobVehicle[i] = 0;
JobDeelay[i][PlayerInfo[i][pJob]] = 180;
DestroyWoodObject(i);
if(PlayerInfo[i][pJob] == 3) ResetWeapons(i);
}
else FailRob(i, "Nu ai dus sacul la timp");
}
else {
format(string, sizeof(string), "~w~%d", BagTime[i]);
GameTextForPlayer(i, string, 1500, 4);
}
}
// AdmBot - Kick
if(GetPlayerState(i) == PLAYER_STATE_DRIVER && !IsAPlane(GetPlayerVehicleID(i))) {
new speed = Carspeed(i);
new idcar = GetPlayerVehicleID(i);
new caridd = FindSpawnID(idcar);
if(speed > 230 && PlayerInfo[i][pAdmin] < 1 && !IsPlayerInArea(i, -3000, -2274.5, -1776, -859.5))
{
if(GetVehicleModel(i) == 522 && speed < 380 || CarInfo[caridd][cStage1] == 1) return 1;
if(GetAdmins() > 0) {
format(string, sizeof(string), "AdmWarning: %s(%d) conduce cu %.0d km/h un %s.", GetName(i),i,speed,aVehicleNames[GetVehicleModel(GetPlayerVehicleID(i))-400]);
if(GetPVarInt(i, "Cover") == 0) SendAdminMessage(COLOR_WARNING, string,1);
}
else if(ServerSystem[5] == 0) NightBot(i, "Cheats (speed-hack)");
}
}
if(PlayerInfo[i][pAdmin] < 1) {
anim = GetPlayerAnimationIndex(i);
GetPlayerVelocity(i, animpos[0], animpos[1], animpos[2]);
if(animpos[0] <= -0.800000 || animpos[1] <= -0.800000 || animpos[2] <= -0.800000 && anim == 1008) {
new surfx = GetPlayerSurfingVehicleID(i);
if(surfx == INVALID_VEHICLE_ID && !IsABike2(gLastCar[i])) {
format(string, sizeof(string), "AdmWarning: %s (%d) este suspectat de Fly-Hack.", GetName(i), i);
SendAdminMessage(COLOR_WARNING, string, 1);
CheatWarnings[i] += 2;
if(ServerSystem[6] == 0 && CheatWarnings[i] >= 6) NightBot(i, "Cheats (fly-hack)");
}
}
}
if(CheatWarnings[i] > 0) CheatWarnings[i] --;
if(GetPlayerSurfingVehicleID(i) != INVALID_VEHICLE_ID && PlayerInfo[i][pAdmin] == 0 && !IsABoat(GetPlayerSurfingVehicleID(i)) ) {
new pid = GetVehicleDriver(GetPlayerSurfingVehicleID(i));
if(togsurf[pid] == 0 && IsPlayerInVehicle(pid, GetPlayerSurfingVehicleID(i))) SlapPlayer(i);
}
if(IsPlayerPaused(i) == true || PlayerToPoint(1.1, i, LastPos[i][0], LastPos[i][1], LastPos[i][2])) {
/*if(HelperDuty[i] == 1) {
DutyAFK[i] ++;
if(DutyAFK[i] == 60) {
HelperDuty[i] = 0;
SCM(HaveHelp[i], -1, "Intrebarea ta a fost stearsa deoarece helper-ul nu a raspuns in cele 60 de secunde.");
Helped[HaveHelp[i]] = 0;
HaveHelp[i] = -1;
SendClientMessage(i, -1, "Acum nu mai esti la datorie ca helper deoarece ai stat AFK mai mult de un minut.");
}
}
else DutyAFK[i] = 0;*/
AFKSeconds[i] ++;
if(AFKSeconds[i] == 3600 && PlayerInfo[i][pSleeping] == 0 && PlayerInfo[i][pAdmin] < 6) {
format(string, sizeof(string), "AdmCmd: %s was kicked by AdmBot, reason: AFK fara /sleep mai mult de 60 minute.", GetNameEx(i));
SendClientMessageToAll(COLOR_LIGHTRED, string);
KickEx(i);
}
if(AFKSeconds[i] >= 120) {
if(JobWorking[i] == 1) {
SendClientMessage(i, COLOR_GREY, "Job esuat! Ai stat AFK timp de 2 minute.");
if(playerObject[i] != 0) DestroyPlayerObject(i, playerObject[i]), playerObject[i] = 0;
if(playerObject2[i] != 0) DestroyObject(playerObject2[i]), playerObject2[i] = 0;
JobWorking[i] = 0;
PlayerTextDrawHide(i, JobTD);
if(JobVehicle[i] != 0) { DestroyVehicle(JobVehicle[i]); JobVehicle[i] = 0; }
if(Trailer[i] != 0) { DestroyVehicle(Trailer[i]); Trailer[i] = 0; }
PlayerTextDrawHide(i, InfosTD);
DisablePlayerCheckpointEx(i);
DisablePlayerRaceCheckpointEx(i);
CP[i] = 0;
JobVehicle[i] = 0;
JobDeelay[i][PlayerInfo[i][pJob]] = 180;
RemovePlayerAttachedObject(i, 6);
RemovePlayerAttachedObject(i, 2);
SetPlayerSpecialAction(i, 0);
DestroyWoodObject(i);
if(PlayerInfo[i][pJob] == 3) ResetWeapons(i);
SetPlayerSpecialAction(i, 0);
}
}
}
else AFKSeconds[i] = 0;
if(PlayerInfo[i][pSleeping] == 0 && Spectate[i] == 255 && AFKSeconds[i] < 15) PlayerInfo[i][pSeconds] ++;
GetPlayerPos(i, LastPos[i][0], LastPos[i][1], LastPos[i][2]);
if(GetPlayerWeapon(i) != 0 && AFKSeconds[i] == 0) {
if(ServerSystem[1] == 0 && GetPlayerWeapon(i) != 0) CheckWeapons(i, GetPlayerWeapon(i));
if(ServerSystem[2] == 0 && GetPlayerWeapon(i) != 0) CheckAmmo(i, GetPlayerWeapon(i));
}
if(PlayerInfo[i][pAdmin] == 0 && GetPlayerSpecialAction(i) == 2) {
if(ServerSystem[9] == 0) NightBot(i, "Cheats (jetpack)");
}
/*if(WTimes[i] >= 6) {
if(GetAdmins() > 0) {
format(string, sizeof(string), "AdmCmd: %s a primit kick de la AdmBot. Motiv: Checkpoint teleport (3/3)", GetName(i));
SendClientMessageToAll(COLOR_LIGHTRED, string);
KickEx(i);
}
else if(ServerSystem[4] == 0) NightBot(i, "Checkpoint teleport");
WTimes[i] = 0;
}*/
if(WTimes[i] != 0) WTimes[i] -= 2;
if(GetPlayerDrunkLevel(i) < 100) SetPlayerDrunkLevel(i, 2000);
else {
if(pDrunkLevelLast[i] != GetPlayerDrunkLevel(i)) {
new wfps = pDrunkLevelLast[i] - GetPlayerDrunkLevel(i);
if((wfps > 0) && (wfps < 200)) FPS2[i] = wfps;
pDrunkLevelLast[i] = GetPlayerDrunkLevel(i);
}
}
if(PlayerInfo[i][pShowFP] == 1 && PlayerInfo[i][pShowHud] == 0) {
if(PlayerInfo[i][pAdmin] == 0) format(string, sizeof(string), "~g~%d~n~~w~~h~FPS~n~~n~~p~%d~n~~w~~h~PING", FPS2[i]-1, GetPlayerPing(i));
else format(string, sizeof(string), "~r~%d~n~~w~~h~Tick~n~~n~~g~%d~n~~w~~h~FPS~n~~n~~p~%d~n~~w~~h~PING", GetServerTickRate(), FPS2[i]-1, GetPlayerPing(i));
PlayerTextDrawSetString(i, ShowTD, string);
PlayerTextDrawShow(i, ShowTD);
}
if(GetPlayerAnimationIndex(i)==1660) OnPlayerUseVending(i);
if(GetPlayerSurfingVehicleID(i) != INVALID_VEHICLE_ID && !IsABoat(GetPlayerSurfingVehicleID(i))) {
if(GetPlayerWeapon(i) != 0) {
SetPlayerArmedWeapon(i, 0);
SCM(i, COLOR_WARNING, "Nu poti folosi armele atata timp cat esti pe vehicul!");
}
}
if(PaintType[i] != 0 && PlayersOnPaint(PaintType[i]-1) >= 2) {
new pp = PaintType[i]-1;
if(pp < 2) {
format(string, sizeof(string), "Paintball time: %s~n~Current map: %s~n~Stats: %d kills, %d deaths.~n~Total score: %d~n~Best player: %s (kills: %d)~n~%d players in paintball.",
CalculeazaTimp2(PaintTime[pp]), MapName(pp), PKills[i], PDeaths[i], PKills[i]-PDeaths[i], GetName(PaintballWinner[pp]), PKills[PaintballWinner[pp]], PlayersOnPaint(pp));
}
else {
new masadenume[32];
GetWeaponNameEx(GetPlayerWeapon(i), masadenume, sizeof(masadenume));
format(string, sizeof(string), "Paintball time: %s~n~Current map: %s~n~Stats: %d kills, %d deaths.~n~Total score: %d~n~Level %d, Weapon: %s~n~Best player: %s (kills: %d)~n~%d players in paintball.",
CalculeazaTimp2(PaintTime[pp]), MapName(pp), PKills[i], PDeaths[i], PKills[i]-PDeaths[i], GetPaintLevel(i), masadenume, GetName(PaintballWinner[pp]), PKills[PaintballWinner[pp]], PlayersOnPaint(pp));
}
if(PaintTime[pp] == 0 && PaintballWinner[pp] != -1) {
for(new m = 0; m < 5; m++) SendDeathMessageToPlayer(i, 1001, 1001, 200);
format(string, sizeof(string), "Statistica ta in aceasta runda: %d ucideri si %d decese.", PKills[i], PDeaths[i]);
SCM(i, COLOR_YELLOW, string);
format(swinner, 256, "* %s a castigat runda cu %d ucideri.", GetName(PaintballWinner[pp]), PKills[PaintballWinner[pp]]);
PKills[i] = 0, PDeaths[i] = 0;
ResetWeapons(i);
PaintballWinnerScore[pp] = 0;
SendPaintMessage(PaintType[i], COLOR_YELLOW, swinner);
PaintballWinner[pp] = -1;
}
if(PaintTime[pp] != 0 && PaintText[pp] == 0) {
PlayerTextDrawSetString(i, PaintTD, string);
PlayerTextDrawShow(i, PaintTD);
}
else {
PlayerTextDrawHide(i, PaintTD);
}
}
else PlayerTextDrawHide(i, PaintTD);
if(PlayerInfo[i][pWantedLevel] >= 1) {
format(string, sizeof(string), "Nivel wanted actual: ~y~%d~n~~w~~h~Scade un nivel in: ~y~%d min.", PlayerInfo[i][pWantedLevel], 10-WantedTime[i]);
PlayerTextDrawSetString(i, WantedTD[i], string);
PlayerTextDrawShow(i, WantedTD[i]);
}
else PlayerTextDrawHide(i, WantedTD[i]);
if(PlayerInfo[i][pJob] == 1 && JobWorking[i] == 1) {
if(PlayerToPoint(200, i, -346.3617,-1437.6451,20.0199) && Carspeed(i) > 25) {
JobSeconds[i] --;
UpdateJobStats(i);
if(JobSeconds[i] == 0) {
new rand = 10 + random(30);
KG[i] = rand;
format(string, sizeof(string), "Ai primit %d kilograme de faina. Du-te la un Burger Shot pentru a vinde faina.", KG[i]);
SendClientMessage(i, COLOR_MONEY, string);
SCM(i, COLOR_WHITE, "Pentru a afla unde este un Burger Shot, foloseste comanda /locations.");
JobWorking[i] = 0;
PlayerTextDrawHide(i, JobTD);
if(JobVehicle[i] != 0) { DestroyVehicle(JobVehicle[i]); JobVehicle[i] = 0; }
PlayerTextDrawHide(i, InfosTD);
DisablePlayerCheckpointEx(i);
JobVehicle[i] = 0;
}
}
}
GetPlayerHealthEx(i, ppHealth);
GetPlayerArmourEx(i, ppArmour);
if(InGame[i] == 1 && GameStep == 1 && GameDeath[i] == 0) {
format(string, sizeof(string), "%.0f%", ppHealth);
PlayerTextDrawSetString(i, GamePTD[1], string);
format(string, sizeof(string), "%.0f%", ppArmour);
PlayerTextDrawSetString(i, GamePTD[2], string);
format(string, sizeof(string), "%d", GetPlayerAmmo(i));
PlayerTextDrawSetString(i, GamePTD[3], string);
PlayerTextDrawShow(i, GamePTD[1]);
PlayerTextDrawShow(i, GamePTD[2]);
PlayerTextDrawShow(i, GamePTD[3]);
}
if(PlayerInfo[i][pShowHP] != 0 && ppHealth >= 1 && InGame[i] == 0)
{
format(string, sizeof(string), "%.0f", ppHealth);
PlayerTextDrawSetString(i, CleoTD[0], string);
PlayerTextDrawShow(i, CleoTD[0]);
PlayerTextDrawColor(i, CleoTD[0], GetHudColor(PlayerInfo[i][pShowHP]));
}
else PlayerTextDrawHide(i, CleoTD[0]);
if(PlayerInfo[i][pShowAP] != 0 && ppArmour >= 1 && InGame[i] == 0)
{
format(string, sizeof(string), "%.0f", ppArmour);
PlayerTextDrawSetString(i, CleoTD[1], string);
PlayerTextDrawShow(i, CleoTD[1]);
PlayerTextDrawColor(i, CleoTD[1], GetHudColor(PlayerInfo[i][pShowAP]));
}
else PlayerTextDrawHide(i, CleoTD[1]);
if(SafeTime[i] > 0) SafeTime[i]--;
if(SafeTime[i] == 1) {
if(PlayerAccount[i] == 1 && IsPlayerLogged[i] == 0) {
format(string, sizeof(string), "Cont inregistrat cu succes!\nIntrodu parola din nou in casuta de mai jos.",GetName(i));
ShowPlayerDialog(i,DIALOG_LOGIN2,DIALOG_STYLE_PASSWORD,"Logare", string,"Logare","Quit");
}
}
if(PlayerInfo[i][pLevel] >= 0 && PlayerInfo[i][pLevel] <= 2) { PlayerInfo[i][pPayCheck] += 2; }
else if(PlayerInfo[i][pLevel] >= 3 && PlayerInfo[i][pLevel] <= 4) { PlayerInfo[i][pPayCheck] += 3; }
else if(PlayerInfo[i][pLevel] >= 5 && PlayerInfo[i][pLevel] <= 6) { PlayerInfo[i][pPayCheck] += 4; }
else if(PlayerInfo[i][pLevel] >= 7 && PlayerInfo[i][pLevel] <= { PlayerInfo[i][pPayCheck] += 5; }
else if(PlayerInfo[i][pLevel] >= 9 && PlayerInfo[i][pLevel] <= 10) { PlayerInfo[i][pPayCheck] += 6; }
else if(PlayerInfo[i][pLevel] >= 11 && PlayerInfo[i][pLevel] <= 12) { PlayerInfo[i][pPayCheck] += 7; }
else if(PlayerInfo[i][pLevel] >= 13 && PlayerInfo[i][pLevel] <= 14) { PlayerInfo[i][pPayCheck] += 8; }
else if(PlayerInfo[i][pLevel] >= 15 && PlayerInfo[i][pLevel] <= 16) { PlayerInfo[i][pPayCheck] += 9; }
else if(PlayerInfo[i][pLevel] >= 17 && PlayerInfo[i][pLevel] <= 18) { PlayerInfo[i][pPayCheck] += 10; }
else if(PlayerInfo[i][pLevel] >= 19 && PlayerInfo[i][pLevel] <= 20) { PlayerInfo[i][pPayCheck] += 11; }
else if(PlayerInfo[i][pLevel] >= 21) { PlayerInfo[i][pPayCheck] += 12; }
if(PlayerInfo[i][pJailed] > 0) {
if(PlayerInfo[i][pJailTime] > 0) {
if(IsPlayerLogged[i] == 1) {
PlayerInfo[i][pJailTime]--;
TextDrawShowForPlayer(i, Jailtime[i]);
if(PlayerInfo[i][pJailTime]/60 > 1) format(string, sizeof(string), "Jail time: ~r~%d minute", PlayerInfo[i][pJailTime]/60);
else if(PlayerInfo[i][pJailTime]/60 == 1) format(string, sizeof(string), "Jail time: ~r~%d minut", PlayerInfo[i][pJailTime]/60);
else if(PlayerInfo[i][pJailTime]/60 == 0) format(string, sizeof(string), "Jail time: ~r~%d secunde", PlayerInfo[i][pJailTime]);
TextDrawSetString(Jailtime[i], string);
}
}
if(PlayerInfo[i][pJailTime] <= 0) {
PlayerInfo[i][pJailTime] = 0;
if(PlayerInfo[i][pJailed] == 1) {
PutPlayerInJail(i);
}
PlayerInfo[i][pJailed] = 0;
Update(i, pJailTimex);
Update(i, pJailedx);
SpawnPlayer(i);
SetPlayerSpecialAction(i,SPECIAL_ACTION_NONE);
RemovePlayerAttachedObject(i,1);
TextDrawHideForPlayer(i, Jailtime[i]);
if(PlayerInfo[i][pChar] > 0) SetPlayerSkinEx(i, PlayerInfo[i][pChar]);
else SetPlayerSkinEx(i, PlayerInfo[i][pModel]);
ClearCrime(i);
PlayerInfo[i][pAJail] = 0;
UpdateVar(i, "AJail", 0);
SetPlayerToTeamColor(i);
TogglePlayerControllable(i, 1);
}
}
if(PlayerInfo[i][pHitT] > 0) PlayerInfo[i][pHitT] -= 1;
if(PlayerInfo[i][pMuted] > 0) {
if(PlayerInfo[i][pMuteTime] > 0) PlayerInfo[i][pMuteTime]--;
if(PlayerInfo[i][pMuteTime] <= 0){
PlayerInfo[i][pMuteTime] = 0;
SendClientMessage(i, COLOR_GREY, "You have now been automatically unmuted.");
PlayerInfo[i][pMuted] = 0;
}
}
if(targetfind[i] >= 0 && UsedFind[i] == 1) {
new target, j;
target = targetfind[i];
if(Spectate[target] != 255) {
PlayerTextDrawHide(i, FindTD);
DisablePlayerCheckpointEx(i);
SCM(i, COLOR_YELLOW, "Acel admin este ocupat! Checkpoint dezactivat.");
targetfind[i] = -1;
CP[i] = 0;
UsedFind[i] = 0;
}
else {
if(InBussines[target] > 0) {
j = InBussines[target];
SetPlayerCheckpointEx(i,BizzInfo[j][bEntranceX], BizzInfo[j][bEntranceY], BizzInfo[j][bEntranceZ],4);
format(szTD, sizeof(szTD), "Name: ~b~~h~%s (%d)~w~~h~~n~Distance: ~b~~h~%0.1f m (%s)", GetName(targetfind[i]), targetfind[i], GetPlayerDistanceFromPoint(i, BizzInfo[j][bEntranceX], BizzInfo[j][bEntranceY], BizzInfo[j][bEntranceZ]), GetCity(target));
PlayerTextDrawSetString(i, FindTD, szTD);
PlayerTextDrawShow(i, FindTD);
}
else if(InHouse[target] > 0) {
j = InHouse[target];
SetPlayerCheckpointEx(i,HouseInfo[j][hEntrancex],HouseInfo[j][hEntrancey],HouseInfo[j][hEntrancez],4);
format(szTD, sizeof(szTD), "Name: ~b~~h~%s (%d)~w~~h~~n~Distance: ~b~~h~%0.1f m (%s)", GetName(targetfind[i]), targetfind[i], GetPlayerDistanceFromPoint(i, HouseInfo[j][hEntrancex],HouseInfo[j][hEntrancey],HouseInfo[j][hEntrancez]), GetCity(target));
PlayerTextDrawSetString(i, FindTD, szTD);
PlayerTextDrawShow(i, FindTD);
}
else if(InHQ[target] != -1) {
j = InHQ[target]-1;
SetPlayerCheckpointEx(i,DynamicFactions[j][fcX],DynamicFactions[j][fcY],DynamicFactions[j][fcZ],4);
format(szTD, sizeof(szTD), "Name: ~b~~h~%s (%d)~w~~h~~n~Distance: ~b~~h~%0.1f m (%s)", GetName(targetfind[i]), targetfind[i], GetPlayerDistanceFromPoint(i, HQPos[j][0],HQPos[j][1],HQPos[j][2]), GetCity(target));
PlayerTextDrawSetString(i, FindTD, szTD);
PlayerTextDrawShow(i, FindTD);
}
else {
GetPlayerPos(target,x,y,z);
SetPlayerCheckpointEx(i,x,y,z,4);
format(szTD, sizeof(szTD), "Name: ~b~~h~%s (%d)~w~~h~~n~Distance: ~b~~h~%0.1f m (%s)", GetName(targetfind[i]), targetfind[i], GetPlayerDistanceFromPoint(i, x,y,z), GetCity(target));
PlayerTextDrawSetString(i, FindTD, szTD);
PlayerTextDrawShow(i, FindTD);
}
}
}
if(PlayerTazeTime[i] >= 1) {
PlayerTazeTime[i] += 1;
if(PlayerTazeTime[i] == 15) PlayerTazeTime[i] = 0;
else {
new Float:angle;
GetPlayerFacingAngle(i, angle);
SetPlayerFacingAngle(i, angle + 90);
}
}
if(PlayerDrunk[i] >= 5) {
PlayerDrunkTime[i] += 1;
if(PlayerDrunkTime[i] == {
PlayerDrunkTime[i] = 0;
LoopingAnim(i,"PED","WALK_DRUNK",4.0,1,1,1,1,0);
SetPlayerDrunkLevel (i, 5000);
}
}
if(PlayerStoned[i] >= 2) SetPlayerDrunkLevel (i, 5000);
if(IsSmoking[i] > 0) {
if(IsSmoking[i] == 0) {
format(string, sizeof(string), "* %s a terminat de fumat tigara.", GetName(i));
ProxDetector(30.0, i, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
new Float: PlayerHealth;
GetPlayerHealthEx(i, PlayerHealth);
if(PlayerHealth >= 93) SetPlayerHealthEx(i, 99);
else SetPlayerHealthEx(i, PlayerHealth+6);
}
IsSmoking[i] -= 1;
}
if(PlayerCuffed[i] == 1) {
if(PlayerCuffedTime[i] <= 0) {
TogglePlayerControllable(i, 1);
PlayerCuffed[i] = 0;
PlayerCuffedTime[i] = 0;
PlayerTazeTime[i] = 1;
}
else PlayerCuffedTime[i] -= 1;
}
if(PlayerCuffed[i] == 2) {
if(PlayerCuffedTime[i] <= 0) {
//GameTextForPlayer(i, "~r~~h~Esti liber acum!", 2500, 3);
TogglePlayerControllable(i, 1);
PlayerCuffed[i] = 0;
PlayerCuffedTime[i] = 0;
}
else PlayerCuffedTime[i] -= 1;
}
for(new sf = 0; sf < MAX_SAFEZONES; sf++) {
if(PlayerToPoint(20.0, i, GraffitiInfo[sf][gfX], GraffitiInfo[sf][gfY], GraffitiInfo[sf][gfZ]) && Showed[i] == 0) {
PlayerTextDrawSetString(i, SafeTD, "CLAN-ZONE");
PlayerTextDrawShow(i, SafeTD);
Showed[i] = 2;
SFID[i] = sf;
}
else if(!PlayerToPoint(20.0, i, GraffitiInfo[SFID[i]][gfX], GraffitiInfo[SFID[i]][gfY], GraffitiInfo[SFID[i]][gfZ]) && Showed[i] == 2) {
PlayerTextDrawHide(i, SafeTD);
Showed[i] = 0;
SFID[i] = 0;
}
if(SafeZone[sf][szRange] >= 15) {
if(PlayerToPoint(SafeZone[sf][szRange], i, SafeZone[sf][szX], SafeZone[sf][szY], SafeZone[sf][szZ]) && Showed[i] == 0) {
Showed[i] = 1;
SFID[i] = sf;
PlayerTextDrawSetString(i, SafeTD, "SAFE-ZONE");
PlayerTextDrawShow(i, SafeTD);
}
else if(!PlayerToPoint(SafeZone[SFID[i]][szRange], i, SafeZone[SFID[i]][szX], SafeZone[SFID[i]][szY], SafeZone[SFID[i]][szZ]) && Showed[i] == 1) {
Showed[i] = 0;
SFID[i] = 0;
PlayerTextDrawHide(i, SafeTD);
}
}
}
if(IsAMember(i)) {
if(InWar[PlayerInfo[i][pMember]] == 1) {
new faction = PlayerInfo[i][pMember];
for(new wi = 1; wi < sizeof(TurfInfo);wi++) {
if((WarInfo[wi][wFaction] == faction) || (WarInfo[wi][wAttacker] == faction)) {
new attackers = WarInfo[wi][wAttacker];
new defenders = WarInfo[wi][wFaction];
new uciderii = 0;
uciderii += ucideri[i][wi];
new decesee = 0;
decesee += decese[i][wi];
new Float: atscore = 0.0;
new Float: defscore = 0.0;
atscore = WarScoreF[attackers][wi];
defscore = WarScoreF[defenders][wi];
if(playerDeath[i] == 0 && GetPlayerInterior(i) == 0 && IsAMember(i) && GetPlayerVirtualWorld(i) == 0 && PlayerInfo[i][pWantedLevel] == 0 && PlayerInfo[i][pJailTime] == 0) {
SetPlayerVirtualWorld(i, wi);
format(string, sizeof(string), "Ai fost teleportat in virtual world-ul %d deoarece mafia ta este intr-un war.", wi);
SCM(i, COLOR_YELLOW, string);
}
if(WarInfo[wi][wFaction] == faction)
{
format(string, sizeof(string), "Turf: %s (%d)~n~%s %.1f - %.1f %s~n~Ucideri: %d Decese: %d Scor: %d~n~Secunde pe turf: %d~n~Timp war: ~y~~h~%s~w~~h~",
TurfInfo[wi][zName],wi,FactionName(attackers),atscore,defscore,FactionName(defenders),
uciderii, decesee, uciderii-decesee, WarSeconds[i], CalculeazaTimp2(WarInfo[wi][wTime]));
}
if(WarInfo[wi][wAttacker] == faction)
{
format(string, sizeof(string), "Turf: %s (%d)~n~%s %.1f - %.1f %s~n~Ucideri: %d Decese: %d Scor: %d~n~Secunde pe turf: %d~n~Timp war: ~y~~h~%s~w~~h~",
TurfInfo[wi][zName],wi,FactionName(attackers),atscore,defscore,FactionName(defenders),
uciderii, decesee, uciderii-decesee, WarSeconds[i], CalculeazaTimp2(WarInfo[wi][wTime]));
}
}
}
PlayerTextDrawSetString(i, WarTime, string);
PlayerTextDrawShow(i, WarTime);
}
if(IsPlayerInTurf(i, InWarTurf[PlayerInfo[i][pMember]])) {
new turf = InWarTurf[PlayerInfo[i][pMember]];
if(WarInfo[turf][wFaction] == PlayerInfo[i][pMember] || WarInfo[turf][wAttacker] == PlayerInfo[i][pMember]) {
if(IsPlayerPaused(i) == false) WarSeconds[i] ++;
if(TurfTime[i] == 0 && IsPlayerInAnyVehicle(i)) SCM(i, COLOR_YELLOW, "Ai intrat pe teritoriu. Peste 10 secunde o sa fii dat jos din vehicul.");
if(TurfTime[i] < 10) TurfTime[i] ++;
if(TurfTime[i] == 10) {
if(IsPlayerInAnyVehicle(i)) {
new Float: Pos[3];
GetPlayerPos(i, Pos[0], Pos[1], Pos[2]);
SetPlayerPosEx(i, Pos[0], Pos[1], Pos[2]+1);
}
}
}
}
}
if(IsPlayerInAnyVehicle(i)) {
new Float: hpv;
GetVehicleHealth(GetPlayerVehicleID(i), hpv);
if(hpv == 1000.0) {
for(new h = 1; h < sizeof(BizzInfo); h++) {
if(IsPlayerInRangeOfPoint(i,10.0,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ])) {
if(h == 24 || h == 25 || h == 23) {
GivePlayerCash(i,-BizzInfo[h][bFee]);
BizzInfo[h][bBalance] += BizzInfo[h][bFee];
Update(i, pCashx);
for(new m; m < 2; m++) {
if(PlayerInfo[i][pDailyMission][m] == 19) CheckMission(i, m);
}
format(string, sizeof(string), "~r~-$%d", BizzInfo[h][bFee]);
GameTextForPlayer(i, string, 1000, 1);
}
}
}
SetVehicleHealth(GetPlayerVehicleID(i), 999);
}
}
if(SpecialWeek == 1) {
if(CheckObjects(i) < 15 && TutorialActive[i] == 0 && PlayerInfo[i][pBackpack] == 1) {
szTD = "";
string = "";
new objs;
for(new sq = 0; sq < 15; sq++) {
if(PlayerInfo[i][pSpecialQuest][sq] == 0) {
if(PlayerToPoint(45.0, i, QuestPos[sq][0], QuestPos[sq][1], QuestPos[sq][2])) {
new Float: oPos[3];
GetPlayerObjectRot(i, PlayerInfo[i][pObjectQuest][sq], oPos[0], oPos[1], oPos[2]);
SetPlayerObjectRot(i, PlayerInfo[i][pObjectQuest][sq], oPos[0], oPos[1], oPos[2]+35);
format(string, sizeof(string), "~g~Object %d nearby~n~", sq+1), strcat(szTD, string), objs++;
}
else if(PlayerToPoint(75.0, i, QuestPos[sq][0], QuestPos[sq][1], QuestPos[sq][2])) format(string, sizeof(string), "~y~Object %d nearby~n~", sq+1), strcat(szTD, string), objs++;
else if(PlayerToPoint(150.0, i, QuestPos[sq][0], QuestPos[sq][1], QuestPos[sq][2])) format(string, sizeof(string), "~r~Object %d nearby~n~", sq+1), strcat(szTD, string), objs++;
PlayerTextDrawSetString(i, QuestTD, szTD);
PlayerTextDrawShow(i, QuestTD);
if(PlayerToPoint(1.0, i, QuestPos[sq][0], QuestPos[sq][1], QuestPos[sq][2])) {
if(GetPlayerVirtualWorld(i) != 0) return SCM(i, COLOR_LGREEN, "Eroare: Nu poti lua acest obiect deoarece esti in alt virtual world!");
if(QuestDeelay[i] > 0) {
format(string, sizeof(string), "Eroare: Poti lua un alt obiect peste %d secunde!", QuestDeelay[i]);
SCM(i, COLOR_LGREEN, string);
}
else {
if(IsPlayerInAnyVehicle(i)) SCM(i, COLOR_LGREEN, "Eroare: Nu poti colecta acest obiect deoarece esti intr-un vehicul!");
else {
DestroyPlayerObject(i, PlayerInfo[i][pObjectQuest][sq]);
PlayerInfo[i][pSpecialQuest][sq] = 1;
SaveQuest(i);
format(string, sizeof(string), "Ai gasit ~y~%d/100~w~~h~ obiecte pana acum.~n~Continua sa cauti pentru a primi premiul special!", CheckObjects(i));
PlayerTextDrawSetString(i, InfosTD, string);
PlayerTextDrawShow(i, InfosTD);
SetTimerEx("HideTextdraw", 4000, 0, "%d", i);
if(CheckObjects(i) == 100) {
format(string, sizeof(string), "["QUEST_NAME"] %s a terminat de colectat toate obiectele ascunse si a castigat premiul special!", GetName(i));
SendClientMessageToAll(COLOR_YELLOW, string);
SCM(i, COLOR_YELLOW, "Felicitari! Ai terminat de colectat toate obiectele ascunse!");
SCM(i, COLOR_YELLOW, "Ai primit: 1.000.000$, 20 rp, 20 puncte rob, 20 puncte escape, 500 pp, 1 level up, 1 slot garaj.");
GivePlayerCash(i, 1000000);
PlayerInfo[i][pExp] += 20;
PlayerInfo[i][pPremiumPoints] += 500;
Update(i, pPremiumPointsx);
Update(i, pRP);
PlayerInfo[i][pRob] += 20;
Update(i, pRobx);
PlayerInfo[i][pEscapePoints] += 20;
PlayerInfo[i][pLevel]++;
Update(i,pLevelx);
SetPlayerScore(i, PlayerInfo[i][pLevel]);
UpdateVar(i, "EscapePoints", PlayerInfo[i][pEscapePoints]);
PlayerTextDrawHide(i, QuestTD);
if(PlayerInfo[i][pSlot][0] == 0) PlayerInfo[i][pSlot][0] = 1;
else if(PlayerInfo[i][pSlot][1] == 0) PlayerInfo[i][pSlot][1] = 1;
else if(PlayerInfo[i][pSlot][2] == 0) PlayerInfo[i][pSlot][2] = 1;
else if(PlayerInfo[i][pSlot][3] == 0) PlayerInfo[i][pSlot][3] = 1;
else if(PlayerInfo[i][pSlot][4] == 0) PlayerInfo[i][pSlot][4] = 1;
else SCM(i, COLOR_LGREEN, "Nu ai primit un slot pentru vehicule deoarece ai numarul maxim de vehicule!");
UpdateSlots(i);
}
QuestDeelay[i] = 60;
}
}
}
}
}
if(objs == 0) PlayerTextDrawHide(i, QuestTD);
}
if(QuestDeelay[i] >= 1) QuestDeelay[i] --;
}
}
}
for(new i = 0; i < 3; i++) {
if(PaintTime[i] == 0) {
PaintTime[i] = -1; PaintText[i] = 60;
}
}
OtherTimer();
return 1;
}