Skemr 0 Odesláno: 26. Květen, 2010 Share Odesláno: 26. Květen, 2010 Zdravím, dávám sem Tutorial, ktery vám bude zapisovat do souboru CreateVehicle(....); po napsání příkazu. Je to něco jako když dáte na serveru /save, tak se vám uloží AddStaticVehicle(...); Jenomže tohle má výhodu v tom, že každé auto může mít pokaždé jinou barvu, nebo stejnou, to si nastavíte už sami a druhá výhoda je, že si nastavíte za jak dlouho se znovu respawne.Doufám že se vám to bude někomu hodit. Takže začneme: #include //includ #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1//definice dcmd #define B 0x3AC4C3AA//barva #define SFS "SFS.txt"//soubor //tady potřebné newy pro string a souradnice new Float:x, Float:y, Float:z, Float:f; new s[256]; Dále si dáme do OnPlayerCommandText příkaz: public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(scv, 3, cmdtext); return 0; } Teď si uděláme funkci pro ukládání: stock SaveSS(st[]) { new File:SS = fopen(SFS, io_append); if(SS) { fwrite(SS, st); fclose(SS); } } A teď samotný příkaz: dcmd_scv(playerid, params[]) { #pragma unused params new car[2];//proměná: pro první zjistí jaké auto a druhé zjistí model if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, B, "Musíš být ve vozidle!");//podmínka že hráč musí být ve vozidle car[0] = GetPlayerVehicleID(playerid);//vezmem auto car[1] = GetVehicleModel(car[0]);//vezmem model GetVehiclePos(car[0], x, y, z);//vezmem pozici GetVehicleZAngle(car[0], f);//vezmem uhel natočení auta format(s, sizeof(s), "CreateVehicle(%d, %f, %f, %f, %f, random(150), random(150), 86400); //%s \r\n", car[1], x, y, z, f, params);//tady formát kde si upravíte čas spawnu(tady je 24hodin(86400sekund)), barvu(v tomto případě tam je random, aby byly barvy pokaždé jiné) SaveSS(s);//a uložíme SendClientMessage(playerid, B, "Save !");//Zpráva return 1; } Doufám že se vám můj Tut líbí a že ho využijete, dá se předělat na jakoukoli jinou funkci. Diky Link to comment Share on other sites More sharing options...
mxco 55 Odesláno: 26. Květen, 2010 Share Odesláno: 26. Květen, 2010 velmi pěkný tut... Link to comment Share on other sites More sharing options...
Guest nVidiaX Odesláno: 26. Květen, 2010 Share Odesláno: 26. Květen, 2010 Super TUT, Dobře popsané 9,5/ 10 :thumbup: :thumbup: Link to comment Share on other sites More sharing options...
Skemr 0 Odesláno: 26. Květen, 2010 Author Share Odesláno: 26. Květen, 2010 diky, snazil jsem se, ale popravde jsem taky moc nevedel, ale nakonec to funguje Link to comment Share on other sites More sharing options...
_Speedy 2 Odesláno: 27. Květen, 2010 Share Odesláno: 27. Květen, 2010 Zdravím, dávám sem Tutorial, ktery vám bude zapisovat do souboru CreateVehicle(....); po napsání příkazu. Je to něco jako když dáte na serveru /save, tak se vám uloží AddStaticVehicle(...); Jenomže tohle má výhodu v tom, že každé auto může mít pokaždé jinou barvu, nebo stejnou, to si nastavíte už sami a druhá výhoda je, že si nastavíte za jak dlouho se znovu respawne.Doufám že se vám to bude někomu hodit. Takže začneme: #include //includ #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1//definice dcmd #define B 0x3AC4C3AA//barva #define SFS "SFS.txt"//soubor //tady potřebné newy pro string a souradnice new Float:x, Float:y, Float:z, Float:f; new s[256]; Dále si dáme do OnPlayerCommandText příkaz: public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(scv, 3, cmdtext); return 0; } Teď si uděláme funkci pro ukládání: stock SaveSS(st[]) { new File:SS = fopen(SFS, io_append); if(SS) { fwrite(SS, st); fclose(SS); } } A teď samotný příkaz: dcmd_scv(playerid, params[]) { #pragma unused params new car[2];//proměná: pro první zjistí jaké auto a druhé zjistí model if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, B, "Musíš být ve vozidle!");//podmínka že hráč musí být ve vozidle car[0] = GetPlayerVehicleID(playerid);//vezmem auto car[1] = GetVehicleModel(car[0]);//vezmem model GetVehiclePos(car[0], x, y, z);//vezmem pozici GetVehicleZAngle(car[0], f);//vezmem uhel natočení auta format(s, sizeof(s), "CreateVehicle(%d, %f, %f, %f, %f, random(150), random(150), 86400); //%s \r\n", car[1], x, y, z, f, params);//tady formát kde si upravíte čas spawnu(tady je 24hodin(86400sekund)), barvu(v tomto případě tam je random, aby byly barvy pokaždé jiné) SaveSS(s);//a uložíme SendClientMessage(playerid, B, "Save !");//Zpráva return 1; } Doufám že se vám můj Tut líbí a že ho využijete, dá se předělat na jakoukoli jinou funkci. Diky format(s, sizeof(s), "Tu By som si dal TAB aby som to potom nemusel robiťCreateVehicle(%d, %f, %f, %f, %f, random(150), random(150), 86400); //%s \r\n", car[1], x, y, z, f, params); nevieš zistiť farbu ? no nič moc lepšie by to bolo cez klavesy... Link to comment Share on other sites More sharing options...
Skemr 0 Odesláno: 27. Květen, 2010 Author Share Odesláno: 27. Květen, 2010 pokud to chces prez klavesu, tak si to uprav, a barvy zjistis zde: http://www.Portál člověka s několika multiúčty.cz/viewpage.php?page_id=3 Link to comment Share on other sites More sharing options...
Nikollas 0 Odesláno: 31. Květen, 2010 Share Odesláno: 31. Květen, 2010 Jj, good TUT ale nema byt u toho returnu tohle: ; #include //includ #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1;//definice dcmd #define B 0x3AC4C3AA//barva #define SFS "SFS.txt"//soubor jenom se ptam... Link to comment Share on other sites More sharing options...
tbx 7 Odesláno: 31. Květen, 2010 Share Odesláno: 31. Květen, 2010 Jj, good TUT ale nema byt u toho returnu tohle: ; #include //includ #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1;//definice dcmd #define B 0x3AC4C3AA//barva #define SFS "SFS.txt"//soubor jenom se ptam... podle me to ma dobře protoze asi nikdo tuto definici nezna na spamet takze COPY se urcite nesplete (muj nazor) Link to comment Share on other sites More sharing options...
Skemr 0 Odesláno: 1. Červen, 2010 Author Share Odesláno: 1. Červen, 2010 Definice je správně, protože jsem to taky kopíroval. Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 5. Únor, 2011 Administrátor Share Odesláno: 5. Únor, 2011 mod.pwn(97) : error 017: undefined symbol "dcmd" mod.pwn(258) : warning 203: symbol is never used: "dcmd_scv" tohle mi to hazi co stim sem v pwn zacatecni takze pokudje to neco uplne jasnyhotak sorry Link to comment Share on other sites More sharing options...
Guest [BJ]boban88 Odesláno: 5. Únor, 2011 Share Odesláno: 5. Únor, 2011 to si daj niekam hore #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now