Naujoj sistema ir chooseteam
-
- Gana aktyvus vartotojas
- Posts: 445
- Joined: 2011 Aug 27 09:29
Naujoj sistema ir chooseteam
Naudoju naująją menu sistemą, meniu yra užsatytas ant chooseteam ir assigeteam , galit parašyt kodą kad pasirinkus tarkim meniu
1.Perkelia pas ct
2.Perkelias pas t
3.Pas spectator ?
nes dabar niekaip negaliu keist komandos
1.Perkelia pas ct
2.Perkelias pas t
3.Pas spectator ?
nes dabar niekaip negaliu keist komandos
Re: Naujoj sistema ir chooseteam
Plugin
- Attachments
-
Team_Menu.amxx
- AMXX
- (3.05 KiB) Downloaded 673 times
-
Team_Menu.sma
- SMA
- (1.21 KiB) Downloaded 696 times
-
- Gana aktyvus vartotojas
- Posts: 445
- Joined: 2011 Aug 27 09:29
Re: Naujoj sistema ir chooseteam
Ačiū, bet va, aš bšk. persidariau, kad ir mirusiam eitų persikelti į kitą komandą, o kaip padaryt, kad tą komandą leistų keisti tik 1 kartą per round?
Kažką su šituo daryt?
Code: Select all
#include <amxmodx>#include <cstrike> public plugin_init(){ register_plugin("Team Menu", "1.0", "Lightas") register_clcmd("say /team", "Main_Team_Menu") register_clcmd("say team", "Main_Team_Menu")} public Main_Team_Menu(id){ new menu = menu_create("\rChoose Team", "Team_Menu") menu_additem(menu, "\yTerrorist", "1", 0) menu_additem(menu, "\yCounter-Terrorist", "2", 0) menu_additem(menu, "\ySpectator", "3", 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0)}public Menu(id, menu, item){ if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1: { if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_T) } else { cs_set_user_team(id, CS_TEAM_T) } } case 2: { if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_CT) } else { cs_set_user_team(id, CS_TEAM_CT) } case 3: { if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_SPECTATOR) } else { cs_set_user_team(id, CS_TEAM_SPECTATOR) } } menu_destroy(menu) return PLUGIN_HANDLED}
Kažką su šituo daryt?
Code: Select all
new bool:ChooseTeam_Used[33]; public Event_HLTV_New_Round(id) { arrayset(ChooseTeam_Used, false, sizeof(ChooseTeam_Used)); } public client_authorized(id){ ChooseTeam_Used[id] = false;} //........// if(ChooseTeam_Used[id] == true) { client_print(id, print_center, "Leidziama keisti tik 1 komanda."); return PLUGIN_HANDLED; } //.....// ChooseTeam_Used[id] = true;
Re: Naujoj sistema ir chooseteam
Netikrinau, bet turėtų veikti.
- Attachments
-
Team_Menu.sma
- SMA
- (2.38 KiB) Downloaded 679 times
-
- Gana aktyvus vartotojas
- Posts: 445
- Joined: 2011 Aug 27 09:29
Re: Naujoj sistema ir chooseteam
Neveikia, vistiek galima keisti daug kartų.
-
- Gana aktyvus vartotojas
- Posts: 421
- Joined: 2011 Aug 13 11:12
- Skype: pksoldierlt
- Location: ATOSTOGOSE
Re: Naujoj sistema ir chooseteam
Tai kai pasirenka komandą uždėk kintamajį pasirinko[id] = 1
Code: Select all
switch(key){case 1:{ if(pasirinko[id] != 1) { cs_set_user_team(id, CS_TEAM_T) pasirinko[id] = 1 }}case 2:{ if(pasirinko[id] != 1) { cs_set_user_team(id, CS_TEAM_CT) pasirinko[id] = 1 }}case 3:{ if(pasirinko[id] != 1) { cs_set_user_team(id, CS_TEAM_SPECTATOR) pasirinko[id] = 1 }}}
Code: Select all
public logevent_round_start(){ get_players( players, num ) for( new i = 1;i < num; i++) { pasirinko[i] = 0 }}
ISVYKES
-
- Gana aktyvus vartotojas
- Posts: 445
- Joined: 2011 Aug 27 09:29
Re: Naujoj sistema ir chooseteam
Pas mane yra padaryta su else tuomet tikrinimas netinka, nes tik pirmam if tikrins, o antram ne.
čia pilnas kodas
čia pilnas kodas
Code: Select all
#include <amxmodx>#include <cstrike> new bool: Changed[33] new ChangeTeam[33] public plugin_init(){ register_plugin("Team Menu", "1.0", "Lightas") register_clcmd("say /team", "Main_Team_Menu") register_clcmd("say team", "Main_Team_Menu")} public client_disconnect(id){ ChangeTeam[id] = 0 Changed[id] = false} public Main_Team_Menu(id){ new menu = menu_create("\rChoose Team", "Team_Menu") menu_additem(menu, "\yTerrorist", "1", 0) menu_additem(menu, "\yCounter-Terrorist", "2", 0) menu_additem(menu, "\ySpectator", "3", 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0)}public Menu(id, menu, item){ if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1: { if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_T) Changed[id] = true ChangeTeam[id]++ } else { cs_set_user_team(id, CS_TEAM_T) Changed[id] = true ChangeTeam[id]++ } if (ChangeTeam[id] > 1) { client_print(id, print_center, "Negali keisti komandos du kartus!") return PLUGIN_HANDLED } else if (Changed[id]) { ChangeTeam[id] = 0 } } case 2: { if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_CT) Changed[id] = true ChangeTeam[id]++ } else { cs_set_user_team(id, CS_TEAM_CT) Changed[id] = true ChangeTeam[id]++ } if (ChangeTeam[id] > 1) { client_print(id, print_center, "Negali keisti komandos du kartus!") return PLUGIN_HANDLED } else if (Changed[id]) { ChangeTeam[id] = 0 } } case 3: { if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_SPECTATOR) Changed[id] = true ChangeTeam[id]++ } else { cs_set_user_team(id, CS_TEAM_SPECTATOR) Changed[id] = true ChangeTeam[id]++ } if (ChangeTeam[id] > 1) { client_print(id, print_center, "Negali keisti komandos du kartus!") return PLUGIN_HANDLED } else if (Changed[id]) { ChangeTeam[id] = 0 } } } menu_destroy(menu) return PLUGIN_HANDLED}
-
- Gana aktyvus vartotojas
- Posts: 421
- Joined: 2011 Aug 13 11:12
- Skype: pksoldierlt
- Location: ATOSTOGOSE
Re: Naujoj sistema ir chooseteam
Tai tu pagal mane pasidaryk....
EDIT:
EDIT:
Code: Select all
#include <amxmodx>#include <cstrike> new Changed[33] public plugin_init(){ register_plugin("Team Menu", "1.0", "Lightas") register_clcmd("say /team", "Main_Team_Menu") register_clcmd("say team", "Main_Team_Menu") register_logevent("logevent_round_start", 2, "1=Round_Start") } public client_disconnect(id){ Changed[id] = 0} public Main_Team_Menu(id){ new menu = menu_create("\rChoose Team", "Team_Menu") menu_additem(menu, "\yTerrorist", "1", 0) menu_additem(menu, "\yCounter-Terrorist", "2", 0) menu_additem(menu, "\ySpectator", "3", 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0)}public Menu(id, menu, item){ if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1: { if (Changed[id] == 1) { client_print(id, print_center, "Negali keisti komandos du kartus!") return PLUGIN_HANDLED } if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_T) Changed[id] = 1 } else { cs_set_user_team(id, CS_TEAM_T) Changed[id] = 1 } } case 2: { if (Changed[id] == 1) { client_print(id, print_center, "Negali keisti komandos du kartus!") return PLUGIN_HANDLED } if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, CS_TEAM_CT) Changed[id] = 1 } else { cs_set_user_team(id, CS_TEAM_CT) Changed[id] = 1 } } case 3: { if (Changed[id] == 1) { client_print(id, print_center, "Negali keisti komandos du kartus!") return PLUGIN_HANDLED } if (is_user_alive(id)) { user_silentkill(id) cs_set_user_team(id, SPECTATOR) Changed[id] = 1 } else { cs_set_user_team(id, CS_TEAM_SPECTATOR) Changed[id] = 1 } } } menu_destroy(menu) return PLUGIN_HANDLED} public logevent_round_start(){ new players[32], num get_players( players, num ) for( new i = 1;i < num; i++) { Changed[i] = 0 }}
ISVYKES
-
- Gana aktyvus vartotojas
- Posts: 445
- Joined: 2011 Aug 27 09:29
Re: Naujoj sistema ir chooseteam
Dabar leidžia vieną kartą pakeisti komandą, o daugiau išvis neleidžia, man reikia kaip default, pvz.:
Aš būnu T spaudžiu, kad perkeltų į CT tada mane nuždo ir kol būnu negyvas neleidžia keisti komandos kol į ją nepapuoliau arba tui praeiti 1 round.
Aš būnu T spaudžiu, kad perkeltų į CT tada mane nuždo ir kol būnu negyvas neleidžia keisti komandos kol į ją nepapuoliau arba tui praeiti 1 round.
Re: Naujoj sistema ir chooseteam
Taigi kam jūs kuriat masyvą?
Kuriat vieną kintamąjį ir pagal hleV pamoką tikrinate su bitų operacijomis.

Kuriat vieną kintamąjį ir pagal hleV pamoką tikrinate su bitų operacijomis.

Who is online
Users browsing this forum: Amazon [Bot] and 8 guests