Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Sistem Quest
- #define NRQUEST 30
- new IncarcaQuestT = -1;
- new questuri_incarcate = 0;
- new PickupQuest[NRQUEST+1];
- new QExistent[NRQUEST+1];
- enum QuestE
- {
- Float:Pozitie[3]
- }
- new QuesT[NRQUEST+1][QuestE];
- new PlayerText:QuestBGD[MAX_PLAYERS];
- public IncarcaQuest()
- {
- questuri_incarcate = 0;
- new sqlcheck[1000],rezultat[128],id2 = 0;
- mysql_format(SQL, sqlcheck, sizeof(sqlcheck), "SELECT * FROM `Questuri` ORDER BY ID");
- new Cache: verificare = mysql_query(SQL, sqlcheck);
- for(new i, c = cache_get_row_count(); i != c; i++)
- {
- new id = questuri_incarcate;
- id2 = cache_get_field_content_int(i, "ID");
- cache_get_field_content(i, "X", rezultat); QuesT[questuri_incarcate][Pozitie][0] = floatstr(rezultat);
- cache_get_field_content(i, "Y", rezultat); QuesT[questuri_incarcate][Pozitie][1] = floatstr(rezultat);
- cache_get_field_content(i, "Z", rezultat); QuesT[questuri_incarcate][Pozitie][2] = floatstr(rezultat);
- PickupQuest[questuri_incarcate] = CreateDynamicPickup(19893, 23, QuesT[id][Pozitie][0],QuesT[id][Pozitie][1],QuesT[id][Pozitie][2], 0, -1, -1, 50);
- if(id2 > 0) QExistent[id] = 1;
- questuri_incarcate++;
- }
- printf("Pickupuri Questuri incarcate: %d/%d",questuri_incarcate,NRQUEST);
- cache_delete(verificare);
- return 1;
- }
- //////
- foreach( new playerid : Player )
- {
- if(IsPlayerConnected(playerid))
- {
- if(gPlayerLogged[playerid] == 1)
- {
- if(questuri_incarcate > 0)
- {
- if(PlayerInfo[playerid][pBGDNRQuest] < NRQUEST)
- {
- new gasit = 0;
- new questuri_gasite[NRQUEST];
- for(new i = 0; i < NRQUEST; i++)
- {
- questuri_gasite[i] = 0;
- if(IsPlayerInRangeOfPoint(playerid, 100.0, QuesT[i][Pozitie][0],QuesT[i][Pozitie][1],QuesT[i][Pozitie][2]) && PlayerInfo[playerid][pBGDQuest][i] == 0) gasit++,questuri_gasite[i] = 1;
- if(IsPlayerInRangeOfPoint(playerid, 50.0, QuesT[i][Pozitie][0],QuesT[i][Pozitie][1],QuesT[i][Pozitie][2]) && PlayerInfo[playerid][pBGDQuest][i] == 0) gasit++,questuri_gasite[i] = 2;
- if(IsPlayerInRangeOfPoint(playerid, 25.0, QuesT[i][Pozitie][0],QuesT[i][Pozitie][1],QuesT[i][Pozitie][2]) && PlayerInfo[playerid][pBGDQuest][i] == 0) gasit++,questuri_gasite[i] = 3;
- }
- for(new i = 0; i < NRQUEST; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, QuesT[i][Pozitie][0],QuesT[i][Pozitie][1],QuesT[i][Pozitie][2]) && QExistent[i] == 1)
- {
- if(PlayerInfo[playerid][pBGDQuest][i] == 0 && IncarcaQuestT < 1)
- {
- new str[200];
- new sqlupdate[1000];
- PlayerInfo[playerid][pBGDNRQuest]++;
- PlayerInfo[playerid][pBGDQuest][i] = 1;
- mysql_format(SQL, sqlupdate, sizeof(sqlupdate), "UPDATE `users` SET `NRQuest` ='%d' WHERE `id`='%d'",PlayerInfo[playerid][pBGDNRQuest], PlayerInfo[playerid][pSQLID]);
- mysql_tquery(SQL, sqlupdate, "", "");
- for(new z = 0; z < NRQUEST; z++)
- {
- if(PlayerInfo[playerid][pBGDQuest][z] > 0)
- {
- mysql_format(SQL, sqlupdate, sizeof(sqlupdate), "UPDATE `users` SET `BGDQuest%d` ='%d' WHERE `id`='%d'",z,PlayerInfo[playerid][pBGDQuest][z], PlayerInfo[playerid][pSQLID]);
- mysql_tquery(SQL, sqlupdate, "", "");
- mysql_format(SQL, sqlupdate, sizeof(sqlupdate),"UPDATE `users` SET `Quest%d`='1' WHERE `name`='%s'",z,PlayerInfo[playerid][pNormalName]);
- mysql_tquery(SQL, sqlupdate,"","");
- QEvent[playerid][z] = 1;
- }
- }
- for(new z = 0; z < NRQUEST; z++)
- {
- if(PlayerInfo[playerid][pBGDQuest][z] > 0)
- {
- /*DestroyDynamicPickup(questuri_gasite[NRQUEST][z]);*/
- }
- }
- format(str, sizeof(str), "Ai colectat acest glob. Mai colecteaza inca %d glob-uri.",NRQUEST-PlayerInfo[playerid][pBGDNRQuest]);
- SCM(playerid, COLOR_YELLOW, str);
- if(PlayerInfo[playerid][pBGDNRQuest] == NRQUEST)
- {
- new name[800];
- GetPlayerName(playerid, name, sizeof(name));
- format(string, sizeof(string),"Special Quest: %s a indeplinit quest-ul si a primit premiul special.", name);
- SendClientMessageToAll(COLOR_YELLOW, string);
- GivePlayerCash(playerid, 100000000);
- PlayerInfo[playerid][pLevel] += 1;
- PlayerInfo[playerid][pPremiumPoints] += 200;
- PlayerInfo[playerid][pRob] += 20;
- Update(playerid, pCashx);
- Update(playerid, pLevelx);
- Update(playerid, pPremiumPointsx);
- Update(playerid, pRobx);
- SCM(playerid, COLOR_YELLOW, "Ai terminat quest-ul si ai castigat:");
- SCM(playerid, COLOR_YELLOW, "(+) 100.000,.000$.");
- SCM(playerid, COLOR_YELLOW, "(+) 1 level up.");
- SCM(playerid, COLOR_YELLOW, "(+) 200 premium points.");
- SCM(playerid, COLOR_YELLOW, "(+) 20 Rob Points.");
- }
- }
- }
- }
- if(gasit > 0)
- {
- format(string, sizeof(string), "");
- for(new i = 0; i < NRQUEST; i++)
- {
- if(QExistent[i] > 0)
- {
- if(questuri_gasite[i] == 1)
- {
- format(string, sizeof(string), "%s~n~~r~OBJECT %d NEARBY!",string,i+1);
- PlayerTextDrawSetString(playerid, QuestBGD[playerid], string);
- PlayerTextDrawShow(playerid, QuestBGD[playerid]);
- }
- if(questuri_gasite[i] == 2)
- {
- format(string, sizeof(string), "%s~n~~y~OBJECT %d NEARBY!",string,i+1);
- PlayerTextDrawSetString(playerid, QuestBGD[playerid], string);
- PlayerTextDrawShow(playerid, QuestBGD[playerid]);
- }
- if(questuri_gasite[i] == 3)
- {
- format(string, sizeof(string), "%s~n~~g~OBJECT %d NEARBY!",string,i+1);
- PlayerTextDrawSetString(playerid, QuestBGD[playerid], string);
- PlayerTextDrawShow(playerid, QuestBGD[playerid]);
- }
- }
- }
- }
- else
- {
- PlayerTextDrawHide(playerid, QuestBGD[playerid]);
- }
- }
- else
- {
- PlayerTextDrawHide(playerid, QuestBGD[playerid]);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement