internal static void not(Instruction i, LuaVm vm) { var abc = i.ABC(); var a = abc.Item1 + 1; var b = abc.Item2 + 1; var c = abc.Item3 + 1; vm.PushBoolean(!vm.ToBoolean(b)); vm.Replace(a); }
internal static void test(Instruction i, LuaVm vm) { var abc = i.ABC(); var a = abc.Item1 + 1; var b = abc.Item2 + 1; var c = abc.Item3 + 1; if (vm.ToBoolean(a) != (c != 0)) { vm.AddPC(1); } }
internal static void testSet(Instruction i, LuaVm vm) { var abc = i.ABC(); var a = abc.Item1 + 1; var b = abc.Item2 + 1; var c = abc.Item3 + 1; if (vm.ToBoolean(b) == (c != 0)) { vm.Copy(b, a); } else { vm.AddPC(1); } }