~mpredotka/machines-vs-machines/level-backgrounds-sand

« back to all changes in this revision

Viewing changes to enemies.cpp

  • Committer: Michael Zanetti
  • Date: 2014-07-13 21:23:43 UTC
  • Revision ID: michael.zanetti@canonical.com-20140713212343-clyy2fm9kgwocx7x
performance optimizations, add run_on_ubuntu_touch script

Show diffs side-by-side

added added

removed removed

Lines of Context:
32
32
        return m_enemies.at(index.row())->spriteCount();
33
33
    case RoleFrameRate:
34
34
        return m_enemies.at(index.row())->frameRate();
 
35
    case RoleRunning:
 
36
        return m_enemies.at(index.row())->running();
35
37
    case RoleProgress:
36
38
        return m_enemies.at(index.row())->progress();
37
39
    case RoleX:
65
67
    roles.insert(RoleTravelledDistance, "travelledDistance");
66
68
    roles.insert(RoleSpriteCount, "spriteCount");
67
69
    roles.insert(RoleFrameRate, "frameRate");
 
70
    roles.insert(RoleRunning, "running");
68
71
    roles.insert(RoleProgress, "progress");
69
72
    roles.insert(RoleX, "x");
70
73
    roles.insert(RoleY, "y");
81
84
void Enemies::addEnemy(Enemy *enemy)
82
85
{
83
86
    enemy->setParent(this);
 
87
    connect(enemy, &Enemy::runningChanged, this, &Enemies::itemRunningChanged);
84
88
    connect(enemy, &Enemy::progressChanged, this, &Enemies::itemProgressChanged);
85
89
    connect(enemy, &Enemy::currentFieldChanged, this, &Enemies::itemCurrentFieldChanged);
86
90
    connect(enemy, &Enemy::speedChanged, this, &Enemies::itemSpeedChanged);
108
112
    endResetModel();
109
113
}
110
114
 
 
115
void Enemies::itemRunningChanged()
 
116
{
 
117
    Enemy *enemy = static_cast<Enemy*>(sender());
 
118
    int idx = m_enemies.indexOf(enemy);
 
119
    emit dataChanged(index(idx), index(idx), QVector<int>() << RoleRunning);
 
120
}
 
121
 
111
122
void Enemies::itemProgressChanged()
112
123
{
113
124
    Enemy *enemy = static_cast<Enemy*>(sender());