|
|
|
@ -7,7 +7,7 @@ int getOpenPos(){ |
|
|
|
|
spaceExists: |
|
|
|
|
openPos.y=(rand()%(viewportWinRows-2)+1); |
|
|
|
|
openPos.x=(rand()%(viewportWinCols-2)+1); |
|
|
|
|
if(mvwinch(viewportWin,openPos.y,openPos.x)==' '){ |
|
|
|
|
if(mvwinch(viewportWin,openPos.y,openPos.x)==' ' && ((openPos.y > allEntities[0].curYpos+5 || openPos.y < allEntities[0].curYpos-5) || (openPos.x > allEntities[0].curXpos+5 || openPos.x < allEntities[0].curXpos-5))){ |
|
|
|
|
int i; |
|
|
|
|
for(i=1;i<MAX_ENTITIES;i++){ |
|
|
|
|
if(allEntities[i].isAlive && allEntities[i].curYpos==openPos.y && allEntities[i].curXpos==openPos.x){ |
|
|
|
@ -15,6 +15,7 @@ int getOpenPos(){ |
|
|
|
|
} |
|
|
|
|
else{ |
|
|
|
|
chooseAnother=0; |
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -22,7 +23,7 @@ int getOpenPos(){ |
|
|
|
|
int x,y; |
|
|
|
|
for(y=0;y<viewportWinRows;y++){ |
|
|
|
|
for(x=0;x<viewportWinCols;x++){ |
|
|
|
|
if(mvwinch(viewportWin,y,x)==' '){
|
|
|
|
|
if(mvwinch(viewportWin,y,x)==' ' && ((y > allEntities[0].curYpos+5 || y < allEntities[0].curYpos-5) || (x > allEntities[0].curXpos+5 || x < allEntities[0].curXpos-5))){ |
|
|
|
|
chooseAnother=1; |
|
|
|
|
goto spaceExists; |
|
|
|
|
} |
|
|
|
@ -31,7 +32,6 @@ int getOpenPos(){ |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void getNextPos(int y, int x, int y2, int x2){ |
|
|
|
|