Ejemplo n.º 1
0
def telladmin(args):
    nameList = []
    playerList = es.getUseridList()
    for player in playerList:
        if ut.authorize(player,identifyMethod,adminList):
            nameList.append(playerlib.getPlayer(player).name)
    if len(nameList) == 0:
        es.tell(es.getcmduserid(), "#multi", "#green[UltiTool] #defaultThere are no admins online!")
    elif len(nameList) == 1:
        es.tell(es.getcmduserid(), "#multi", "#green[UltiTool] #defaultThe admin that's currently on the server is: " + ", ".join(nameList))
    else:
        es.tell(es.getcmduserid(), "#multi", "#green[UltiTool] #defaultThe admins that's currently on the server are: " + ", ".join(nameList))
Ejemplo n.º 2
0
def set_nextmap():
    mapname = es.getargv(1)
    if map_check(mapname):
        nextmapvar.set(mapname)
        if str(xa_announce_setnextmap) == '1':
            for player in playerlib.getPlayerList():
                es.tell(player.userid, xalanguage('new next map', {'mapname':mapname}, player.get('lang')))
        xamapmanagement.logging.log("set next map set to %s" % mapname, es.getcmduserid(), True )
    else:
        userid = int(es.getcmduserid())
        if userid:
            es.tell(userid,'#multi','#green[XA] #default',xalanguage('invalid map',{'mapname':mapname},playerlib.getPlayer(userid).get('lang')))
def selected():
    userid = es.getcmduserid()
    if not superhero.hasHero(userid,'Nightcrawler'):
        return
    gusers[userid] = {}
    gusers[userid]['crawl'] = 0
    gusers[userid]['nc_cooldown'] = int(time.time())
Ejemplo n.º 4
0
def show_nextmap():
    userid = es.getcmduserid()
    if str(nextmapvar) != '':
        nextmap = str(nextmapvar)
    else:
        nextmap = gMapCycle[gCurrentMap+1]
    es.tell(userid,'#multi','#green[XA] #default',xalanguage('show next map',{'mapname':nextmap},playerlib.getPlayer(userid).get('lang')))
Ejemplo n.º 5
0
def restart():
    """ Teleports player to first level """
    userid = es.getcmduserid()
    if (es.getplayerteam(userid) != 1):
        entities = es.createentitylist('info_teleport_destination')
        for i in entities:
            if (es.entitygetvalue(i, 'targetname') == "timer_stage1"):
                x = es.getplayerprop(
                    userid, "CBasePlayer.localdata.m_vecVelocity[0]") * -1 / 2
                y = es.getplayerprop(
                    userid, "CBasePlayer.localdata.m_vecVelocity[1]") * -1 / 2
                z = es.getplayerprop(
                    userid, "CBasePlayer.localdata.m_vecVelocity[2]") * -1 / 2
                es.setplayerprop(userid,
                                 "CBasePlayer.localdata.m_vecBaseVelocity",
                                 es.createvectorstring(x, y, z))
                gamethread.delayed(
                    0.01, es.setplayerprop,
                    (userid, "CBasePlayer.localdata.m_vecBaseVelocity",
                     es.createvectorstring(x, y, z)))
                startPos = es.entitygetvalue(i, 'origin').split(' ')
                startAng = es.entitygetvalue(i, 'angles').split(' ')
                gamethread.delayed(
                    0.01, es.setpos,
                    (userid, startPos[0], startPos[1], startPos[2]))
                es.setang(userid, startAng[0], startAng[1], startAng[2])
Ejemplo n.º 6
0
def _inputbox_handle():
    es.dbgmsg(1,'*****_inputbox_handle')
    userid = es.getcmduserid()    
    count = int(es.getargc())
    if count == 3:
        groupname = es.getargv(1)
        level = es.getargv(2)
        level = level.lower()        
        if level in ('root','admin','poweruser','known','all'):
            if level == 'root': 
                level = 0
            if level == 'admin': 
                level = 1
            if level == 'poweruser': 
                level = 2
            if level == 'known': 
                level = 4
            if level == 'all': 
                level = 128            
            es.server.queuecmd('gauth group create %s %d' %(groupname,level))
            es.esctextbox(10, userid, "New group added", "You have added group: %s with access level %s" %(groupname,level))
        else:
            es.esctextbox(10, userid, "Invalid level", "Accepted levels:\n -admin\n -poweruser\n -known\n -all")
    else:
        es.esctextbox(10, userid, "Invalid Entry", "<groupname-no spaces> <level>")
