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: 2
0 użytkowników, 2 gości, 0 anonimowych


Dodatki SourceMod



Temat jest zamknięty









