Dominik Rozporka 0 Odesláno: 11. Leden, 2015 Share Odesláno: 11. Leden, 2015 Čau poraďte mi prosím jak načíst z domy.txt souboru pickupy do proměnný soubor domy.txt má 350 řádků představuju si to v tý proměnný tak že by to bylo v poli prostě že: new domy[350] a já nevim jak si to ulehčit než psát furt tohle: domy[0]=CreatePickup(1273, 1, 2056.461669, 2665.161621, 10.820312, -1); domy[1]=CreatePickup(1273, 1, 2036.993774, 2664.174316, 10.820312, -1); a tak dále........... proto to chci ze souboru načíst každý samotný příkaz do polí. dole je ten soubor domy.txt jo a hlavně aby se ty pickupy zoobrazili ve hře jak to mám teda udělat? domy.txt Link to comment Share on other sites More sharing options...
0 Kubko 22 Odesláno: 11. Leden, 2015 Share Odesláno: 11. Leden, 2015 (upraveno) Netestované:new subor = fopen("domy.txt, io_read), string[128], i;while(fread(subor, string)){ format(domy[i++], 128, "%s", string);}fclose(subor); Aha toto vlastne fungovať nebude, lebo ty do tej premennej potrebuješ ID pickupu.. A to zistiš len ked sa vyvola kod a vytvori sa pickup v hre.. Edited 11. Leden, 2015 by Sanios Link to comment Share on other sites More sharing options...
0 Dominik Rozporka 0 Odesláno: 11. Leden, 2015 Author Share Odesláno: 11. Leden, 2015 (upraveno) a tak že to nejde načíst ze souboru do proměnných a aby to hlavně bylo ty pickupy ve hře? Edited 11. Leden, 2015 by Dominik Rozporka Link to comment Share on other sites More sharing options...
0 Mort 29 Odesláno: 11. Leden, 2015 Share Odesláno: 11. Leden, 2015 Inu, jelikož se ten řádek nemění, tak nejjednoduší bude způsob takový, že si vytvoříš pomocnou proměnnou a pak proměnné pro údaje, do které budeš ukládat to co jsi přečetl a následně vytvářet pickup. Tady budeš muset již použít funkce pro práci se stringem new id[350], x = - 1; new model; // do této proměnné budeme ukládat model pickupu new type; // typ spawnu new Float:X; // X souřadnice new Float:Y; // Y souřadnice new Float:Z; // Z souřadnice new virtualworld; // virtuální svět pro pickup new File:souborDomy = fopen("domy.txt", io_read); // otevřeme soubor if(souborDomy) // pokud úspěšně načetl soubor { new radek[256]; // sem budeme ukládat celý řádek while(fread(souborDomy, radek)) // a budem říst řádek po řádku až do konce { new hodnoty[256], i, hodnota[8], start = 0, count; strmid(hodnoty, radek, 13, strlen(radek) - 4); // ořežeme pvůdoní string o CreatePickup( & ); // to číslo 4 je tam proto, že se jako znaky počítá i \r\n while((i = (strfind(hodnoty, " "))) != -1) // ořežeme přebytečné mezery { strdel(hodnoty, i, i + 1); } // teď získáme všechny informace a zapíšeme je do proměnných for(i = 0; i < strlen(hodnoty); i++) { if(hodnoty[i] == ',' || hodnoty[i] == EOS) // pokud najde čárku { strmid(hodnota, hodnoty, start, i); start = i + 1; count++; switch(count) { case 1: model = strval(hodnota); case 2: type = strval(hodnota); case 3: X = floatstr(hodnota); case 4: Y = floatstr(hodnota); case 5: Z = floatstr(hodnota); case 6: virtualworld = strval(hodnota); } format(hodnota, 8, ""); } } id[++x] = CreatePickup(model, type, X, Y, Z, virtualworld); } } Funguje to správně, zkoušel jsem toPS: pickupy se ti ukládají do proměnné id, ale musíš jí nastavit jako globální, zbytek dej do OnGameModeInit nebo kam potřebuješ 1 Link to comment Share on other sites More sharing options...
0 Dominik Rozporka 0 Odesláno: 11. Leden, 2015 Author Share Odesláno: 11. Leden, 2015 Děkuju už mi to funguje Link to comment Share on other sites More sharing options...
Dotaz
Dominik Rozporka 0
Čau poraďte mi prosím jak načíst z domy.txt souboru pickupy do proměnný
soubor domy.txt má 350 řádků
představuju si to v tý proměnný tak že by to bylo v poli prostě že:
a já nevim jak si to ulehčit než psát furt tohle:
a tak dále...........
proto to chci ze souboru načíst každý samotný příkaz do polí.
dole je ten soubor domy.txt
jo a hlavně aby se ty pickupy zoobrazili ve hře
jak to mám teda udělat?
domy.txt
Link to comment
Share on other sites
4 odpovědí na tuto otázku
Recommended Posts