Komunikat dźwiękowy po wybraniu drużyny
ciemny
30.07.2009
Witam,
Potrzebuję pluginu, który odtwarzał by plik dźwiękowy (najlepiej, choć niekoniecznie mp3) zaraz po tym jak gracz wybierze drużynę. W sumie nie musi być to dokładnie ten moment, chodzi mi o to aby każdy gracz (najlepiej tylko raz) usłyszał ten dźwięk.
Potrzebuję pluginu, który odtwarzał by plik dźwiękowy (najlepiej, choć niekoniecznie mp3) zaraz po tym jak gracz wybierze drużynę. W sumie nie musi być to dokładnie ten moment, chodzi mi o to aby każdy gracz (najlepiej tylko raz) usłyszał ten dźwięk.
naven
30.07.2009
Spróbuj:
#include <amxmodx> public plugin_init() { register_plugin("Joinsound", "1.0", "naven") } public client_putinserver(id){ client_cmd(id, "mp3 play sound/misc/nazwa.mp3") }
naven
30.07.2009
oj, zapomniałem o precache:
#include <amxmodx> public plugin_init() { register_plugin("Joinsound", "1.0", "naven") } public client_putinserver(id){ client_cmd(id, "mp3 play sound/misc/nazwa.mp3") } public plugin_precache(){ precache_sound("misc/nazwa.mp3") }
ciemny
30.07.2009
Plik się pobiera ale nie odtwarza. Wnioskując z kodu powinien się odtworzyć w chwili wyświetlenia planszy motd, tak?
naven
30.07.2009
Chyba wiem dlaczego, pewnie nie można użyć client_cmd przed jakimś poziomem, nie wiem tylko którym
ciemny
30.07.2009
Pluginów do amxx nie piszę i powiem ci szczerze, że nie mam pojęcia o czym mówisz więc zadam pytanie: Da się to naprawić?
Edit.
Miczu napisał poradnik o eventach, był tam jeden "zmiana teamu", oto kod:
Może dało by się to wykorzystać bo jeżeli dobrze zrozumiałem powinno zadziałać także przy dołączaniu do teamu.
Edit.
Miczu napisał poradnik o eventach, był tam jeden "zmiana teamu", oto kod:
#include <amxmodx> #include <amxmisc> public plugin_init() { register_event("TeamInfo","team_assign","a") } public team_assign() { static old_team[33] new tid new id = read_data(1) new Team[32] read_data(2,Team,31) //UNASSIGNED //TERRORIST //CT //SPECTATOR if(equal(Team,"UNASSIGNED")) tid = 0 else if(equal(Team,"TERRORIST")) tid = 1 else if(equal(Team,"CT")) tid = 2 else if(equal(Team,"SPECTATOR")) tid = 3 if(old_team[id]==tid) return PLUGIN_CONTINUE //jesli druzyna sie nie zmienila to przerywamy event old_team[id] = tid //zapisujemy nowy team /*code //koniec code */ return PLUGIN_CONTINUE // skoro juz uzylismy returna to musimy tez na koniec go dac }
Może dało by się to wykorzystać bo jeżeli dobrze zrozumiałem powinno zadziałać także przy dołączaniu do teamu.
Seba 30.07.2009
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #define PLUGIN "Nowy Plugin" #define VERSION "1.0" #define AUTHOR "Sn!ff3r" new joined[33] static const sound[] = "sound/misc/siema.mp3" public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("TeamInfo","join_team","a","2=TERRORIST","2=CT") // Add your code here... } public plugin_precache() precache_generic(sound) public client_disconnect(id) joined[id] = 0 public join_team() { // pobrano z cs-puchatek.pl new id = read_data(1) joined[id]++ if(joined[id] != 2) // check for first join return PLUGIN_CONTINUE client_cmd(id, "mp3 play %s", sound) return PLUGIN_CONTINUE }