Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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
Zombie Plague 5.0

Po wyjściu nemka nie tworzy kolejnego

zombie plague 5.0

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
4 odpowiedzi w tym temacie

#1 Sniper Elite

    Master

  • Power User

Reputacja: 167
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 04.03.2014 19:57

Witam. Mam problem. Otóż w ZP 5.0 po wyjściu z serwera nemka/surva nie robi kolejnego tylko odpowiednio zamienia wybranego gracza w /zombie/czlowieka. Przejrzalem kilka plikow w których myślałem że będzie ten wpis i naprawić to ale nie udało mi się. Czy ktoś może sam to naprawiał lub pomoże mi to znaleźć?


  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#2 Sniper Elite

    Master

  • Autor tematu
  • Power User

Reputacja: 167
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 04.03.2014 20:53

Ok, znalazłem te funkcje, ale nie wiem jak ją naprawić:

// Client Disconnecting (prevent Game Commencing bug after last player on a team leaves)
public client_disconnect(leaving_player)
{
    // Remove respawn task on disconnect
    remove_task(leaving_player+TASK_RESPAWN)
    
    // Player was not alive
    if (!is_user_alive(leaving_player))
        return;
    
    // Last player, dont bother
    if (GetAliveCount() == 1)
        return;
    
    new id
    
    // Prevent empty teams when no game mode is in progress
    if (!g_GameModeStarted)
    {
        // Last Terrorist
        if ((cs_get_user_team(leaving_player) == CS_TEAM_T) && (GetAliveTCount() == 1))
        {
            // Find replacement and move him to T team
            while ((id = GetRandomAlive(random_num(1, GetAliveCount()))) == leaving_player ) { /* keep looping */ }
            cs_set_player_team(id, CS_TEAM_T)
        }
        // Last CT
        else if ((cs_get_user_team(leaving_player) == CS_TEAM_CT) && (GetAliveCTCount() == 1))
        {
            // Find replacement and move him to CT team
            while ((id = GetRandomAlive(random_num(1, GetAliveCount()))) == leaving_player ) { /* keep looping */ }
            cs_set_player_team(id, CS_TEAM_CT)
        }
    }
    // Prevent no zombies/humans after game mode started
    else
    {
        client_print(id,print_chat,"1");
        // Last Zombie
        if (zp_core_is_zombie(leaving_player) && zp_core_get_zombie_count() == 1)
        {
            // Only one CT left, don't leave an empty CT team
            if (zp_core_get_human_count() == 1 && GetCTCount() == 1)
                return;
            client_print(id,print_chat,"2");
            // Find replacement
            while ((id = GetRandomAlive(random_num(1, GetAliveCount()))) == leaving_player ) { /* keep looping */ }
            
            new name[32]
            get_user_name(id, name, charsmax(name))
            zp_colored_print(0, "%L", LANG_PLAYER, "LAST_ZOMBIE_LEFT", name)
            
            if (LibraryExists(LIBRARY_NEMESIS, LibType_Library) && zp_class_nemesis_get(leaving_player))
            {
                zp_class_nemesis_set(id)
                client_print(id,print_chat,"3");
                if (get_pcvar_num(cvar_keep_hp_on_disconnect))
                    set_user_health(id, get_user_health(leaving_player))
            }
            else{
                zp_core_infect(id, id)
                client_print(id,print_chat,"4");
            }
        }
        // Last Human
        else if (!zp_core_is_zombie(leaving_player) && zp_core_get_human_count() == 1)
        {
            // Only one T left, don't leave an empty T team
            if (zp_core_get_zombie_count() == 1 && GetTCount() == 1)
                return;
            
            // Find replacement
            while ((id = GetRandomAlive(random_num(1, GetAliveCount()))) == leaving_player ) { /* keep looping */ }
            
            new name[32]
            get_user_name(id, name, charsmax(name))
            zp_colored_print(0, "%L", LANG_PLAYER, "LAST_HUMAN_LEFT", name)
            
            if (LibraryExists(LIBRARY_SURVIVOR, LibType_Library) && zp_class_survivor_get(leaving_player))
            {
                zp_class_survivor_set(id)
                
                if (get_pcvar_num(cvar_keep_hp_on_disconnect))
                    set_user_health(id, get_user_health(leaving_player))
            }
            else
                zp_core_cure(id, id)
        }
    }
}

A dokładnie tworzenie drugiego nemezisa:

            if (LibraryExists(LIBRARY_NEMESIS, LibType_Library) && zp_class_nemesis_get(leaving_player))
            {
                zp_class_nemesis_set(id)
                client_print(id,print_chat,"3");
                if (get_pcvar_num(cvar_keep_hp_on_disconnect))
                    set_user_health(id, get_user_health(leaving_player))
            }

Tylko że warunek ten się nie odpala, jakby źle pobierało id gracza który wyszedł (to pierwsze wyrzuciłem dla pewności :) ). Próbowałem też wywołać inaczej te funkcje, ale nic z tego i skończyły mi się pomysły. Wie ktoś o co może chodzić?


  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#3 Tarasek

    Wszechwidzący

  • Użytkownik

Reputacja: 46
Pomocny

  • Postów:248
  • GG:
  • Imię:Sebastian
  • Lokalizacja:Bystrzyca kłodzka
Offline

Napisano 05.03.2014 23:24

zombiplauge.cfg i znajdź i ustaw

// Gameplay Fixes

// --------------

 

zp_remove_doors 0 // Remove doors from maps [0-none // 1-rotating only // 2-all doors]

zp_block_pushables 1 // Block +use on pushables to prevent the speed bug

zp_block_suicide 1 // Prevent players from killing themselves

zp_worldspawn_kill_respawn 1 // Respawn players after a worldspawn kill

zp_disable_minmodels 1 // Disable cl_minmodels setting on clients after joining

zp_keep_hp_on_disconnect 1 // When nemesis/survivor leaves, player chosen to take his place will have same HP


  • +
  • -
  • 2

Jeżeli nie potrafisz wgrać prostego VIP'a albo RS'ów to po co sie bierzesz za serwer ?! Przez takich jak ty CS padnie :/


#4 Sniper Elite

    Master

  • Autor tematu
  • Power User

Reputacja: 167
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 06.03.2014 00:03

zp_remove_doors mam wartość 1, ale to chyba odpowiada za coś innego.

Poza tym wszystko tak samo. Chyba zp 5.0 trochę zbugowany jest.


  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#5 Sniper Elite

    Master

  • Autor tematu
  • Power User

Reputacja: 167
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 08.03.2014 00:18

Zrobiłem. Chodziło o to że natyw zwracał wartość -1 gdy gracz był niepołączony. Trzeba usunąć ten warunek z natywu zp_class_zombie_get w pluginie zp_class_nemesis (nie wiem czemu ten sposób nie działą na surva, ale głównie chodziło mi o nemka :P )

 

//Można zamknąć


Użytkownik Sniper Elite edytował ten post 08.03.2014 00:23

  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.






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

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