Ejemplo n.º 7
0
def power():
    global gusers
    userid = str(es.getcmduserid())
    if not es.exists('userid', userid):
        return
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        if int(time.time()) >= int(gusers[userid]['dazzle']):
            nearPlayers = player.getNearPlayers(750)
            counter = 0
            for dude in nearPlayers:
                if playerlib.getPlayer(dude).teamid != player.teamid:
                    fade(dude, 1, 1, 2.5, 255, 255, 255, 255)
                    es.tell(
                        dude, '#multi',
                        '#green[SH]#lightgreen You have been Dazzled by#green',
                        es.getplayername(userid))
                    counter += 1
            fade(userid, 1, 0.1, 0.1, 255, 255, 255, 255)
            es.tell(userid, '#multi',
                    '#green[SH]#lightgreenYou dazzled #green', counter,
                    '#lightgreenPlayers')
            gusers[userid]['dazzle'] = int(time.time()) + 30
        else:
            es.tell(
                userid, '#multi',
                '#green[SH]#lightgreen Cannot activate #greenDazzler#lightgreen, you have to wait#green',
                int(gusers[userid]['dazzle']) - int(time.time()),
                '#lightgreenmore seconds')
def power():
    userid = str(es.getcmduserid())
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        if int(time.time()) >= int(gusers[userid]['nc_cooldown']):
            es.server.queuecmd('es_xsetplayerprop %s "CBaseEntity.movetype" 8' % userid)
            if not 'speed' in gusers[userid]: 
                gusers[userid]['speed'] = 1.0
            player.set("speed", 1.0)
            gusers[userid]['nc_cooldown'] = int(time.time()) + 10
            es.centertell(userid,'Noclip activated, do not get Stuck!')
            es.tell(userid,'#multi','#green[SH]#lightgreen Nightcrawler is partially blinded. You now are aswell.')
            gusers[userid]['crawl'] = 1
            fade(userid, 1, 0.5, 2.8, 0, 0, 0, 254)
            speed_set(userid)
            #es.server.cmd('ezrestrict %s #all' % userid)
            #es.server.cmd('ezrestrict_removeidle #all')
            #es.server.cmd('ezunrestrict %s knife' % userid)
            gamethread.delayed(0.1, es.server.queuecmd, 'es_xgive %s weapon_knife' % userid)
            es.delayed(1,'es_centertell %s 6 seconds left...' % userid)
            es.delayed(2,'es_centertell %s 5 seconds left...' % userid)
            es.delayed(3,'es_centertell %s 4 seconds left...' % userid)
            es.delayed(4,'es_centertell %s 3 seconds left...' % userid)
            es.delayed(5,'es_centertell %s 2 seconds left...' % userid)
            es.delayed(6,'es_centertell %s 1 seconds left...' % userid)
            gamethread.delayed(7,undo,(player))
        else:
            es.tell(userid,'#multi','#green[SH]#lightgreen Cannot activate Nightcrawler #green',int(gusers[userid]['nc_cooldown'])-int(time.time()),'#lightgreenseconds left')
Ejemplo n.º 9
0
   def execute(self, args):
      """
      When told to execute the function we need to pass the userid of the player who used the command
      as well as the command's arguments. We also need to determine if the player is authorized to
      use the command.
      """
      userid = es.getcmduserid()
      # No auth? No fuss.
      if not self.auth_capability is None:
         # Check whether the userid is authorized
         is_authed = services.use('auth').isUseridAuthorized(userid, self.auth_capability)
         if not is_authed:
            # If a callback has been specified for auth failure then execute that function
            if self.auth_fail_callback:
               if callable(self.auth_fail_callback):
                  self.auth_fail_callback(userid, args)
               else:
                  es.doblock(self.auth_fail_callback)
            # We have yet to inform the player they aren't authorized so we need to do it
            else:
               es.tell(userid, 'You are not authorized to use the ' + self.name + ' command.')
            return

      if callable(self.callback):
         self.callback(userid, args)
      else:
         es.server.queuecmd('es_xdoblock ' + self.callback)
Ejemplo n.º 10
0
def help(es_player=None):
    # Tell Player the help options
    if not es_player:
        es_player = es.getcmduserid()
    steamid = es.getplayersteamid(es_player)
    steam_64 = str(convertSteamIDToCommunityID(steamid))
    es.tell(es_player, "Available commands are:  /balance /rank")
Ejemplo n.º 11
0
   def execute(self, args):
      """
      When told to execute the function we need to pass the userid of the player who used the command
      as well as the command's arguments. We also need to determine if the player is authorized to
      use the command.
      """
      userid = es.getcmduserid()
      # No auth? No fuss.
      if not self.auth_capability is None:
         # Check whether the userid is authorized
         is_authed = services.use('auth').isUseridAuthorized(userid, self.auth_capability)
         if not is_authed:
            # If a callback has been specified for auth failure then execute that function
            if self.auth_fail_callback:
               if isinstance(self.auth_fail_callback, collections.Callable):
                  self.auth_fail_callback(userid, args)
               else:
                  es.doblock(self.auth_fail_callback)
            # We have yet to inform the player they aren't authorized so we need to do it
            else:
               es.tell(userid, 'You are not authorized to use the ' + self.name + ' command.')
            return

      if isinstance(self.callback, collections.Callable):
         self.callback(userid, args)
      else:
         es.server.queuecmd('es_xdoblock ' + self.callback)
