More descriptive coroutine exception error messages, more null checks in Level.Unload
This commit is contained in:
@@ -93,7 +93,7 @@ namespace Barotrauma
|
|||||||
|
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
DebugConsole.ThrowError("Coroutine " + Coroutines[i] + " threw an exception: " + e.Message);
|
DebugConsole.ThrowError("Coroutine " + Coroutines[i].Name + " threw an exception: " + e.Message);
|
||||||
|
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
throw e;
|
throw e;
|
||||||
|
|||||||
@@ -870,23 +870,39 @@ namespace Barotrauma
|
|||||||
|
|
||||||
private void Unload()
|
private void Unload()
|
||||||
{
|
{
|
||||||
if (renderer!=null) renderer.Dispose();
|
if (renderer!=null)
|
||||||
renderer = null;
|
|
||||||
|
|
||||||
ruins.Clear();
|
|
||||||
|
|
||||||
for (int side = 0; side < 2; side++)
|
|
||||||
{
|
{
|
||||||
for (int i = 0; i < 2; i++)
|
renderer.Dispose();
|
||||||
{
|
renderer = null;
|
||||||
wrappingWalls[side, i].Dispose();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ruins != null)
|
||||||
|
{
|
||||||
|
ruins.Clear();
|
||||||
|
ruins = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (wrappingWalls!=null)
|
||||||
|
{
|
||||||
|
for (int side = 0; side < 2; side++)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 2; i++)
|
||||||
|
{
|
||||||
|
wrappingWalls[side, i].Dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
wrappingWalls = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
cells = null;
|
cells = null;
|
||||||
|
|
||||||
bodies.Clear();
|
if (bodies != null)
|
||||||
bodies = null;
|
{
|
||||||
|
bodies.Clear();
|
||||||
|
bodies = null;
|
||||||
|
}
|
||||||
|
|
||||||
loaded = null;
|
loaded = null;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user