Пример #1
0
 def encounter_help_cancel(self):
     self._checkloc("encounter_help")
     other = User.get(self.user['help_for'])
     if other['encounter_help'] != None:
         other['encounter_help'] = [id for id in other['encounter_help'] if id != self.user.id]
     self.user.go('default')
     other.update()
Пример #2
0
 def duel_cancel(self):
     ' Отменить дуэль '
     self._checkloc("default")
     id = str(self.q["id"])
     other = User.get(id)
     if other == None or self.user.id == id:
         self._error("Invalid other")
     self.user.duel_cancel(other)
Пример #3
0
 def duel(self):
     ' Вызвать на дуэль игрока '
     self._checkloc("default")
     id = str(self.q["id"])
     other = User.get(id)
     if other == None or self.user.id == id:
         self._error("Invalid other")
     if not other.online:
         self._reject(u"Пользователь вышел из игры")
     self.user.duel_invite(other)
Пример #4
0
 def get_current_user(self):
     try:
         context.current = self
         context.cache = {}
         context.save_users = set()
         context.save_fights = set()
         u = User.get(self.get_secure_cookie("user"), False)
         u.update_activity()
         return u
     except:
         return None
Пример #5
0
 def duel_accept(self):
     ' Принять вызов на дуэль '
     self._checkloc("default")
     id = str(self.q["id"])
     other = User.get(id)
     if other == None or self.user.id == id:
         self._error("Invalid other")
     if not other.online:
         self._reject(u"Пользователь вышел из игры")
     try:
         self.user.duel_accept(other)
     except MyException as e:
         self._reject(e.message)
Пример #6
0
 def encounter_help(self):
     self._checkloc("default")
     id = str(self.q["id"])
     other = User.get(id)
     if other == None or self.user.id == id:
         self._error("Invalid other")
     if not other.online:
         self._reject(u"Пользователь вышел из игры")
     if other['loc'] != 'encounter':
         self._reject(u"Вы опоздали, битва уже началась!")
     if other['encounter_help'] == None:
         self._reject(u"Игрок не звал на помощь.")
     if other['zone'] != self.user['zone']:
         self._reject(u"Игрок находится в другой локации.")
     if self.user.id in other['encounter_help']:
         self._error(u"Already in encounter_help list.")
     other['encounter_help'].append(self.user.id)
     self.user['help_for'] = other.id
     self.user.go('encounter_help')
     other.update()
     for u in other.get_encounter_helpers():
         u.update()
Пример #7
0
def load_user(userid):
    return User.get(userid)
Пример #8
0
 def user(name):
     res = User.get(str(db().user.find_one({'login': name.lower()})['_id']))
     to_save.append(res)
     return res