|
10 | 10 | #include "Behaviour/Entity/Item/ItemBehaviour.h" |
11 | 11 |
|
12 | 12 | using namespace vg::core; |
| 13 | +using namespace vg::engine; |
13 | 14 |
|
14 | 15 | // Static member init |
15 | 16 | vg::engine::IEngine * Game::s_engine = nullptr; |
@@ -96,24 +97,30 @@ void Game::OnPlay() |
96 | 97 | const IGameObject * root = scene->GetRoot(); |
97 | 98 |
|
98 | 99 | // cache characters |
99 | | - auto allCharacters = (vg::core::vector<CharacterBehaviour *>&)root->GetComponentsByType("CharacterBehaviour", false, true); // search children too |
| 100 | + auto allCharacters = root->GetComponentsByType("CharacterBehaviour", false, true); // search children too |
100 | 101 | for (uint j = 0; j < allCharacters.size(); ++j) |
101 | 102 | { |
102 | | - CharacterBehaviour * character = allCharacters[j]; |
| 103 | + CharacterBehaviour * character = (CharacterBehaviour * )allCharacters[j]; |
103 | 104 | m_characters[asInteger(character->getCharacterType())].push_back(character); |
104 | 105 | } |
105 | 106 |
|
106 | 107 | // cache items |
107 | | - auto allItems = (vg::core::vector<ItemBehaviour *>&)root->GetComponentsByType("ItemBehaviour", false, true); // search children too |
| 108 | + auto allItems = root->GetComponentsByType("ItemBehaviour", false, true); // search children too |
108 | 109 | for (uint j = 0; j < allItems.size(); ++j) |
109 | 110 | { |
110 | | - ItemBehaviour * item = allItems[j]; |
| 111 | + ItemBehaviour * item = (ItemBehaviour*)allItems[j]; |
111 | 112 | m_items[asInteger(item->getItemType())].push_back(item); |
112 | 113 | } |
113 | 114 |
|
114 | 115 | // cache vehicle list |
115 | | - m_vehicles = (vg::core::vector<vg::engine::IVehicleComponent *>&)root->GetComponentsByType("VehicleComponent", false, true); // search children too |
116 | | - |
| 116 | + auto vehicles = root->GetComponentsByType("VehicleComponent", false, true); // search children too |
| 117 | + |
| 118 | + m_vehicles.reserve(vehicles.size()); |
| 119 | + for (uint j = 0; j < vehicles.size(); ++j) |
| 120 | + { |
| 121 | + IVehicleComponent * vehicle = (IVehicleComponent*)vehicles[j]; |
| 122 | + m_vehicles.push_back(vehicle); |
| 123 | + } |
117 | 124 | } |
118 | 125 |
|
119 | 126 | for (uint i = 0; i < enumCount<CharacterType>(); ++i) |
|
0 commit comments