diff --git a/GpApp/ObjectDrawAll.cpp b/GpApp/ObjectDrawAll.cpp index 3442ef4..0a8d9ae 100644 --- a/GpApp/ObjectDrawAll.cpp +++ b/GpApp/ObjectDrawAll.cpp @@ -953,15 +953,12 @@ void DrawARoomsObjects (short neighbor, Boolean redraw) } } - - if (!redraw) // set up links + + for (n = 0; n < numMasterObjects; n++) { - for (n = 0; n < numMasterObjects; n++) - { - if ((masterObjects[n].objectNum == i) && - (masterObjects[n].roomNum == localNumbers[neighbor])) - masterObjects[n].dynaNum = dynamicNum; - } + if ((masterObjects[n].objectNum == i) && + (masterObjects[n].roomNum == localNumbers[neighbor])) + masterObjects[n].dynaNum = dynamicNum; } } } diff --git a/GpApp/RoomGraphics.cpp b/GpApp/RoomGraphics.cpp index 437d6b3..cb0ae4e 100644 --- a/GpApp/RoomGraphics.cpp +++ b/GpApp/RoomGraphics.cpp @@ -50,6 +50,10 @@ void ResetLocale (Boolean soft) { RemoveSavedMapsNotInRoom(localNumbers[kCentralRoom]); ZeroDinahsNotInRoom(localNumbers[kCentralRoom]); + + // Clear all dinah indexes, they'll be remapped + for (int i = 0; i < numMasterObjects; i++) + masterObjects[i].dynaNum = -1; } else {