Jump to content

hanako

Membru
  • Posts

    540
  • Joined

  • Last visited

  • Days Won

    20

Everything posted by hanako

  1. Problema rezolvata, cer t/c.
  2. asa ma baieti, va salut cu stima si respect. am intampinat si eu o problema, deci am 13 joburi pe server, ok? primele 2 job-uri merge, insa celelalte da cu id pe -1, adica daca job-ul pe care-l iau are id 4, mie o sa-mi dea id 3 la setarea job-ului. comanda /getjob : CMD:getjob(playerid, params[]) { new jobid; if(PlayerInfo[playerid][pJob] >= 1) return SCM(playerid, -1, "Deja ai un job, foloseste /quitjob."); if(PlayerInfo[playerid][pLevel] < DynamicJobs[jobid][jobLevel]) return SCM(playerid, -1, "Nu detii nivelul necesar pentru a te angaja la jobul respectiv!"); for(new j = 0; j < sizeof(DynamicJobs); j++) { if(IsPlayerInRangeOfPoint(playerid, 3.0, DynamicJobs[j][jPosX], DynamicJobs[j][jPosY], DynamicJobs[j][jPosZ])) { PlayerInfo[playerid][pJob] = j; pUpdateInt(playerid, "Job", j); SCMf(playerid, COLOR_YELLOW, "(JOB): {ffffff}Felicitari! Noul tau job este %s.", DynamicJobs[j][jobName]); } } return true; } functia loaddynamicjobs: function LoadDynamicJobs() { //jobss = cache_num_rows(); for(new i = 1; i <= Iter_Add(Jobs, i); i++) { gString[0] = (EOS); new j = i - 1; DynamicJobs[i][jobID] = cache_get_field_content_int(j, "jobID"); DynamicJobs[i][jOwned] = cache_get_field_content_int(j, "Owned"); cache_get_field_content(j, "jobName", DynamicJobs[i][jobName], SQL, 130); DynamicJobs[i][jobLevel] = cache_get_field_content_int(j, "jobLevel"); DynamicJobs[i][jPosX] = cache_get_field_content_float(j, "PosX"); DynamicJobs[i][jPosY] = cache_get_field_content_float(j, "PosY"); DynamicJobs[i][jPosZ] = cache_get_field_content_float(j, "PosZ"); cache_get_field_content(j, "JobOwner", DynamicJobs[i][jobOwner], SQL, 64); DynamicJobs[i][jBuyPrice] = cache_get_field_content_int(j, "BuyPrice"); DynamicJobs[i][jTill] = cache_get_field_content_int(j, "Till"); DynamicJobs[i][jPickupID] = cache_get_field_content_int(j, "PickupID"); cache_get_field_content(j, "Message", DynamicJobs[i][jMessage], SQL, 130); if(DynamicJobs[i][jBuyPrice] >= 1) { DestroyDynamic3DTextLabel(DynamicJobs[i][jLabelID]); format(gString, sizeof gString, "{FFD700}ID: {ffffff}%d{FFD700}\n%s\nName: {ffffff}%s{FFD700}\nMinim Level: {ffffff}%d{FFD700}\nOwner: {ffffff}%s{FFD700}\n{FFD700}[/getjob] - To get the job\nPrice: {ffffff}$%s\n{FFD700}[/buyjob] - For buy the job{ffffff}", DynamicJobs[i][jobID], DynamicJobs[i][jMessage], DynamicJobs[i][jobName], DynamicJobs[i][jobLevel], DynamicJobs[i][jobOwner], FormatNumber(DynamicJobs[i][jBuyPrice])); DynamicJobs[i][jLabelID] = CreateDynamic3DTextLabel(gString, -1, DynamicJobs[i][jPosX], DynamicJobs[i][jPosY], DynamicJobs[i][jPosZ], 100, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, 25.0); } if(DynamicJobs[i][jOwned] == 1) { DestroyDynamic3DTextLabel(DynamicJobs[i][jLabelID]); format(gString, sizeof gString, "{FFD700}ID: {ffffff}%d{FFD700}\n%s\nName: {ffffff}%s{FFD700}\nMinim Level: {ffffff}%d{FFD700}\nOwner: {ffffff}%s{FFD700}\n{FFD700}[/getjob] - To get the job", DynamicJobs[i][jobID], DynamicJobs[i][jMessage],DynamicJobs[i][jobName], DynamicJobs[i][jobLevel], DynamicJobs[i][jobOwner]); DynamicJobs[i][jLabelID] = CreateDynamic3DTextLabel(gString, -1, DynamicJobs[i][jPosX], DynamicJobs[i][jPosY], DynamicJobs[i][jPosZ], 100, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, 25.0); } DynamicJobs[i][jPickupID] = CreateDynamicPickup(1275, 23, DynamicJobs[i][jPosX], DynamicJobs[i][jPosY], DynamicJobs[i][jPosZ], 0, -1, -1, 15); pickups++; } printf("[LOADING] JOBS - %d", Iter_Count(Jobs)); return true; } [preciez ca este sistemul lui flint din gamemode-ul ala stoners, mi-a placut cum arata si am vrut sa-l editezi putin pana am dat de problema asta la care ma chinui aproximativ 7 ore sa o rezolv]. A, si in mysql_log apare asa ceva: Log("16:09:39","cache_get_field_content_int",1,"invalid datatype",0); Log("16:09:39","CMySQLResult::GetRowDataByName()",1,"invalid row index ('13') (Query: \"SELECT * FROM `jobs`\")",0);
  3. ideea e ca eu nu prea stiu limba rusa, am nevoie de cineva care sa stie
  4. probabil o sa incep o sa-i copiez pe cei din Rusia, avand in vedere ca modul lor de lucru este cu 10-15 ani inaintea noastra.
  5. am inceput ceva de genul acum o luna, insa e o pierdere de timp.
  6. nush dc ai pune puscaria asta pe internet. (nu-l recomand, o sa puste curand)
  7. frumos, chiar imi plac textdraw-uriile pe care le-ai facut.
  8. Ma bag si eu, nu se pune problema!
  9. Salut, am inceput sa lucrez la un gamemode ok, si as avea nevoie de ceva sisteme atragatoare pentru samp-ul din ziua de azi. *nu am nevoie de pokemon si d-astea, singurul lucru pe care o sa-l am la vehicule este stage pentru ca asa se cere acum* astept idei, va pup
  10. eu am rezolvat chestia asta cand am rescris job-uriile
  11. hanako

    DMV

    la SELECT * FORUM `server_exam_checkpoints` modifica cu SELECT * FROM `server_exam_checkpoints`
  12. PersonalVehicle[i][pvDespawnTime] - gettime()) / 60)); uita-te aici si rezolva.
  13. Apreciez ca ai inceput de la versiunea pe care am postat-o, mult succes.
  14. Salut, am zis sa mai reimprospatez putin aceasta zona, si am oferit jumatate din quest (mai trebuie facuta decat salvarea). Pai, quest-ul este aproape complet, mai e de facut decat salvarea. // puneti asta la float-uri new Float:QuestObjects[20][3] = { {1666.6095,2254.1096,10.8203}, {1676.3660,1624.0376,10.8203}, {1686.7211,1115.1724,10.7152}, {2086.3630,1318.9218,10.8203}, {2437.3992,1660.2825,15.2361}, {2316.0188,2333.9509,10.8203}, {1476.4000,1921.8619,10.8946}, {1890.8251,1986.9982,13.7848}, {2576.2412,1077.5697,10.6719}, {2162.3022,919.3609,10.8203}, {1492.2125,667.3132,10.9838}, {2300.9333,556.3300,7.7813}, {2805.9348,909.8344,10.7500}, {2800.6467,913.4963,11.5617}, {2829.0735,1279.7488,10.7709}, {2776.4670,2523.5203,10.8203}, {1041.3608,1062.0674,10.1691}, {1386.4358,922.4484,10.8184}, {1082.9188,1685.3890,6.9541}, {914.1532,2035.2485,11.6145} }; // asta puneti la enum pInfo pObiecteAdunate, pQuestObjects[20], // daca aveti public onplayerpickupdynamicpickup puneti asta sub for(new i; i < 20; i++) { if(pickupid == PlayerInfo[playerid][pQuestObjects][i]) { PlayerInfo[playerid][pObiecteAdunate]++; SCMf(playerid, COLOR_GREY, "progress quest: (%d/20)", PlayerInfo[playerid][pObiecteAdunate]); DestroyDynamicPickup(PlayerInfo[playerid][pQuestObjects][i]); RemovePlayerMapIcon(playerid, 70+i); verificaquestobiecte(playerid); } } return 1; } daca nu-l aveti, public OnPlayerPickUpDynamicPickup(playerid, pickupid) { for(new i; i < 20; i++) { if(pickupid == PlayerInfo[playerid][pQuestObjects][i]) { PlayerInfo[playerid][pObiecteAdunate]++; SCMf(playerid, COLOR_GREY, "progress quest: (%d/20)", PlayerInfo[playerid][pObiecteAdunate]); DestroyDynamicPickup(PlayerInfo[playerid][pQuestObjects][i]); RemovePlayerMapIcon(playerid, 70+i); verificaquestobiecte(playerid); } } return 1; } apoi faceti o functie (verificaquestobiecte) function verificaquestobiecte(playerid) { if(PlayerInfo[playerid][pObiecteAdunate] == 20) { new money = 300000 + random(250000); new pp = 25 + random(3); new rp = 4 + random(3); new rob = 5 + random(2); SCM(playerid, COLOR_YELLOW2, "Felicitari! Ai terminat quest-ul special si ai primit:"); SCMf(playerid, -1, "- %s bani", FormatNumber(money)); SCMf(playerid, -1, "- %d puncte premium", pp); SCMf(playerid, -1, "- %d puncte de respect", rp); SCMf(playerid, -1, "- %d puncte de rob", rob); GivePlayerCash(playerid, money); PlayerInfo[playerid][pPremiumPoints] += pp; pUpdateInt(playerid, "PremiumPoints", PlayerInfo[playerid][pPremiumPoints]); // aici modificati voi cum aveti PlayerInfo[playerid][pExp] += rp; pUpdateInt(playerid, "Respect", PlayerInfo[playerid][pExp]); // aici modificati voi cum aveti PlayerInfo[playerid][pRob] += rob; pUpdateInt(playerid, "Rob", PlayerInfo[playerid][pRob]); // aici modificati voi cum aveti } return 1; } inclusiv comanda [/startquest] CMD:startquest(playerid, params[]) { if(arecpactiv(playerid)) return true; if(!IsPlayerInRangeOfPoint(playerid, 3, 1907.9348,1511.0798,14.0482)) { SCM(playerid, COLOR_ERROR, "Nu esti la locatia potrivita, ti-a fost setat un punct pe harta."); SetPlayerCheckpointEx(playerid, 1907.9348,1511.0798,14.0482, 3.0); CP[playerid] = 43; return true; } SCMf(playerid, -1, "Ai inceput quest-ul, du-te si aduna cele 25 caiete (progress: %d/20)", PlayerInfo[playerid][pObiecteAdunate]); for(new i = 0; i < sizeof(QuestObjects); i++) { PlayerInfo[playerid][pQuestObjects][i] = CreateDynamicPickup(2855, 18, QuestObjects[i][0], QuestObjects[i][1], QuestObjects[i][2], -1); SetPlayerMapIcon(playerid, 70+i, QuestObjects[i][0], QuestObjects[i][1], QuestObjects[i][2] , 56, -1, MAPICON_GLOBAL); } return 1; }
  15. Imi place ce vad, bafta in continuare.
  16. foreach(new c : Paintp) { SetCameraBehindPlayer(c), SetPlayerVirtualWorldEx(c, 0), SetPlayerPos(c, 1310.14, -1368.57, 13.5508), SendClientMessage(c, COLOR_DARKGRAY, "Paintball round was end, not enough enrolled players. (2)"); Iter_Clear(Paintp); return 1; }
  17. cand intra in garaj faci sa seteze vw masinii 53, ce e asa de greu? sau mai pe scurt pui masina sa fie in vw 0
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.