}
pos->Text(VectorString(c->GetSituation().Position(), 2));
- tile->Text(c->GetSituation().GetTileType().label);
+ tile->Text(c->GetSituation().GetTileType().label + (
+ c->GetSituation().OnGround()
+ ? (c->GetSituation().Moving() ? " (moving)" : " (standing)")
+ : (c->GetSituation().Moving() ? " (flying)" : " (hovering)")
+ ));
head->Text(VectorString(c->GetSituation().Heading(), 2));
const creature::Composition &comp = c->GetComposition();
if (comp.size() < components.size()) {
+ components.clear();
composition->Clear();
- while (comp.size() < components.size()) {
- delete components.back();
- components.pop_back();
- }
- for (auto l : components) {
- composition->Add(l);
- }
- } else {
- while (comp.size() > components.size()) {
- components.emplace_back(new Label(assets.fonts.medium));
- composition->Add(components.back());
- }
+ }
+ while (comp.size() > components.size()) {
+ components.emplace_back(new Label(assets.fonts.medium));
+ composition->Add(components.back());
}
{
int i = 0;