~ubuntu-branches/ubuntu/maverick/lordsawar/maverick

« back to all changes in this revision

Viewing changes to src/game-server.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Barry deFreese
  • Date: 2010-04-10 09:29:33 UTC
  • mfrom: (1.1.9 upstream) (5.1.5 sid)
  • Revision ID: james.westby@ubuntu.com-20100410092933-23uq4dxig30kmtcw
Tags: 0.1.8-1
* New upstream release.
* Add misc:Depends for -data package.
* Bump Standards Version to 3.8.4. (No changes needed).

Show diffs side-by-side

added added

removed removed

Lines of Context:
635
635
    {
636
636
      bool connected = false;
637
637
      players.push_back(*i);
638
 
      if ((*i)->getType() == Player::AI_FAST ||
639
 
          (*i)->getType() == Player::AI_SMART ||
640
 
          (*i)->getType() == Player::AI_DUMMY)
 
638
      if ((*i)->isComputer() == true)
641
639
        connected = true;
642
640
      NetworkPlayer *new_p = new NetworkPlayer(**i);
643
641
      new_p->setConnected(connected);
645
643
    }
646
644
 
647
645
 
648
 
  // send the map
649
 
  std::ostringstream os;
650
 
  XML_Helper helper(&os);
651
 
  d_game_scenario->saveWithHelper(helper);
 
646
  // send the map, and save it to a file somewhere temporarily
 
647
  std::string tmpfile = "lw.XXXX";
 
648
  int fd = Glib::file_open_tmp(tmpfile, "lw.XXXX");
 
649
  close(fd);
 
650
  File::erase(tmpfile);
 
651
  tmpfile += ".sav";
 
652
 
 
653
  d_game_scenario->saveGame(tmpfile, "sav");
 
654
 
652
655
  std::cerr << "sending map" << std::endl;
653
 
  network_server->send(part->conn, MESSAGE_TYPE_SENDING_MAP, os.str());
 
656
  network_server->send(part->conn, MESSAGE_TYPE_SENDING_MAP, tmpfile);
 
657
  File::erase (tmpfile);
654
658
 
655
659
  // unhack the players
656
660
  std::vector<Player*>::iterator j = players.begin();