function OnClientExecuteReq(context, param1, param2, param3) local state = ScriptLib.GetGadgetState(context) if param1 == 1 then if state == GadgetState.Default then ScriptLib.SetGadgetState(context, GadgetState.Action01) elseif state == GadgetState.Action01 then ScriptLib.SetGadgetState(context, GadgetState.Action02) elseif state == GadgetState.Action02 then ScriptLib.SetGadgetState(context, GadgetState.Action03) end elseif param1 == 2 then if state == GadgetState.Default then ScriptLib.SetGadgetState(context, GadgetState.Action02) elseif state == GadgetState.Action01 or state == GadgetState.Action02 then ScriptLib.SetGadgetState(context, GadgetState.Action03) end elseif param1 == 3 then if state == GadgetState.Default or state == GadgetState.Action01 or state == GadgetState.Action02 then ScriptLib.SetGadgetState(context, GadgetState.Action03) end end local cur_state = ScriptLib.GetGadgetState(context) --临时发送特殊状态信号 --groupLua拦截到此事件时可以做数据清理 if param2 == 1 then ScriptLib.SetGadgetState(context, GadgetState.ChestLocked) ScriptLib.SetGadgetState(context, cur_state) end end