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.
|
Zmiana punktów teamu.
#1
Napisano 10.10.2008 16:10
#2
Napisano 10.10.2008 16:17
#3
Napisano 10.10.2008 16:20
#4
Napisano 10.10.2008 16:24
btw Blue
#5
Napisano 10.10.2008 16:56
message_begin(MSG_ALL, get_user_msgid("TeamScore"),{0,0,0},id) write_string("TERRORIST/CT") write_byte("WYNIK TEAMU") message_end() }
#6
Napisano 10.10.2008 17:04
#7
Napisano 10.10.2008 17:13
message_begin(MSG_ALL, get_user_msgid("TeamScore"),{0,0,0},id) write_string("TERRORIST/CT") write_byte("WYNIK TEAMU") message_end() }Z tej linijki:
message_begin(MSG_ALL, get_user_msgid("TeamScore"),{0,0,0},id)
Czyje to ma być id?
Z tej linijki:
write_string("TERRORIST/CT")Mam wpisać tylko TERRORIST albo CT?
A tutaj:
write_byte("WYNIK TEAMU")To mam po prostu wpisać dany wynik tak?
A to:
}To jest chyba zbędne.
Teraz jeszcze jedno pytanie. Jak pobrać do zmiennej wynik danego teamu?
Ma Miczu rację?Ale zapewne po nowej rondize (ktos wygral) bedzie trzeba od nowa wgrac
#8
Napisano 10.10.2008 17:22
Z tej linijki:
Kod:
write_string("TERRORIST/CT")
Mam wpisać tylko TERRORIST albo CT?
tak, jedno albo drugie
A tutaj:
Kod:
write_byte("WYNIK TEAMU")
To mam po prostu wpisać dany wynik tak?
tak, klamra też zbędna
Teraz jeszcze jedno pytanie. Jak pobrać do zmiennej wynik danego teamu?
Cytat:
Ale zapewne po nowej rondize (ktos wygral) bedzie trzeba od nowa wgrac
Ma Miczu rację?
new ct_win
new tt_win
tak ma racje, event TextMsg z drugim parametrem 2Game_will_restart_in resetującym zmienne na zero, czyli
ct_win = 0;
tt_win = 0;
a jeżeli chcesz przypisać wynik do zmiennej rejestrujesz event SendAudio dla obydwóch drużyn CT/TT(weź z jakiegoś roundsounda) a potem w funkcjach kolejno
ct_win++
dla ct
tt_win++
dla tt
To id zostaw w spokoju, nie ma wpływu na to na kim się to wykona, bo TeamScore nie ma żadnego parametru w którym się zapisuje id gracza.
#9
Napisano 10.10.2008 18:56
Bo tak sobie teraz sprawdzałem. Tzn
-status
-kickuje kogoś
-jeszcze raz status i sprawdzam jak zmieniły się ID (to od 1-32)
No i w tym wypadku trochę się zdziwiłem. Bo nie za bardzo wiem jak one są przydzielane. Myślałem, że może zmieni ID wszystkim graczom, żeby było równe od 0 do ilości graczy, a tu jakoś inaczej. Przyjrzał się ktoś kiedyś temu z bliska?
Tak sobie teraz myślę, może jeśli ktoś się podłączy, to dostaje najbliższe wolne ID? Ale w takim razie jak pobrać najwyższe ID, aby po kolei w funkcji for ustawiać coś graczom? Nie wiem, czy jak będę coś próbował z graczem, którego nie ma (wolne ID), to czy mi nie przerwie pluginu? Czy jechać po kolei od 0 do 32 nie zważając, czy to ID jest przyporządkowane do jakiegoś gracza?
#10
Napisano 10.10.2008 19:18
Wydaje mi sie ze w/w prosba nie pasuje juz jakos do tego tematu
#11
Napisano 10.10.2008 19:48
#12
Napisano 10.10.2008 19:59
// Plugin created by DarkSider for cstrike.ro & ultimate.ro Forums . // For support , questions , help , information , suggestions , bug reports and others visit www.ultimate.ro/forum , register and go at "Plugins" section ! #include <amxmodx> #include <amxmisc> #include <cshack> public plugin_init() { register_plugin("Team Wins","0.1","DarkSider") register_clcmd("amx_addt","addt",ADMIN_LEVEL_C,"It adds a win to the Terrorists Team .") register_clcmd("amx_addct","addct",ADMIN_LEVEL_C,"It adds a win to the Counter-Terrorists Team .") } public addt(id,level,cid) { if(!cmd_access(id , level , cid , 0)) { console_print(id,"[plugin_twins] No access !"); client_print(id,print_chat,"[plugin_twins] No Access !"); }else { cs_set_team_score(1, cs_get_team_score(1) +1) client_print(id,print_chat,"[plugin_twins] Command succeed"); console_print(id,"[plugin_twins] Command succeed !"); } return PLUGIN_HANDLED } public addct(id,level,cid) { if(!cmd_access(id , level , cid , 0)) { console_print(id,"[plugin_twins] No access !"); client_print(id,print_chat,"[plugin_twins] No Access !"); }else { cs_set_team_score(2, cs_get_team_score(2) +1) client_print(id,print_chat,"[plugin_twins] Command succeed"); console_print(id,"[plugin_twins] Command succeed !"); } return PLUGIN_HANDLED }
#13
Napisano 10.10.2008 20:04
Nie standardowy modul, zapewne pozwala na zmienianie aspektow gry ktore nie potrafia standardowe moduly ;-)
Ale osobiscie bym staral sie unikac - nie wiadomo co i jak
#14
Napisano 10.10.2008 20:09
#15
Napisano 10.10.2008 20:37
No nie bardzo, spróbuj tego z różnymi rzeczami a przekonasz się, że nie można, bo są błędy przy używaniu pluginu, poczytaj logi.Można spokojnie odwoływać się do pustego ID.
new players,num get_players(players,num,"FLAGA") for(new i=0;i<num;i++) { //tu kod, id gracza w danym wykonaniu pętli to players[i] }flagi :
"a" - Don't return dead players
"b" - Don't return alive players
"c" - Skip bots
"d" - Skip real players
"e" - Match with passed team
"f" - Match with part of name
"g" - Ignore case sensitivity
#16
Napisano 10.10.2008 21:07
new players[32],numTo już tak, poza tym
Dzięki Ci.
#17
Napisano 10.10.2008 21:10
Note: "e" flag can return incorrect results (for cstrike/czero at least).
"We don't really support get_players() with flags anymore. It was a bad idea and if it was our choice, it would have never been added to the original AMX Mod." - BAILOPAN
Więc jakby coś nie działało to wiesz na co zrzucić
#18
Napisano 10.10.2008 21:17
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych