예제 #1
0
파일: game.py 프로젝트: vhp-jjh/online-tag
def main():
  if len(sys.argv) > 1:
    print(sys.argv[1])
    client = Client(Engine(), sys.argv[1], constants.SERVER_PORT)
  else:
    client = Client(Engine(), constants.SERVER_ADDR, constants.SERVER_PORT)

  gd = client.get_game_start_data()
  field = Gui(gd.width, gd.height, 1.0)
  engine = client.update_engine()
  players = engine.get_players()
  printd("CLIENT: players = {0}".format(players))
  game = Game(players) # TODO: figure out if we want to bother passing this

  # up, down, left, right
  dirs = (0, 0, 0, 0)
  while True:
    start_time = time.time()

    #get input
    dirs = game.get_input(dirs)

    #talk to server
    client.update_player(PlayerUpdate(dirs))    #send my velocity to the server
    engine = client.update_engine()
    game.players = engine.get_players()

    #draw
    field.fill_black()
    for p in game.players:
      field.draw_player(p.get_pos(), p.get_color(), gd.radius, p.is_it())
    pygame.display.flip()

    sleep_time = constants.LOOP_TIME - (time.time() - start_time)
    if sleep_time > 0:
      time.sleep(sleep_time)