The Matrix Triology

int main()
{
    createEntity(Entity::Neo);
    createEntity(Entity::Morpheus);
    createEntity(Entity::Trinity);

    Entity::Neo.Pos = follow_white_rabbit();

    if(ChoosePill(Entity::Neo)==Blue) return 1;
   
    int smithsAmount = 1;
    int MoviesCount = 3;
   
    for(int i=0; i<MoviesCount ; ++i)  
    {
          createEntity(Entity::AgentSmith, smithsAmount);
         
          set_speed(0.1f);
          fight();
          set_speed(1.0f);

          //Increment Agent's Amount
          smithsAmount*=1000;
         
          if(isdead(Entity::Trinity) && !has_eyes(Entity::Neo))
          {
                  try
                  {
                        Entity::AgentSmith+=Entity::Neo;
                  }
                   catch(...)
                  {
                        reboot_matrix();
                  }
          }
    }    
   
    return credits();

}
Vote up this code0
  • x3nium

    there is a bug:
    credits() method should be inside FOR loop.