void Way::fillStepsList(Monster& monster, int index) { monster.emptyStepsList(); monster.addStep(mExitPosition); ++mValueParameter; sf::Vector2i actualPosition(mExitPosition); while(mValueParameter != -1) { if(mWorkingBoard[actualPosition.x - 1][actualPosition.y] == mValueParameter)//left { actualPosition.x-=1; monster.addStep(actualPosition); } else if(mWorkingBoard[actualPosition.x + 1][actualPosition.y] == mValueParameter)//right { actualPosition.x+=1; monster.addStep(actualPosition); } else if(mWorkingBoard[actualPosition.x][actualPosition.y - 1] == mValueParameter)//up { actualPosition.y-=1; monster.addStep(actualPosition); } else if(mWorkingBoard[actualPosition.x][actualPosition.y + 1] == mValueParameter)//down { actualPosition.y+=1; monster.addStep(actualPosition); } ++mValueParameter; } }