Ejemplo n.º 12
0
def _inputbox_handle():
    es.dbgmsg(1, '*****_inputbox_handle')
    userid = es.getcmduserid()
    count = int(es.getargc())
    if count == 3:
        groupname = es.getargv(1)
        level = es.getargv(2)
        level = level.lower()
        if level in ('root', 'admin', 'poweruser', 'known', 'all'):
            if level == 'root':
                level = 0
            if level == 'admin':
                level = 1
            if level == 'poweruser':
                level = 2
            if level == 'known':
                level = 4
            if level == 'all':
                level = 128
            es.server.queuecmd('gauth group create %s %d' % (groupname, level))
            es.esctextbox(
                10, userid, "New group added",
                "You have added group: %s with access level %s" %
                (groupname, level))
        else:
            es.esctextbox(
                10, userid, "Invalid level",
                "Accepted levels:\n -admin\n -poweruser\n -known\n -all")
    else:
        es.esctextbox(10, userid, "Invalid Entry",
                      "<groupname-no spaces> <level>")
Ejemplo n.º 13
0
def selected():
    global gusers
    userid = es.getcmduserid()
    if not superhero.hasHero(userid, 'Invisible Man'):
        return
    gusers[userid] = {}
    check_moving(userid)
Ejemplo n.º 14
0
def customVoteTitle():
    userid = es.getcmduserid()
    title = es.getargs()
    lang = playerlib.getPlayer(userid).get("lang")
    es.escinputbox(30, userid, xalanguage("vote options", lang=lang),
                   xalanguage("select vote options", lang=lang),
                   'xa_set_options %s ^^^' % title)
def selected():
    global gusers
    userid = es.getcmduserid()
    if not superhero.hasHero(userid,'Invisible Man'):
        return
    gusers[userid] = {}
    check_moving(userid)
Ejemplo n.º 16
0
def selected():
    userid = es.getcmduserid()
    if not superhero.hasHero(userid,'HobGoblin'):
        return
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        check_nade(userid)
Ejemplo n.º 17
0
def selected():
    userid = es.getcmduserid()
    if not superhero.hasHero(userid,'Wolverine'):
        return
    player = playerlib.getPlayer(userid)
    if not player.isdead:
        auto_heal(userid)
Ejemplo n.º 18
0
def selected():
    userid = es.getcmduserid()
    if not superhero.hasHero(userid, 'HobGoblin'):
        return
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        check_nade(userid)
Ejemplo n.º 19
0
def selected():
    global gusers
    userid = str(es.getcmduserid())
    if not es.exists('userid', userid):
        return
    gusers[userid] = {}
    gusers[userid]['my_cooldown'] = int(time.time())
Ejemplo n.º 20
0
def redirect_cmd():
    """
    redirect <userid/player name/"Steam ID"> ["IP"] [kick] [delay]
    Ensures a correct number of arguments were provided
    Ensures the specified player exists
    Retrieves the optional arguments while converting them to the desired type
    Calls send_prompt with the specified arguments
    """
    int_arg_count = es.getargc()
    int_cmd_userid = es.getcmduserid()

    if int_arg_count in (2, 3, 4, 5):
        str_player_arg = es.getargv(1)
        int_userid = es.getuserid(str_player_arg)

        if int_userid:
            list_args = [int_userid, str(var_ip), int(var_kick), float(var_delay)]
            dict_arg_types = {2:str, 3:int, 4:float}
            for int_x in range(2, int_arg_count):
                try:
                    list_args[int_x - 1] = dict_arg_types[int_x](es.getargv(int_x))
                except:
                    display_feedback(int_cmd_userid, 'invalid argument', {'arg':es.getargv(int_x), 'type':dict_arg_types[int_x].__name__})
                    return

            send_prompt(*list_args)

        else:
            display_feedback(int_cmd_userid, 'no player', {'player':str_player_arg})

    else:
        display_feedback(int_cmd_userid, 'syntax', {'syntax':'xaredirect <userid/player name/\"Steam ID\"> [\"IP\"] [kick] [delay]'})
Ejemplo n.º 21
0
def selected():
    global gusers
    userid = str(es.getcmduserid())
    if not es.exists('userid',userid):
        return
    gusers[userid] = {}
    gusers[userid]['my_cooldown'] = int(time.time())
Ejemplo n.º 22
0
def selected():
    userid = es.getcmduserid()
    if not superhero.hasHero(userid,'Flash'):
        return
    else:
        player = playerlib.getPlayer(userid)
        player.set("speed", 1.5)
