Jump to content

Alberto.

Membru
  • Posts

    153
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Alberto.

  1. Unii dintre noi nu descarca toate gm-urile posibile de pe net ca sa isi faca server. Nu stiu acel gamemode, nu am auzit de el
  2. if(PlayerInfo[playerid][pAdmin] >= 0) - aici verifica daca tu sau cine foloseste comanda ai admin Ce trebui tu sa cauti: pAdmin] = 6 (sau cat e maxim) si sa stergi ce e suspect. (Inafara de /makeleader nu ar trebui sa fie vreo comanda care sa iti de admin)
  3. Asa, exact sub aia unde ia valoarea 1, pui: TogglePlayerControllable(playerid, 1); Asta o sa ii deblocheze. Cat despre problema cu baza de date, nu te pot ajuta aici pentru ca nu stiu cum ai variabilele. Incearca sa cauti cum se salveaza respectpoints-ul la playeri sau helpertoken si sa te iei dupa ce scrie acolo, bafta.
  4. nu te-am intrebat daca este valoarea 1. Te-am intrebat unde o ia, la sfarsitul tutorialului? la primul spawn? Arata-mi si cum o salvezi in baza de date.
  5. Unde ia functia pRegistred (sau cum ai tu in gm) valoarea 1? Cum salvezi acea variabila in baza de date?
  6. Pai in primul rand, modifici comanda doar ca sa trimita niste mesaje. Primul celui ce da invitatia (l-ai invitat pe x in factiune), al 2-lea cel ce e invitat (ai fost invitat de y in factiunea x, foloseste /acceptinvite pentru a accepta invitatia). Acum o sa pui o variabila gen 'playerInvite', iti va folosi la /acceptinvite. Acum comanda /acceptinvite. Te folosesti de 'playerInvite' ca sa verifici daca a fost invitat de cineva in factiune si apoi poti copia restul de la /invite actual pe care il ai. E mai mult decat suficienta explicatia asta, nu imi cere sa iti fac comenzile si nu ma stresa in privat.
  7. Ce include acest proiect? Cum si cat te mult te vei implica? Ce va fii special la acest proiect? De ce am colabora cu tine?
  8. Arata-mi cum ai creat pickup-urile si scriptul unde variabila 'pTiki' creste. Dati detaliile necesare ca noi nu putem ghici in stele de ce nu va merg voua sistemele copiate de pe net.
  9. da, buna incercarea de a trezi lumea. Mi-am facut putin timp sa citesc totul, in realitate cred ca ai scris asta de frica. Din ce vad aici " Desi Mariuce a facut un GM de la 0, ironia face ca nu s-a bucurat de succes, serverul fiind putin populat, a dus la inchiderea lui. " si nu numai, ti-e frica ca o sa deschizi un server unic si frumos dar nu va fii populat si vei regreta ca ai muncit degeaba. Acum aduna-ti tupeul in coaie si ia puterea exemplului, le zici sa isi deschida server cu propriile gamemoduri, propriile sisteme dar tu ce faci? De mai bine de cateva luni spui ca lucrezi la un gm de la 0, dar in tot acest timp nu ai aratat nici macar jumatate de poza cu ce e atat de special le gamemode-ul tau. Un sistem unic, care nu a mai fost creat. Vrei ca ei sa nu isi mai deschida servere, le bagi in cap ca bugged e o prostie (care sunt total deacord) ca sa se lase si sa joace pe al tau. Nu mai fii pussy si deschide un server frumos, care sa iti placa in primul rand tie, nu playeri-lor. Oricum nu ii poti multumi pe toti. Astept sa fiu injurat pentru ca mi-am spus parerea personala si ca nu am fost deacord cu turma, ca doar asa e in Romania.
  10. Compari gradul. Daca adminul x are gradul mai mic ca y atunci ii revine mesajul "nu poti bana un admin mai mare in nivel cu tine." Acum trebuie sa o traduci in limbajul pawno si sa o adaugi la inceputul comenzi, dupa new-uri.
  11. new ip[16]; GetPlayerIp(extraid, ip, sizeof(ip)); ca sa iei numele tarii si sa si functioneze, e mai greu.
  12. Iti spun eu ce sunt businessurile. Sunt un mod prostesc si eficient de a da jucatorilor un scop sa munceasca la joburi, cum sunt masinile si casele. Cu cat jucatorii vor mai mult acel business (care promite sa ii imbogateasca), el va munci mult pentru el, ceea ce il va tine online mult si bine. (Spun prostesc pentru ca am vazut cazuri in care copiii stau nemancati cateva zile ca sa iti tina banii de buzunar/scoala. Acesti bani ajung pe un amarat de paysafecard de 50-100 lei pentru a putea cumpara un business pe marile servere.) D.p.d.v al programarii, businessurile sunt niiste teleportari intr-o lume virtuala din care poti cumpara / face anumite lucruri. Ideea mea poate suna destul de prostesc, totusi este o idee originala si greu de pus in aplicare. Iti sugerezi sa faci un sistem de dezvoltare a propriei afaceri, un jucator cand are o suma de bani sa poata sa ii investeasca in ceva. Adica mai multi detinatori la afacere, mai multi bani care sa ii produca afacerea si un sistem in care sa fie profitul impartit in mod egal la fiecare detinator. Este un mod distractiv de a nu mai "sclavi" jucatorii la joburi si poate cine stie, le dai intentia de a-si deschide o afacere in viitor si in viata reala. Astept sa fiu criticat de acei no-liferi care se mint singuri ca e normal sa te joci 10 ore pe zi pentru bunuri intr-un joc, sanatate.
  13. if(playerVariables[playerid][pCheckpoint] != 0) return SendClientMessage(playerid, -1, "Ai deja un checkpoint activ!"); -> adaugi acea conditie la comanda /find, /where, /jobs si la orice comanda care ti-ar putea amplasa un checkpoint.
  14. Aici e problema ' if(TakingLesson[playerid] == 1 ', cred ca la comanda /exam trebuia sa verifici daca are valoarea 0.
  15. Trebuie sa pui conditia: 'Daca player-ul nu este in departament sau daca player-ul nu are job-ul detectiv { trimite jucatorului mesajul: Nu ai job-ul detectiv si nu esti politist. } Asta s-ar traduce asa in codul pawno. if(PlayerInfo[playerid][pGroup] != id-ul departamentelor || PlayerInfo[playerid][pJob] != 1) { SendClientMessage(playerid, -1, "Nu ai job-ul detectiv si nu esti politist."); return 1; } -> id-ul departamentelor il poti lua de la o comanda aleatorie folosita de departamente, exemplu '/duty'.
  16. /* ******************* ENGINE SYSTEM V1.0 ******************* Filterscript created by StoNe- ! (do not remove the credits) Special thanks to : SA-MP.COM / ********* Enjoy ! ************************************************************************* */ #include <a_samp> #define FILTERSCRIPT #if defined FILTERSCRIPT #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 #define COLOR_GREEN 0x008000FF #define COLOR_RED 0xFF0000FF #define COLOR_YELLOW 0xFFFF00FF new Engine[MAX_VEHICLES]; forward EngineTimer(playerid); public OnFilterScriptInit() { print("ENGINE SYSTEM v1.0 STONE <<-[[---100% LOADED----]]-->>"); return 1; } public OnFilterScriptExit() { return 1; } #endif public OnPlayerExitVehicle(playerid, vehicleid) { TogglePlayerControllable(playerid,1); return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER) { new vehicleid = GetPlayerVehicleID(playerid); if(Engine[vehicleid] == 0) { TogglePlayerControllable(playerid, 0); SendClientMessage(playerid, COLOR_GREEN, "{669999}Pentru a porni vehiculul dvs tastati {CC3300}/engine{669999} sau apasati{CC3300} SHIFT ! "); } else if(Engine[vehicleid] == 1) { SendClientMessage(playerid, COLOR_YELLOW, "Motorul porneste..."); GameTextForPlayer(playerid, "~w~Motorul porneste...",1000,3); } } return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { new vehicleid = GetPlayerVehicleID(playerid); if(IsPlayerInAnyVehicle(playerid)) { if(Engine[vehicleid] == 0) { if(newkeys & KEY_SECONDARY_ATTACK) { RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } else if(newkeys & KEY_SUBMISSION) { SendClientMessage(playerid, COLOR_GREEN, "{669999}Motorul porneste..."); GameTextForPlayer(playerid, "~w~Motorul porneste...",1000,3); SetTimerEx("EngineTimer", 1000, 0, "i", playerid); } } } return 1; } public OnRconLoginAttempt(ip[], password[], success) { return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(exitveh, 7, cmdtext); dcmd(engine, 6, cmdtext); return 0; } public EngineTimer(playerid) { new rand = random(2); if(rand == 0) { SendClientMessage(playerid, COLOR_GREEN, "{FFFFFF}Motorul a pornit !"); GameTextForPlayer(playerid, "~w~Motorul a pornit !",1000,3); SendClientMessage(playerid, COLOR_GREEN, "{669999}Pentru a opri vehiculul dvs tastati {CC3300}/engine !"); new vehicleid = GetPlayerVehicleID(playerid); Engine[vehicleid] = 1; TogglePlayerControllable(playerid, 1); } if(rand == 1) { SendClientMessage(playerid, COLOR_GREEN, "{FFFFFF}Motorul a pornit !"); GameTextForPlayer(playerid, "~w~Motorul a pornit !",1000,3); SendClientMessage(playerid, COLOR_GREEN, "{669999}Pentru a opri vehiculul dvs tastati {CC3300}/engine !"); new vehicleid = GetPlayerVehicleID(playerid); Engine[vehicleid] = 1; TogglePlayerControllable(playerid, 1); } } dcmd_engine(playerid, params[]) { #pragma unused params new vehicleid = GetPlayerVehicleID(playerid); if(Engine[vehicleid] == 0) { SendClientMessage(playerid, COLOR_GREEN, "{669999}Motorul porneste..."); GameTextForPlayer(playerid, "~w~Motorul porneste...",1000,3); SetTimerEx("EngineTimer", 2000, 0, "i", playerid); } else if(Engine[vehicleid] == 1) { Engine[vehicleid] = 0; SendClientMessage(playerid, COLOR_RED, "Motorul a fost oprit !"); SendClientMessage(playerid, COLOR_YELLOW, "Pentru a iesi din vehicul apasa tasta F sau ENTER."); SendClientMessage(playerid, COLOR_GREEN, "{669999}Pentru a porni vehiculul dvs tastati {CC3300}/engine{669999} sau apasati{CC3300} SHIFT ! "); GameTextForPlayer(playerid, "~w~Motorul a fost oprit !",1000,3); TogglePlayerControllable(playerid,0); } return 1; } dcmd_exitveh(playerid, params[]) { #pragma unused params if(IsPlayerInAnyVehicle(playerid)) { RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } else { SendClientMessage(playerid, COLOR_RED, "Nu esti in niciun vehicul !"); } return 1; } Inlocuiesti ce ai tu cu ce ti-am dat eu mai sus.
  17. CMD:cancelcp(playerid, params[]) { DisablePlayerCheckpoint(playerid); SendClientMessage(playerid, COLOR_WHITE, "Ai dezactivat checkpoint-ul."); return 1; } O mai imbunatatesti tu.
  18. Ca sa pornesti de pe 2, mergi la onplayerkeystatechange si in loc de KEY_JUMP pui KEY_SUBMISSION. Si ca sa iti porneasca mereu adaugi asta in locul la ce ai tu acolo: public EngineTimer(playerid) { new rand = random(2); if(rand == 0) { SendClientMessage(playerid, COLOR_GREEN, "{FFFFFF}Motorul a pornit !"); GameTextForPlayer(playerid, "~w~Motorul a pornit !",1000,3); SendClientMessage(playerid, COLOR_GREEN, "{669999}Pentru a opri vehiculul dvs tastati {CC3300}/engine !"); new vehicleid = GetPlayerVehicleID(playerid); Engine[vehicleid] = 1; TogglePlayerControllable(playerid, 1); } if(rand == 1) { SendClientMessage(playerid, COLOR_GREEN, "{FFFFFF}Motorul a pornit !"); GameTextForPlayer(playerid, "~w~Motorul a pornit !",1000,3); SendClientMessage(playerid, COLOR_GREEN, "{669999}Pentru a opri vehiculul dvs tastati {CC3300}/engine !"); new vehicleid = GetPlayerVehicleID(playerid); Engine[vehicleid] = 1; TogglePlayerControllable(playerid, 1); } }
  19. new vehicleid = GetPlayerVehicleID(playerid); si acolo la GetVehicleModel pui GetVehicleModel(vehicleid)
  20. in loc de 411 - id-ul la infernus foloseste-te de functia GetVehicleModel. https://wiki.sa-mp.com/wiki/GetVehicleModel
  21. Arata scriptul prin care verifici daca parola e corecta.
  22. aceste if-uri le scoti ca sa scapi de restrictii: if(PlayerInfo[playerid][pmotokey] == 0) if(PlayerInfo[playerid][phelikey] == 0) if(PlayerInfo[playerid][pPcarkey] == 0) Scoate-le cu tot cu else-uri sau o sa vii pe aici ca primesti 26 de erori.
  23. Din partea mea e ok sa exersati scriptingul pe acest gamemode, e usor de inteles cum functioneaza. Deasemenea recomand si http://wiki.sa-mp.ro/Pagina_principală pentru cei dornic sa invelte lucuri noi. Va astept in privat pentru ajutor/sfaturi moca.
×
×
  • 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.