/[enigma]/enigma/src/world.cc
ViewVC logotype

Diff of /enigma/src/world.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.35 by reallysoft, Tue May 20 13:49:22 2003 UTC revision 1.36 by reallysoft, Wed May 28 12:29:53 2003 UTC
# Line 776  world::Load(const string &name) Line 776  world::Load(const string &name)
776      return ok;      return ok;
777  }  }
778    
779    
780  bool  bool
781  world::InitWorld()  world::InitWorld()
782  {  {
783      laser::RecalcLight();      laser::RecalcLight();
784      laser::RecalcLightNow();    // recalculate laser beams if necessary      laser::RecalcLightNow();    // recalculate laser beams if necessary
785    
786      int first_player = INT_MAX;      bool seen_player0 = false;
787    
788      for (ActorList::iterator i=level->actorlist.begin();      for (ActorList::iterator i=level->actorlist.begin();
789           i!=level->actorlist.end(); ++i)           i != level->actorlist.end(); ++i)
790      {      {
791          int iplayer=-1;          int    iplayer;
792          Actor *a=*i;          Actor *a = *i;
793    
794          if (a->int_attrib("player", &iplayer)) {          if (a->int_attrib("player", &iplayer)) {
795              player::AddActor(iplayer,a);              player::AddActor(iplayer,a);
796              if (first_player > iplayer) first_player = iplayer;              if (iplayer == 0) seen_player0 = true;
797            }
798            else {
799                fprintf(stderr, "Error: Actor has no 'player' attribute!\n");
800                return false;
801          }          }
802      }      }
803    
804      if (first_player != 0) {      if (!seen_player0) {
805          fprintf(stderr, "Error: No player 0 defined!\n");          fprintf(stderr, "Error: No player 0 defined!\n");
806          return false;          return false;
807      }      }
808    
809      player::InitMoveCounter();      player::InitMoveCounter();
810      display::StatusBar *sb = display::GetStatusBar();      display::StatusBar *sb = display::GetStatusBar();
 //    sb->set_counter(player::GetMoveCounter());  
811      sb->show_move_counter (enigma::ShowMoves);      sb->show_move_counter (enigma::ShowMoves);
812    
813      return true;      return true;
# Line 1217  world::AddActor(double x, double y, Acto Line 1222  world::AddActor(double x, double y, Acto
1222      V2 pos(x,y);      V2 pos(x,y);
1223      level->actorlist.push_back(a);      level->actorlist.push_back(a);
1224      a->get_actorinfo()->pos = pos;      a->get_actorinfo()->pos = pos;
1225      a->on_creation(pos);  
1226      ReleaseActor(a);      // now done in AddActor(int, Actor*) :
1227        //     a->on_creation(pos);
1228        //     ReleaseActor(a);
1229  }  }
1230    
1231  Actor *  Actor *

Legend:
Removed from v.1.35  
changed lines
  Added in v.1.36

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26