Ejemplo n.º 23
0
def power():
    global hero
    userid = es.getcmduserid()
    if not superhero.hasHero(userid, hero['name']):
        return

    ts = time.time()
    if not userid in hero['last_used']:
        hero['last_used'][userid] = (ts - hero['cooldown'])

    if not ts > hero['last_used'][userid]:
        cts = (hero['last_used'][userid] - ts + 1)
        if cts > 2:
            ext = 's'
        else:
            ext = ''
        es.tell(userid, '#green',
                '[%s] Cooldown: %d second%s left.' % (hero['name'], cts, ext))
        return

    es.tell(userid, '#green', '[%s] Power: Activated.' % (hero['name']))
    hero['last_used'][userid] = (ts + hero['cooldown'])
    hero['target'][userid] = vecmath.Vector(getViewCoords(userid))

    TRPLoop(userid)
Ejemplo n.º 24
0
def selected():
    userid = es.getcmduserid()
    if not superhero.hasHero(userid, 'Nightcrawler'):
        return
    gusers[userid] = {}
    gusers[userid]['crawl'] = 0
    gusers[userid]['nc_cooldown'] = int(time.time())
Ejemplo n.º 25
0
def banReasonList():
  global badAccess
  # Get the userid of the person calling this menu
  playerid = es.getcmduserid()
  
  if es.exists('keygroup', 'playerlist'):
    es.server.queuecmd('es_xkeygroupdelete playerlist')
  es.server.queuecmd('es_xcreateplayerlist playerlist')
  
  # Member check only needs to be performed on this menu
  if isMember(es.getplayersteamid(playerid)):
    if es.exists('keygroup', 'GlobalBan_Reason'):
      # Open the keygroup that contains all reason codes
      es.keygroupdelete('GlobalBan_Reason')
    es.keygroupload('GlobalBan_Reason', '|GlobalBan')

    # Create keymenu called banReasonMenu for user to select from
    banReasonMenu = keymenulib.create("banReasonMenu", "selectedBanReason", banLengthList, "GlobalBan_Reason", "#keyvalue reasonText", "#key", "Ban Reason List")
    banReasonMenu.send(playerid)
  else:
    es.tell(playerid, '#green', 'You are not an admin!')
    # Increment the number of attempts
    badAccess[es.getplayersteamid(playerid)] = int(badAccess[es.getplayersteamid(playerid)]) + 1
    if int(badAccess[es.getplayersteamid(playerid)]) > 4:
      # Remove the player from the badAccess dictionary
      if badAccess.has_key(event_var['es_steamid']):
        del badAccess[es.getplayersteamid(playerid)]
      # Kick the player
      es.server.queuecmd('kickid ' + str(playerid) + ' You were kicked for attempting to use an admin command');
Ejemplo n.º 26
0
def getRank(es_player=None):
    # Tell Player their Current Rank
    if not es_player:
        es_player = es.getcmduserid()
    steamid = es.getplayersteamid(es_player)
    steam_64 = str(convertSteamIDToCommunityID(steamid))
    es.tell(es_player, leetcoin_client.getPlayerRank(steam_64))
Ejemplo n.º 27
0
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")))
Ejemplo n.º 28
0
def _inputbox_handle():
    userid = es.getcmduserid()
    count = int(es.getargc())
    if count > 4:
        parent = es.getargv(1)
        if popuplib.exists(parent):
            module = es.getargv(2)
            if xa.exists(module):
                module = xa.find(module)
                varname = es.getargv(3)
                if module and varname in module.variables:
                    var = module.variables[varname]
                    i = 4
                    oldval = str(var)
                    newvalue = ''
                    while i < count:
                        newvalue = newvalue+' '+es.getargv(i)
                        i = i + 1
                    newvalue = newvalue.strip()
                    var.set(newvalue)
                    es.esctextbox(10, userid, "Changed '"+str(varname)+"' setting", "Changed '%s' to '%s'\nThe variable menu is open again.\nPress [ESC] a second time." %(varname,newvalue))
                    menu = _variableEditMenu(userid, module, var, parent)
                    menu.send(userid)
                    xaconfig.logging.log("Admin %s just change config %s from %s to %s" % (es.getplayername(userid), varname, oldval, newvalue) )
    else:
        es.esctextbox(10, userid, "Invalid Entry", "<value>")
Ejemplo n.º 29
0
def _send_menu():
    userid = es.getcmduserid()
    for setting in setting_object:
        setting_object[setting].rebuild(userid) # TODO: finish rebuild methods later
    xasettingmenu = popuplib.find("xasettingmenu")
    xasettingmenu.recache(userid)
    xasettingmenu.send(userid)
