API/DF.project
bulletmanager.h & bulletmanager.cpp
猫猫
2014. 10. 9. 17:28
반응형
//////////////////bulletmanager.h///////////////
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | #pragma once #include "Header.h" #include "Scene.h" #include "ObjectBullet.h" #include "ST.h" #include "resource.h" #define MAX_BULLET 256 class BulletManager { private: BulletManager(){ m_hBulletBmp =ST::call()->GetBmp(IDB_BITMAP4); m_pGround = NULL; memset(m_pBullet, NULL, sizeof(m_pBullet)); } public: ~BulletManager() { delete instance; } static BulletManager* instance; static BulletManager* sharedManager() { if( instance == NULL ) instance = new BulletManager; return instance; } void setScene(Scene* _scene); void createBullet(CGPoint pos, int dir); protected: HBITMAP m_hBulletBmp; Scene* m_pGround; ObjectBullet* m_pBullet[MAX_BULLET]; }; |
/////////////////bulletmanaer.cpp//////////////////////////////
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #include "BulletManager.h" #include "ST.h" void BulletManager::setScene(Scene* _scene) { m_pGround = _scene; } void BulletManager::createBullet(CGPoint pos, int dir) { if(m_pGround == NULL || m_hBulletBmp == NULL) return; // 비어있음 필요없음. for(int i = 0 ; i<MAX_BULLET; i++) { if(m_pBullet[i] != NULL) continue; m_pBullet[i] = new ObjectBullet; m_pBullet[i]->init(m_hBulletBmp); m_pBullet[i]->setDirection(dir); m_pBullet[i]->setPosition(pos); m_pBullet[i]->SetHeight(-130); m_pGround->addObject(m_pBullet[i]); break; } } |
반응형