//コマ表示 void GameScene::showBlock() { //8×8のコマを作成する for(int x = 0;x < MAX_BLOCK_X; x++) { for(int y = 0; y < MAX_BLOCK_Y; y++) { //ランダムでコマを作成 kBlock blockType = (kBlock) (rand() %kBlockCount); //対応するコマ配列様にタグを追加 int tag = getTag(x, y); m_blockTags[blockType].push_back(tag); //コマを作成 BlockSprite* pBlock = BlockSprite::createWithBlockType(blockType); pBlock->setPosition(getPosition(x, y)); m_background->addChild(pBlock,kZOrderBlock,tag); } } }
void GameScene::createBlock() { CCLOG("createBlock"); int tag = kTagBaseBlock; for (int x = 0; x < kMaxBlockLeft; x++) { vector<BlockSprite*> blocks; for (int y = 0; y < kMaxBlockTop; y++) { kBlock blockType = (kBlock)(rand() % kBlockCount); BlockSprite* block = BlockSprite::create(tag, blockType, kStatusNormal); block->setPosition(getPosition(x, y)); background->addChild(block, kZOrderBlock, tag); blocks.push_back(block); tag++; } blockFields.push_back(blocks); } blockAreaStartPoint = getPosition(0, 0); blockAreaEndPoint = getPosition(kMaxBlockLeft-1, kMaxBlockTop-1); }