Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. class Player(PlayerMixin):
  2.     def __init__(self, index):
  3.         super().__init__(index)
  4.  
  5.         object.__setattr__(self, '_index', index)
  6.  
  7.         self.playerinfo = playerinfo_from_index(index)
  8.         self.permissions = auth_manager.get_player_permissions_from_steamid(self.playerinfo.steamid)
  9.  
  10.     @property
  11.     def index(self):
  12.         return self._index
  13.  
  14.     @property
  15.     def name(self):
  16.         return self.playerinfo.name
  17.    
  18.     def set_noclip(self, enable):
  19.         if enable:
  20.             self.move_type = MoveType.NOCLIP
  21.         else:
  22.             self.move_type = MoveType.WALK
  23.    
  24.     def get_noclip(self):
  25.         return self.move_type == MoveType.NOCLIP
  26.  
  27.     noclip = property(get_noclip, set_noclip)
  28.  
  29.     @property
  30.     def view_coordinates(self):
  31.         start_vec = self.get_eye_location()
  32.         end_vec = start_vec + self.view_vector * MAX_TRACE_LENGTH
  33.  
  34.         engine_trace.trace_ray(
  35.             Ray(start_vec, end_vec), ContentMasks.ALL, TraceFilterSimple((self, )), GAMETRACE
  36.         )
  37.  
  38.         return GAMETRACE.end_position