Blocks are assumed to be created from bottom to top.

Co-authored-by: sigonasr2 <sigonasr2@gmail.com>
master
sigonasr2 2 years ago
parent dc9404d220
commit a76ccfc48a
  1. 6
      Board.cpp
  2. BIN
      C++ProjectTemplate
  3. 4
      main.cpp

@ -39,6 +39,7 @@ void Board::removeClump(int ind){
void Board::convertClump(int ind){
BlockClump&c=clumps[ind];
std::vector<BlockClump> clumpsToAdd;
for (Block&b:c.getBlocks()){
if (b.markedForDeletion) continue;
bool emptyAirBelow=true;
@ -64,12 +65,15 @@ void Board::convertClump(int ind){
}
c2.y=c.y;
}
clumps.push_back(c2);
clumpsToAdd.push_back(c2);
} else {
b.pos=c.getBlockPosition(b);
cols[b.pos.x/12].push_back(b);
}
}
for (BlockClump&bc:clumpsToAdd) {
clumps.push_back(bc);
}
removeClump(ind);
}

Binary file not shown.

@ -26,11 +26,11 @@ bool Meteos::OnUserUpdate(float fElapsedTime)
fElapsedTime=std::min(fElapsedTime,1/60.f);
if (!onlyOnce) {
BlockClump c;
c.addBlock(0,2,BlockColor::RED);
c.addBlock(0,1,BlockColor::RED);
c.addBlock(1,0,BlockColor::RED);
c.addBlock(2,0,BlockColor::RED);
c.addBlock(0,0,BlockColor::RED);
c.addBlock(0,1,BlockColor::RED);
c.addBlock(0,2,BlockColor::RED);
c.y=120;
gameBoard.addClump(c);
onlyOnce=true;

Loading…
Cancel
Save