Ejemplo n.º 30
0
def _inputbox_handle():
    userid = es.getcmduserid()
    count = int(es.getargc())
    if count > 4:
        parent = es.getargv(1)
        if popuplib.exists(parent):
            module = es.getargv(2)
            if xa.exists(module):
                module = xa.find(module)
                varname = es.getargv(3)
                if module and varname in module.variables:
                    var = module.variables[varname]
                    i = 4
                    oldval = str(var)
                    newvalue = ''
                    while i < count:
                        newvalue = newvalue + ' ' + es.getargv(i)
                        i = i + 1
                    newvalue = newvalue.strip()
                    var.set(newvalue)
                    es.esctextbox(
                        10, userid, "Changed '" + str(varname) + "' setting",
                        "Changed '%s' to '%s'\nThe variable menu is open again.\nPress [ESC] a second time."
                        % (varname, newvalue))
                    menu = _variableEditMenu(userid, module, var, parent)
                    menu.send(userid)
                    xaconfig.logging.log(
                        "Admin %s just change config %s from %s to %s" %
                        (es.getplayername(userid), varname, oldval, newvalue))
    else:
        es.esctextbox(10, userid, "Invalid Entry", "<value>")
Ejemplo n.º 31
0
def selected():
    global gusers
    userid = es.getcmduserid()
    userid = str(userid)
    if not superhero.hasHero(userid,'Dazzler'):
        return
    gusers[userid] = {}
    gusers[userid]['dazzle'] = int(time.time())
Ejemplo n.º 32
0
def _send_menu():
    userid = es.getcmduserid()
    for setting in setting_object:
        setting_object[setting].rebuild(
            userid)  # TODO: finish rebuild methods later
    xasettingmenu = popuplib.find("xasettingmenu")
    xasettingmenu.recache(userid)
    xasettingmenu.send(userid)
Ejemplo n.º 33
0
def selected():
    global gusers
    userid = es.getcmduserid()
    userid = str(userid)
    if not superhero.hasHero(userid, 'Dazzler'):
        return
    gusers[userid] = {}
    gusers[userid]['dazzle'] = int(time.time())
Ejemplo n.º 34
0
def customVoteQuestions():
    userid    = es.getcmduserid()
    title     = str(es.getargs()).split('^^^')[0].strip()
    questions = str(es.getargs()).split('^^^')[1].split(',')
    myvote = Vote(str(userid))
    myvote.CreateVote(title)
    for question in questions:
        myvote.AddOption(question.strip())
    myvote.StartVote()
Ejemplo n.º 35
0
 def __call__(self):
     self.run(priority=True,
              userargs={
                  'cmdname': getargv(0),
                  'argv': list(map(getargv, range(1, getargc()))),
                  'args': getargs(),
                  'uid': int(getcmduserid())
              })
     sv.save()
Ejemplo n.º 36
0
def customVoteQuestions():
    userid = es.getcmduserid()
    title = str(es.getargs()).split('^^^')[0].strip()
    questions = str(es.getargs()).split('^^^')[1].split(',')
    myvote = Vote(str(userid))
    myvote.CreateVote(title)
    for question in questions:
        myvote.AddOption(question.strip())
    myvote.StartVote()
Ejemplo n.º 37
0
def selected():
    global hero
    userid = es.getcmduserid()
    if not superhero.hasHero(userid, hero['name']):
        return

    ts = time.time()
    hero['last_used'][userid] = (ts - hero['cooldown'])
    hero['target'][userid] = False
Ejemplo n.º 38
0
def addonCommandListener():
    b = 0
    c = es.getargc()
    args = []
    while b != c:
        args.append(es.getargv(b))
        b += 1
    cmd = args.pop(0)
    addoncommands[cmd](es.getcmduserid(),args)
Ejemplo n.º 39
0
def selected():
    global gusers
    userid = str(es.getcmduserid())
    if not es.exists('userid',userid):
        return
    gusers[userid] = {}
    gusers[userid]['morph_cool'] = int(time.time())
    gusers[userid]['morph_model'] = ''
    gusers[userid]['morph_box'] = 0 
Ejemplo n.º 40
0
def selected():
    global gusers
    userid = str(es.getcmduserid())
    if not es.exists('userid', userid):
        return
    gusers[userid] = {}
    gusers[userid]['morph_cool'] = int(time.time())
    gusers[userid]['morph_model'] = ''
    gusers[userid]['morph_box'] = 0
Ejemplo n.º 41
0
def power():
    userid = str(es.getcmduserid())
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        if jub[userid] < MAX_POW:
            es.tell(userid, '#multi', '#green[SH]#lightgreen Jubilee pink shades now protect you from flashbangs')
            fade(userid, 0, 5, 5, 64, 0, 64, 130)
            gamethread.delayed(12, Unblind, userid)
            jub[userid] += 1
Ejemplo n.º 42
0
def selected():
    global hero
    userid = es.getcmduserid()
    if not superhero.hasHero(userid, hero['name']):
        return

    ts = time.time()
    hero['last_used'][userid] = (ts - hero['cooldown'])
    hero['target'][userid] = False
