Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
82bb693915
@ -63,22 +63,38 @@ bool Game::manageInvaders(){
|
||||
|
||||
// moving
|
||||
// TODO fix this lol
|
||||
|
||||
if(direction){ // go to the right
|
||||
int end = basePos.getX(); // start Position
|
||||
end+= grid.size() * confData.invadersSize; // add the invaders
|
||||
end+= (grid.size()-1) * confData.invadersDistance; // add the invadersDistance between invaders
|
||||
|
||||
// you got the end position of the invader crowd !
|
||||
unsigned relativeScreenWidth = pm->getScreenWidth();
|
||||
size_t i = grid.size()-1;
|
||||
while (grid[i].hasNoValid()){
|
||||
relativeScreenWidth += confData.invadersSize + confData.invadersDistance;
|
||||
--i;
|
||||
}
|
||||
|
||||
if(end + confData.invadersSpeed < pm->getScreenWidth()){
|
||||
if(end + confData.invadersSpeed < relativeScreenWidth){
|
||||
basePos.setX(basePos.getX() + confData.invadersSpeed);
|
||||
}else{
|
||||
}
|
||||
else{
|
||||
basePos.setY(basePos.getY() + confData.invadersSize + confData.invadersDistance);
|
||||
direction = !direction;
|
||||
return true;
|
||||
}
|
||||
}else{
|
||||
if(basePos.getX() >= confData.invadersSpeed){
|
||||
}
|
||||
else{
|
||||
size_t i = 0;
|
||||
unsigned relativeBasePos = basePos.getX();
|
||||
while (grid[i].hasNoValid()){
|
||||
relativeBasePos += confData.invadersSize + confData.invadersDistance;
|
||||
++i;
|
||||
}
|
||||
|
||||
if(relativeBasePos >= confData.invadersSpeed){
|
||||
basePos.setX(basePos.getX() - confData.invadersSpeed);
|
||||
}else{
|
||||
basePos.setY(basePos.getY() + confData.invadersSize + confData.invadersDistance);
|
||||
|
Loading…
Reference in New Issue
Block a user