タスクシステム総合スレ part3
■ このスレッドは過去ログ倉庫に格納されています
0613名前は開発中のものです。
2009/01/17(土) 13:05:26ID:OfSsMU0eでもtemplate自体さっき調べながら書いたのでコンパイル通るかすら怪しい。そこは注意。
あとタスク化の対象をオブジェクトではなく関係性にしてみた。「自機」、「自機弾」でなく、「自機弾生成」のくくり。動詞?
typedef struct {
std::list<CPlayer *> *m_player;
std::list<CEnemy *> *m_enemy1;
} PlayerEnemy1_t;
std::list<CPlayer *> m_player;
std::list<CEnemy1 *> m_enemy1;
std::list<CBulletPlayer1 *> m_bullet_player1;
std::list<CBulletEnemy1 *> m_bullet_enemy1;
PlayerEnemy_t m_player_enemy;
Task<PlayerEnemy_t, (*collisionPlayerEnemy)(PlayerEnemy_t *)> m_task_collision_player_enemy;
Task<PlayerPBullet1_t, (*generatePlayerBullet)(PlayerPBullet1_t *)> m_task_generate_playerbullet;
template<class Tdata, class Talgorithm> class Task : public ITask {
private:
Tdata *m_data;
Talgorithm *m_algorithm;
public:
void set(Tdata *data, Talgorithm *algorithm) {
m_data = data;
m_algorithm = algorithm;
}
virtual void update(void) {
m_algorithm(m_data);
}
};
■ このスレッドは過去ログ倉庫に格納されています