Ejemplo n.º 43
0
def browse_cmd():
    args = [es.getargv(x) for x in xrange(1, es.getargc())]
    if not len(args):
        xamodule.logging.log("Incorrect usage: xa_browse <url>")
        return
    url = urllib.quote(args[0])
    if not url.startswith('http://'):
        url = 'http://'+url
    xamodule.logging.log("Opening url: %s" % url)
    usermsg.motd(es.getcmduserid(), 2, "XA Browse", url)
Ejemplo n.º 44
0
def poweroff():
    global hero
    userid = es.getcmduserid()
    heroB = {}
    heroB['target'] = {}
    for t in hero['target']:
        if not t == userid:
            heroB['target'][t] = hero['target'][t]
    hero['target'] = heroB['target']
    gamethread.cancelDelayed(hero['delay_name'] % (userid))
Ejemplo n.º 45
0
def set_nextmap():
    mapname = es.getargv(1)
    if map_check(mapname):
        nextmapvar.set(mapname)
        if str(xa_announce_setnextmap) == '1':
            for player in playerlib.getPlayerList():
                es.tell(
                    player.userid,
                    xalanguage('new next map', {'mapname': mapname},
                               player.get('lang')))
        xamapmanagement.logging.log("set next map set to %s" % mapname,
                                    es.getcmduserid(), True)
    else:
        userid = int(es.getcmduserid())
        if userid:
            es.tell(
                userid, '#multi', '#green[XA] #default',
                xalanguage('invalid map', {'mapname': mapname},
                           playerlib.getPlayer(userid).get('lang')))
Ejemplo n.º 46
0
def browse_cmd():
    args = [es.getargv(x) for x in xrange(1, es.getargc())]
    if not len(args):
        xamodule.logging.log("Incorrect usage: xa_browse <url>")
        return
    url = urllib.quote(args[0])
    if not url.startswith('http://'):
        url = 'http://' + url
    xamodule.logging.log("Opening url: %s" % url)
    usermsg.motd(es.getcmduserid(), 2, "XA Browse", url)
Ejemplo n.º 47
0
def poweroff():
    global hero
    userid = es.getcmduserid()
    heroB = {}
    heroB['target'] = {}
    for t in hero['target']:
        if not t == userid:
            heroB['target'][t] = hero['target'][t]
    hero['target'] = heroB['target']
    gamethread.cancelDelayed(hero['delay_name'] % (userid))
Ejemplo n.º 48
0
def show_nextmap():
    userid = es.getcmduserid()
    if str(nextmapvar) != '':
        nextmap = str(nextmapvar)
    else:
        nextmap = gMapCycle[gCurrentMap + 1]
    es.tell(
        userid, '#multi', '#green[XA] #default',
        xalanguage('show next map', {'mapname': nextmap},
                   playerlib.getPlayer(userid).get('lang')))
Ejemplo n.º 49
0
def selected():

    userid = es.getcmduserid()

    if not superhero.hasHero(userid,'Batman'):

        return

    popuplib.send('bat_menu',userid)

    es.tell(userid,'#multi','#green[SH]#lightgreen Batman activated. Type #greenbatmenu #lightgreento pick Weapons')
Ejemplo n.º 50
0
def power():
    global gusers
    userid = str(es.getcmduserid())
    if not es.exists('userid', userid):
        return
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        if not 'morph_cool' in gusers[userid]:
            gusers[userid]['morph_cool'] = int(time.time()) + 3
        if not 'morph_model' in gusers[userid]:
            gusers[userid]['morph_model'] = ''
        if not 'morph_box' in gusers[userid]:
            gusers[userid]['morph_box'] = 0
        if int(time.time()) >= int(gusers[userid]['morph_cool']):
            gusers[userid]['morph_cool'] = int(time.time()) + 3
            dice = random.randint(1, 4)
            if not bool(gusers[userid]['morph_box']):
                gusers[userid]['morph_model'] = player.model
                if dice == 1:
                    player.model = 'props/de_dust/stoneblock01a.mdl'
                    es.tell(
                        userid, '#multi',
                        '#green[SH]#lightgreen Morph now looks like a #greenStoneblock'
                    )
                elif dice == 2:
                    player.model = 'props/cs_office/sofa_chair.mdl'
                    es.tell(
                        userid, '#multi',
                        '#green[SH]#lightgreen Morph now looks like a #greenSofa Chair'
                    )
                elif dice == 3:
                    player.model = 'props/de_train/Barrel.mdl'
                    es.tell(
                        userid, '#multi',
                        '#green[SH]#lightgreen Morph now looks like a #greenBarrel'
                    )
                elif dice == 4:
                    player.model = 'props/cs_assault/BarrelWarning.mdl'
                    es.tell(
                        userid, '#multi',
                        '#green[SH]#lightgreen Morph now looks like a #greenBarrel Warning'
                    )
                gusers[userid]['morph_box'] = 1
            elif bool(gusers[userid]['morph_box']):
                player.model = gusers[userid]['morph_model']
                es.tell(
                    userid, '#multi',
                    '#green[SH]#lightgreen Morph now looks like a #greenHuman')
                gusers[userid]['morph_box'] = 0
        else:
            es.tell(userid, '#multi',
                    '#green[SH]#lightgreen Cannot activate Morph #green',
                    int(gusers[userid]['morph_cool']) - int(time.time()),
                    '#lightgreenseconds left')
