Changeset 10047 for code/branches/ScriptableController/src/orxonox/controllers/ControllerDirector.cc
- Timestamp:
- May 8, 2014, 10:16:23 AM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/ScriptableController/src/orxonox/controllers/ControllerDirector.cc
r10046 r10047 6 6 7 7 #include "ControllerDirector.h" 8 #include "ScriptController.h" 8 9 #include "core/CoreIncludes.h" 9 10 … … 32 33 this->entity_ = NULL; 33 34 this->pTrigger_ = NULL; 35 this->context_ = context; 34 36 } 35 37 … … 64 66 * triggered our event. 65 67 */ 66 static int ctrlid = 0; 67 // preparationTo(trigger); 68 // setNewController(controller); 68 static int ctrlid = 1; 69 bool prepok = preparationToTakeControl(trigger); 70 if( prepok == true) 71 { 72 /* Create a scriptcontroller object */ 73 ScriptController *newctrl = new ScriptController(this->context_); 74 75 /* Make the player we were given its slave */ 76 newctrl->setPlayer(this->player_); 77 78 /* Start controlling that object */ 79 newctrl->takeControl(ctrlid); 80 } 81 else 82 return; 69 83 70 84 /* Set up a luastate to use for running the scripts */ … … 90 104 91 105 92 /*bool ControllerDirector::preparationToTakeControl(BaseObject * trigger) {93 94 106 bool ControllerDirector::preparationToTakeControl(BaseObject * trigger) 107 { 108 this->pTrigger_ = orxonox_cast<PlayerTrigger*>(trigger); 95 109 this->player_ = NULL; 96 110 97 111 orxout() << "Preparation to take Control!" << endl; 112 98 113 // Check whether it is a player trigger and extract pawn from it 99 114 if(this->pTrigger_ != NULL) 100 115 { 101 102 player_ = this->pTrigger_->getTriggeringPlayer(); //Get the object which triggered the event. 116 // Get the object which triggered the event. 117 this->player_ = this->pTrigger_->getTriggeringPlayer(); 118 119 // Check if there actually was a player returned. 120 if( this->player_ == NULL) return false; 103 121 } 104 122 else 105 123 { 106 orxout() << "ControllerDirector::preparationToTakeControl Not a player trigger, can't extract pawn from it.." << endl; 124 orxout() << "ControllerDirector::preparationToTakeControl " 125 << "Not a player trigger, can't extract pawn from it.." << endl; 107 126 return false; 108 127 } 109 128 110 111 129 this->entity_ = this->player_->getControllableEntity(); 112 130 assert(this->entity_); 113 131 114 return true; 115 132 return true; 116 133 } 117 134 135 /* // Currently unused 118 136 void ControllerDirector::setNewController(Controller * controller) { 119 137 … … 124 142 this->player_->pauseControl(); 125 143 this->entity_->setController(controller); 126 this->setControllableEntity(this->entity_); 127 128 129 144 this->player_->startControl(this->entity_); 145 //this->setControllableEntity(this->entity_); 130 146 } 131 */147 */ 132 148 133 149
Note: See TracChangeset
for help on using the changeset viewer.