Put Lua FrameBefore and FrameAfter event firing into the event loop instead of tools, so that it isn't bypassed when turboing. Probably works, couldn't test.

This commit is contained in:
adelikat 2014-05-03 11:59:11 +00:00
parent 55f87af633
commit 650607cfd7
2 changed files with 11 additions and 5 deletions

View File

@ -2500,8 +2500,11 @@ namespace BizHawk.Client.EmuHawk
Global.ClickyVirtualPadController.FrameTick(); Global.ClickyVirtualPadController.FrameTick();
Global.LuaAndAdaptor.FrameTick(); Global.LuaAndAdaptor.FrameTick();
//zero 03-may-2014 - there is a bug in here: lua should be updating even when turboing if (GlobalWin.Tools.Has<LuaConsole>())
//please remove lua event-firing from gui viewing tools -related code {
GlobalWin.Tools.LuaConsole.LuaImp.CallFrameBeforeEvent();
}
if (!isTurboing) if (!isTurboing)
{ {
GlobalWin.Tools.UpdateToolsBefore(); GlobalWin.Tools.UpdateToolsBefore();
@ -2565,6 +2568,12 @@ namespace BizHawk.Client.EmuHawk
} }
PressFrameAdvance = false; PressFrameAdvance = false;
if (GlobalWin.Tools.Has<LuaConsole>())
{
GlobalWin.Tools.LuaConsole.LuaImp.CallFrameAfterEvent();
}
if (!isTurboing) if (!isTurboing)
{ {
UpdateToolsAfter(); UpdateToolsAfter();

View File

@ -229,8 +229,6 @@ namespace BizHawk.Client.EmuHawk
{ {
LuaConsole.StartLuaDrawing(); LuaConsole.StartLuaDrawing();
} }
LuaConsole.LuaImp.CallFrameBeforeEvent();
} }
UpdateBefore(); UpdateBefore();
@ -247,7 +245,6 @@ namespace BizHawk.Client.EmuHawk
if (Has<LuaConsole>()) if (Has<LuaConsole>())
{ {
LuaConsole.LuaImp.CallFrameAfterEvent();
if (!fromLua) if (!fromLua)
{ {
LuaConsole.EndLuaDrawing(); LuaConsole.EndLuaDrawing();