Ejemplo n.º 51
0
def selected():
    global gusers
    userid = es.getcmduserid()
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        if not superhero.hasHero(player,'Goku'):
            return
        gusers[userid] = {}
        gusers[userid]['LVL'] = 0
        player.armor = 100
        KI_regen(userid)
Ejemplo n.º 52
0
def buyxp(userid, args):
    userid = str(es.getcmduserid())
    buyxp_msg = langlib.Strings(
        es.getAddonPath("superhero") + "/languages/buyxp_msg.ini")
    global popup_language
    tokens = {}
    if int(es.ServerVar('buyxp')) != 0:
        playerList = playerlib.getPlayerList('#human,#all')
        if len(playerList) >= int(es.ServerVar('buyxp_players')):
            amount = es.getargs()
            if amount != None:
                player = playerlib.getPlayer(userid)
                cash = int(player.getCash())
                if str(amount) == 'all':
                    xp = cash * float(es.ServerVar('xp_dollar'))
                    string = 'Used ' + str(amount) + '$'
                    sh_givexp(userid, int(xp), string)
                    player.setCash(0)
                    return
                elif str(amount) == '#all':
                    xp = cash * float(es.ServerVar('xp_dollar'))
                    string = 'Used ' + str(amount) + '$'
                    sh_givexp(userid, int(xp), string)
                    player.setCash(0)
                    return
                amount = int(amount)
                if amount >= 100:
                    if amount <= cash:
                        xp = amount * float(es.ServerVar('xp_dollar'))
                        string = 'Used ' + str(amount) + '$'
                        sh_givexp(userid, int(xp), string)
                        player.setCash(cash - amount)
                    else:
                        tokens['amount'] = amount
                        es.tell(
                            userid, '#multi',
                            buyxp_msg('buyxp_notamount',
                                      tokens,
                                      lang=str(popup_language)))
                else:
                    es.tell(
                        userid, '#multi',
                        buyxp_msg('buyxp_notenough', lang=str(popup_language)))
            else:
                es.tell(userid, '#multi',
                        buyxp_msg('buyxp_none', lang=str(popup_language)))
        else:
            tokens['players'] = es.ServerVar('buyxp_players')
            es.tell(
                userid, '#multi',
                buyxp_msg('buyxp_players', tokens, lang=str(popup_language)))
    else:
        es.tell(userid, '#multi',
                buyxp_msg('buyxp_disabled', lang=str(popup_language)))
Ejemplo n.º 53
0
def selected():
    global gusers
    userid = es.getcmduserid()
    player = playerlib.getPlayer(userid)
    if not playerlib.getPlayer(userid).isdead:
        if not superhero.hasHero(player, 'Goku'):
            return
        gusers[userid] = {}
        gusers[userid]['LVL'] = 0
        player.armor = 100
        KI_regen(userid)
Ejemplo n.º 54
0
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)
Ejemplo n.º 55
0
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)
Ejemplo n.º 56
0
def show_nextmap():
    userid = es.getcmduserid()
    if str(nextmapvar) != "":
        nextmap = str(nextmapvar)
    else:
        nextmap = gMapCycle[gCurrentMap + 1]
    es.tell(
        userid,
        "#multi",
        "#green[XA] #default",
        xalanguage("show next map", {"mapname": nextmap}, playerlib.getPlayer(userid).get("lang")),
    )
Ejemplo n.º 57
0
def nominate():
    """ Executed when a user types 'nominate' in chat """
    userid = es.getcmduserid() 
    if allowVoting: 
        steamid = es.getplayersteamid(userid) 
        entry(steamid) 
        if not players[steamid][1]: 
            popuplib.send("nomination_menu", userid) 
        else:
            es.tell(userid, '#multi', lang('1nominate', lang=playerlib.getPlayer(userid).get('lang') ) )
    else:
        es.tell(userid, '#multi', lang('no_nominate', lang=playerlib.getPlayer(userid).get('lang') ) )
