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
 

Sniper Elite - zdjęcie

Sniper Elite

Rejestracja: 13.01.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 09.12.2022 19:27
*****

Moje posty

W temacie: Powodowanie Crash

30.10.2016 17:47

Sprawdź logi jak ci się serwer wywali i ew wrzuć do tematu.

Szukaj czegoś w stylu Fatal error albo shutdown (nie pamiętam już).

Screen z pierwszego posta oraz log z 2 raczej nie powodują crashy.

W temacie: Problem z dodaniem 1 opcji do hud`a

30.10.2016 17:41

Niby działa, ale wciąż nie do końca.

 

Przy czyszczeniu zapisanego nicku,nie kasuje go całkowicie = czasami w kolejnej rundzie wyświetli się nowy nick, czasami nie(częściej nie)

public zp_round_started(gamemode, id) 
{
  for(new i = 1; i <= 32; i++)
  {
    if(zp_core_is_first_zombie(i) && is_user_connected(i))
{
      get_user_name(i, mname, charsmax(mname));
      break;
    }
  } 
}
public EventRoundEnd()
{
	for (new id=0; id < 33; id++)
	{
		mname[id] = 0
		if(!is_user_connected(id) || !is_user_alive(id)/* || ilosc_graczy < min_licz_graczy*/)
			continue;
		
		set_task(1.0,"czy_wygral_runde",id);
	}

}

Próbowałem też wyczyścić informację na początku rundy, jednak wychodziło na to samo. Przeszukałem trochę dokumentacji i poradników, jednak nigdzie nie znalazłem nic o resetowaniu zmiennej, więc za pewne zrobiłem to źle.

Czekaj czekaj, ty chcesz mieć nick matki zombie w jakimś tam hudzie i chcesz pokazywać to wszystkim graczom, tak?

Resetowanie tej zmiennej będzie wyglądało mniej więcej tak:

nmane[0] = 0 lub formatex(name, 0, "");

 

Co do resetowania zmiennej możesz użyć forwardu z zp:

public zp_round_ended(winteam){
  nmane[0] = 0
}

W temacie: Powodowanie Crash

30.10.2016 13:55

A restartuje po tym błędzie serwer? Logi po tym logu też chyba masz.

W temacie: Problem z dodaniem 1 opcji do hud`a

30.10.2016 13:51

Dawno z tego nie korzystałem, ale najlepiej jest podłączyć się pod forward.

new name[32];
public zp_round_started(gamemode, id) {
  for(new i = 1; i <= 32; i ++)
  {
    if(zp_get_user_first_zombie(i)){
      get_user_name(i, name, charsmax(name));
      break;
    }
  } 
}
 

Zapisujesz nick gracza do zmiennej globalnej, po zakończeniu rundy ją resetujesz.

Sama pętla wygląda ok, możesz tylko dodać break po znalezieniu matki.

 

Moim zdaniem bez sensu szukać gracza co sekundę dla 32 graczy 32 razy iterując po każdym graczu (w sumie 1024 iteracje).

O samym forwardzie w dokumentacji:

/**
 * Called when the ZP round starts, i.e. first zombie
 * is chosen or a game mode begins.
 *
 * @param gamemode Mode which has started.
 * @param id Affected player's index (if applicable).
 */
forward zp_round_started(gamemode, id)

 

 

 

W temacie: Zombie Plague 5.0 6.2 i Advance

28.10.2016 12:34

Zombie Plague Advance to taki 4.3 (napisany tak samo, czyli główny plugin nie jest podzielony na moduły) z różnymi dodatkami, które są z 5.0+ i chyba nie jest już rozwijany.

Zombie Plague 5.0 jest już odpowiednio zmodularyzowany co ułatwia edycję i zarządzanie nimi.

6.0 to chyba jakaś prywatna modyfikacja.

Na twoim miejscu odpaliłbym 5 i 6 wersje i zobaczył czy się różnią i czy pluginy z 5 są kompatybilne z 6. Jeżeli nie ma błędów w 6 możesz spróbować aczkolwiek ja bym brał 5 ponieważ kiedyś na niej działałem i była w miarę stabilna. Z 6 nie korzystałem nigdy.