Author: dhains
Date: Tue Jun 17 06:54:45 2008
New Revision: 27249

URL: http://svn.gna.org/viewcvs/wesnoth?rev=27249&view=rev
Log:
*made Formula AI object persistant
*Other AI types remain unchanged, with the exception they now use a 
boost::shared_ptr instead of util::scoped_ptr

Modified:
    trunk/src/playsingle_controller.cpp

Modified: trunk/src/playsingle_controller.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/playsingle_controller.cpp?rev=27249&r1=27248&r2=27249&view=diff
==============================================================================
--- trunk/src/playsingle_controller.cpp (original)
+++ trunk/src/playsingle_controller.cpp Tue Jun 17 06:54:45 2008
@@ -21,6 +21,7 @@
 #include "playsingle_controller.hpp"
 
 #include "construct_dialog.hpp"
+#include "ai.hpp"
 #include "ai_interface.hpp"
 #include "game_errors.hpp"
 #include "gettext.hpp"
@@ -704,7 +705,12 @@
                        map_, teams_, player_number_, units_, replay_sender_, 
undo_stack_);
 
        ai_interface::info 
ai_info(*gui_,map_,units_,teams_,player_number_,status_, turn_data, gamestate_);
-       util::scoped_ptr<ai_interface> 
ai_obj(create_ai(current_team().ai_algorithm(),ai_info));
+       std::string ai_algorithm = current_team().ai_algorithm();
+
+       boost::shared_ptr<ai_interface> ai_obj(ai_algorithm == "formula_ai" ? 
+                       
ai_manager::get_ai(ai_info,current_team().name(),ai_algorithm) : 
+                       boost::shared_ptr<ai_interface> 
(create_ai(ai_algorithm,ai_info)));
+
        ai_obj->user_interact().attach_handler(this);
        ai_obj->unit_recruited().attach_handler(this);
        ai_obj->unit_moved().attach_handler(this);


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to