Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[ROZWIĄZANE] Chce zrobić żeby modele czytało mi z pliku .ini (JAK?)


Najlepsza odpowiedź grankee, 30.01.2016 15:52

Przyjęło się, że pliki używane do konfiguracji pluginu mają typ ini, ale to jest w tym przypadku bez znaczenia.

 

NiczegoWinien, Twoja pętla ma zasadniczy błąd - nigdy się nie kończy, ponieważ nie inkrementujesz numeru linii i cały czas czyta tą samą. Ponadto o ile pamiętam linie numeruje się od 0

Nie mniej jednak warto tu użyć pętli while zamiast do-while, na wypadek pustego pliku.

new file[256];
    
    get_configsdir( file, 255 )
    
    format(file,255,"%s/moj_plik.ini",file)
    
    new line=0,text[128],chars
    while(read_file(file,line++,text,127,chars))
    {
        
        //tu kod
    }
    
   
Przejdź do postu


  • Zamknięty Temat jest zamknięty
10 odpowiedzi w tym temacie

#1 dredek

    Wszechobecny

  • Użytkownik

Reputacja: 162
Profesjonalista

  • Postów:476
  • GG:
  • Imię:Dawid
  • Lokalizacja:OLK
Offline

Napisano 28.01.2016 04:20

Cześć,

No więc tak jak w tytule tematu. Ogarniam sobie właśnie plugin na tzw. skiny no i ogólnie mam menu pistolety, które przenosi do menu usp, które chce żeby przeniosło mnie już do wyboru skinów(modeli) z nazwami, które chce żeby czytało mi z pliku .ini. Jak mogę to najprościej zrobić? Naprowadźcie mnie jakoś proszę ;-)


  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 28.01.2016 12:40

Podaj którego pluginu używasz


  • +
  • -
  • 0

#3 dredek

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 162
Profesjonalista

  • Postów:476
  • GG:
  • Imię:Dawid
  • Lokalizacja:OLK
Offline

Napisano 28.01.2016 14:36

Podaj którego pluginu używasz

 

No pisze go dopiero. Stanąłem na zrobieniu menu bo chce żeby mnie zakładka usp przeniosła od razu do menu z wyborem modeli/skinów, które chce żeby mi czytało z pliku .ini tylko nie wiem jak to zrobić... Mógłbyś jakoś naprowadzić, zapodać jakąś funkcje odpowiedzialną za to? ;>


  • +
  • -
  • 0

#4 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 29.01.2016 21:35

http://amxx.pl/dokum.../f904/read-file


  • +
  • -
  • 0

#5 NiczegoWinien

    Wszechpomocny

  • Użytkownik

Reputacja: 64
Pomocny

  • Postów:334
  • Lokalizacja:No Disc
Offline

Napisano 29.01.2016 22:44

Ja sobie precachuje tak :

 

new file[256];
    
    get_configsdir( file, 255 )
    
    format(file,255,"%s/moj_plik.ini",file)
    
    new line=1,text[128],chars
    do{
        
        line = read_file(file,line,text,127,chars)
        trim(text);    
        gSprite[line] = precache_model(text);
    }
    while(line>0)
   
 

 

i od razy sobie zapisuje do globalnej sciezke do tego czego chce..

Potem moego to latwo uzyc stosujac gSprite. Oczywiscie wielkosc tablicy musisz sam dostoswac.

 

A tak na marginesie czy ma znaczenie to jakies czy czytam cos z pliku .ini czy .txt ?


  • +
  • -
  • 0

#6 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 30.01.2016 15:52   Najlepsza odpowiedź

Przyjęło się, że pliki używane do konfiguracji pluginu mają typ ini, ale to jest w tym przypadku bez znaczenia.

 

NiczegoWinien, Twoja pętla ma zasadniczy błąd - nigdy się nie kończy, ponieważ nie inkrementujesz numeru linii i cały czas czyta tą samą. Ponadto o ile pamiętam linie numeruje się od 0

Nie mniej jednak warto tu użyć pętli while zamiast do-while, na wypadek pustego pliku.

new file[256];
    
    get_configsdir( file, 255 )
    
    format(file,255,"%s/moj_plik.ini",file)
    
    new line=0,text[128],chars
    while(read_file(file,line++,text,127,chars))
    {
        
        //tu kod
    }
    
   

Użytkownik grankee edytował ten post 30.01.2016 15:53

  • +
  • -
  • 2

#7 dredek

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 162
Profesjonalista

  • Postów:476
  • GG:
  • Imię:Dawid
  • Lokalizacja:OLK
Offline

Napisano 01.03.2016 22:04

dziena za naprowadzenie ;)


  • +
  • -
  • 0

#8 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 02.03.2016 02:22

ja robie tak i to jest lepszy sposob

new szFile[128];
add(szFile[get_localinfo("amxx_datadir", szFile, 127)], 127, "/nicki.ini");

new iFile = fopen(szFile, "rt");
if(iFile)
{
	new szData[35], szNick[32];
	while(!feof(iFile))
	{
		fgets(iFile, szData, 34);
		trim(szData);

		if(!szData[0] || szData[0] == ';' || (szData[0] == '/' && szData[1] == '/'))
		{
			continue;
		}

		parse(szData, szNick, 31);
	}
	fclose(iFile);
}

  • +
  • -
  • 0

#9 dredek

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 162
Profesjonalista

  • Postów:476
  • GG:
  • Imię:Dawid
  • Lokalizacja:OLK
Offline

Napisano 03.03.2016 16:17

Na tej samej zasadzie robię ;)


  • +
  • -
  • 0

#10 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 04.03.2016 18:29

@Asiap

W czym jest ten sposób lepszy? Bo otwierasz i zamykasz plik ręcznie?


  • +
  • -
  • 0

#11 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 25.12.2016 04:17

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych