Skip to content

Commit 2925d97

Browse files
committed
Fixed some PreventRoomOverlap issues
1 parent 6933225 commit 2925d97

File tree

1 file changed

+19
-10
lines changed

1 file changed

+19
-10
lines changed

MapSystem.bb

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2038,7 +2038,6 @@ Function CreateRoom.Rooms(zone%, roomshape%, x#, y#, z#, name$ = "")
20382038
AddLightCones(r)
20392039
EndIf
20402040

2041-
CalculateRoomExtents(r)
20422041
Return r
20432042
EndIf
20442043
Next
@@ -2078,7 +2077,6 @@ Function CreateRoom.Rooms(zone%, roomshape%, x#, y#, z#, name$ = "")
20782077
AddLightCones(r)
20792078
EndIf
20802079

2081-
CalculateRoomExtents(r)
20822080
Return r
20832081
End If
20842082
EndIf
@@ -7558,24 +7556,29 @@ Function CreateMap()
75587556
r = CreateRoom(zone, ROOM4, x * 8, 0, y * 8, MapName(x, y))
75597557
MapRoomID(ROOM4)=MapRoomID(ROOM4)+1
75607558
End Select
7559+
CalculateRoomExtents(r)
75617560

75627561
EndIf
75637562

75647563
Next
75657564
Next
75667565

75677566
r = CreateRoom(0, ROOM1, (MapWidth-1) * 8, 500, 8, "gatea")
7567+
CalculateRoomExtents(r)
75687568
MapRoomID(ROOM1)=MapRoomID(ROOM1)+1
75697569

75707570
r = CreateRoom(0, ROOM1, (MapWidth-1) * 8, 0, (MapHeight-1) * 8, "pocketdimension")
7571+
CalculateRoomExtents(r)
75717572
MapRoomID(ROOM1)=MapRoomID(ROOM1)+1
75727573

75737574
If IntroEnabled
75747575
r = CreateRoom(0, ROOM1, 8, 0, (MapHeight-1) * 8, "173")
7576+
CalculateRoomExtents(r)
75757577
MapRoomID(ROOM1)=MapRoomID(ROOM1)+1
75767578
EndIf
75777579

75787580
r = CreateRoom(0, ROOM1, 8, 800, 0, "dimension1499")
7581+
CalculateRoomExtents(r)
75797582
MapRoomID(ROOM1)=MapRoomID(ROOM1)+1
75807583

75817584
For r.Rooms = Each Rooms
@@ -8562,15 +8565,15 @@ Function CalculateRoomExtents(r.Rooms)
85628565

85638566
;convert from the rooms local space to world space
85648567
TFormVector(r\RoomTemplate\MinX, r\RoomTemplate\MinY, r\RoomTemplate\MinZ, r\obj, 0)
8565-
r\MinX = TFormedX() + shrinkAmount + r\x
8566-
r\MinY = TFormedY() + shrinkAmount
8567-
r\MinZ = TFormedZ() + shrinkAmount + r\z
8568+
r\MinX = TFormedX()
8569+
r\MinY = TFormedY()
8570+
r\MinZ = TFormedZ()
85688571

85698572
;convert from the rooms local space to world space
85708573
TFormVector(r\RoomTemplate\MaxX, r\RoomTemplate\MaxY, r\RoomTemplate\MaxZ, r\obj, 0)
8571-
r\MaxX = TFormedX() - shrinkAmount + r\x
8572-
r\MaxY = TFormedY() - shrinkAmount
8573-
r\MaxZ = TFormedZ() - shrinkAmount + r\z
8574+
r\MaxX = TFormedX()
8575+
r\MaxY = TFormedY()
8576+
r\MaxZ = TFormedZ()
85748577

85758578
If (r\MinX > r\MaxX) Then
85768579
Local tempX# = r\MaxX
@@ -8583,6 +8586,14 @@ Function CalculateRoomExtents(r.Rooms)
85838586
r\MinZ = tempZ
85848587
EndIf
85858588

8589+
r\MinX = r\MinX + shrinkAmount + r\x
8590+
r\MinY = r\MinY + shrinkAmount
8591+
r\MinZ = r\MinZ + shrinkAmount + r\z
8592+
8593+
r\MaxX = r\MaxX - shrinkAmount + r\x
8594+
r\MaxY = r\MaxY - shrinkAmount
8595+
r\MaxZ = r\MaxZ - shrinkAmount + r\z
8596+
85868597
DebugLog("roomextents: "+r\MinX+", "+r\MinY +", "+r\MinZ +", "+r\MaxX +", "+r\MaxY+", "+r\MaxZ)
85878598
End Function
85888599

@@ -8713,8 +8724,6 @@ Function PreventRoomOverlap(r.Rooms)
87138724
PositionEntity r2\obj,r2\x,r2\y,r2\z
87148725
RotateEntity r2\obj,0,r2\angle,0
87158726
CalculateRoomExtents(r2)
8716-
8717-
isIntersecting = False
87188727
EndIf
87198728
EndIf
87208729
EndIf

0 commit comments

Comments
 (0)