MackoLuky 1 Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 Když si udělám pomocí dini ukládání dotazy/dotazy.txt do kterých se mi bude ukládat ID a vedle toho dotaz, můžu udělat pomocí dini že dám /příkaz id a přečte mi to ten dotaz? Potřeboval bych to prosím vědět, dík. Link to comment Share on other sites More sharing options...
0 Administrátor Ewwe 434 Odesláno: 24. Červenec, 2012 Administrátor Share Odesláno: 24. Červenec, 2012 no asi by to slo kdyby si to nacital poradkach a id radku by bylo id v prikazu Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 Teď nějak nechápu Kdyby ve hře napsal hráč třeba id 1 např /lol text Uložilo by se to 1=text Admin by dal např /read 1 A ukazala by se mu ta zpráva, je to možné? Link to comment Share on other sites More sharing options...
0 Administrátor Ewwe 434 Odesláno: 24. Červenec, 2012 Administrátor Share Odesláno: 24. Červenec, 2012 A když hráč id jedna napíše ahoj tak se to uloží jako 1=Ahoj pak se odpojí přípojí se jinej taky bude mít id 1 napíš hoaj tak ti to přepíše ten původní Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 Omg né asi Já to mam vymyšlený že po disconectu se to smaže?, kapišto? Já potřebuju aby se to dalo přečíst když je připojen A pokuď nejde přes dini, jde to přes file? Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 Teoreticky by to možná mělo jít takhle: ID 1 - /prikaz lol uloží - text/1.txt a do toho zapise lol a další dá /cist id, s tím příkazem se to zároveň i smaže. To by šlo ne? Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 COMMAND:cist(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",playerid)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); format(file, sizeof(file), DOTAZY, playerid); String = dini_Get(file, "Dotaz"); return 1; } COMMAND:dotaz(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <0) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",String)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(file, sizeof(file), DOTAZY, playerid); dini_Create(file); dini_Set(file, "Dotaz", String); return 1; } Text se mi sice uloží, ale nevím jak načíst. Link to comment Share on other sites More sharing options...
0 Guest Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 použij: fwrite,fread,fremove. Link to comment Share on other sites More sharing options...
0 LYRIcS 88 Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 COMMAND:cist(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",playerid)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); format(file, sizeof(file), DOTAZY, playerid); format(String, sizeof(String), "[ DOTAZ ] ID:%d: %s", strval(params), dini_Get(file, "Dotaz")); SendClientMessage(playerid, 0xFF0000FF, String); return 1; } COMMAND:dotaz(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <0) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",String)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(file, sizeof(file), DOTAZY, playerid); dini_Create(file); dini_Set(file, "Dotaz", params); return 1; } Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 COMMAND:cist(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",playerid)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); format(file, sizeof(file), DOTAZY, playerid); format(String, sizeof(String), "[ DOTAZ ] ID:%d: %s", strval(params), dini_Get(file, "Dotaz")); SendClientMessage(playerid, 0xFF0000FF, String); return 1; } COMMAND:dotaz(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <0) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",String)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(file, sizeof(file), DOTAZY, playerid); dini_Create(file); dini_Set(file, "Dotaz", params); return 1; } Tw, ajo Já sem si nemohl vzpomenout že dini_Get mohu dávat do formátu, omg Díky moc. Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 Ale stejnak to nejde Link to comment Share on other sites More sharing options...
0 Arthom 6 Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 Ale stejnak to nejde spraviť cez fopen, fwrite atd.. ked tk skusim to nejako pre teba spravit Link to comment Share on other sites More sharing options...
0 Guest Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 MasterMatoSVK, co mu asi píšu ? nenahrabávej posty aspon.. Link to comment Share on other sites More sharing options...
0 Arthom 6 Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 MasterMatoSVK, co mu asi píšu ? nenahrabávej posty aspon.. som si to nevsimol Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 24. Červenec, 2012 Author Share Odesláno: 24. Červenec, 2012 použij:fwrite,fread,fremove. A jak s fwrite, protože to mi vytvoří soubor s názvem který si vytvořím v pawnu ne? new File:Soubor = fopen("text.txt", io_write); A název to bude mýt tento, jak pak přečtu tu zprávu když odešle zprávu třeba 5 lidí? , spíše jak udělám pro každýho soubor který se bude jmenovat podle jeho ID ? Link to comment Share on other sites More sharing options...
0 Guest Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 format(x,sizeof(x),"%s.txt",Jmeno(playerid));//format s nickem new File:Soubor = fopen(x, io_write);//vytvori a otevre soubor: "Nick.txt" a pak při čtení jen format(x,sizeof(x),"%s.txt",Jmeno(playerid));//format fread(Soubor, string);//precte format(aa,sizeof(aa),"%s",string);//format printf(string);//zapise obsah fclose(Soubor);//zavre nějak tak,nevím. nekontroloval jsem to samozřejmě si to musíš ještě upravit. Link to comment Share on other sites More sharing options...
0 Exitus 1 Odesláno: 24. Červenec, 2012 Share Odesláno: 24. Červenec, 2012 samozrejme cez cyklus pretože ti to prečíta prvý riadok... ja osobne na tieto veci preferujem Relačné DB systémy... kde použiješ jednoznačný identifikátor id.. Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 25. Červenec, 2012 Author Share Odesláno: 25. Červenec, 2012 format(x,sizeof(x),"%s.txt",Jmeno(playerid));//format s nickemnew File:Soubor = fopen(x, io_write);//vytvori a otevre soubor: "Nick.txt" a pak při čtení jen format(x,sizeof(x),"%s.txt",Jmeno(playerid));//format fread(Soubor, string);//precte format(aa,sizeof(aa),"%s",string);//format printf(string);//zapise obsah fclose(Soubor);//zavre nějak tak,nevím. nekontroloval jsem to samozřejmě si to musíš ještě upravit. Já to udělám přes tu dini však to přes ní jde Link to comment Share on other sites More sharing options...
0 Administrátor Ewwe 434 Odesláno: 25. Červenec, 2012 Administrátor Share Odesláno: 25. Červenec, 2012 Nejlepší je to zapsat do databáze je klid Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 25. Červenec, 2012 Author Share Odesláno: 25. Červenec, 2012 COMMAND:cist(playerid,params[]) { new id; if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"u",id)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); format(file, sizeof(file), DOTAZY, id); format(String, sizeof(String), "[ DOTAZ ] ID:%d: %s", id, dini_Get(file, "Dotaz")); SendClientMessage(playerid, COLOR_RED, String); return 1; } COMMAND:dotaz(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <0) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",String)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(file, sizeof(file), DOTAZY, playerid); dini_Create(file); dini_Set(file, "Dotaz", params); return 1; } Už přečtu moji zprávu tudíž /cist 0 ale když mám dotaz od id 1 a dám /cist 1 tak mi to píše unknown command :/ Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 25. Červenec, 2012 Author Share Odesláno: 25. Červenec, 2012 Nejlepší je to zapsat do databáze je klid Ewwe prosím pomoc Ty to určitě vykoumáš Už od toho chci mýt klid COMMAND:cist(playerid,params[]) { new id; if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"u",id)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); format(file, sizeof(file), DOTAZY, id); format(String, sizeof(String), "[ DOTAZ ] ID:%d: %s", id, dini_Get(file, "Dotaz")); SendClientMessage(playerid, COLOR_RED, String); return 1; } COMMAND:dotaz(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] <0) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(sscanf(params,"s",String)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(file, sizeof(file), DOTAZY, playerid); dini_Create(file); dini_Set(file, "Dotaz", params); return 1; } V tomto kódě můžu přešíst pouze svůj dotaz, potřebuju už jen vědět jak mám ostatních, když dám /cist 1 tak mi to pise unknown command Link to comment Share on other sites More sharing options...
0 oN3 0 Odesláno: 25. Červenec, 2012 Share Odesláno: 25. Červenec, 2012 Má tam byť: new id = strval(params); Link to comment Share on other sites More sharing options...
0 LYRIcS 88 Odesláno: 25. Červenec, 2012 Share Odesláno: 25. Červenec, 2012 toto ti musi fungovat, mas tam uplne cely kod: COMMAND:cist(playerid,params[]) { new id = strval(params); new fileway[64]; new String[200]; //if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Nemôžeš čítať dotaz od nepripojeného ID !"); format(fileway, sizeof(fileway), "Dotazy/dotaz%03d.txt", id); if(!fexist(fileway)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Tento dotaz neexistuje !"); format(String, sizeof(String), "[ DOTAZ ] ID:%d: %s", id, dini_Get(fileway, "Dotaz")); SendClientMessage(playerid, COLOR_RED, String); return 1; } COMMAND:dotaz(playerid,params[]) { new fileway[64]; if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(fileway, sizeof(fileway), "Dotazy/dotaz%03d.txt", playerid); dini_Create(fileway); dini_Set(fileway, "Dotaz", params); return 1; } //========================================== public OnPlayerDisconnect(playerid) { new fileway[64]; format(fileway, sizeof(fileway), "Dotazy/dotaz%03d.txt", playerid); if(fexist(fileway)) fremove(fileway); return 1; } Link to comment Share on other sites More sharing options...
0 MackoLuky 1 Odesláno: 25. Červenec, 2012 Author Share Odesláno: 25. Červenec, 2012 toto ti musi fungovat, mas tam uplne cely kod: COMMAND:cist(playerid,params[]) { new id = strval(params); new fileway[64]; new String[200]; //if(PlayerInfo[playerid][pAdminLevel] <1) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Ani to nezkoušej! Nejsi admin!"); if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /cist [iD]!"); if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Nemôžeš čítať dotaz od nepripojeného ID !"); format(fileway, sizeof(fileway), "Dotazy/dotaz%03d.txt", id); if(!fexist(fileway)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Tento dotaz neexistuje !"); format(String, sizeof(String), "[ DOTAZ ] ID:%d: %s", id, dini_Get(fileway, "Dotaz")); SendClientMessage(playerid, COLOR_RED, String); return 1; } COMMAND:dotaz(playerid,params[]) { new fileway[64]; if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"{ff0000}[ ! ] {ffffff}Použíj /dotaz [TEXT]!"); format(fileway, sizeof(fileway), "Dotazy/dotaz%03d.txt", playerid); dini_Create(fileway); dini_Set(fileway, "Dotaz", params); return 1; } //========================================== public OnPlayerDisconnect(playerid) { new fileway[64]; format(fileway, sizeof(fileway), "Dotazy/dotaz%03d.txt", playerid); if(fexist(fileway)) fremove(fileway); return 1; } Funguje, díky moc LOCK Link to comment Share on other sites More sharing options...
Dotaz
MackoLuky 1
Když si udělám pomocí dini ukládání dotazy/dotazy.txt do kterých se mi bude ukládat
ID a vedle toho dotaz, můžu udělat pomocí dini že dám /příkaz id a přečte mi to ten dotaz? Potřeboval bych to prosím vědět, dík.
Link to comment
Share on other sites
23 odpovědí na tuto otázku
Recommended Posts