-
Posts
103 -
Joined
-
Last visited
-
Days Won
3
Content Type
Profiles
Forums
News
Documentation
Posts posted by Divil.Scorpiono
-
-
-
On 2/3/2024 at 7:41 AM, Gheboasa said:
Presupun ca comanda ar trebui sa fie YCMD.
Ti am pus si o mica verificare + update la array sa salveze pp,level etc altfel nu se salva. Daca faci update-ul diferit adapteaza cu alea din gm-ul tau.
YCMD:buy1(playerid, params[], help) { if(PlayerInfo[playerid][pPremiumPoints] <= 199) return SCM(playerid, COLOR_DARKNICERED, "Nu detii suma de 200 Premium Points."); SCM(playerid, COLOR_DARKNICERED, "Ti-ai achizitionat Reborn"); PlayerInfo[playerid][pPremiumPoints] -= 200; PlayerInfo[playerid][pLevel] += 3; PlayerInfo[playerid][pFreshPoints] += 100; PlayerInfo[playerid][pMoney] += 50000000; Update(playerid, pPremiumPointsx); Update(playerid, pLevelx); Update(playerid, pFreshPointsx); Update(playerid, pMoneyx); return 1; }
mane comanda asta e de acuma o luna fix acuma te ai trezit sa raspuzi ? =))))))
-
ajuta ti ma va rog
-
Salut, de vreo 2 zile incerc sa fac un sistem loto
si imi da cu virgula ceva nu merg gen daca le fac clickable sa pot fi apasate
pun asa: (butonul de iesire din meniu de loto)
public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid) { if(playertextid == PlayerTD[playerid][15]) { PlayerTextDrawHide(playerid, PlayerTD[playerid][3]); PlayerTextDrawHide(playerid, PlayerTD[playerid][4]); PlayerTextDrawHide(playerid, PlayerTD[playerid][5]); PlayerTextDrawHide(playerid, PlayerTD[playerid][6]); PlayerTextDrawHide(playerid, PlayerTD[playerid][7]); PlayerTextDrawHide(playerid, PlayerTD[playerid][8]); PlayerTextDrawHide(playerid, PlayerTD[playerid][9]); PlayerTextDrawHide(playerid, PlayerTD[playerid][10]); PlayerTextDrawHide(playerid, PlayerTD[playerid][11]); PlayerTextDrawHide(playerid, PlayerTD[playerid][12]); PlayerTextDrawHide(playerid, PlayerTD[playerid][13]); PlayerTextDrawHide(playerid, PlayerTD[playerid][14]); PlayerTextDrawHide(playerid, PlayerTD[playerid][15]); } return 1; }
si gen nu merge apasat
PlayerTextDrawSetSelectable(playerid, PlayerTD[playerid][15], 1);
am pus si asta la fiecare (fiecare cu nr lui din [])
si tot nu inteleg am incercat prin n moduri -
Multi nu au destula minte incat sa creada ca un copil la 14 ani poate sa faca nu stiu ce sisteme, bine ca sunt ei mari scripteri sa ma invete si pe mine dar pentru mine tot ce am facut toate sistemele pe care le am facut pana acum sunt ceva ce am vrut sa realizez de mult si sunt fericit de ceea ce am facut si in fiecare zi invat ceva nou
astia care comentati la noi incepatorii o sa vedem peste 2-3 ani care mai comenteaza atunci13 hours ago, Grigo said:da tu cine esti tu mare scripter? ca de atata amar tot comentezi la en persoane... o faci pentru numarul de posturi sau ? cred ca orice retard ar intelege ca omul este incepator si vrea sa faca si el un leu acolo cinstit pe langa 99% din astia de aici care sunt tepari sau rau intentionati pe langa asta asta mai sunt/fost in "staff", si toti lingaii care au la profill experimentat dau +1 sau +rep pai sa va zic ceva tie si la restu astora care sunt0ti experti in asta cel putin aici pe forum in treaba asta sa va iau pe pula de martalogi si mi se rupe pula ca iau ban sau altceva dar sunt scarbit de sclavi ca tine care sunt +1 +Rep. daca nu ai ceva de spus sa il ajuti pe om taci in plm.
ps : spor la vanzare tinere
alt ps mister daca mai esti pe aici sa ma pis pe tine tarfo de 50 de euro sau cat ti-am dat ca nu am uitat dupa atata amar sclav ordinar ( cica asta facea parte din staff sa ai increde in ei pisamas pe el )
hai pa ne vedem peste alti 4 5 sau cati morti lor de ani au trecut :)))
ps : ma pis pe gramatica voastra luati de aici .,-!/.?` daca nu intelege0ti ce am scris puneti alea unde trebuie pisamas pe voi :)))))))))))))))))))
- 1
- 2
-
Salut, am decis sa vand acest sistem
Pret: 1 Euro paypal/paysafeCosta 1 euro pentru ca cred ca atat face
Nu dau primu daca vreti cumparati intermediar de pe forum 10e
Video:
Comenzi:
/upgradepc/shop (gen sa cumperi pc u)
/mine
/stopmine
+sistem de premiumpoints
+ implementare in gamemode(optional)
ATENTIE!!!!!! OFER AJUTOR CU ORICE EROARE SAU CEVA CE NU STII SA FACI 2 ZILE DE LA CUMPARARE, DUPA ACESTE DOUA ZILE NU MAI ESTE TREABA MEA -
+1
-
-1
-
deci am 2 probleme, prima este ca nu merge sa aleg un nr:
if(clickedid == PublicTD[8]) { if(LotoNr1[playerid] == 1) return SCM(playerid, COLOR_ERROR, "Ai ales deja acest numar"); if(LotoNr2[playerid] == 1) return SCM(playerid, COLOR_ERROR, "Ai ales deja acest numar"); if(LotoNr3[playerid] == 1) return SCM(playerid, COLOR_ERROR, "Ai ales deja acest numar"); else if(LotoNr1[playerid] == 0) { LotoNr1[playerid] += 1; SCM(playerid, -1, "Ai ales numarul 1"); SCM(playerid, -1, "mai ai de ales 1/3 numere"); } else if(LotoNr2[playerid] == 0) { LotoNr2[playerid] += 1; SCM(playerid, -1, "Ai ales numarul 1"); SCM(playerid, -1, "mai ai de ales 1/3 numere"); } else if(LotoNr3[playerid] == 0) { LotoNr3[playerid] += 1; SCM(playerid, -1, "Ai ales numarul 1"); SCM(playerid, -1, "mai ai de ales 1/3 numere"); } }
gen se aleg mai multe , si butonul de x nu merge :
if(clickedid == PublicTD[19]) { TextDrawHideForPlayer(playerid, PublicTD[7]); TextDrawHideForPlayer(playerid, PublicTD[8]); TextDrawHideForPlayer(playerid, PublicTD[9]); TextDrawHideForPlayer(playerid, PublicTD[10]); TextDrawHideForPlayer(playerid, PublicTD[11]); TextDrawHideForPlayer(playerid, PublicTD[12]); TextDrawHideForPlayer(playerid, PublicTD[13]); TextDrawHideForPlayer(playerid, PublicTD[14]); TextDrawHideForPlayer(playerid, PublicTD[15]); TextDrawHideForPlayer(playerid, PublicTD[16]); TextDrawHideForPlayer(playerid, PublicTD[17]); TextDrawHideForPlayer(playerid, PublicTD[18]); TextDrawHideForPlayer(playerid, PublicTD[19]); }
-
0.3 POSTAT
pardon
-
codu:
if(PlayerInfo[playerid][pTutorial] == 0) { timer Tutorial[3000](playerid) { SCM(playerid, COLOR_TUTORIAL, "Bine ai venit pe server-ul Fresh"); SCM(playerid, COLOR_TUTORIAL, "o sa iti prezint cateva informatii iar dupa o sa facem tutorialul fizic"); } timer Tutorial2[3000](playerid) { SCM(playerid, COLOR_TUTORIAL, "Acesta este spawn-ul normal, poti schimba asta prin /spawnchange"); SCM(playerid, COLOR_TUTORIAL, "In acest moment server-ul este in dezvoltare de catre ImDariusHere"); timer Tutorial3[3000](playerid) { InterpolateCameraPos(playerid, 1157.029418, -1764.939941, 17.661890, 1169.504028, -1746.363647, 23.562469, 3000); InterpolateCameraLookAt(playerid, 1154.333862, -1768.953491, 16.387060, 1166.808471, -1750.377197, 22.287639, 3000); } } timer Tutorial3[3000](playerid) { SCM(playerid, COLOR_TUTORIAL, "De aici iti iei o bicicleta"); SCM(playerid, COLOR_TUTORIAL, "Pentru a naviga pe server chiar daca nu ai masina/motocicleta"); timer Tutorial4[3000](playerid) { InterpolateCameraPos(playerid, 1149.249267, -1749.108276, 15.387428, 1150.847412, -1759.611328, 15.252326, 3000); InterpolateCameraLookAt(playerid, 1145.992919, -1752.565551, 13.824240, 1146.751586, -1757.241577, 13.637288, 3000); } } timer Tutorial5[3000](playerid) { SCM(playerid, COLOR_TUTORIAL, "aici este Los Santos Police Departament renumit ca 'lspd' "); SCM(playerid, COLOR_TUTORIAL, "Sectia politistilor mai pe scurt"); timer Tutorial6[3000](playerid) { InterpolateCameraPos(playerid, 1544.809814, -1669.524658, 18.592250, 1527.586547, -1658.476440, 22.951721, 3000); InterpolateCameraLookAt(playerid, 1548.925903, -1672.165283, 17.550369, 1531.702636, -1661.117065, 21.909839, 3000); } } timer Tutorial7[3000](playerid) { SCM(playerid, COLOR_TUTORIAL, "aici este locul de pescuit, un job numit ca Fisherman "); SCM(playerid, COLOR_TUTORIAL, "Aici dupa ce ai vandut pestele prins primesti bani si Job Points"); timer Tutorial8[3000](playerid) { InterpolateCameraPos(playerid, 2380.203857, 550.563110, 9.063492, 2371.197021, 553.830993, 10.754978, 3000); InterpolateCameraLookAt(playerid, 2381.717529, 546.543518, 6.503816, 2375.595458, 551.936218, 9.318786, 3000); } } }
am incercat si eu sa fac asa cu timere si lam pus la OnPlayerSpawn
Eroare:
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(820) : error 029: invalid expression, assumed zero C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(820) : error 017: undefined symbol "Tutorial_yT@" C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(820) : error 001: expected token: ";", but found "return" C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(820) : fatal error 107: too many error messages on one line
-
am incercat sa pun alta versiune am incercat mai multe da niciuna nu a mers
dati mi voi o versiune daca e
-
-
cod:
if(sscanf(params,"ud",lider,factiuneid))
return SendClientMessage(playerid,-1,"Romania Reality: /makeleader [Nume_Player/ID] [FactiuneID]");PlayerInfo[lider][pLeader] == factiuneid;
PlayerInfo[lider][pMember] == factiuneid;
PlayerInfo[lider][pRank] == 6;warning 215: expression has no effect
warning 215: expression has no effect
warning 215: expression has no effectnu inteleg
-
-
codu:
RemoveBuildingForPlayer(playerid, 6415, 154.2109, -1950.1953, 26.4063, 0.25);
RemoveBuildingForPlayer(playerid, 6295, 154.2109, -1950.1953, 26.4063, 0.25);
CreateObject(966, 160.28168, -1942.10413, -0.02962, 0.00000, 0.00000, 0.00000);
CreateObject(969, 150.22557, -1933.05042, 0.97680, 0.00000, 0.00000, 0.00000);sunt nou cu map editor si nu prea ma descurc cu el
-
Salut, pentru ca mi a venit asa un gand la un job mai unic mam gandit la Racer
aici un mic tutorial nu sunt eu mare scripter dar mna
incerc sa explic cat mai bine
Mergem sus in gamemode uri dupa define uri si scriem:
new Job[MAX_PLAYERS]; //o sa explic de ce ne trebuie in cateva minute new RaceCar[MAX_PLAYERS]; //masina pentru cursa
dupa mergem la enum pinfo si scriem:
enum pInfo { pJobRacer, //job-ul in sine pJobPoints, //si puncte de job }; new PlayerInfo[MAX_PLAYERS][pInfo];
acum vom face locul de unde sa te angajezi/sa dai /startrace
punem la public OnGameModeInIt:
public OnGameModeInit() { Create3DTextLabel("-----------------\n/startrace pentru a incepe cursa\n/getjobracer pentru a te angaja\n/quitjob pentru a demisiona\n-----------------", COLOR_GOLD, 1879.1910, 2339.5544, 10.9799, 20, 0, 0); return 1; }
Acum vom facem comenzile /getjobracer si /quitjob
CMD:getjobracer(playerid, params[]) { if(Job[playerid] == 1) return SCM(playerid, COLOR_RED, "[JOB]: {FFFFFF}Ai deja un job, foloseste '/quitjob' pentru a demisiona."); // Daca are deja un job sa nu poata lua job-ul if(IsPlayerInRangeOfPoint(playerid, 5.0, 1879.1910,2339.5544,10.9799)) // Daca se afla la locul potrivit { Job[playerid] += 1; // Ii setam sa aibe un job PlayerInfo[playerid][pJobs] += 1; // Si ii setam Job 1 pentru a putea da /startrace PlayerInfo[playerid][pJobRacer] = 1; //ii setam job ul SCM(playerid, COLOR_LIGHTBLUE, "[JOB INFO]:{FFFFFF} Te-ai angajat ca Racer."); // Aici il anuntam ca s-a angajat } return 1; }
acum facem comanda /quitjob
CMD:quitjob(playerid, params[]) { if(Job[playerid] == 0) return SCM(playerid, COLOR_RED, "[JOB]: {FFFFFF}Nu ai nici un job."); // Daca nu are nici un job, nu poate demisiona SCM(playerid, COLOR_YELLOW, "[JOB]: Ai demisionat de la locu' de munca."); // il anuntam ca a demisionat. Job[playerid] = 0; // ii scoatem job-ul PlayerInfo[playerid][pJobRacer] = 0; //aici ii scoate job ul // Aici puteti adauga mai multe PlayerInfo[playerid][pGarbageMan] = 0; sau ce job aveti voi pentru a nu mai putea lucra return 1; }
acum facem comanda /startrace:
CMD:startrace(playerid, params[]) { if(PlayerInfo[playerid][pJobRacer] == 0) return SCM(playerid, COLOR_RED, "[Race]: {FFFFFF} Nu ai job-ul de Racer."); // daca nu are job ul sa nu poata da comanda if(!IsPlayerInRangeOfPoint(playerid, 10, 1879.1910,2339.5544,10.9799)) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu esti la locul potrivit"); else RaceCar[playerid] = CreateVehicle(502, 2124.7451, 2846.4553, 10.7136, 178.8758, 243, 208, -1, 0); //aici creem masina pentru cursa PutPlayerInVehicle(playerid, RaceCar[playerid], 0); //il punem in ea SetPlayerRaceCheckpoint(playerid, 0, 2124.7817, 2762.2695, 10.7128, 2152.7495, 2747.5715, 10.7148, 10.0); // si ii punem checkpoint SCM(playerid, COLOR_TUTORIAL, "(Job Info):{FFFFFF} Mergi cu ce a mai mare viteza in toate checkpoint-urile."); SCM(playerid, COLOR_TUTORIAL, "(Job Info):{FFFFFF} La sfarsit vei primi un premiu."); Checkpoint[playerid] = 14; //ii punem checkpoint ul asta return 1; }
acum mergem la Onplayerenterracecheckpoint si punem:
public OnPlayerEnterRaceCheckpoint(playerid) { switch(Checkpoint[playerid]) { case 3: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 1/11 checkpoint uri"); SetPlayerRaceCheckpoint(playerid, 0, 2159.1528, 2346.1804, 10.3300, 2093.7646, 2314.8635, 10.3356, 20); Checkpoint[playerid] ++; } case 4: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2093.7646, 2314.8635, 10.3356, 2123.8425, 2240.0552, 10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 2/11 checkpoint uri"); Checkpoint[playerid] ++; } case 5: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2123.8425, 2240.0552, 10.3300, 2123.8425,2240.0552,10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 3/11 checkpoint uri"); Checkpoint[playerid] ++; } case 6: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2123.8425 ,2240.0552, 10.3300, 2124.3208, 2132.7334, 10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 4/11 checkpoint uri"); Checkpoint[playerid] ++; } case 7: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2124.3208 ,2132.7334, 10.3300, 2012.7544, 2115.5938, 10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 5/11 checkpoint uri"); DisablePlayerRaceCheckpoint(playerid); Checkpoint[playerid] ++; } case 8: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2012.7544,2115.5938,10.3300, 1946.5540, 2114.9685, 10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 6/11 checkpoint uri"); Checkpoint[playerid] ++; } case 9: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 1946.5540,2114.9685,10.3300, 2096.1177,2281.3210,10.3339, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 7/11 checkpoint uri"); Checkpoint[playerid] ++; } case 10: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2096.1177,2281.3210,10.3339, 2110.6240,2340.1060,10.3289, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 8/11 checkpoint uri"); Checkpoint[playerid] ++; } case 11: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2110.6240,2340.1060,10.3289, 2159.1528, 2346.1804, 10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 9/11 checkpoint uri"); Checkpoint[playerid] ++; } case 12: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); SetPlayerRaceCheckpoint(playerid, 0, 2167.2896,2300.3743,10.3300, 2159.1528, 2346.1804, 10.3300, 20); SCM(playerid, COLOR_TUTORIAL, "(EXAM) MAI AI 10/11 checkpoint uri"); Checkpoint[playerid] ++; } case 13: { if(!IsPlayerInAnyVehicle(playerid)) return Failexam(playerid); DisablePlayerRaceCheckpoint(playerid); SCM(playerid, COLOR_TUTORIAL, "(EXAM) Felicitari ai terminat examenul"); PlayerInfo[playerid][pCarLic] += 1; DestroyVehicle(ExamCar[playerid]); PlayerInfo[playerid][pExam] = 0; } case 14: { SetPlayerRaceCheckpoint(playerid, 0, 2124.7817, 2762.2695, 10.7128, 2152.7495, 2747.5715, 10.7148, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 1/13 checkpoint uri"); Checkpoint[playerid] ++; } case 15: { SetPlayerRaceCheckpoint(playerid, 0, 2152.7495, 2747.5715, 10.7148, 2159.4492, 2764.3889, 10.6703, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 2/13 checkpoint uri"); Checkpoint[playerid] ++; } case 16: { SetPlayerRaceCheckpoint(playerid, 0, 2159.4492, 2764.3889, 10.6703, 2111.1565, 2775.3210, 10.5658, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 3/13 checkpoint uri"); Checkpoint[playerid] ++; } case 17: { SetPlayerRaceCheckpoint(playerid, 0, 2111.1565, 2775.3210, 10.5658, 2084.8037, 2707.2112, 10.5657, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 4/13 checkpoint uri"); Checkpoint[playerid] ++; } case 18: { SetPlayerRaceCheckpoint(playerid, 0, 2084.8037, 2707.2112, 10.5657, 2044.9855, 2647.2944, 10.5714, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 5/13 checkpoint uri"); Checkpoint[playerid] ++; } case 19: { SetPlayerRaceCheckpoint(playerid, 0, 2044.9855, 2647.2944, 10.5714, 2024.8726, 2567.9417, 13.5944, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 6/13 checkpoint uri"); Checkpoint[playerid] ++; } case 20: { SetPlayerRaceCheckpoint(playerid, 0, 2024.8726, 2567.9417, 13.5944, 2025.1870, 2460.2852, 10.6290, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 7/13 checkpoint uri"); Checkpoint[playerid] ++; } case 21: { SetPlayerRaceCheckpoint(playerid, 0, 2025.1870, 2460.2852 ,10.6290, 2093.1406, 2295.8291, 10.5656, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 9/13 checkpoint uri"); Checkpoint[playerid] ++; } case 22: { SetPlayerRaceCheckpoint(playerid, 0, 2093.1406, 2295.8291, 10.5656, 2009.3448, 2285.2571, 10.5654, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 10/13 checkpoint uri"); Checkpoint[playerid] ++; } case 23: { SetPlayerRaceCheckpoint(playerid, 0, 2009.3448, 2285.2571, 10.5654, 1940.9756, 2285.6765, 10.5658, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 11/13 checkpoint uri"); Checkpoint[playerid] ++; } case 24: { SetPlayerRaceCheckpoint(playerid, 0, 1940.9756, 2285.6765, 10.5658, 1928.7214, 2332.9854, 10.5676, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 12/13 checkpoint uri"); Checkpoint[playerid] ++; } case 25: { SetPlayerRaceCheckpoint(playerid, 0, 1928.7214, 2332.9854, 10.5676, 1888.5048, 2340.0613, 10.7139, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Mai ai 13/13 checkpoint uri"); Checkpoint[playerid] ++; } case 26: { SetPlayerRaceCheckpoint(playerid, 0, 1888.5048, 2340.0613, 10.7139, 1888.5048, 2340.0613, 10.713, 10.0); SCM(playerid, COLOR_TUTORIAL, "(Job Info) Felicitari ai terminat cursa"); DestroyVehicle(RaceCar[playerid]); RaceCar[playerid] = 0; DisablePlayerRaceCheckpoint(playerid); JobReward(playerid); //aici este o functie care sa iti de a bani si job points o vom creea imediat return 1; } } return 1; }
function JobReward(playerid) { new string[100]; new money = 100000 + random(3000000); new jp = 12 + random(20); PlayerInfo[playerid][pJobPoints] += jp; PlayerInfo[playerid][pMoney] += money; format(string, sizeof(string), "(Job Info) Ai primit %d $ si %d Job Points", money, jp); SCM(playerid, COLOR_TUTORIAL, string); return 1; } //functia de reward
avem nevoie si de functiile de random:
stock RandomChange( rare, most, probability ) { new NMB = random( probability ) ? most : rare; printf( "[RandomChange] generated the number: %d with( rare: %d, most: %d, probability: %d )", NMB, rare, most, probability ); return NMB; } stock randomEx( const r_min, const r_max ) { new rand = random( r_max - r_min) + r_min; return rand; }
daca aveti vreo nelamurire scrietimi pe discord sau aici
COPY-PASTE NU ARE VALOARE
-
urmeaza v0.3 in cateva zile
-
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(179) : error 017: undefined symbol "bInfo"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(179) : warning 203: symbol is never used: "BizzInfo"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(180) : warning 203: symbol is never used: "BizzLabel"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(181) : warning 203: symbol is never used: "bPickup" -
Salut, am decis sa postez acest tutorial pentru ce incepatori(ca mine) o sa incerc sa explic cat mai bine
Prima data vom face dialog- urile pentru /buycrate si /opencrate o sa avem nevoie de ele mai tarziu
avem nevoie de culori:
#define COLOR_ERROR 0xC0241FFF #define COLOR_GOLD 0xFFB95EFF
aici dialog-urile
enum { DIALOG_OPENCRATE, DIALOG_BUYCRATE };
acum mergem la enum pinfo pentru a enumera crate urile in sine si premium points
enum pInfo { pPremiumPoints, pCrateBasic, //aici puteti inlocui voi numele la crate urile dorite ex : pCrateExtra dar va sugerez pCrateRare, //sa lasati asa cum am pus eu pentru a nu avea probleme pCrateEpic, pCrateLegendary }; new PlayerInfo[MAX_PLAYERS][pInfo];
acum vom face comenzile opencrate si buycrate
CMD:buycrate(playerid, params[]) return ShowPlayerDialog(playerid, DIALOG_BUYCRATE, DIALOG_STYLE_LIST, "Poti cumpara urmatoarele crate-uri:", "Basic Crate - 25 Premium Points\nRare Crate - 50 Premium Points\nEpic Crate - 100 PremiumPoints\nLegendary Crate - 200 Premium Points", "Buy", "Cancel"); CMD:opencrate(playerid, params[]) { ShowPlayerDialog(playerid, DIALOG_OPENCRATE, DIALOG_STYLE_LIST, "Deschide un crate!", "Basic Crate\nRare Crate\nEpic Crate\nLegendary Crate", "Open", "Cancel"); cratestats(playerid); //aceasta este o functie pe care o sa o scriem imediat return 1; }
acum sa trecem la functii
function cratestats(playerid) { new string[256], basic, rare, epic, legendary; basic = PlayerInfo[playerid][pCrateBasic]; rare = PlayerInfo[playerid][pCrateRare]; epic = PlayerInfo[playerid][pCrateEpic]; legendary = PlayerInfo[playerid][pCrateLegendary]; format(string, sizeof(string), "Crates: Basic: %d, Rare: %d, Epic: %d, Legendary: %d", basic, rare, epic, legendary); SCM(playerid, -1, string); return 1; }
aceasta functie ne ajuta sa dan premiile la crates random
stock RandomChange( rare, most, probability ) { new NMB = random( probability ) ? most : rare; printf( "[RandomChange] generated the number: %d with( rare: %d, most: %d, probability: %d )", NMB, rare, most, probability ); return NMB; } stock randomEx( const r_min, const r_max ) { new rand = random( r_max - r_min) + r_min; return rand; }
aceste doua functii ne vor ajuta sa dam premiile de la crates random
function opencrateb(playerid) { new money = 100000 + random(3000000); //aici puteti schimba sumele new pp = 2 + random(5); //si aici new fhp = 12 + random(20); // si aici PlayerInfo[playerid][pFreshPoints] += fhp; //eu am freshpoints voi puteti sa stergeti aceasta functie PlayerInfo[playerid][pPremiumPoints] += pp; new string[100]; format(string, sizeof(string), "(Crate Info): Ai primit $ %d, %d Premium Points si %d Fresh Points pentru ca ai deschis un crate basic,", money, pp, fhp); //aici ne arata cat primim la deschidere adica premiul SCM(playerid, COLOR_YELLOW, string); return 1; } function opencrater(playerid) { new money = 500000 + random(6000000); new pp = 5 + random(10); new fhp = 20 + random(37); PlayerInfo[playerid][pFreshPoints] += fhp; PlayerInfo[playerid][pPremiumPoints] += pp; new string[100]; format(string, sizeof(string), "(Crate Info): Ai primit $ %d, %d Premium Points si %d Fresh Points pentru ca ai deschis un crate basic,", money, pp, fhp); // il anuntam ca a prins un peste si cat costa acesta SCM(playerid, COLOR_YELLOW, string); return 1; } function opencratee(playerid) { new money = 1000000 + random(10000000); new pp = 10 + random(25); new fhp = 25 + random(50); PlayerInfo[playerid][pFreshPoints] += fhp; PlayerInfo[playerid][pPremiumPoints] += pp; new string[100]; format(string, sizeof(string), "(Crate Info): Ai primit $ %d, %d Premium Points si %d Fresh Points pentru ca ai deschis un crate basic,", money, pp, fhp); // il anuntam ca a prins un peste si cat costa acesta SCM(playerid, COLOR_YELLOW, string); return 1; } function opencratel(playerid) { new money = 10000000 + random(30000000); new pp = 30 + random(65); new fhp = 50 + random(100); PlayerInfo[playerid][pFreshPoints] += fhp; PlayerInfo[playerid][pPremiumPoints] += pp; new string[100]; format(string, sizeof(string), "(Crate Info): Ai primit $ %d, %d Premium Points si %d Fresh Points pentru ca ai deschis un crate basic,", money, pp, fhp); // il anuntam ca a prins un peste si cat costa acesta SCM(playerid, COLOR_YELLOW, string); return 1; }
eu am pus opencratee sau asa acel "e" sau "b" fiind considerat b = basic, r= rare si tot asa
Va propun sa fiti foarte atenti cum am scris eu se poate sa fiu mici greseli de ex la acele // stergetile in gm dupa ce terminati cu codul
Bun, acum ca am facut functiile de deschidere a crate urilor haideti sa continuam prin asta:
la Public OnDialogResponse punem switch(dialogid)
adica:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch (dialogid) { } }
si in acel switch dialogid punem:
case DIALOG_BUYCRATE: { switch(listitem) { case 0: { if(PlayerInfo[playerid][pCrateBasic] > 9) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu poti avea mai mult de 10 Crate uri odata"); if(PlayerInfo[playerid][pPremiumPoints] < 25) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai destule Premium Points."); else SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Ai cumparat basic Crate"); SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Foloseste comanda /opencrate pentru a il deschide"); PlayerInfo[playerid][pCrateBasic] += 1; PlayerInfo[playerid][pPremiumPoints] -= 25; return 1; } case 1: { if(PlayerInfo[playerid][pCrateRare] > 9) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu poti avea mai mult de 10 Crate uri odata"); if(PlayerInfo[playerid][pPremiumPoints] < 50) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai destule Premium Points."); else SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Ai cumparat Rare Crate"); SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Foloseste comanda /opencrate pentru a il deschide"); PlayerInfo[playerid][pCrateRare] += 1; PlayerInfo[playerid][pPremiumPoints] -= 50; return 1; } case 2: { if(PlayerInfo[playerid][pCrateEpic] > 9) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu poti avea mai mult de 10 Crate uri odata"); if(PlayerInfo[playerid][pPremiumPoints] < 100) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai destule Premium Points."); else SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Ai cumparat Epic Crate"); SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Foloseste comanda /opencrate pentru a il deschide"); PlayerInfo[playerid][pCrateEpic] += 1; PlayerInfo[playerid][pPremiumPoints] -= 100; } case 3: { if(PlayerInfo[playerid][pCrateLegendary] > 9) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu poti avea mai mult de 10 Crate uri odata"); if(PlayerInfo[playerid][pPremiumPoints] < 200) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai destule Premium Points."); else SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Ai cumparat Legendary Crate"); SCM(playerid, COLOR_GOLD, "(SERVER):{FFFFFF} Foloseste comanda /opencrate pentru a il deschide"); PlayerInfo[playerid][pCrateLegendary] += 1; PlayerInfo[playerid][pPremiumPoints] -= 200; } } }
salvarea in data vi o faceti singuri
acum sa facem dialog-ul pentru deschiderea crate urilor:
case DIALOG_OPENCRATE: { switch(listitem) { case 0: { if(PlayerInfo[playerid][pCrateBasic] < 1) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai un Basic Crate"); else opencrateb(playerid); PlayerInfo[playerid][pCrateBasic] -= 1; return 1; } case 1: { if(PlayerInfo[playerid][pCrateBasic] < 1) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai un Basic Crate"); else opencrater(playerid); PlayerInfo[playerid][pCrateRare] -= 1; return 1; } case 2: { if(PlayerInfo[playerid][pCrateBasic] < 1) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai un Basic Crate"); else opencratee(playerid); PlayerInfo[playerid][pCrateEpic] -= 1; return 1; } case 3: { if(PlayerInfo[playerid][pCrateBasic] < 1) return SCM(playerid, COLOR_ERROR, "(Eroare):{FFFFFF} Nu ai un Basic Crate"); else opencratel(playerid); PlayerInfo[playerid][pCrateLegendary] -= 1; return 1; } }
SCRIETI MANUAL, COPY & PASTE NU ARE VALOARE
macar atat sa faceti
ORICE EROARE MESAJ IN PRIVAT PE DISCORD SAU AICI UN REPLY SI VA AJUT
-
asta e codu
enum binfo {
bID,
bOwned,
bOwner[25],
bMessage[32],
Float:bEntranceX,
Float:bEntranceY,
Float:bEntranceZ,
Float:bExitX,
Float:bExitY,
Float:bExitZ,
bLevelNeeded,
bPrice,
bBuyPrice,
bEntranceCost,
bTill,
bLocked,
bInterior,
bVirtual,
bSbiz,
bType
};
new BizzInfo[MAX_BUSINESS][bInfo],
Text3D:BizzLabel[sizeof(BizzInfo)],
bPickup[MAX_BUSINESS];eroarea:
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(178) : error 017: undefined symbol "MAX_BUSINESS"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(179) : warning 224: indeterminate array size in "sizeof" expression (symbol "")
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(180) : error 017: undefined symbol "MAX_BUSINESS"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(178) : warning 203: symbol is never used: "BizzInfo"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(179) : warning 203: symbol is never used: "BizzLabel"
C:\Users\dariu\OneDrive\Desktop\fresh gm\gamemodes\gm.pwn(180) : warning 203: symbol is never used: "bPickup"
Pawn compiler 3.10.8 Copyright (c) 1997-2006, ITB CompuPhase
2 Errors.
[Finished in 0.4s]s]
-
Acela este un "TextDraw" il poti edita cu TextDraw editor Releases · Nickk888SAMP/TextDraw-Editor (github.com)Releases · Nickk888SAMP/TextDraw-Editor (github.com)
sau din gm sau din filterscripts depinde unde e.
-
T/C
-
16 minutes ago, MihaiT11 said:
Si vezi ca tu nu folosesti nicaieri PremiumPoints, FreshPoints, vei avea niste warning-uri pe tema asta si defineste warn ca vei avea erori.
Problema TextDraw
in Discuţii scripting
Posted · Edited by Divil.Scorpiono
PlayerTD[playerid][15] = CreatePlayerTextDraw(playerid, 416.000000, 104.000000, "X");
PlayerTextDrawFont(playerid, PlayerTD[playerid][15], 3);
PlayerTextDrawLetterSize(playerid, PlayerTD[playerid][15], 0.600000, 2.000000);
PlayerTextDrawTextSize(playerid, PlayerTD[playerid][15], 400.000000, 17.000000);
PlayerTextDrawSetOutline(playerid, PlayerTD[playerid][15], 1);
PlayerTextDrawSetShadow(playerid, PlayerTD[playerid][15], 0);
PlayerTextDrawAlignment(playerid, PlayerTD[playerid][15], 1);
PlayerTextDrawColor(playerid, PlayerTD[playerid][15], -16776961);
PlayerTextDrawBackgroundColor(playerid, PlayerTD[playerid][15], 255);
PlayerTextDrawBoxColor(playerid, PlayerTD[playerid][15], 50);
PlayerTextDrawUseBox(playerid, PlayerTD[playerid][15], 0);
PlayerTextDrawSetProportional(playerid, PlayerTD[playerid][15], 1);
PlayerTextDrawSetSelectable(playerid, PlayerTD[playerid][15], 1);
degeaba, nu merge
@ionut1337adv