Fix adding doors to levels
This commit is contained in:
+21
-9
@@ -343,18 +343,30 @@ register struct mkroom *aroom;
|
|||||||
{
|
{
|
||||||
register struct mkroom *broom;
|
register struct mkroom *broom;
|
||||||
register int tmp;
|
register int tmp;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if (aroom->doorct == 0)
|
||||||
|
aroom->fdoor = doorindex;
|
||||||
|
|
||||||
aroom->doorct++;
|
aroom->doorct++;
|
||||||
broom = aroom+1;
|
|
||||||
if(broom->hx < 0)
|
for (tmp = doorindex; tmp > aroom->fdoor; tmp--)
|
||||||
tmp = doorindex;
|
doors[tmp] = doors[tmp - 1];
|
||||||
else
|
|
||||||
for(tmp = doorindex; tmp > broom->fdoor; tmp--)
|
for (i = 0; i < nroom; i++) {
|
||||||
doors[tmp] = doors[tmp-1];
|
broom = &rooms[i];
|
||||||
|
if (broom != aroom && broom->doorct && broom->fdoor >= aroom->fdoor)
|
||||||
|
broom->fdoor++;
|
||||||
|
}
|
||||||
|
for (i = 0; i < nsubroom; i++) {
|
||||||
|
broom = &subrooms[i];
|
||||||
|
if (broom != aroom && broom->doorct && broom->fdoor >= aroom->fdoor)
|
||||||
|
broom->fdoor++;
|
||||||
|
}
|
||||||
|
|
||||||
doorindex++;
|
doorindex++;
|
||||||
doors[tmp].x = x;
|
doors[aroom->fdoor].x = x;
|
||||||
doors[tmp].y = y;
|
doors[aroom->fdoor].y = y;
|
||||||
for( ; broom->hx >= 0; broom++) broom->fdoor++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
STATIC_OVL void
|
STATIC_OVL void
|
||||||
|
|||||||
Reference in New Issue
Block a user