whyind Napisano Środa o 00:04 Cześć, napisałem sobie prosty plugin (nawet nie wiem czy będzie działał - ma za zadanie slaynąć wszystkich, jeśli dołączy drugi gracz - oczywiście tylko w sytuacji gdy jest jeden gracz i dołączy drugi), ale nie chce się skompilować: public void OnPluginStart() { HookEvent("player_team", EventPlayerTeam); } GetPlayerCount() { new players; for (new i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i)){ players++; } } return players; } int clientCount = GetPlayerCount(); public Action EventPlayerTeam(Event event, const char[] name, bool dontBroadcast){ int clientOldTeam = event.GetInt("oldteam"); if(clientCount == 2){ if(clientOldTeam == 0){ ServerCommand("sm_slay @all"); } } } Errory jakie wyskakują: xyz.sp(32) : error 010: invalid function or declaration xyz.sp(32) : error 008: must be a constant expression; assumed zero Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
ogbudowa Napisano Środa o 00:14 GetPlayerCount() nie podałeś typu do tej funkcji zmień na int GetPlayerCount() Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
whyind Napisano Środa o 00:16 2 minuty temu, ogbudowa napisał: GetPlayerCount() nie podałeś typu do tej funkcji zmień na int GetPlayerCount() Nie działa ;/ Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
ogbudowa Napisano Środa o 00:18 int clientCount = GetPlayerCount(); usuń tą linie Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
whyind Napisano Środa o 00:23 (edytowane) To chyba wtedy plugin nie będzie miał sensu? Przecież niżej wykorzystuję clientCount do warunku. Pojawi mi się wtedy kolejny error, że: error 017: undefined symbol "clientCount" Dobra. Ogarnięte: przeniosłem: int clientCount = GetPlayerCount(); do: public Action EventPlayerTeam(Event event, const char[] name, bool dontBroadcast){ int clientOldTeam = event.GetInt("oldteam"); int clientCount = GetPlayerCount(); if(clientCount == 2){ if(clientOldTeam == 0){ ServerCommand("sm_slay @all"); } } } I ustawiłem int dla GetPlayerCount Edytowane Środa o 00:25 przez whyind Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Grafit 1 Napisano Środa o 00:24 public void OnPluginStart() { HookEvent("player_team", EventPlayerTeam); } int GetPlayerCount() { int players; for (int i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i)){ players++; } } return players; } public Action EventPlayerTeam(Event event, const char[] name, bool dontBroadcast){ int clientOldTeam = event.GetInt("oldteam"); int clientCount = GetPlayerCount(); if(clientCount == 2){ if(clientOldTeam == 0){ ServerCommand("sm_slay @all"); } } } Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Grafit 1 Napisano Środa o 00:25 (edytowane) 2 minuty temu, whyind napisał: To chyba wtedy plugin nie będzie miał sensu? Przecież niżej wykorzystuję clientCount do warunku. Pojawi mi się wtedy kolejny error, że: error 017: undefined symbol "clientCount" zamist clientCount mozesz uzyc GetPlayerCount (); sorki ze w 2 odpowiedziach ale na telefonie jestem 😞 Edytowane Środa o 00:26 przez Grafit Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
whyind 1 Napisano Środa o 00:26 (edytowane) 10 minut temu, Grafit napisał: public void OnPluginStart() { HookEvent("player_team", EventPlayerTeam); } int GetPlayerCount() { int players; for (int i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i)){ players++; } } return players; } public Action EventPlayerTeam(Event event, const char[] name, bool dontBroadcast){ int clientOldTeam = event.GetInt("oldteam"); int clientCount = GetPlayerCount(); if(clientCount == 2){ if(clientOldTeam == 0){ ServerCommand("sm_slay @all"); } } } Właśnie edytowałem post ostatni i zrobiłem dokładnie to samo xD, ale dzięki! Edit: Plugin działa, można zamknąć! Edytowane Środa o 00:35 przez whyind Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach