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

hookowanie say_team


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

#1 stepdub

    Profesjonalista

  • Użytkownik

Reputacja: 43
Pomocny

  • Postów:207
  • Lokalizacja:Kobyłka
Offline

Napisano 29.08.2011 09:48

Witam, mam problem z tym. Może rozwiązanie jest proste, może jednak nie?
Powiedzmy mam taki kod:
public plugin_init() register_clcmd("say_team", "hook_say_team")

public hook_say_team(id) //bla bla bla


i jak teraz pokazać wiadomość jednej drużynie?
bo mam id, czyli jedną osobę, która wpisuje wiadomość, jeżeli dam warunek teamu i dam np. ColorChat(id, GREY, "blabla");
to wyświetli jednej osobie, jak dam 0 to wyświetli wszystkim? czy się mylę?

W każdym razie proszę o pomoc :)
  • +
  • -
  • 0

#2 Dwdov

    Profesjonalista

  • Zbanowany

Reputacja: 59
Pomocny

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

Napisano 29.08.2011 09:56

Trzeba zrobić pętle po graczach

new iPlayers[32], iNum, iForwardRet;
get_players( iPlayers, iNum );

for( new i = 0 ; i < iNum ; i++ )
{
new id = iPlayers[i]

if( !is_user_alive( id ) && get_user_team( id ) != 2 ) continue; //pokazuje tylko dla tt
//kod
}

Nie pomagam na PW, tylko na forum.


#3 byCZUS

    Listonosz

  • Support Team

Reputacja: 752
Guru

  • Postów:459
  • GG:
  • Steam:steam
  • Lokalizacja:GW
Offline

Napisano 29.08.2011 11:42

Widzę kopiuj wklej z jakiegoś kodu po co sprawdzać czy on jest żywy i jego team później jeżeli funkcja get_players ma to wbudowane w sobie ?

new players[32], num, pid;
get_players(players, num, "e", "TERRORIST");

for(new i = 0; i < num; i++) {
pid = players[i];
// działania na graczach np client_print(pid, print_chat, "asd");
}


Jeżeli chcesz tylko żywych to zamień
get_players(players, num, "e", "TERRORIST");
na
get_players(players, num, "ae", "TERRORIST");

  • +
  • -
  • 1

Dziękuje, dobranoc.


#4 stepdub

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 43
Pomocny

  • Postów:207
  • Lokalizacja:Kobyłka
Offline

Napisano 29.08.2011 13:25

a powiedzmy, że chce to zrobić na Zombie Plague 4.3, wrzuciłem get_user_team fix, więc chyba teoretycznie powinno wyświetlać prawidłowym osobom? Dołączona grafika

Użytkownik stepdub edytował ten post 29.08.2011 13:26

  • +
  • -
  • 0




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

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