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

Wczytywanie danych z pliku txtwprowadzanie do tabeli


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

#1 SeeK

    Wszechobecny

  • Użytkownik

Reputacja: 192
Profesjonalista

  • Postów:438
Offline

Napisano 08.07.2011 06:54

Mam do was jedno pytanie. Od dwóch dni googleuje i nie mogę znaleźć potrzebnej mi informacji. Mianowicie chcę aby plugin wczytywał mi dane z pliku txt. Plik txt wyglądał by tak:
20
xxx
yyy
zzz
(...)

I tak, pierwszą linijkę przypisywał by do stałej "IloscGraczy", a resztę(do końca pliku) dodawał by do tablicy dwu-wymiarowej. Kod na razie wygląda tak:

new IloscGraczy = 20

new Nick[][]={"xxx","yyy","zzz"};

A chciałbym, by móc te wartości edytować w pliku tekstowym zamiast w kodzie źródłowym pluginu. Gdyby ktoś był na tyle pomocny, by podać mi kod na to, byłbym bardzo wdzięczny i oczywiście PLUS dla niego.
  • +
  • -
  • 0
https://sklep-sms.pl - Sklep SMS pozwala zarabiać na swoich serwerach gier opartych o silniki AMX Mod X oraz SOURCEMOD
https://nalunch.com - A Ty, gdzie pójdziesz dziś na lunch?

#2 Dwdov

    Profesjonalista

  • Zbanowany

Reputacja: 59
Pomocny

  • Postów:172
  • Imię:Dawid
  • Lokalizacja:Jawor
Offline

Napisano 08.07.2011 09:22

W tym przypadku ilość graczy musi być zdefiniowana przy deklaracji tablicy, ew. trzeba użyć tablic dynamicznych. Dodatkowo stała to stała, jak sama nazwa mówi więc nie można przypisać do niej wartości przy wczytywaniu informacji z pliku. Funkcja odczytu to read_file(), na forum jest poradnik albo sprawdź sobie w dokumentacji jakie argumenty przyjmuje.

Nie pomagam na PW, tylko na forum.


#3 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 08.07.2011 11:54

Łatwiej w pliku ;P

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Lista graczy"
#define VERSION "1.0"
#define AUTHOR "R3X"

#define MAXLINES 50

new Nick[MAXLINES][32];
new IleGraczy = 0;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	loadPlayersList();
	
	log_amx("Lista graczy");
	for(new i=0;i<IleGraczy; i++)
		log_amx("[%d] %s", i+1, Nick[i]);
}

loadPlayersList(){
	new fp = fopen("lista-graczy.txt", "rt");
	if(!fp) return 0;
	
	IleGraczy = 0;
	
	while(!feof(fp)){
		fgets(fp, Nick[IleGraczy], 31);
		trim(Nick[IleGraczy]);
		IleGraczy++;
	}
		
	fclose(fp);
	return 1;
}

Listę graczy umieść w cstrike/lista-graczy.txt nie potrzeba tej 20 na początku, plugin czyta wszystkie linijki po kolei
  • +
  • -
  • 0

#4 SeeK

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 192
Profesjonalista

  • Postów:438
Offline

Napisano 08.07.2011 17:23

Przerobiłem ten plugin dosyć porządnie i teraz sprawdzanie odbywa się na trochę innej zasadzie. Tylko mam pytanie, jeżeli wczytuje dane z pliku to mam taką oto komendę:
read_file("RezerwacjaSteam.txt", i, Steam, 18, iLen)

Tylko, że w tym wypadku plik "RezerwacjaSteam.txt" znajduje się w folderu cstrike, a dla mnie lepiej by było, aby znajdował się w folderze cstrike/addons/amxmodx/configs. Czy umiałby ktoś na to zaradzić?

Dobra, ścieżka się normalnie wprowadza, nie wiem czemu wcześniej coś nie działało ;] Temat można zamknąć.

Użytkownik SeeK edytował ten post 08.07.2011 18:52

  • +
  • -
  • 0
https://sklep-sms.pl - Sklep SMS pozwala zarabiać na swoich serwerach gier opartych o silniki AMX Mod X oraz SOURCEMOD
https://nalunch.com - A Ty, gdzie pójdziesz dziś na lunch?




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

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