Przerzucenie Gracza
Magisterr.
09.08.2008
Czy da się przerzucić gracza do 2 teamu (np. z CT do TT), ale tak by cały czas żył? - Jeśli tak to proszę o pomoc
TastyB
09.08.2008
Nie spotkalam sie jeszcze z takim pluginem ktory przerzucalby zywego gracza do przeciwnej druzyny ale mam plugin ktory "zaznacza" zawodnika do przeniesienia i przenosi go natychmiast po tym jak on sam zginie albo na koncu aktualnej rundy - czyli generalnie go nie zabija przenoszac.
Jezeli Cie on ineresuje to daj znac
Pozdrawiam
Jezeli Cie on ineresuje to daj znac
Pozdrawiam
Magisterr.
09.08.2008
Znowu sprawa HnS .
Jeśli CT jest afk to po 20 sec. afkowania go przerzuca do terorystów, a w zamian wybiera losowo 1 gracza z tero. (CT może ewnt. zabić, ale nie terroryste który idzie na jego miejsce).
Choć jest też prostrze rozwiązanie - Po 60 sec afkowania CT (od początku rundy) - zabija go ;]. Ale tylko CT i tylko tego co Afkuje
//Proszę o przeniesienie tematu do działu "Szukam Pluginu"
Jeśli CT jest afk to po 20 sec. afkowania go przerzuca do terorystów, a w zamian wybiera losowo 1 gracza z tero. (CT może ewnt. zabić, ale nie terroryste który idzie na jego miejsce).
Choć jest też prostrze rozwiązanie - Po 60 sec afkowania CT (od początku rundy) - zabija go ;]. Ale tylko CT i tylko tego co Afkuje
//Proszę o przeniesienie tematu do działu "Szukam Pluginu"
grankee
09.08.2008
Czy on się pytał o jakieś afk? Z tego co można zrozumieć chodzi mu o to, że jak wpisze amx_teammenu i przerzuci gracza żywego to go nie zabije, ale zespawnuje na respie.
Oczywiście, że jest taki plugin, bo sam go zrobiłem
Dla poprawnego działania plugin musi być umieszcznowy w plugins.ini przez pluginem plmenu.amxx
Oczywiście, że jest taki plugin, bo sam go zrobiłem
Dla poprawnego działania plugin musi być umieszcznowy w plugins.ini przez pluginem plmenu.amxx
xxx.amxx xxx.amxx teammenu_nokill.amxx plmenu.amxx xxx.amxx
/* Autor: grankee * Plugin pisany z myslą o tych, którzy giną przy przenoszeniu do drugiej drużyny przez admina <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/wink.gif' class='bbc_emoticon' alt=';)' /> * W przypadku gdy admin przenosi żywego gracza do drugiej drużyny jest on zabijany. * Ten plugin sprawia, że przenoszony gracz pojawia sie na respie drużyny, do której został przeniesiony * (lub zostaje w miejscu w przypadku amx_teammenuspawn=0) * * Robiony na podstawie kody plmenu.sma * */ #include <amxmodx> #include <amxmisc> #include <fun> /** skip autoloading since it's optional */ #define AMXMODX_NOAUTOLOAD #include <cstrike> new g_menuPosition[33] new g_menuPlayers[33][32] new g_menuPlayersNum[33] new g_menuOption[33] #define MAX_CLCMDS 24 new g_coloredMenus new g_cstrike = 0 public plugin_natives() { set_module_filter("module_filter") set_native_filter("native_filter") } public plugin_init() { register_plugin("Teammenu nokill v4.0", "v4.0", "grankee") register_dictionary("common.txt") register_dictionary("admincmd.txt") register_dictionary("plmenu.txt") register_clcmd("amx_teammenu", "cmdTeamMenu", ADMIN_LEVEL_A, "- pokazuje menu druzyn") register_clcmd("teammenu", "cmdTeamMenu", ADMIN_LEVEL_A, "- pokazuje menu druzyn") register_cvar("amx_teammenuspawn", "1") register_menucmd(register_menuid("Team Menu"), 1023, "actionTeamMenu") g_coloredMenus = colored_menus() if (module_exists("cstrike")) g_cstrike = 1 } public module_filter(const module[]) { if (equali(module, "cstrike")) return PLUGIN_HANDLED return PLUGIN_CONTINUE } public native_filter(const name[], index, trap) { if (!trap) return PLUGIN_HANDLED return PLUGIN_CONTINUE } public actionTeamMenu(id, key) { //new teamname[32] switch (key) { case 7: { g_menuOption[id] = 1 - g_menuOption[id] displayTeamMenu(id, g_menuPosition[id]) } case 8: displayTeamMenu(id, ++g_menuPosition[id]) case 9: displayTeamMenu(id, --g_menuPosition[id]) default: { new player = g_menuPlayers[id][g_menuPosition[id] * 7 + key] new authid[32], authid2[32], name[32], name2[32] get_user_name(player, name2, 31) get_user_authid(id, authid, 31) get_user_authid(player, authid2, 31) get_user_name(id, name, 31) log_amx("Cmd: ^"%s<%d><%s><>^" transfer ^"%s<%d><%s><>^" (team ^"%s^")", name, get_user_userid(id), authid, name2, get_user_userid(player), authid2, g_menuOption[id] ? "TERRORIST" : "CT") if (get_cvar_num("amx_hideactivity")==1) { for (new a=1;a<=32;a++) { if (is_user_connected(a)) { if (get_user_flags(a) & ADMIN_RESERVATION) { client_print(a, print_chat, "%L", id, "ADMIN_TRANSF_2", name, name2, g_menuOption[id] ? "TERRORIST" : "CT") } } } } else { switch (get_cvar_num("amx_show_activity")) { case 2: client_print(0, print_chat, "%L", id, "ADMIN_TRANSF_2", name, name2, g_menuOption[id] ? "TERRORIST" : "CT") case 1: client_print(0, print_chat, "%L", id, "ADMIN_TRANSF_1", name2, g_menuOption[id] ? "TERRORIST" : "CT") } } if (g_cstrike) { if (is_user_alive(player)) { if(g_menuOption[id]==1) { cs_set_user_team(player, CS_TEAM_T) if (get_cvar_num("amx_teammenuspawn") > 0) spawn(player) } else { cs_set_user_team(player, CS_TEAM_CT) if (get_cvar_num("amx_teammenuspawn") > 0) spawn(player) } } else { if(g_menuOption[id]==1) { cs_set_user_team(player, CS_TEAM_T) cs_reset_user_model(player) } else { cs_set_user_team(player, CS_TEAM_CT) cs_reset_user_model(player) } } } /*else { new limit_setting = get_cvar_num("mp_limitteams") set_cvar_num("mp_limitteams", 0) engclient_cmd(player, "jointeam", g_menuOption[id] ? "1" : "2") engclient_cmd(player, "joinclass", "1") set_cvar_num("mp_limitteams", limit_setting) }*/ displayTeamMenu(id, g_menuPosition[id]) } } return PLUGIN_HANDLED } displayTeamMenu(id, pos) { if (pos < 0) return get_players(g_menuPlayers[id], g_menuPlayersNum[id]) new menuBody[512] new b = 0 new i, iteam new name[32], team[4] new start = pos * 7 new ja[32] get_user_name (id, ja, 31) if (start >= g_menuPlayersNum[id]) start = pos = g_menuPosition[id] = 0 new len = format(menuBody, 511, g_coloredMenus ? "y%LR%d/%d^nw^n" : "%L %d/%d^n^n", id, "TEAM_MENU", pos + 1, (g_menuPlayersNum[id] / 7 + ((g_menuPlayersNum[id] % 7) ? 1 : 0))) new end = start + 7 new keys = MENU_KEY_0|MENU_KEY_8 if (end > g_menuPlayersNum[id]) end = g_menuPlayersNum[id] for (new a = start; a < end; ++a) { i = g_menuPlayers[id][a] get_user_name(i, name, 31) if (g_cstrike) { iteam = _:cs_get_user_team(i) if (iteam == 1) { copy(team, 3, "TE") } else if (iteam == 2) { copy(team, 3, "CT") } else { get_user_team(i, team, 3) } } else { iteam = get_user_team(i, team, 3) } if ((iteam == (g_menuOption[id] ? 1 : 2)) || (access(i, ADMIN_IMMUNITY)&&(i!=id))) { ++b if (g_coloredMenus) len += format(menuBody[len], 511-len, "d%d. %sR%s^nw", b, name, team) else len += format(menuBody[len], 511-len, "#. %s %s^n", name, team) } else { keys |= (1<<<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' /> if (is_user_admin(i)) len += format(menuBody[len], 511-len, g_coloredMenus ? "%d. %s r*yR%s^nw" : "%d. %s * %s^n", ++b, name, team) else len += format(menuBody[len], 511-len, g_coloredMenus ? "%d. %syR%s^nw" : "%d. %s %s^n", ++b, name, team) } } len += format(menuBody[len], 511-len, "^n8. %L^n", id, "TRANSF_TO", g_menuOption[id] ? "TERRORIST" : "CT") if (end != g_menuPlayersNum[id]) { format(menuBody[len], 511-len, "^n9. %L...^n0. %L", id, "MORE", id, pos ? "BACK" : "EXIT") keys |= MENU_KEY_9 } else format(menuBody[len], 511-len, "^n0. %L", id, pos ? "BACK" : "EXIT") show_menu(id, keys, menuBody, -1, "Team Menu") } public cmdTeamMenu(id, level, cid) { if (!cmd_access(id, level, cid, 1)) return PLUGIN_HANDLED g_menuOption[id] = 0 displayTeamMenu(id, g_menuPosition[id] = 0) return PLUGIN_HANDLED }
Magisterr.
09.08.2008
Znowu mi pomagasz, ale nie tak jak ja potrzebuje
Afk CT :
Plugin ma polegac na tym ze gdy anty terrorysta afkuje to po 60 sec. (tego afkowania) zabija go. I tyle teori
ps. Plugin pod serwer HnS
Afk CT :
Plugin ma polegac na tym ze gdy anty terrorysta afkuje to po 60 sec. (tego afkowania) zabija go. I tyle teori
ps. Plugin pod serwer HnS
grankee
09.08.2008
Czy da się przerzucić gracza do 2 teamu (np. z CT do TT), ale tak by cały czas żył? - Jeśli tak to proszę o pomoc
Plugin ma polegac na tym ze gdy anty terrorysta afkuje to po 60 sec. (tego afkowania) zabija go. I tyle teori
Ktoś tu się gubi w zeznaniach
Miczu
09.08.2008
Chyba sie da, ja bym to zrobil najoptymalniej przez mienienie teamu przez engine (to nie zabije gracza) potem tylko zrobic update modelu gracza (bo chcemy by wygladal jak nasz np CT). I ostatecznie przeniesc go na spawn gracza.
Tak to by wygladalo teoretycznie i naj bardziej optymalnie.
Tak to by wygladalo teoretycznie i naj bardziej optymalnie.
grankee
09.08.2008
Z tego co sprawdzałem model się zmienia, odpowiada za to chyba cs_reset_user_model prawda? ;-)
Magisterr.
09.08.2008
Ktoś tu się gubi w zeznaniach
Gdzie się gubi ... Poprostu troche ułatwiłem robotę ... Nie trzeba długich pluginów, tylko krótki
Tak jak jest Bomb Afk - tylko zamiast Terrorysty który wyrzuca pake, Jest CT który Ginie ;]
grankee
09.08.2008
Gdzie się gubi
jest ogromna różnica między
aCzy da się przerzucić gracza do 2 teamu (np. z CT do TT), ale tak by cały czas żył? - Jeśli tak to proszę o pomoc
Plugin ma polegac na tym ze gdy anty terrorysta afkuje to po 60 sec. (tego afkowania) zabija go. I tyle teori
Magisterr.
09.08.2008
dobra, masz rację ... Ale teraz obróce sprawe : dałem 2 wątki - pomoże jak kto umie, każdy inaczej
Ale już przeszłość . Dzięki za pomoc (+ pomógł)
//Close
Ale już przeszłość . Dzięki za pomoc (+ pomógł)
//Close