예제 #1
0
파일: database.py 프로젝트: rcbrgs/sdtp
 def create_tables ( self ):
     self.controller.log ( )
     self.lp_table = lp_table ( )
     self.portals = portals_table ( )
     global Base
     Base.metadata.create_all ( self.engine )
     self.log ( "debug", "database.create_tables returning." )
예제 #2
0
파일: portals.py 프로젝트: rcbrgs/sdtp
 def create_portal_from_coordinates ( self, y_quadrant, y_value, x_quadrant, x_value, z_value, name, public = True ):
     if not public:
         return
     position_x = int ( float ( x_value ) )
     if str ( x_quadrant ) == "W":
         position_x *= -1
     position_y = int ( float ( y_value ) )
     if str ( y_quadrant ) == "S":
         position_y *= -1
     session = self.controller.database.get_session ( )
     session.add ( portals_table ( steamid = -1, name = name, longitude = position_x, latitude = position_y, height = int ( float ( z_value ) ) ) )
     self.controller.database.let_session ( session )
예제 #3
0
파일: portals.py 프로젝트: rcbrgs/sdtp
 def add_portal ( self, possible_player_name, possible_portal_name ):
     session = self.controller.database.get_session ( )
     player_query = session.query ( lp_table ).filter ( lp_table.name == possible_player_name )
     if player_query.count ( ) == 0:
         self.log ( "info", "unable to match '{}' to a player name in lp table.".format ( possible_player_name ) )
         self.controller.database.let_session ( session )
         return
     player_lp = player_query.one ( )
     session.add_all ( [
         portals_table (
             steamid = player_lp.steamid,
             name = possible_portal_name,
             longitude = player_lp.longitude,
             height = player_lp.height,
             latitude = player_lp.latitude )
     ] )
     self.controller.telnet.write ( 'pm {} "Portal {} created."'.format ( player_lp.steamid, possible_portal_name ) )
     self.controller.database.let_session ( session )