def _groupsmain_select(userid,choice,popupid): es.dbgmsg(1,'*****_groupsmain_select') global groupslist if choice != 3: groups = db.query("SELECT GroupName FROM Groups WHERE GroupName!='UnidentifiedPlayers' and GroupName!='IdentifiedPlayers';") if groups: if choice == 1: groupslist = popuplib.easymenu('groupslist', None, _groupusers_list) for group in groups: es.dbgmsg(1,'*****group=%s' %group) group = utfcode(group[0]) groupslist.addoption(group,group) groupslist.settitle(lang['select for users']) if choice == 2: groupslist = popuplib.easymenu('groupslist', None, _groupcaps_list) for group in groups: es.dbgmsg(1,'*****group=%s' %group) group = utfcode(group[0]) groupslist.addoption(group,group) groupslist.settitle(lang['select for caps']) if choice == 4: groupslist = popuplib.easymenu('groupslist', None, _remove_group) for group in groups: es.dbgmsg(1,'*****group=%s' %group) group = utfcode(group[0]) groupslist.addoption(group,group) groupslist.settitle(lang['select remove group']) groupslist.send(userid) else: es.tell(userid, '#multi', prefix + lang('no groups')) if choice == 3: _newgroup_handle(userid)
def load(): #Load Function for Player Settings for XA. xapunishmentmenu = popuplib.easymenu("xapunishmentmenu", "_tempcore", _select_punishment) xapunishmentmenu.settitle(xalanguage["choose punishment"]) xapunishments.addMenu("xapunishmentmenu", xalanguage["punish players"], "xapunishmentmenu", "punish_player", "ADMIN") xapunishtargetmenu = popuplib.easymenu("xapunishtargetmenu", "_tempcore", _select_target) xapunishtargetmenu.settitle(xalanguage["choose target"]) xapunishtargetmenu.addoption("player", xalanguage["select a player"]) xapunishtargetmenu.addoption("team3", xalanguage["counter terrorists"]) xapunishtargetmenu.addoption("team2", xalanguage["terrorists"]) xapunishtargetmenu.addoption("all", xalanguage["all players"]) xapunishtargetmenu.submenu(10, xapunishmentmenu) xapunishsuremenu = popuplib.easymenu("xapunishsuremenu", "_tempcore", _select_sure) xapunishsuremenu.settitle(xalanguage["are you sure"]) xapunishsuremenu.addoption(True, xalanguage["yes"]) xapunishsuremenu.addoption(False, xalanguage["no"]) xapunishsuremenu.submenu(10, xapunishtargetmenu) xapunishments.registerPunishment("burn", xalanguage["burn"], _punishment_burn, 1) xapunishments.registerPunishment("extinguish", xalanguage["extinguish"], _punishment_extinguish, 1) xapunishments.registerPunishment("slap", xalanguage["slap"], _punishment_slap, 1) xapunishments.registerPunishment("slay", xalanguage["slay"], _punishment_slay, 1)
def _user_groups(userid, choice, popupid): es.dbgmsg(1, '*****_user_groups') guser = utfcode(es.ServerVar('_puser')) if int(choice) == 1: groups = db.query( "SELECT GroupName FROM vwPlayersGroups WHERE Name='%s'" % guser) if groups: usergroups = popuplib.easymenu('usergroups', None, _groupuser_remove) for group in groups: usergroups.addoption((guser, group[0]), group[0]) usergroups.settitle(lang('drop user from group')) else: es.tell( userid, '#multi', prefix + '#lightgreen' + guser + '#default' + lang('not in groups')) elif int(choice) == 2: es.dbgmsg(1, '*****add user to group') groups = db.query( "SELECT GroupName FROM Groups WHERE GId NOT IN (SELECT GId FROM PlayersGroups WHERE UId=(SELECT Uid FROM Players WHERE Name='%s') AND (SELECT GId FROM Groups WHERE GId IN (SELECT GId FROM PlayersGroups))) AND GroupName!='UnidentifiedPlayers' AND GroupName!='IdentifiedPlayers'" % guser) if groups: usergroups = popuplib.easymenu('usergroups', None, _groupuser_add) for group in groups: usergroups.addoption((guser, group[0]), group[0]) usergroups.settitle(lang('add user to group')) else: es.tell( userid, '#multi', prefix + '#lightgreen' + guser + '#default' + lang('in all groups')) if groups: usergroups.send(userid)
def load(): xs.registerCommand(scfg.command_weaponstats_weaponstats,'weaponstats',cmd_weaponstats,True,True) xs.registerCommand(scfg.command_weaponstats_myweaponstats,'weaponstats',cmd_myweaponstats,True,True) pplchck('xs_ws_list') p = popuplib.easymenu('xs_ws_list','_popup_choice',weaponstats) pp = popuplib.easymenu('xs_ws_mylist','_popup_choice',myweaponstats) weapons.execute("SELECT weapon FROM xs_weapons ORDER BY weapon ASC") for weapon in weapons.fetchall(): p.addoption(weapon,weapon) pp.addoption(weapon,weapon)
def _capmain_select(userid, choice, popupid): es.dbgmsg(1, '*****_capmain_select') global capgroups capname = es.ServerVar('_pcap') if int(choice) == 1: groups = db.query( "SELECT GroupName FROM Groups WHERE GId IN (SELECT GId FROM GroupCaps WHERE GroupCaps.CId=(SELECT CId FROM Caps WHERE CName='%s'))" % capname) if groups: action = 'go' capgroups = popuplib.easymenu('capgroups', None, _capgroup_set) for group in groups: capgroups.addoption((action, capname, group[0]), utfcode(group[0])) capgroups.settitle(lang('cap groups')) else: es.tell( userid, '#multi', prefix + '#lightgreen' + capname + '#default' + lang('not in groups')) capmain.send(userid) elif int(choice) == 2: groups = db.query( "SELECT GroupName FROM Groups WHERE GId NOT IN (SELECT GId FROM GroupCaps WHERE GroupCaps.CId=(SELECT CId FROM Caps WHERE CName='%s'))" % capname) if groups: action = 'give' capgroups = popuplib.easymenu('capgroups', None, _capgroup_set) for group in groups: capgroups.addoption((action, capname, group[0]), utfcode(group[0])) capgroups.settitle(lang('add cap to group')) else: es.tell( userid, '#multi', prefix + '#lightgreen' + capname + '#default' + lang('in all groups')) elif int(choice) == 3: groups = db.query( "SELECT GroupName FROM Groups WHERE GId IN (SELECT GId FROM GroupCaps WHERE GroupCaps.CId=(SELECT CId FROM Caps WHERE CName='%s'))" % capname) if groups: action = 'revoke' capgroups = popuplib.easymenu('capgroups', None, _capgroup_set) for group in groups: capgroups.addoption((action, capname, group[0]), utfcode(group[0])) capgroups.settitle(lang('remove cap from group')) else: es.tell( userid, '#multi', prefix + '#lightgreen' + capname + '#default' + lang('not in groups')) es.dbgmsg(1, '*****groups=%s' % groups) if groups: capgroups.send(userid)
def xamodulesmenu_handler(userid, choice, popupid): if choice == 'load_module': if userid in gMenus['load']: gMenus['load'][userid].delete() for module in xa.modules(): module = xa.find(module) if module.name in gModules: gModules.remove(module.name) gMenus['load'][userid] = popuplib.easymenu('xaloadmodule_%s' % userid, None, xaloadmodule_handler) gMenus['load'][userid].settitle(xalanguage['load module']) for module in gModules: gMenus['load'][userid].addoption( module, xamodules.language.createLanguageString(module)) gMenus['load'][userid].submenu(10, popupid) gMenus['load'][userid].send(userid) elif choice == 'unload_module': if userid in gMenus['unload']: gMenus['unload'][userid].delete() gMenus['unload'][userid] = popuplib.easymenu( 'xaunloadmodule_%s' % userid, None, xaunloadmodule_handler) gMenus['unload'][userid].settitle(xalanguage['unload module']) for module in xa.modules(): try: gMenus['unload'][userid].addoption( module, xamodules.language.createLanguageString( xa.find(module).getAddonInfo().name)) except: gMenus['unload'][userid].addoption( module, xamodules.language.createLanguageString(module)) gMenus['unload'][userid].submenu(10, popupid) gMenus['unload'][userid].send(userid) elif choice == 'reload_module': if userid in gMenus['reload']: gMenus['reload'][userid].delete() gMenus['reload'][userid] = popuplib.easymenu( 'xareloadmodule_%s' % userid, None, xareloadmodule_handler) gMenus['reload'][userid].settitle(xalanguage['reload module']) for module in xa.modules(): try: gMenus['reload'][userid].addoption( module, xamodules.language.createLanguageString( xa.find(module).getAddonInfo().name)) except: gMenus['reload'][userid].addoption( module, xamodules.language.createLanguageString(module)) gMenus['reload'][userid].submenu(10, popupid) gMenus['reload'][userid].send(userid)
def dog_tags(userid): steamid = es.getplayersteamid(userid) rank = getPos(steamid) points = getPoints(steamid) dog_t = popuplib.easymenu(str(steamid) + 'Dog_tags', None, dog_tags_select) dog_t.settitle("Dog Tags") dog_t.setdescription('Current: None') dog_t.c_beginsep = " " dog_t.c_pagesep = " " for pos in tags: if not pos.startswith('[U:'): if str(tags[pos]['type']) == "ranked": if points > 7000: if int(rank) >= int(tags[pos]['min_rank']): dog_t.addoption(pos, pos) else: dog_t.addoption(pos, pos, state=False) else: dog_t.addoption(pos, pos, state=False) elif tags[pos]["type"] == "points": if points >= int(tags[pos]['min_points']): dog_t.addoption(pos, pos) else: dog_t.addoption(pos, pos, state=False) dog_t.send(userid)
def cmd_myweaponstats(userid,args): steamid = es.getplayersteamid(userid) pplchck('xs_ws_my%s' % userid) weapons.execute("SELECT weapon FROM xs_weapons WHERE weapon!='world'") weaponnames = weapons.fetchall() # fetch top killer weapon kills = map(lambda x: (players.query(steamid,'kill_%s' % x),x),weaponnames) # get the kills and form a list of tuples: (kills,weaponname) kills.sort(reverse=True) # sort the list, reverse=True because we want the MOST kills killeramount,killername = kills[0] # get the first entry of the list # fetch top death weapon deaths = map(lambda x: (players.query(steamid,'death_%s' % x),x),weaponnames) # get the deaths and form a list of tuples: (deaths,weaponname) deaths.sort(reverse=True) # sort the list, reverse=True because we want the MOST deaths deathamount,deathname = deaths[0] # get the first entry of the list # fetch top damage weapon damage = map(lambda x: (players.query(steamid,'damage_%s' % x),x),weaponnames) # get the damage dealt and form a list of tuples: (damage,weaponname) damage.sort(reverse=True) # again reverse for most damage dealt damageamount,damagename = damage[0] if EE: # if EE is available, also check for most bought bought = map(lambda x: (players.query(steamid,'bought_%s' % x),x),weaponnames) bought.sort(reverse=True) boughtamount,boughtname = bought[0] p = popuplib.easymenu('xs_ws_my%s' % userid,'_popup_choice',myweaponchoice) p.settitle('eXtended Stats - Your Weaponstats') p.addoption(killername,'Your most lethal weapon: %s with %s kills' % (killername,killeramount)) p.addoption(damagename,'Your most damaging weapon: %s with %.1f damage done' % (damagename,damageamount)) p.addoption(deathname,'Your most feared weapon: %s, killed you %s times' % (deathname,deathamount)) if EE: p.addoption(boughtname,'Your favorite weapon: %s, bought %s times' % (boughtname,boughtamount)) p.addoption(1,'Full list of weapons') p.send(userid)
def genPlayerlistPop(popupname, callback): checkPop(popupname) p = popuplib.easymenu(popupname, None, callback) p.settitle('Select Player') for i in es.getUseridList(): p.addoption(i, es.getplayername(i)) return p
def voteBan(): """ Executed when a player types 'voteban' in either console or chat. Build a popup of all the valid players they can ban. """ userid = str(es.getcmduserid()) if es.getplayercount() >= minBanPlayers: """ There are enough players to run the command """ myPopupInstance = popuplib.easymenu("xa_voteban_%s" % userid, "_popup_choice", voteBanCheck) myPopupInstance.settitle("Select a player to ban") for player in es.getUseridList(): """ Loop through all the players in the server """ if str(player) != userid: """ The current iteration is not equal to the user who executed the command """ myPopupInstance.addoption( player, es.getplayername(player), bool(player not in userids[userid]["bans"])) myPopupInstance.send(userid) else: """ There are not enough players, notify the user """ es.tell( userid, '#green', xalanguage("not enough players", {}, playerlib.getPlayer(userid).get("lang")))
def sendFirstPlayer(userid, choice, popupid): if 3 < choice < 10: xateleportmenu.send(userid) if choice == 1: steamid = playerlib.uniqueid(userid, False) if steamid not in locations: locations[steamid] = {} locations[steamid][str(es.ServerVar( 'eventscripts_currentmap'))] = es.getplayerlocation(userid) lang = playerlib.getPlayer(userid).get("lang") saveDatabase() es.tell(userid, "#green", xalanguage("location saved", {}, lang)) xateleport.logging.log( "has updated their saved teleport location for map %s" % str(es.ServerVar('eventscripts_currentmap')), userid, True) elif 4 > choice > 1: lang = playerlib.getPlayer(userid).get("lang") popupMenu = popuplib.easymenu("xa_teleport_players", "_popup_choice", sendSecondMenu) popupMenu.settitle(xalanguage["player select"]) for player in filter( lambda x: not es.getplayerprop(x, "CBasePlayer.pl.deadflag"), es.getUseridList()): popupMenu.addoption([choice, player], es.getplayername(player), lang=lang) popupMenu.send(userid)
def sendglobal(self, pUsers, prio=False, locked=False): try: # try if pUsers is just a single userid userid = int(pUsers) pUsers = [userid] except TypeError: pass if locked: optionstate = 0 else: optionstate = 1 for userid in pUsers: player = playerlib.getPlayer(userid) if player: menuname = '_setting_%s_user%s_global' % (self.name, userid) helpline = self.languages('setting '+self.keyvalues['config']['type']+' help', (), player.get('lang')) if not popuplib.active(userid)['name'] == menuname and not popuplib.isqueued(menuname, userid) or prio: self.popup['global'] = popuplib.easymenu(menuname, '_setting_choice', settinglib._submitGlobal) self.popup['global'].settingid = self.name self.popup['global'].c_titleformat = self.keyvalues['config']['descr'] + (' '*(30-len(self.keyvalues['config']['descr']))) + ' (%p/%t)\n' + helpline for option in list(self.keyvalues['options'].keys()): display = self.keyvalues['options'][option]['display'] userdata = self.keyvalues['options'] if option in userdata: if userdata[option]['globstate']: active = self.languages('setting toggle on', (), player.get('lang')) self.popup['global'].addoption(option, display + ' ('+active+')', optionstate) continue active = self.languages('setting toggle off', (), player.get('lang')) self.popup['global'].addoption(option, display + ' ('+active+')', optionstate) if self.backmenuvar: self.popup['global'].submenu(10, self.backmenuvar) self.popup['global'].send(userid, prio)
def voteStart(): # Create a new vote global ggVote ggVote = popuplib.easymenu('gg_map_vote', None, voteSubmit) msg('#human', 'PlaceYourVotes', {}, True) # Set question and add some options ggVote.settitle('Please vote for the next map:') # Add maps as options for map_name in getMapList(): ggVote.addoption(map_name, map_name.lower()) mapVoteOptions[map_name] = [] # Users eligable to vote voteUserids.extend(getUseridList('#human')) # Only send to dead players ? if int(gg_map_vote_after_death): voteSentUserids.extend(getUseridList('#human, #dead')) ggVote.send(voteSentUserids) # Send it to everyone else: ggVote.send(voteUserids) # Start the repeat voteRepeat = repeat.create('gg_map_vote', voteCountDown) voteRepeat.start(1, int(gg_map_vote_time)) # Fire event GG_Vote().fire()
def load(): es.dbgmsg(0, "[SH] Loading.....") es.doblock('corelib/noisy_on') config.execute() # Executes the .cfg to register changes global popup_language popup_language = es.ServerVar('popup_language') global rounds_played rounds_played = 0 es.server.queuecmd('es_xload superhero/heroes') es.server.queuecmd('es_xload superhero/admins') # Create a group global heroes heroes = [] ### Get the Strings the popup cmdlist_popup = langlib.Strings(es.getAddonPath("superhero") + "/languages/cmdlist_popup.ini") # Create popups global commandlist commandlist = popuplib.easymenu('commandlist','choice',commandlist_selection) commandlist.settitle('All Commands') commandlist.addoption('help',cmdlist_popup('cmd_help',lang=str(popup_language))) # Done commandlist.addoption('herolist',cmdlist_popup('cmd_herolist',lang=str(popup_language))) # Done commandlist.addoption('playerinfo',cmdlist_popup('cmd_playerinfo',lang=str(popup_language))) commandlist.addoption('myheroes',cmdlist_popup('cmd_myheroes',lang=str(popup_language))) # Done commandlist.addoption('clearpowers',cmdlist_popup('cmd_clearpowers',lang=str(popup_language))) # Done commandlist.addoption('showmenu',cmdlist_popup('cmd_showmenu',lang=str(popup_language))) # Done commandlist.addoption('showxp',cmdlist_popup('cmd_showxp',lang=str(popup_language))) # Done commandlist.addoption(None,cmdlist_popup('cmd_drop',lang=str(popup_language))) # Done commandlist.addoption(None,cmdlist_popup('cmd_buyxp',lang=str(popup_language))) commandlist.addoption(None,cmdlist_popup('cmd_binding',lang=str(popup_language))) helpbox_popup = langlib.Strings(es.getAddonPath("superhero") + "/languages/helpbox_popup.ini") global helpbox helpbox = popuplib.create('helpbox') helpbox.addline(helpbox_popup('helpbox_1',lang=str(popup_language))) helpbox.addline(helpbox_popup('helpbox_2',lang=str(popup_language))) helpbox.addline('\n\n') helpbox.addline(helpbox_popup('helpbox_3',lang=str(popup_language))) helpbox.addline(helpbox_popup('helpbox_4',lang=str(popup_language))) helpbox.addline(helpbox_popup('helpbox_5',lang=str(popup_language))) helpbox.addline(helpbox_popup('helpbox_6',lang=str(popup_language))) # Saycommands register etc. cmdlib.registerSayCommand('/commandlist', 'superhero/commandlist', 'COMMANDLIST') cmdlib.registerSayCommand('/shmenu', 'superhero/commandlist', 'SHMENU') cmdlib.registerSayCommand('/sh', 'superhero/commandlist', 'SH') cmdlib.registerSayCommand('/help', superherohelp, 'HELP') cmdlib.registerSayCommand('/showmenu', showmenu, 'SHOWMENU') cmdlib.registerSayCommand('/drop', drop, 'DROP') cmdlib.registerSayCommand('/showxp', showxp, 'SHOWXP') cmdlib.registerSayCommand('/myheroes', myheroes, 'MYHEROES') cmdlib.registerSayCommand('hashero', 'superhero/hashero', 'HASHERO') cmdlib.registerSayCommand('/buyxp', buyxp, 'BUYXP') cmdlib.registerSayCommand('/herolist', herolist, 'HEROLIST') cmdlib.registerSayCommand('/clearpowers', clearpowers, 'CLEARPOWERS') cmdlib.registerSayCommand('/playerinfo', playerinfo, 'PLAYERINFO') cmdlib.registerClientCommand('+power1', power, "+power1") cmdlib.registerClientCommand('-power1', poweroff, "-power1") cmdlib.registerClientCommand('+power2', power, "+power2") cmdlib.registerClientCommand('-power2', poweroff, "-power2") cmdlib.registerClientCommand('+power3', power, "+power3") cmdlib.registerClientCommand('-power3', poweroff, "-power3") es.dbgmsg(0, "[SH] Loading Done.")
def nominate_cmd(userid, args): # The nominations list is full if len(nominations) >= int(gg_map_vote_size): msg(userid, "NominationsFull", {"size": int(gg_map_vote_size)}, True) return nomVote = popuplib.easymenu("gg_map_vote_nominate", None, nominateSubmit) # Set title and add some options nomVote.settitle("Nominate map for next vote:") # Add maps as options mapList = sorted(getMapList(allMaps=True, excludeNominations=True)) if not mapList: msg(userid, "VoteListEmpty", {}, True) return for map_name in mapList: if map_name in list_lastMaps or map_name in nominations: continue nomVote.addoption(map_name, map_name.lower()) # Send the menu nomVote.send(userid)
def load(): #Load Function for Player Settings for XA. xasettingmenu = popuplib.easymenu("xasettingmenu", "_tempcore", _select_setting) xasettingmenu.settitle(xalanguage["player settings"]) xasettings.addMenu("xasettingmenu", xalanguage["player settings"], "xasettingmenu", "change_playersetting", "UNRESTRICTED") xacommand = xasettings.addCommand("settings", _send_menu, "change_playersetting", "UNRESTRICTED") xacommand.register(["console","say"])
def showmenu(userid, args): userid = str(userid) steamid = es.getplayersteamid(userid) if steamid == 'BOT': return steamid = es.getplayersteamid(userid) global menuname menuname = "showmenu"+"_"+userid menuname = popuplib.easymenu(menuname, 'choice', showmenu_selection) showmenu_popup = langlib.Strings(es.getAddonPath("superhero") + "/languages/showmenu_popup.ini") global popup_language menuname.settitle(showmenu_popup('showmenu_title',lang=str(popup_language))) pid, plevel, punspent, pheroes, ppower1, ppower2, ppower3 = cursor.execute('SELECT id, level, unspent, heroes, power1, power2, power3 FROM users WHERE id=?', (steamid,)).fetchone() tokens = {} tokens['unspent'] = punspent menuname.setdescription(showmenu_popup('showmenu_desc',tokens,lang=str(popup_language))) herolist = str(es.ServerVar('herolist')).split(',') for hero in herolist: userheroes = pheroes.split(',') if not hero in userheroes: text = langlib.Strings(es.getAddonPath("superhero/heroes/"+hero+ "/strings.ini")) if int(text("req_level")) <= int(plevel): string = str(text("heroname"))+' - '+str(text("description",lang=str(popup_language))) menuname.addoption(hero,string) menuname = "showmenu"+"_"+userid #close_popups(userid) popuplib.send(menuname,userid)
def load(): ''' Load Function for Bot Management in XA Called automatically when loading this script ''' global xabmmenu xabmmenu = popuplib.easymenu("xabotmanagementmenu", None, _select_action) xabmmenu.settitle(xalanguage["bot management"]) xabotmanagement.addMenu("xabotmanagementmenu", xalanguage["manage bots"], "xabotmanagementmenu", "manage_bots", "ADMIN") xabmmenu.prepuser = _menu_update_display registerDisplay('quota', _display_quota) registerDisplay('difficulty', _display_difficulty) registerAction("add_auto", xalanguage["add bot"], _action_add_auto) registerAction("add_2", xalanguage["add 2"], _action_add_2) registerAction("add_3", xalanguage["add 3"], _action_add_3) registerAction("remove", xalanguage["remove bot"], _action_remove) registerAction("kick_all", xalanguage["kick all"], _action_kick_all) registerAction("kill_all", xalanguage["kill all"], _action_kill_all) registerAction("difficulty-", xalanguage["easier bots"], _action_difficulty_down) registerAction("difficulty+", xalanguage["harder bots"], _action_difficulty_up)
def sendSecondMenu(userid, choice, popupid): oldChoice, target = choice if oldChoice == 2: steamid = playerlib.uniqueid(userid, False) lang = playerlib.getPlayer(userid).get("lang") if steamid not in locations: es.tell(userid, "#green", xalanguage("no locations", {}, lang) ) return currentMap = str(es.ServerVar('eventscripts_currentmap')) if currentMap not in locations[steamid]: es.tell(userid, "#green", xalanguage("no map locations", {}, lang) ) return if es.getplayerprop(target, 'CBasePlayer.pl.deadflag'): es.tell(userid, xalanguage('one player died', {}, playerlib.getPlayer(userid).get("lang") ) ) return x, y, z = locations[steamid][currentMap] es.server.queuecmd('es_xsetpos %s %s %s %s' % (target, x, y, z + 10) ) if not int(xa_anonymous): args = {} args["player"] = es.getplayername(target) args["admin"] = es.getplayername(userid) for player in playerlib.getPlayerList("#all"): es.tell(int(player), xalanguage("teleport to location", args, player.get("lang") ) ) xateleport.logging.log("has teleported user %s [%s] to their saved location" % (es.getplayername(target), es.getplayersteamid(target)), userid) else: lang = playerlib.getPlayer(userid).get("lang") popupMenu = popuplib.easymenu("xa_teleport_players", "_popup_choice", teleportPlayerToPlayer) popupMenu.settitle(xalanguage["player select to send to"]) for player in filter(lambda x: not es.getplayerprop(x, "CBasePlayer.pl.deadflag"), es.getUseridList()): popupMenu.addoption([target, player], es.getplayername(player), lang=lang) popupMenu.send(userid)
def myheroes(userid, args): userid = str(userid) steamid = es.getplayersteamid(userid) pid, pheroes, ppower1, ppower2, ppower3 = cursor.execute('SELECT id, heroes, power1, power2, power3 FROM users WHERE id=?', (steamid,)).fetchone() heroes = pheroes heroes = heroes.split(',') menuname = "myheroes"+"_"+userid menuname = popuplib.easymenu(menuname,None, myheroes_selection) myheroes_popup = langlib.Strings(es.getAddonPath("superhero") + "/languages/myheroes_popup.ini") global popup_language menuname.settitle(myheroes_popup('myheroes_title',lang=str(popup_language))) menuname.setdescription(myheroes_popup('myheroes_desc',lang=str(popup_language))) for hero in heroes: if hero != '0': if str(ppower1) == hero: menuname.addoption(str(hero),str(hero)+' [+power1]') elif str(ppower2) == hero: menuname.addoption(str(hero),str(hero)+' [+power2]') elif str(ppower3) == hero: menuname.addoption(str(hero),str(hero)+' [+power3]') else: menuname.addoption(str(hero),hero) menuname = "myheroes"+"_"+userid #close_popups(userid) popuplib.send(menuname,userid)
def voteStart(): # Create a new vote global ggVote ggVote = popuplib.easymenu("gg_map_vote", None, voteSubmit) msg("#human", "PlaceYourVotes", {}, True) # Set question and add some options ggVote.settitle("Please vote for the next map:") # Add maps as options for map_name in getMapList(): ggVote.addoption(map_name, map_name.lower()) mapVoteOptions[map_name] = [] # Users eligable to vote voteUserids.extend(getUseridList("#human")) # Only send to dead players ? if int(gg_map_vote_after_death): voteSentUserids.extend(getUseridList("#human, #dead")) ggVote.send(voteSentUserids) # Send it to everyone else: ggVote.send(voteUserids) # Start the repeat voteRepeat = repeat.create("gg_map_vote", voteCountDown) voteRepeat.start(1, int(gg_map_vote_time)) # Fire event GG_Vote().fire()
def showmenu(userid, args): userid = str(userid) steamid = es.getplayersteamid(userid) if steamid == 'BOT': return steamid = es.getplayersteamid(userid) global menuname menuname = "showmenu" + "_" + userid menuname = popuplib.easymenu(menuname, 'choice', showmenu_selection) showmenu_popup = langlib.Strings( es.getAddonPath("superhero") + "/languages/showmenu_popup.ini") global popup_language menuname.settitle( showmenu_popup('showmenu_title', lang=str(popup_language))) pid, plevel, punspent, pheroes, ppower1, ppower2, ppower3 = cursor.execute( 'SELECT id, level, unspent, heroes, power1, power2, power3 FROM users WHERE id=?', (steamid, )).fetchone() tokens = {} tokens['unspent'] = punspent menuname.setdescription( showmenu_popup('showmenu_desc', tokens, lang=str(popup_language))) herolist = str(es.ServerVar('herolist')).split(',') for hero in herolist: userheroes = pheroes.split(',') if not hero in userheroes: text = langlib.Strings( es.getAddonPath("superhero/heroes/" + hero + "/strings.ini")) if int(text("req_level")) <= int(plevel): string = str(text("heroname")) + ' - ' + str( text("description", lang=str(popup_language))) menuname.addoption(hero, string) menuname = "showmenu" + "_" + userid #close_popups(userid) popuplib.send(menuname, userid)
def registerVoteMenu(shortName, displayName, returnFunction, submenus=[], serverCmdFunction=None, permission='ADMIN'): if not vote_list.has_key(shortName): vote_list[shortName] = {} if serverCmdFunction: vote_list[shortName]['commandFunction'] = serverCmdFunction xavote.addCommand('xa_' + shortName + 'vote', voteCmd, 'xa_vote', permission).register(('server', 'console')) vote_list[shortName]['display'] = displayName vote_list[shortName]['function'] = returnFunction vote_list[shortName]['type'] = 'mainmenu' votemenu = popuplib.find("xavotemenu") votemenu.addoption(shortName, displayName) if submenus: vote_list[shortName]['type'] = 'submenu' myPopup = popuplib.easymenu(shortName, 'vote_choice', returnMenu) for submenu in submenus: vote_list[submenu]['function'] = returnFunction myPopup.addoption(submenu, submenu) myPopup.settitle(displayName) myPopup.submenu(10, "xavotemenu")
def myheroes(userid, args): userid = str(userid) steamid = es.getplayersteamid(userid) pid, pheroes, ppower1, ppower2, ppower3 = cursor.execute( 'SELECT id, heroes, power1, power2, power3 FROM users WHERE id=?', (steamid, )).fetchone() heroes = pheroes heroes = heroes.split(',') menuname = "myheroes" + "_" + userid menuname = popuplib.easymenu(menuname, None, myheroes_selection) myheroes_popup = langlib.Strings( es.getAddonPath("superhero") + "/languages/myheroes_popup.ini") global popup_language menuname.settitle( myheroes_popup('myheroes_title', lang=str(popup_language))) menuname.setdescription( myheroes_popup('myheroes_desc', lang=str(popup_language))) for hero in heroes: if hero != '0': if str(ppower1) == hero: menuname.addoption(str(hero), str(hero) + ' [+power1]') elif str(ppower2) == hero: menuname.addoption(str(hero), str(hero) + ' [+power2]') elif str(ppower3) == hero: menuname.addoption(str(hero), str(hero) + ' [+power3]') else: menuname.addoption(str(hero), hero) menuname = "myheroes" + "_" + userid #close_popups(userid) popuplib.send(menuname, userid)
def sendglobal(self, pUsers, prio=False, locked=False): try: # try if pUsers is just a single userid userid = int(pUsers) pUsers = [userid] except TypeError: pass if locked: optionstate = 0 else: optionstate = 1 for userid in pUsers: player = playerlib.getPlayer(userid) if player: helpline = self.languages('setting '+self.keyvalues['config']['type']+' help', (), player.get('lang')) self.popup['global'] = popuplib.easymenu('_setting_%s_user%s_global' % (self.name, userid), '_setting_choice', settinglib._submitGlobal) self.popup['global'].settingid = self.name self.popup['global'].c_titleformat = self.keyvalues['config']['descr'] + (' '*(30-len(self.keyvalues['config']['descr']))) + ' (%p/%t)\n' + helpline for option in self.keyvalues['options']: display = self.keyvalues['options'][option]['display'] userdata = self.keyvalues['options'] if option in userdata: if userdata[option]['globstate']: active = self.languages('setting list active', (), player.get('lang')) self.popup['global'].addoption(int(option), display + ' ('+active+')', optionstate) continue self.popup['global'].addoption(int(option), display, optionstate) if self.backmenuvar: self.popup['global'].submenu(10, self.backmenuvar) self.popup['global'].send(userid, prio)
def nominate_cmd(userid, args): # The nominations list is full if len(nominations) >= int(gg_map_vote_size): msg(userid, "NominationsFull", {"size": int(gg_map_vote_size)}, True) return nomVote = popuplib.easymenu('gg_map_vote_nominate', None, nominateSubmit) # Set title and add some options nomVote.settitle('Nominate map for next vote:') # Add maps as options mapList = sorted(getMapList(allMaps=True, excludeNominations=True)) if not mapList: msg(userid, "VoteListEmpty", {}, True) return for map_name in mapList: if map_name in list_lastMaps or map_name in nominations: continue nomVote.addoption(map_name, map_name.lower()) # Send the menu nomVote.send(userid)
def load(): """ Load Function for Bot Management in XA Called automatically when loading this script """ global xabmmenu xabmmenu = popuplib.easymenu("xabotmanagementmenu", None, _select_action) xabmmenu.settitle(xalanguage["bot management"]) xabotmanagement.addMenu( "xabotmanagementmenu", xalanguage["manage bots"], "xabotmanagementmenu", "manage_bots", "ADMIN" ) xabmmenu.prepuser = _menu_update_display registerDisplay("quota", _display_quota) registerDisplay("difficulty", _display_difficulty) registerAction("add_auto", xalanguage["add bot"], _action_add_auto) registerAction("add_2", xalanguage["add 2"], _action_add_2) registerAction("add_3", xalanguage["add 3"], _action_add_3) registerAction("remove", xalanguage["remove bot"], _action_remove) registerAction("kick_all", xalanguage["kick all"], _action_kick_all) registerAction("kill_all", xalanguage["kill all"], _action_kill_all) registerAction("difficulty-", xalanguage["easier bots"], _action_difficulty_down) registerAction("difficulty+", xalanguage["harder bots"], _action_difficulty_up)
def loadPopups(): nomination_popup = popuplib.easymenu('nomination_menu', None, nomination_result) nomination_popup.settitle(lang['choose_map']) maps = read_mapfile() for mapName in maps: nomination_popup.addoption( mapName, xartv.language.createLanguageString(mapName))
def load(): global gModules gModules = filter(filter_modules,listdir(gGamedir + '/addons/eventscripts/xa/modules')) xamodulesmenu = popuplib.easymenu('xamodulesmenu',None,xamodulesmenu_handler) xamodulesmenu.settitle(xalanguage['module management']) xamodulesmenu.addoption('load_module',xalanguage['load module']) xamodulesmenu.addoption('unload_module',xalanguage['unload module']) xamodulesmenu.addoption('reload_module',xalanguage['reload module']) xamodules.addMenu('xamodulesmen',xalanguage['module management'],'xamodulesmenu','manage_modules','ROOT')
def _create_menu(): if popuplib.exists('xacfgloader_menu'): popuplib.delete('xacfgloader_menu') menu = popuplib.easymenu("xacfgloader_menu", "_unused", _select_cfg) menu.addoption('reload','Reload CFG Files',lang="en") for file in [f for f in os.listdir(cfg_dir) if os.path.isfile(os.path.join(cfg_dir, f)) and f.endswith('.cfg')]: menu.addoption(file,file,lang="en") menu.settitle(xalanguage['menu_title']) menu.setdescription(xalanguage['menu_description']) return menu
def _moduleListMenu(userid): modulemenu = popuplib.easymenu('xalistmodulemenu_'+str(userid),None,_modulemenu_select) modulemenu.settitle(lang['module overview']) modulemenu.submenu(mainmenu) menulist.append(modulemenu) for module in sorted(xa.modules()): module = xa.find(module) if len(module.variables) > 0: modulemenu.addoption(str(module), xaconfig.language.createLanguageString(module.getAddonInfo().name)) return modulemenu
def genCategoriesPop(popupname, callback, userid): checkPop(popupname) categories_menu = popuplib.easymenu(popupname, None, callback) categories_menu.settitle('Choose a Catagory') counter = 1 while es.exists("key", "wcscategories", counter): catname = es.keygetvalue("wcscategories", counter, "name") categories_menu.addoption(counter, catname) counter += 1 gamethread.delayed(0.001, categories_menu.send, userid)
def _moduleListMenu(userid): modulemenu = popuplib.easymenu('xalistmodulemenu_'+str(userid),None,_modulemenu_select) modulemenu.settitle(xalang['module overview']) modulemenu.submenu(mainmenu) menulist.append(modulemenu) for module in sorted(xa.modules()): module = xa.find(module) if os.path.exists("%s/modules/%s/strings.ini" % (xa.coredir(), module)): modulemenu.addoption(str(module), xalanguage.language.createLanguageString(module.getAddonInfo().name)) return modulemenu
def _stringListMenu(userid, module, parent): keylist = langlist[str(module)] keymenu = popuplib.easymenu('xaliststringmenu_'+str(userid)+'_'+str(module),None,_keymenu_select) keymenu.settitle(xalang['module strings']) keymenu.submenu(parent) keymenu._xa = [module, parent] menulist.append(keymenu) for key in keylist: keymenu.addoption(str(key), keylist[key]) return keymenu
def _adminlist(userid, choice=None, popupid=None): es.dbgmsg(1, '*****_adminlist') global adminlist b_admins = shelve.open(b_admins_path) adminlist = popuplib.easymenu('adminlistmenu', None, _adminlist_select) for admin in b_admins: adminlist.addoption((admin, b_admins[admin]), b_admins[admin][0]) adminlist.settitle(lang['admin list']) adminlist.send(userid) b_admins.close
def _adminlist(userid,choice=None,popupid=None): es.dbgmsg(1,'*****_adminlist') global adminlist b_admins = shelve.open(b_admins_path) adminlist = popuplib.easymenu('adminlistmenu', None, _adminlist_select) for admin in b_admins: adminlist.addoption((admin,b_admins[admin]), b_admins[admin][0]) adminlist.settitle(lang['admin list']) adminlist.send(userid) b_admins.close
def load(): xamapmainmenu = popuplib.easymenu('xamapmainmenu',None,xamapmainmenu_handler) xamapmainmenu.settitle(xalanguage['map management']) xamapmainmenu.addoption('changemap',xalanguage['change map']) xamapmainmenu.addoption('setnextmap',xalanguage['set map']) xamapmanagement.addMenu('xamapmainmenu',xalanguage['map management'],'xamapmainmenu','manage_maps','ADMIN') xamapmanagement.addCommand('nextmap',show_nextmap,'use_nextmap','UNRESTRICTED').register(('console', 'say')) xamapmanagement.addCommand('xa_setnextmap',set_nextmap,'manage_maps','ADMIN').register(('server','console')) map_menu() map_cycle()
def load(): global menulist,mainmenu xaclientcmd = xalanguage.addCommand('setlanguage', _inputbox_handle, 'change_language', 'ROOT', 'Set language') xaclientcmd.register('console') mainmenu = popuplib.easymenu('xamainlanguagemenu',None,_mainmenu_select) mainmenu.settitle(xalang['main language']) mainmenu.addoption('module', xalang['module language']) menulist.append(mainmenu) xalanguage.addMenu('xamainlanguagemenu',xalang['xa menu choice'],'xamainlanguagemenu','change_language','ROOT')
def load(): xamapmainmenu = popuplib.easymenu("xamapmainmenu", None, xamapmainmenu_handler) xamapmainmenu.settitle(xalanguage["map management"]) xamapmainmenu.addoption("changemap", xalanguage["change map"]) xamapmainmenu.addoption("setnextmap", xalanguage["set map"]) xamapmanagement.addMenu("xamapmainmenu", xalanguage["map management"], "xamapmainmenu", "manage_maps", "ADMIN") xamapmanagement.addCommand("nextmap", show_nextmap, "use_nextmap", "UNRESTRICTED").register(("console", "say")) xamapmanagement.addCommand("xa_setnextmap", set_nextmap, "manage_maps", "ADMIN").register(("server", "console")) map_menu() map_cycle()
def load(): #Load Function for Player Settings for XA. xasettingmenu = popuplib.easymenu("xasettingmenu", "_tempcore", _select_setting) xasettingmenu.settitle(xalanguage["player settings"]) xasettings.addMenu("xasettingmenu", xalanguage["player settings"], "xasettingmenu", "change_playersetting", "UNRESTRICTED") xacommand = xasettings.addCommand("settings", _send_menu, "change_playersetting", "UNRESTRICTED") xacommand.register(["console", "say"])
def cphone_select(userid, choice, popupname): steamid = getplayerid(userid) story = int(es.keygetvalue(steamid, "player_data", "story")) if choice == 10: es.playsound(userid, "zeisenproject/the-killers/sounds/sndMobileclose.mp3", 1.0) return if popupname.startswith("cphonecall"): ban_time = int(es.keygetvalue(steamid, "player_data", "ban_time")) wait_queue = int(sv('wait_queue')) if story == 0: port = find_servers() if not port: esc.tell(userid, "#255,255,255* 모든 서버가 꽉 차있습니다.") elif steamid != "142119022" and steamid != "149373723": esc.tell(userid, "#255,255,255* 서버가 개방된 상태이나 어드민만 입장할 수 있습니다.") elif ban_time > 0: esc.tell(userid, "#255,255,255* 현재 서버 입장이 밴된 상태입니다. %s초 남았습니다." %(ban_time)) elif wait_queue > 0: esc.tell(userid, "#255,255,255* 누군가가 이미 서버를 준비를 요청했기에 서버를 동시에 준비할 수 없었습니다. 다시 시도해주세요.") else: es.set("wait_queue", timerz_count + 2) dlg = msglib.VguiDialog(title="서버 접속", msg="themessage", mode=msglib.VguiMode.MENU) dlg["msg"] = "서버 접속" dlg['time'] = 10 rp = random.randint(10000,99999) dlg.addOption(msg="서버에 접속합니다.", command="connect 1.214.121.137:%s;password random%s;wait 200;password haha" %(port, rp)) dlg.send(userid) rcon_msg("1.214.121.137:%s" %(port), "es_xdoblock the_killers/server_wait;rcon changelevel cs_gentech_final_zv1;rcon sv_password random%s" %(rp)) es.keysetvalue(steamid, "player_data", "story", 1) es.keysetvalue(steamid, "player_data", "ban_time", 11) esc.msg("#255,255,255[Debug] %s Port is Idle. breaking the while.." %(port)) esc.msg("#255,255,255[Debug] %s User requested to %s port" %(es.getplayername(userid), port)) if popupname.startswith("cphonemenu"): cphone = popuplib.easymenu('cphonecall_%s' %(userid), None, cphone_select) cphone.settitle("@ Cell Phone") cphone.c_stateformat[False] = "%2" if story == 0: cphone.addoption(0, "오랫동안 삐쩍 말라있었군, 네 형의 죽음 때문인가? 그렇지 않아?", 0) for i in range(1,6 + 1): cphone.addoption(0, " ", 0) cphone.addoption(0, "너도 의심했다시피, 네 형은 죽지 않았다. 그저 뱀년들의 간단한 트릭일 뿐이지.", 0) for i in range(1,6 + 1): cphone.addoption(0, " ", 0) cphone.addoption(0, "네 형을 만나고 싶다면 인천 남구로 와라. 그 곳에 네가 몰랐던 비밀들이 밝혀질 터이니..", 0) for i in range(1,6 + 1): cphone.addoption(0, " ", 0) for i in range(1,6 + 1): cphone.addoption(0, " ", 0) cphone.addoption(story, "그 곳으로 향한다.", 1) cphone.send(userid)
def cmd_settings(userid,args): if str(userid) in xs.pending: es.tell(userid,txt.getSimple('messages','sorry_pending')) return pplchck('xs_settings_menu_%s' % userid) settingsmenu = popuplib.easymenu('xs_settings_menu_%s' % userid,'_popup_choice',settingsCallback) settingsmenu.settitle(text.getSimple('settings','title_main')) settingsmenu.addoption('method',text.getSimple('settings','choose_method')) settingsmenu.addoption('name',text.getSimple('settings','choose_name')) settingsmenu.addoption('exit',text.getSimple('settings','exit')) settingsmenu.send(userid)
def _manage_player(userid,choice,popupid): es.dbgmsg(1,'*****_manage_player') if authaddon == 'group_auth': groups = db.query("SELECT GroupName FROM Groups WHERE GroupName!='UnidentifiedPlayers' and GroupName!='IdentifiedPlayers';") if popuplib.exists('groupsmenu'): popuplib.delete('groupsmenu') groupsmenu = popuplib.easymenu('groupsmenu', None, _set_playergroup) for group in groups: group = utfcode(group) groupsmenu.addoption((group[0],choice), utfcode(group[0])) groupsmenu.settitle(choice + '\n-' + lang('add player to group')) groupsmenu.send(userid) else: global addadmin addadmin = popuplib.easymenu('addadmin', None, _addadmin_select) token = {'choice':str(choice)} addadmin.settitle(lang('make admin', token)) addadmin.addoption((choice,1), lang['yes']) addadmin.addoption('no',lang['no']) addadmin.send(userid)
def _groupusers_list(userid,choice,popupid): es.dbgmsg(1,'*****_groupusers_list') users = db.query("SELECT ALL Name FROM vwPlayersGroups WHERE GroupName='%s'" %choice) if users: groupusers = popuplib.easymenu('groupusers', None, _groupuser_remove) for user in users: groupusers.addoption((user[0],choice), utfcode(user[0])) groupusers.settitle(choice + ' ' + lang('users') + '\n ' + lang('select to remove')) groupusers.send(userid) else: es.tell(userid, '#multi', prefix + lang('no users in group') + ' ' + choice)
def _groupcaps_list(userid,choice,popupid=None): es.dbgmsg(1,'*****_groupcaps_list') caps = db.query("SELECT ALL CName FROM vwCapsGroups WHERE GroupName='%s'" %choice) if caps: groupcaps = popuplib.easymenu('groupcaps', None, _groupcap_remove) for cap in caps: groupcaps.addoption((cap[0],choice), utfcode(cap[0])) groupcaps.settitle(choice + ' ' + lang('capabilities') + '\n ' + lang('select to remove')) groupcaps.send(userid) else: es.tell(userid, '#multi', prefix + lang('no caps in group') + ' ' + choice)
def _playerlist(userid): es.dbgmsg(1, '*****_playerlist') global playermenu #uncomment following line, #all is for testing only players = playerlib.getPlayerList('#human') #players = playerlib.getPlayerList('#all') playermenu = popuplib.easymenu('playermenu', None, _manage_player) for player in players: name = player.get('name') playermenu.addoption(name, utfcode(name)) playermenu.settitle(lang['current players']) playermenu.send(userid)
def _capslist(userid): es.dbgmsg(1,'*****_capslist') global capsmenu caps = db.query("SELECT ALL CName FROM Caps") if caps: capsmenu = popuplib.easymenu('capsmenu', None, _capsmenu_select) for cap in caps: capsmenu.addoption(cap[0],cap[0]) capsmenu.settitle(lang('capabilities')) capsmenu.send(userid) else: es.tell(userid,'#multi',prefix + '#lightgreen' + guser + '#default' + lang('no registered capabilities'))
def _userslist(userid): es.dbgmsg(1,'*****_userslist') users = db.query("SELECT Name FROM Players WHERE Name!='UNKNOWN'") if users: global usersmenu usersmenu = popuplib.easymenu('usersmenu', None, _usersmenu_select) for user in users: usersmenu.addoption(user,utfcode(user[0])) usersmenu.settitle(lang('all users')) usersmenu.send(userid) else: es.dbgmsg(0,'*****no users')
def _stringListMenu(userid, module, parent): keylist = langlist[str(module)] keymenu = popuplib.easymenu( 'xaliststringmenu_' + str(userid) + '_' + str(module), None, _keymenu_select) keymenu.settitle(xalang['module strings']) keymenu.submenu(parent) keymenu._xa = [module, parent] menulist.append(keymenu) for key in keylist: keymenu.addoption(str(key), keylist[key]) return keymenu
def _userslist(userid): es.dbgmsg(1, '*****_userslist') users = db.query("SELECT Name FROM Players WHERE Name!='UNKNOWN'") if users: global usersmenu usersmenu = popuplib.easymenu('usersmenu', None, _usersmenu_select) for user in users: usersmenu.addoption(user, utfcode(user[0])) usersmenu.settitle(lang('all users')) usersmenu.send(userid) else: es.dbgmsg(0, '*****no users')
def _stringEditMenu(userid, module, key, parent): keylist = langlist[str(module)] changestring = popuplib.easymenu('xachangestringmenu_'+str(random.randint(1, 10))+'_'+str(userid)+'_'+str(key).lower(),None,_changestring_select) changestring.settitle(xalang['change language']) changestring.submenu(parent) changestring.c_exitformat = '0. '+xalang('just back', playerlib.getPlayer(userid).get('lang')) changestring._xa = [module, key, parent] menulist.append(changestring) for ll in langlib.getLanguages(): lang = langlib.getLangAbbreviation(ll) changestring.addoption(str(lang), xalanguage.language.createLanguageString('%s = %s' % (lang, keylist(key, {}, lang)))) return changestring
def sendmenu(userid = False): userid = es.getcmduserid() player = PlayerList[str(userid)] userlang = player.lang victimstatsmenu = popuplib.easymenu('victimstatsmenu','victimstatsmenu_choice',select) victimstatsmenu.settitle(xalang('Victim Stats Options',{},userlang)) for x in xavictimstats_menu: y = xavictimstats_menu[x] z = xalang(y,userlang) z = '%s [%s]'%(z,xalang('current',{},userlang)) if x == player.setting else z victimstatsmenu.addoption(x, z) victimstatsmenu.send(userid)
def load(): global menulist, mainmenu xaclientcmd = xalanguage.addCommand('setlanguage', _inputbox_handle, 'change_language', 'ROOT', 'Set language') xaclientcmd.register('console') mainmenu = popuplib.easymenu('xamainlanguagemenu', None, _mainmenu_select) mainmenu.settitle(xalang['main language']) mainmenu.addoption('module', xalang['module language']) menulist.append(mainmenu) xalanguage.addMenu('xamainlanguagemenu', xalang['xa menu choice'], 'xamainlanguagemenu', 'change_language', 'ROOT')
def load(): global bat_menu bat_menu = popuplib.easymenu('bat_menu', 'choice', bat_menu_selection) bat_menu.settitle('Pick a Weapon Category:') bat_menu.addoption('rifles', 'Rifles') bat_menu.addoption('smg', 'SMG') global bat_menu_rifles bat_menu_rifles = popuplib.easymenu('bat_menu_rifles', 'choice', weapon_give) bat_menu_rifles.settitle('Pick a Weapon Category:') bat_menu_rifles.addoption('m4a1', 'M4A1') bat_menu_rifles.addoption('ak47', 'Ak47') bat_menu_rifles.addoption('sg552', 'Krieg') global bat_menu_smg bat_menu_smg = popuplib.easymenu('bat_menu_smg', 'choice', weapon_give) bat_menu_smg.settitle('Pick a Weapon Category:') bat_menu_smg.addoption('tmp', 'Tmp') bat_menu_smg.addoption('mp5navy', 'MP5') bat_menu_smg.addoption('p90', 'P90') if not es.exists('saycommand', 'batmenu'): es.regsaycmd('batmenu', 'superhero/heroes/Batman/batmenu') print "[SH] Batman successfully loaded"
def _manage_player(userid, choice, popupid): es.dbgmsg(1, '*****_manage_player') if authaddon == 'group_auth': groups = db.query( "SELECT GroupName FROM Groups WHERE GroupName!='UnidentifiedPlayers' and GroupName!='IdentifiedPlayers';" ) if popuplib.exists('groupsmenu'): popuplib.delete('groupsmenu') groupsmenu = popuplib.easymenu('groupsmenu', None, _set_playergroup) for group in groups: group = utfcode(group) groupsmenu.addoption((group[0], choice), utfcode(group[0])) groupsmenu.settitle(choice + '\n-' + lang('add player to group')) groupsmenu.send(userid) else: global addadmin addadmin = popuplib.easymenu('addadmin', None, _addadmin_select) token = {'choice': str(choice)} addadmin.settitle(lang('make admin', token)) addadmin.addoption((choice, 1), lang['yes']) addadmin.addoption('no', lang['no']) addadmin.send(userid)
def StartRandomMapVote(userid, choice, popupid): global change_map change_map = int(choice) mypopup = popuplib.easymenu("randmapamount", "_popup_choice", RandomMapVoteAmountSelection) submenus = [] temp_index = 1 amount = len(map_list) while temp_index <= amount: mypopup.addoption(temp_index, '[%s]' % temp_index) temp_index += 1 mypopup.settitle("Select the amount of maps you want") mypopup.send(userid)