public static void SetValues(PlayMakerEventParams i_Params)
    {
        if (i_Params == null)
        {
            return;
        }

        m_Params.Clear();

        foreach (KeyValuePair <int, object> p in i_Params)
        {
            AddValue(p.Key, p.Value);
        }
    }
    public static void SendEvent(GameObject i_Target, string i_EventName, PlayMakerEventParams i_Params)
    {
        if (i_Target == null)
        {
            return;
        }

        if (i_Params != null)
        {
            PlayMakerEventData.SetValues(i_Params);
        }

        NotifyEvent(i_Target, i_EventName);
    }
        public override void OnEnter()
        {
            PlayMakerEventParams eventParams = new PlayMakerEventParams();

            for (int i = 0; i < keys.Length; i++)
            {
                if (keys[i].IsNone)
                {
                    continue;
                }

                int    keyHash = StringUtils.GetHashCode(keys[i].Value);
                object value   = PlayMakerUtils.GetValueFromFsmVar(this.Fsm, datas[i]);

                eventParams.AddValue(keyHash, value);
            }

            PlayMakerEventData.SetValues(eventParams);

            Finish();
        }