Gabb04
Membru-
Posts
29 -
Joined
-
Last visited
Never
Content Type
Profiles
Forums
News
Documentation
Everything posted by Gabb04
-
Toate astea trebuie sa le bagi sub : public OnDialogResponse { Sigur is bagate inauntrul callback-ului astuia ?
-
Cauti in GM : public OnPlayerKeyStateChange(playerid, oldkeys, newkeys) Inauntrul asteia adaugi : if((newkeys & KEY_SUBMISSION) && IsPlayerInAnyVehicle(playerid)) { RepairVehicle(GetPlayerVehicleID(playerid)); SendClientMessage(playerid, COLOR_WHITE, "Your vehicle was succesfully repaired."); } Ar trebui sa-ti mearga.
-
In script e ceva gresit..vezi la liniile in care serverul merge in scriptfiles si salveaza anumite chestii. Adica cand are contact cu scriptfiles. ( gen salveaza conturile , adauga in loguri , salveaza casele , bizurile ).
-
Folosesti GF ? Daca da : Sterge asta : new count; while(text[count]==' ')count++; text[count] = toupper(text[count]);
-
Nu stii sa inlocuiesti ? prin vehicle_id si vehicle3dtext ti-ai definit masina si textu care urmeaza sa atasezi. Attach3DTextLabelToVehicle(numele3dtext, masinapecarepui, 0.0,0.0,0.0); Dar ca sa nu mai scrii tu , sa te chinui sa cauti vehicleid de fiecare data o definesti prin vehicle_id. Mare branza..
-
Ba iti zic eu ca la asta te refereai , ala de pe raven's roleplay e rahat rau , sistemu de tuning. Spui ca nu la asta te refereai ; eu ti-am dat un impuls , un mic ajutor , tu daca stii pawno , faci mai departe.
-
Te folosesti de SetPlayerVirtualWorld si mai creezi o variabla new InHouse[MAX_PLAYERS] , sau cum vrei tu sa se numeasca , asta e cel mai simplu mod cred.. Eu cel putin asta folosesc.. Cand intra playerul in casa sa-i puna virtualworld 'x' si InHouse[playerid] = houseid; Iar atunci cand scrie /exit sa verifice : if (PlayerToPoint(3, playerid,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]) && InHouse[playerid] == i) Ti-am scris pe scurt ideea , ar trebui sa te descurci mai departe.
-
D-apoi ai de lucru la tuning... Trebuie sa creezi cate un new exhaust[][0] = { ... }; Pentru fiecare componenta de tuning... Vents , Exhaust , front bumper , nos , etccc.... vezi SA-MP.com Iar in fiecare acel : new exhaust[][0] = { ... }; Adaugi toate exhaust care apar pe SA-MP Wiki... Exemplu : new exhaust[28][0] = { {1018}, {1019}, {1020}, {1021}, {1022}, {1028}, {1029}, {1037}, {1043}, {1044}, {1045}, {1046}, {1059}, {1064}, {1065}, {1066}, {1089}, {1092}, {1104}, {1105}, {1113}, {1114}, {1126}, {1127}, {1129}, {1132}, {1135}, {1136} }; Aici sunt toate Exhaust-urile. Si-asa mai departe ,dupa ce definesti fiecare componenta trebuie sa adaugi aceste componente sa se salveze la fiecare masina personala in fisierul in care se si incarca masinile,
-
Joint , ai copiat si tu din GM tau .. de unde ai scos tu oldColor[playerid]... iti imaginezi ca o sa-i dea eroare la compile fiindca el nu are new oldcolor[MAX_PLAYERS], nu ? Mai zici ca ai facut-o pe loc si n-ai testat..
-
Pe la linia aia.. 5197 , aranjeaza si tu putin acoladele..
-
Eu cred ca cel mai bine e sa descarci textdraw editor. si-ti editezi apoi un textdraw , si-l pozitionezi cum iti place tie direct din joc. Baga-l in folderul Filterscripts : http://www.girlshare.ro/1736540.3 In joc folosesti /text si /edit , astea-s cele 2 comenzi. Iar dupa ce termini de editat.. salvezi tot din joc textdraw-ul si-l vei gasi in scriptfiles.
-
if(!PlayerToPoint(6.0, playerid, 1525.9470, -1678.3567, 5.6114) || (PlayerToPoint(6.0, playerid, X, Y, Z)) Tu observi ca la primul playertopoint ai un '!' in fata ? if(!PlayerToPoint(6.0, playerid, 1525.9470, -1678.3567, 5.6114) - acel '!' inseamna negatie , adica : Daca nu e la coordonatele acelea. Sterge acel '!' si vezi apoi.
-
Te duci si iei niste coordonatele pt locul in care sa stea camera.. acele coordonate le pui la SetPlayerCameraPos. Iar acum , faci ca (,) camera sa se uite inspre ceva anume. Si faci asa : Te duci la locul inspre care vrei sa se uite camera si dai /save , iar coordonatele de-aici le pui la SetPlayerCameraLookAt.
-
omg. Pluginul se cheama Controllable NPC. Vezi pe sa-mp.com : http://forum.sa-mp.com/showthread.php?t=174671 Pluginul asta poate face un NPC sa moara , sa traga si multe alte functii , citeste si tu acolo.
-
Cu trecerea pe 0.3b , s-a adaugat un nou parametru pt crearea obiectelor , anume : DrawDistance.. Probabil tu ai obiectele in genu asta CreateObject(2587, 2001.195679, 1547.113892, 14.283400, 0.0, 0.0, 96.0); Ceea ce inseamna : CreateObject(modelid, X, Y, Z, RotationX, RotationY, RotationZ); Din Sa-mp 0.3b s-a adaugat si DrawDistance si CreateObject va fi : CreateObject(modelid, X, Y, Z, RotationX, RotationY, RotationZ, DrawDistance); Adica CreateObject(2587, 2001.195679, 1547.113892, 14.283400, 0.0, 0.0, 96.0, 100.0); Astfel obiectul se va vedea de la 100 metri distanta. Sper ca te-am lamurit , nu stiu. in concluzie ... la fiecare CreateObject adauga 100.0 la sfarsit.
-
Nu ar trebui sa creezi un : new RandomSpawns[x][3] = { }; ? Intre acolade sa pui toate coordonatele pt randomspawn. Exemplu : new Float:RandomSpawns[4][3] = { {2458.0073,-2079.2607,13.5469}, {2802.9756,968.1823,10.7500}, {2367.6270,2754.8928,10.5280}, {1637.4083,2340.4880,10.0303} }; Dupa care mergi la OnPlayerSpawn si faci : if(BlockCommand[playerid] == 1) { new rand = random(sizeof(RandomSpawns)); SetPlayerPos(playerid, RandomSpawns[rand][0],RandomSpawns[rand][1],RandomSpawns[rand][2]); } Daca te-am informat gresit , sorry.
-
new playername[64]; GetPlayerName(playerid,playername,64); if(!strcmp(playername,"BusRouteLS",true)) { SetSpawnInfo(playerid, 0, 61, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0 ); PutPlayerInVehicle(playerid, 286, 0); } Adauga asta la OnPlayerSpawn(playerid) - in loc de BusRouteLS pune numele NPC-ului tau si modifica 'vehicleid' din PutPlayerInVehicle ( adica sa modifici 286 )
-
Decat sa umbli cu PlayerToPoint parerea mea este ca mai bine folosesti functia jocului IsPlayerInRangeOfPoint
-
Totusi cum adica Eu trebuie sa gasesc coordonatele camerei(view) pentru a le pune in script si nu stiu cum sa fac asta Adica , camera ta sa se uite inspre ceva anume ?
-
Totusi JoeMan specifica, sa-l dea de unde a ramas dupa ce a dat /q , dupa ce a luat crash , dupa ce a murit ?
-
Sub asta : RepairVehicle(GetPlayerVehicleID(playerid)); Adaugi : GivePlayerMoney(playerid, -x); Unde "-x" inseamna suma de bani pe care vrei sa i-o scada. Exemplu : GivePlayerMoney(playerid, -3000); In exemplul de mai sus ii va scadea 3000 $. Emanuell esti jalnic sincer , /reparatie auzi.
-
care imi dati si mie un streamer sa nu converteze obiectele invizibile
Gabb04 replied to damarius's question in Arhivă probleme
Da-ne totusi si un exemplu de obiect pus pe streamer din gm-ul tau. -
if(strcmp(cmd, "/lay2", true) == 0) { ApplyAnimation(playerid,"SUNBATHE","Lay_Bac_in",3.0,0,1,1,1,0, 0); return 1; } Ultimul parametru ( forcesync ) este 0. Ia inlocuieste cu 1 si va merge sigur. ApplyAnimation(playerid,"SUNBATHE","Lay_Bac_in", 3.0, 0, 1, 1, 1, 0, 1); Daca citeai si ce inseamna forcesync si daca citeai si NOTE de pe sa-mp wiki, sigur nu mai aveai problema.
-
Cauta public OnPlayerLogin in GM... Trebuie sa faci cam asa , sper sa intelegi.. if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 ) { ..... aici sunt acele linii cu fread , care incarca tot detaliile despre player din scriptfiles } else { SendClientMessage(playerid, COLOR_WHITE, "SERVER: Password does not match your name."); return 1; } Bineinteles , eu ti-am dat cel mai simplu exemplu pentru care sa-ti zica ca ai tastat parola gresit ; poti face sub forma de dialog , etc...
-
Chiar foarte usoara viata pe zcmd + sscanf. 1. Comenzile pe zcmd + sscanf au un timp de raspuns foarte rapid. 2. Reducerea liniilor in GM + ca ruleaza mult mai bine. 3. Parerea mea este ca pe sscanf + zcmd e mai ordonat. Deci inainte de zcmd + sscanf aveam gm-ul la 35000 linii , iar acum dupa ce am trecut toate comenzile pe zcmd + sscanf ... 23500 linii, este totusi o economisire de linii.