-
Posts
1.886 -
Joined
-
Last visited
-
Days Won
113
Content Type
Profiles
Forums
News
Documentation
Everything posted by Mister
-
2 saptamani fara raspuns t.c.
-
Poziţie: scripter / mapper scripter, mapaerAlte detalii: Am terminat recent o buna parte dintr-un ultim gm pe care il fac. Si as vrea daca are cineva un host pe linux sa il uploadez sa vad cum se comporta. Ipul o sa il fac public ca sa testes la maxim cum ar veni, pentru ca playerii intra cu fel si fel de hackuri si vreau sa vad ce mai am de facut la gm. O sa il tin deschis cateva ore ca sa si repar eventualele probleme. Apoi puteti schmiba datele ca sa nu ziceti ca va fur hostul Gmul mai are cateva chestii neterminate in rest teoretic este totul gata.
-
Asta chiar e culmea chiar atat de greu e? nu vezi ca cu litera mica un cuvant din comanda, cauta in gm sa vezi cum e
-
new named[30],string[120]; GetPlayerName(playerid,named,sizeof(named)); if( strfind(inputtext, "%", true) != -1 || strfind(inputtext, "'", true) != -1 || strfind(inputtext, "`", true) != -1 || strfind(inputtext, ";", true) != -1 ) { format(string,sizeof(string),"* %s (%d) type inccorect character", named, playerid); SendClientMessage(playerid,COLOR_RED,"don't use this characters!"); SendClientMessageToall(-1,string); return 0; } Asta pui la inceputul ondialogresponse, toate acele caractere se considera flod sau sql injection
-
Fratele meu pe bune acum, ai 2 ifuri de indeplinit cred ca si mama reusea. 1 IsAtClothShop(playerid)) sa cauti publicul acesta sa vezi care este cloth shopul si 2 if(PlayerInfo[playerid][pMember] >= 1 && PlayerInfo[playerid][pLeader] == 0) trebuie sa fii membrul une factiuni dar nu lider Sunt mai multe ifuri dar decat 2 ce am zis eu nu iti da mesaj de else
-
Si ce ai incercat se presupune ca trebuie sa faci ceva ca sa ai ce ne arata nou, sa stii ca acel mesaj nu se pune SendClientMessage(playerid,-1,"Comanda executata cu succes!Masina a disparut pentru totdeauna."); Sa nu imi spui ca asta ai incercat
-
Nu se cer scripturi de nici un fel, nu pentru asta e facuta aceasta comunitate, ci pentru a ajuta atunci cand userul intampina probleme in cea ce a incercat sa faca.
-
Ce sa auda astia de fox kids ca pe vremea aia ei erau in oua la tacsu Asta a fost maxima jos palaria Stiti eu zic sa lasam prostiile astea cu flodul certurile chiar nu are rost, flodul e degeaba ca avem si noi protectii nu suntem chiar asa si certurile suntem oameni e destul internet pentru toti si utilizatori la fel. Hai sa ne vedem fiecare de treaba noastra e o tara destul de mare si tot nu aven loc uni de alti ce naiba....
-
Nu inteleg de ce sa faci port forward daca panelul e pe host? :))) Adica frate port forward faci in pc panelul e pe host si te astepti sa mearga, de ce?! Hostginger nu suporta php deci nu poti pune paneluri la ei si de ce ai pune baza serverului acolo hostul nu e facut pentru asta ci pentru serverele lor. Sunt degeaba si o firma jegoasa Ia de la 0ping pune serverul acolo si baza de date tot la ei
-
Pfff alt rahat de copie bugged, si chiar vroiam sa il cumpar ce dezamagit sunt Cine sa dea atatia bani pe ceva ce e si pe net mii de variante de gm si zeci de paneluri usor de configurat. In fine bafta
-
Nu vreau sa fiu marlan dar 50 instalarea panelului si 50 lei instalarea temei, ori te lafai in bani cea ce nu cred ori ti-a dat o teapa sa fim seriori nu stiai sa le pui tu dar te considerai owner de server. De asta e vai de serverele de samp ownerul nu stie atata lucru. Vreau sa vad niste poze la panel si gm sau e alta teapa?
-
Ai de capu meu ne vedem dupa 20 ca acuma nu ma mai lasa mama sa stau pe pc sa ma cert cu tine :))) vai de capu vostru de copilasi mutilasi de calculator, iesiti dracu afara sa va jucati ca eu asta faceam la 12 ani, ma jucam si pe pc da ma jucam gta iii mario ce era pe atunci da acuma ma...
-
Ce se intampla cand scrii sellcarto?, prima data scrii /sellcarto si spune sa scrii si idul si suma, iar daca scrii /sellcarto 0 nu apare nimic? verifica si server log poate primesti o eroarea ceva
-
Arata comanda accept car, acolo e problema EDIT: Greseala mea, am crezut ca nu iti trece masina pe numele tau, acum am vazut ca nu merge sa scrii sellcarto
-
Totul pare in regula la prima vedere, masina cum se creaza nu am vazut niciunde createvehicle model x y z a
-
Bun si cum salvezi tu datele masinii, ai o functie savecardata ceva de genul, posteaza aici codul
-
Tutorial salvarea datelor prin slash in string Mai demult un user a spus ca vrea sa faca o salvare a mai multor variabile de tip integer in o singura variabila de tip string, iar la extragerea variabilelor, acestea sa fie deosebite prin caracterul ' / ' . Nu am avut timp sa ii fac atunci acest tutorial cum nici acum nu prea am avut dar totusi m-am hotarat sa il postez. Variabila in baza de date va arata cam asa 0000/0000/0021/0000 unde 0021 va fi extrasa intr-o variabila cu valoarea 21. Sa incepem, eu voi face salvarea armelor playerului. Vom crea niste variabile in gm La enumul pinfo sau cum aveti voi in gm, unde este pLevel,pMoney si ce mai aveti adaugati aceste variabile pMelle,// Melle de la arma alba, va stoca idul armei, care poate fi crossa, bata, cutitul, sabia etc. pPistol,// va stoca idul pistolul, deagle 9mm sau silencer pShootgun,// shootgunl sawn-offul sau combat shootgun pAMelle,// aceasta variabila va stoca gloantele armei pAPistol,// la fel doar ca pentru pistol pAShootgun// iar aceasta pentru shootgun Acum vom adauga in baza de date a playerilor o variabila numita WeaponsSlot, de tip varchar si conform definitiei, 0/00/00 un singur 0 pentru ca armele albe au idul mai mic decat 9 apoi 2 zerouri pentru ca celelalte arme au idul din 2 cifre, deagleul are id 24 sunt 2 cifre. http://i.imgur.com/CVIuuao.png Vom adauga si o variabila pentru gloante numita WeaponsAmmo de tip string si conform definitiei 0000/0000/0000 4 de zero pentru ca vom putea avea maxim 9999 de gloante si de 4 ori vom adauga 0000/ pentru ca avem 3 arme, melle shootgun si pistol http://i.imgur.com/4EnqnJY.png Acum vom face extragerea variabilei Unde aveti si celelalte variabile extrase vom adauga urmatorul cod new storea[100],storevar[100];//storevar va extrage idul armei iar storea va fi stringul din sql adica 0/00/00 cache_get_field_content(0, "WeaponsSlot", temp), format(storea, 128, temp);// eu am tmp ca string voi puteti avea result sau altcumva //vom folosi strmid care extrage un sir de caractere dintr-un string, adica vom extrage idul armei din stringul sql 0/00/00 strmid(storevar, storea, 0, 1, 255);// vom extrage in variabila storea, din stringul storevar, incepand de la caracterul 0 pana la caracterul 1 adica 0 fara ' / ' PlayerInfo[playerid][pMelle] = strval(storevar);// variabila storevar este un string care este 0, asa ca il vom converti in integer folosind strval, acum variabila noastra pMelle este 0, daca in sql este 2 atunci va fi 2 logic strmid(storevar, storea, 2, 4, 255);// acum incepem de la caracterul 2 pentru a evita ' / ' si extragem pana la 4 adica +2 caractere pentru ca in sql arma a doua are 2 caractere '00' adica PlayerInfo[playerid][pPistol] = strval(storevar);// la fel convertim stringul in integar si ii atribuim valoarea strmid(storevar, storea, 5, 7, 255); // incepem de la un caracter in plus fata de celalalt ca sa evitam ' / ' si terminam cu +2 caractere de unde am inceput PlayerInfo[playerid][pShootgun] = strval(storevar);//ii atribuim valoarea 00 sau cum este in sql Vom extrage si gloantele armelor // variabilele storea si storevar sunt create mai sus cache_get_field_content(0, "WeaponsAmmo", temp), format(storea, 128, temp); strmid(storevar, storea, 0, 4, 255); //vom folosi strmid incepand de la caracterul 0 pana la 4 pentru ca glaontele pot fi maxim 9999 PlayerInfo[playerid][pAMelle] = strval(storevar);// ii vom atribui variabilei de gloante valoare din string convertita in integer strmid(storevar, storea, 5, 9, 255);//acum vom incepe de la caracterul de mai sus 4 +1 deci 5, +1 ca sa evitam ' / ' si vom termina peste +4 caractere adica 9 PlayerInfo[playerid][pAPistol] = strval(storevar);// atribuim iar stringul convertit in integer strmid(storevar, storea, 10, 14, 255); //extragem iar de la 9+1 caractere si terminam peste 4 PlayerInfo[playerid][pAShootgun] = strval(storevar);// si atribuim si ultimul string ultimei variaible Acum vom face ca playerul sa primeasca arme si sa ii fie inserate pe variabile, adica vom apasa CTRL+H sus vom scrie GivePlayerWeapon si jos vom scrie ServerWeapon vom inlocui toate functiile cu functia de dat arme care vor fi salvate forward ServerWeapon(playerid, weaponid, ammo); si public ServerWeapon(playerid, weaponid, ammo) { return 1; } In interiorul functie vom adauga asta if(weaponid >= 1 && weaponid <= 9)//idul de arma alba adica melle { PlayerInfo[playerid][pMelle] = weaponid;// variabila care este idul armei va lua idul dat PlayerInfo[playerid][pAMelle] = ammo;//iar variabila care stocheaza gloantele va lau valoarea gloantelor date GivePlayerWeapon(playerid, weaponid, ammo);// si ii vom si da arma pentru ca nu o putem da in alt fel } if( weaponid >= 22 && weaponid <= 24 ) // acelasi lucru dar pentru pistoale deagle silencer si 9mm { PlayerInfo[playerid][pPistol] = weaponid; PlayerInfo[playerid][pAPistol] = ammo; GivePlayerWeapon(playerid, weaponid, ammo); } if( weaponid >= 25 && weaponid <= 27 ) // si pentru shootgun { PlayerInfo[playerid][pShootgun] = weaponid; PlayerInfo[playerid][pAShootgun] = ammo; GivePlayerWeapon(playerid, weaponid, ammo); } Si vom apela o functie pentru a salva gloantele si armele SetTimerEx("UpdateWeapons",1000,0,"ii",playerid,1);//1 pentru idul armei SetTimerEx("UpdateWeapons",1000,0,"ii",playerid,2);//2 pentru glaonte } Si in final functia care salveaza amele si este putin mai complexa, forward UpdateWeapons(playerid,type); public UpdateWeapons(playerid,type) { return 1; } In interiorul ei va fi asta new weaponid,ammo,text1[20],text2[20],text3[20],strings[200];// cream variabilele de stocare pentru glaonte id arma si pentru salvarea in mysql if(type == 1) { weaponid=0;//ii atribuim 0 pentru ca daca playerul nu are nici o arma va returna null nu 0 GetPlayerWeaponData(playerid, 1, weaponid, ammo);// luam idul si glaontele playerului format(text1,20,"%d",weaponid);// formatam textul cu idul 0 weaponid=0;//ii atribuim iar 0, nu am testat sa vad ce se intampla daca nu ii atribui dar nu vreau sa risc GetPlayerWeaponData(playerid, 2, weaponid, ammo); format(text2,20,"%s%d",(weaponid < 10) ? ("0") : (""),weaponid);// iar acum vom adauga un mic if. %s pentru el iar acum sa va explic ce face (weaponid < 10) ? ("0") : (""), iful spune daca weaponid mai mic decat 10 va return " 0 " altfel spatiu liber, avem nevoie de el pentru ca in mysql va arata asa 0/0/0 inloc de 0/00/00 weaponid=0;//ii atribuim iar 0 GetPlayerWeaponData(playerid, 3, weaponid, ammo);// luam idul shootgun format(text3,20,"%s%d",(weaponid < 10) ? ("0") : (""),weaponid); // si formatam la fel cu 0 inainte daca idul e mai mic de 10 format(strings, sizeof(strings), "%s/%s/%s",text1,text2,text3);/*acum avem stringul de arma alba pistol si shootgun mysql_format(handle, strings, sizeof(strings), "UPDATE `players` SET `WeaponsSlot`='%s' WHERE `username`='%e'", achvar, playerName);// acuma aici veti modifica voi cum aveti in mysql mysql_query(handle, strings);// si executam functia mysql } if(type == 2) { ammo=0;//setam 0 gloantele in caz ca playerul nu are glaonte sa nu returneze null ci 0 GetPlayerWeaponData(playerid, 1, weaponid, ammo); format(text1, 20,"%s%s%s%d",(ammo < 1000) ? ("0") : (""),/./ iful este la fel ca cel de sus doar ca noi in baza de date avem 9999 maximul de glaonte si trebuie sa facem ca in caz ca avem 987 de glaonte in sql sa nu se salveze 0000/987/0000 ci 0000/0987/000 //(ammo < 100) ? ("0") : ("") acelasi lucru doar ca pentru cazul in care avem 24 de gloante sa nu se salveze 024 ci 0024 //(ammo < 10) ? ("0") : (""),ammo) si cazul in care avem 3 glaonte sa se salveze 0003 nu 003 ammo=0;// GetPlayerWeaponData(playerid, 2, weaponid, ammo);// pentru pistol format(text2, 20,"%s%s%s%d",(ammo < 1000) ? ("0") : (""),(ammo < 100) ? ("0") : (""),(ammo < 10) ? ("0") : (""),ammo);// aceleasi " ifuri de verificare numar" ammo=0; GetPlayerWeaponData(playerid, 3, weaponid, ammo);// pentru shootgun format(text3, 20,"%s%s%s%d",(ammo < 1000) ? ("0") : (""),(ammo < 100) ? ("0") : (""),(ammo < 10) ? ("0") : (""),ammo);/ si incheiam la fel pentru 0000 format(strings, sizeof(strings), // acum vom formata stringul pentru mysql "%s/%s/%s/%s",text1,text2,text3); mysql_format(handle, strings, sizeof(strings), "UPDATE `players` SET `WeaponsAmmo`='%s' WHERE `username`='%e'", achvar, playerName);// modificati cum aveti voi in gm mysql_query(handle, var);// si executam functia } Si acum pentru ca armele sa ii fie date playerului vom adauga la onplayerspawn SetTimerEx("SetPlayerWeapons",1000,0,"i",playerid);// dupa ce se spawneaza sa nu ia crash sau alte buguri va primi armele dupa o secunda forward SetPlayerWeapons(playerid); public SetPlayerWeapons(playerid) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pMelle], PlayerInfo[playerid][pAMelle]);// setam gloantele si arma GivePlayerWeapon(playerid, PlayerInfo[playerid][pPistol], PlayerInfo[playerid][pAPistol]);// la fel pentru pistol GivePlayerWeapon(playerid, PlayerInfo[playerid][pShootgun], PlayerInfo[playerid][pAShootgun]); // si pentri shootgun // daca playerul nu are arme acestuia i se va da arma cu id 0 cu 0 gloante adica nu va primi nimic daca are ceva va primi arma return 1; } Si ultima chesti la OnPlayerDisconnect Actualizam armele ca playerul sa ii fie salvate armele ramase nu cele de cand le-a cumparat pentru ca altfel, acesta cumapra arme termina gloantele da relog si va avea acelasi arme nu pe cele conmsumate UpdateWeapons(playerid,1);//1 pentru idul armei UpdateWeapons(playerid,2);//2 pentru glaonte Si cam asta a fost tot sper sa va ajute si nu postati aici reply cu nu imi merge sau am eroare, si asa mi-a dat ceva batai de cap pentru ca la extragere daca dau printf la variabila nu se afiseaza si daca dau direct la strval merge deci fiti atenti la tutorial
-
Well... ma gandeam ca fac topicul ca lumea sa mai invete si altceva pe langa pawn, care are aceleasi functii dar cu posibilitati de utilizare nenumarate, ma gandeam ca oamenii vor invata #emit si si il vor folosi dupa ce citesc topicul dar se pare ca am strans decat certuri freechat dublu post jignirii etc. Deci o sa dau un T.C.
-
Ei bine stiu ca este mai greu de lucrat cu asa ceva si cu siguranta "scripteri" nostri nu folosesc asa ceva si nu stiu ce este, de acea astept pareri de la cei care se pricep cat de cat. Cu ce ajuta cat de utila este si cum functioneaza, mie mi se pare destul de interesanta functia, y_less are destul de multe includeuri care o foloseste si are destul de multe posibilitati. Ma gandeam ca e un subiect de discutie pe tema functiei #emit si poate si eu si alti vom afla mai multe despre ea
-
Server restart mereu /You are banned from this server
Mister replied to cristian9900's question in Arhivă probleme
Arata server log si mysql log daca nu ai crashdetect punel apoi deschide serverul asteapta sa faca figura si atunci arata server log -
Fratele meu invata sa poti sa se inteleaga ce scrii inteleg ca vrei sa scoti iconitele de la case, dar cum vine asta fiecare mapa are cate o imagine Si de ce ai vrea sa le scoti? Este rp, putin ma intereseaza pe mine ca pe rahatul ala stramb de bugged nu e asa
- 190 replies
-
- sealand
- server original
-
(and 3 more)
Tagged with:
-
Aici tocmai te-ai contrazis singur, eu un fel de CatDeBineRuleaza-o meter, asta inseamna ca daca este 1000 ar merge super bine, dar este exact invers daca este 10 merge super bine, si de ce ai crede ca nu am rulat un server cu mai multi playeri? si daca am rulat ce? si daca nu am rulat iar la fel care e treaba?
-
Respecta modelul, T.C. in arhiva in 24 de ore
-
nu inteleg de ar conta asta? pana la urma poate sa arata cat vrea el, atata timp cat serverul este bine facut sau functioneaza cum trebuie nu conteaza.
-
Nu se cade sa ai moduri cand faci poze pentru o chestie de genu, eu imi dau seama care e script si care e mod dar copilasii care cor cumpara nu, apoi te vor acuza ca esti tepar. Uite in poza aveai astea tu mi-ai vandut gmul mai vechi. In fine eu iti doresc sa ai vanzare
