public static void BeginRender() { while (m_ToRemove.Count > 0) { object obj2 = m_ToRemove.Dequeue(); m_Messages.Remove(obj2); Gumps.Destroy((Gump)obj2); } m_yStack = (Engine.GameY + Engine.GameHeight) - 0x16; RecurseProcessItemGumps(Gumps.Desktop, 0, 0, false); for (int i = 0; i < m_Messages.Count; i++) { ((IMessage)m_Messages[i]).OnBeginRender(); } while (m_ToRemove.Count > 0) { object obj3 = m_ToRemove.Dequeue(); m_Messages.Remove(obj3); Gumps.Destroy((Gump)obj3); } if (Gumps.Invalidated) { if (Engine.m_LastMouseArgs != null) { Engine.MouseMove(Engine.m_Display, Engine.m_LastMouseArgs); Engine.MouseMoveQueue(); } Gumps.Invalidated = false; } }