public void Init(GDSKit.SkillConfig skillConfig, Transform rootTf)
 {
     mSkillConfig = skillConfig;
     GameMain.Instance.ResMgr.LoadResourceAsync(this, "jostickSkillOpe", typeof(GameObject), delegate(UnityEngine.Object prefab)
     {
         mObj = GameObject.Instantiate <GameObject>(prefab as GameObject);
         mObj.transform.SetParent(rootTf);
         mObj.transform.Reset();
         mJostickControl = new JostickController();
         mJostickControl.Init(mObj.transform, null, delegate()
         {
             UpdateAreaEffectState();
             UpdateCastDisEffectState();
         }, delegate()
         {
             UpdateAreaEffectState();
             UpdateAreaEffect();
             UpdateCastDisEffectState();
             OperatorManager.Instance.UseAreaSkill(mSkillConfig.id, mJostickControl.movementVector);
         }
                              );
     }, delegate(string errorCode)
     {
     });
     CreateAreaEffect();
     CreateCastDisEffect();
     TimerManager.Instance.RepeatCall(ulong.MaxValue, UpdateAreaEffect);
     TimerManager.Instance.RepeatCall(ulong.MaxValue, UpdateCastDisEffect);
 }
Exemple #2
0
    public override void OnOpend(object openParam)
    {
        base.OnOpend(openParam);
        mJostickController = new JostickController();
        mJostickController.Init(PrefabTf.Find("SimpleTouchJoystick"), delegate() {
            mIsDirty = true;
        }, delegate() {
            mIsDirty = true;
        }, delegate() {
            mIsDirty = true;
        });

        mTimerId = TimerManager.Instance.RepeatCall(ulong.MaxValue, delegate() {
            if (!mIsDirty)
            {
                return;
            }
            if (mJostickController.touchPresent)
            {
                GameBattle.LogicLayer.OperatorManager.Instance.MoveJoystick(mJostickController.movementVector);
            }
            else
            {
                GameBattle.LogicLayer.OperatorManager.Instance.StopMove();
            }
            mIsDirty = false;
        });
    }