private void PublishRequirePveTimeEvent() { GameFrameworkMessage.Msg_RC_PublishEvent msg = new GameFrameworkMessage.Msg_RC_PublishEvent(); msg.is_logic_event = false; msg.ev_name = "ge_require_pve_time"; msg.group = "ui"; NotifyAllUser(RoomMessageDefine.Msg_RC_PublishEvent, msg); }
protected override bool ExecCommand(StoryInstance instance, long delta) { Scene scene = instance.Context as Scene; if (null != scene) { string evname = m_EventName.Value; string group = m_Group.Value; Msg_RC_PublishEvent msg = new Msg_RC_PublishEvent(); msg.group = group; msg.ev_name = evname; msg.is_logic_event = false; for (int i = 0; i < m_Args.Count; ++i) { IStoryValue<object> val = m_Args[i]; object v = val.Value; if (null == v) { Msg_RC_PublishEvent.EventArg arg = new Msg_RC_PublishEvent.EventArg(); arg.val_type = ArgType.NULL; arg.str_val = ""; msg.args.Add(arg); } else if (v is int) { Msg_RC_PublishEvent.EventArg arg = new Msg_RC_PublishEvent.EventArg(); arg.val_type = ArgType.INT; arg.str_val = ((int)v).ToString(); msg.args.Add(arg); } else if (v is float) { Msg_RC_PublishEvent.EventArg arg = new Msg_RC_PublishEvent.EventArg(); arg.val_type = ArgType.FLOAT; arg.str_val = ((float)v).ToString(); msg.args.Add(arg); } else { Msg_RC_PublishEvent.EventArg arg = new Msg_RC_PublishEvent.EventArg(); arg.val_type = ArgType.STRING; arg.str_val = v.ToString(); msg.args.Add(arg); } } if (m_HaveUserId) { int userId = m_UserId.Value; EntityInfo user = scene.GetEntityById(userId); if (null != user) { User us = user.CustomData as User; if (null != us) { us.SendMessage(RoomMessageDefine.Msg_RC_PublishEvent, msg); } } } else { scene.NotifyAllUser(RoomMessageDefine.Msg_RC_PublishEvent, msg); } } return false; }