Ejemplo n.º 58
0
def rtv():
    """ Executed when a user types 'rtv' in chat """
    global votes_in
    global vote_req_total
     
    userid  = es.getcmduserid() 
    steamid = es.getplayersteamid(userid) 
    entry(steamid) 
    if not players[steamid][0]:
        
        if (time.time() - map_start_time) < float(vote_req_time):
            tokens = {}
            tokens['time'] = int(float(vote_req_time) - int( time.time() - map_start_time ) ) 
            es.tell(userid, '#multi', lang('map_time', tokens, playerlib.getPlayer(userid).get('lang') ) )
            xartv.logging.log("has been denied the right to RTV as not enough time in the map has passed", userid ) 
        else: 
            if allowVoting:
                players[steamid][0] = True
                vote_req_total = int( round(vote_req_p / 100. * len(playerlib.getPlayerList("#human") ) ) )
                if not votes_in: 
                    name = es.getplayername(userid) 
                    for user in es.getUseridList(): 
                        tokens = {}
                        tokens['player'] = es.getplayername(user)
                        es.tell(user, '#multi', lang('player_started', tokens, playerlib.getPlayer(user).get('lang') ) ) 
                        popuplib.unsend("nomination_menu", user)
                votes_in += 1
                xartv.logging.log("has rocked the vote, %s votes in" % votes_in, userid )
                
                if votes_in >= int(vote_req_min): 
                    if votes_in >= vote_req_total:
                        xartv.logging.log("Rock the vote has passed, starting the vote") 
                        rtv_init() 
                    else: 
                        name   = es.getplayername(userid)
                        tokens = {}
                        tokens['player'] = name
                        tokens['votes']  = vote_req_total - votes_in
                        xartv.logging.log("%s votes still needed to rock the vote" % (vote_req_total - votes_in) ) 
                        for user in es.getUseridList():
                            es.tell(user, '#multi', lang('req', tokens ,playerlib.getPlayer(user).get('lang') ) ) 
                else: 
                    name   = es.getplayername(userid)
                    tokens = {}
                    tokens['player'] = name
                    tokens['votes']  = int(vote_req_min) - votes_in
                    for user in es.getUseridList(): 
                        es.tell(user, '#multi', lang('req', tokens, playerlib.getPlayer(user).get('lang') ) ) 
            else: 
                es.tell(userid, '#multi', lang('started', lang=playerlib.getPlayer(userid).get('lang') ) ) 
    else:
        xartv.logging.log("has attempted to RTV more than once", userid) 
        es.tell(userid, '#multi', lang('1vote', lang=playerlib.getPlayer(userid).get('lang') ) ) 
Ejemplo n.º 59
0
def rtv():
    """ Executed when a user types 'rtv' in chat """
    global votes_in
    global vote_req_total
     
    userid  = es.getcmduserid() 
    steamid = es.getplayersteamid(userid) 
    entry(steamid) 
    if not players[steamid][0]:
        
        if (time.time() - map_start_time) < float(vote_req_time):
            tokens = {}
            tokens['time'] = int(float(vote_req_time) - int( time.time() - map_start_time ) ) 
            es.tell(userid, '#multi', lang('map_time', tokens, playerlib.getPlayer(userid).get('lang') ) )
            xartv.logging.log("has been denied the right to RTV as not enough time in the map has passed", userid ) 
        else: 
            if allowVoting:
                players[steamid][0] = True
                vote_req_total = int( round(vote_req_p / 100. * len(playerlib.getPlayerList("#human") ) ) )
                if not votes_in: 
                    name = es.getplayername(userid) 
                    for user in es.getUseridList(): 
                        tokens = {}
                        tokens['player'] = es.getplayername(user)
                        es.tell(user, '#multi', lang('player_started', tokens, playerlib.getPlayer(user).get('lang') ) ) 
                        popuplib.unsend("nomination_menu", user)
                votes_in += 1
                xartv.logging.log("has rocked the vote, %s votes in" % votes_in, userid )
                
                if votes_in >= int(vote_req_min): 
                    if votes_in >= vote_req_total:
                        xartv.logging.log("Rock the vote has passed, starting the vote") 
                        rtv_init() 
                    else: 
                        name   = es.getplayername(userid)
                        tokens = {}
                        tokens['player'] = name
                        tokens['votes']  = vote_req_total - votes_in
                        xartv.logging.log("%s votes still needed to rock the vote" % (vote_req_total - votes_in) ) 
                        for user in es.getUseridList():
                            es.tell(user, '#multi', lang('req', tokens ,playerlib.getPlayer(user).get('lang') ) ) 
                else: 
                    name   = es.getplayername(userid)
                    tokens = {}
                    tokens['player'] = name
                    tokens['votes']  = int(vote_req_min) - votes_in
                    for user in es.getUseridList(): 
                        es.tell(user, '#multi', lang('req', tokens, playerlib.getPlayer(user).get('lang') ) ) 
            else: 
                es.tell(userid, '#multi', lang('started', lang=playerlib.getPlayer(userid).get('lang') ) ) 
    else:
        xartv.logging.log("has attempted to RTV more than once", userid) 
        es.tell(userid, '#multi', lang('1vote', lang=playerlib.getPlayer(userid).get('lang') ) )