Ejemplo n.º 1
0
 public static void OnFingerUp(GestureArgs e)
 {
     if (LogicSystem.PlayerSelfInfo != null)
     {
         LogicSystem.PlayerSelfInfo.IsTouchDown = false;
     }
 }
Ejemplo n.º 2
0
    private void SkillStartHandler()
    {
        GestureArgs e = new GestureArgs();

        e.name = GestureEvent.OnSkillStart.ToString();
        LogicSystem.FireGestureEvent(e);
    }
Ejemplo n.º 3
0
    void OnTriggerEnter(Collider other)
    {
        //玩家进入该区域触发
        if (other.tag != "Player")
        {
            return;
        }
        if (NextSceneId <= 0)
        {
            return;
        }
        GameObject uiRoot = GameObject.FindGameObjectWithTag("UI");

        if (uiRoot != null)
        {
            uiRoot.BroadcastMessage("OnStopBtnClicked");
        }
        ///
        JoyStickInputProvider.JoyStickEnable = false;
        GestureArgs e = new GestureArgs();

        e.name           = "OnSingleTap";
        e.airWelGamePosX = 0f;
        e.airWelGamePosY = 0f;
        e.airWelGamePosZ = 0f;
        e.selectedObjID  = -1;
        LogicSystem.FireGestureEvent(e);

        //通知逻辑层切换场景
        Debug.LogError("Change to Scene : " + NextSceneId);
        LogicSystem.PublishLogicEvent("ge_change_scene", "game", NextSceneId);
    }
Ejemplo n.º 4
0
    private static GestureArgs ToGestureArgs(FingerEvent args)
    {
        if (null == args)
        {
            return(null);
        }
        GestureArgs e = new GestureArgs();

        e.startPositionX = args.Position.x;
        e.startPositionY = args.Position.y;
        e.positionX      = args.Position.x;
        e.positionY      = args.Position.y;

        e.startTime   = UnityEngine.Time.time;
        e.elapsedTime = 0;
        UnityEngine.Vector3 pos = args.GetTouchToWorldPoint();
        e.gamePosX = pos.x;
        e.gamePosY = pos.y;
        e.gamePosZ = pos.z;
        e.name     = args.Name;

        UnityEngine.GameObject go      = LogicSystem.PlayerSelf;
        UnityEngine.Vector3    srcPos  = pos;
        UnityEngine.Vector3    destPos = pos;
        if (null != go)
        {
            destPos = go.transform.position;
        }
        e.towards = Geometry.GetYAngle(new ArkCrossEngine.Vector2(destPos.x, destPos.z), new ArkCrossEngine.Vector2(srcPos.x, srcPos.z));

        e.moveType = curTouchState;

        return(e);
    }
Ejemplo n.º 5
0
    public static void FireEvent(Gesture gesture)
    {
        if (!TouchEnable)
        {
            return;
        }
        if (!GestureEnable)
        {
            return;
        }

        if (null != gesture.Recognizer && "OnEasyGesture" != gesture.Recognizer.EventMessageName)
        {
            GestureArgs e = ToGestureArgs(gesture);
            LogicSystem.FireGestureEvent(e);
        }

        if (ArkCrossEngine.PlayerControl.Instance.EnableSkillInput)
        {
            if (OnGestureEvent != null)
            {
                OnGestureEvent(gesture);
            }
        }

        //Debug.Log("...input SkillTags : " + gesture.SkillTags + ", event : " + gesture.Recognizer.EventMessageName + ", state : " + curTouchState.ToString());
    }
Ejemplo n.º 6
0
    public static GestureArgs ToGestureArgs(Gesture args)
    {
        if (null == args)
        {
            return(null);
        }

        GestureArgs e = new GestureArgs();

        e.startPositionX = args.StartPosition.x;
        e.startPositionY = args.StartPosition.y;
        e.positionX      = args.Position.x;
        e.positionY      = args.Position.y;

        e.startTime   = args.StartTime;
        e.elapsedTime = args.ElapsedTime;
        Vector3 pos = args.GetTouchToWorldPoint();

        e.gamePosX = pos.x;
        e.gamePosY = pos.y;
        e.gamePosZ = pos.z;
        e.name     = args.Recognizer.EventMessageName;

        GameObject go      = DashFire.LogicSystem.PlayerSelf;
        Vector3    srcPos  = args.GetStartTouchToWorldPoint();
        Vector3    destPos = pos;

        if (null != go)
        {
            destPos = go.transform.position;
        }
        e.towards       = Geometry.GetYAngle(new ScriptRuntime.Vector2(destPos.x, destPos.z), new ScriptRuntime.Vector2(srcPos.x, srcPos.z));
        e.moveType      = curTouchState;
        e.selectedObjID = args.SelectedID;
        e.sectionNum    = args.SectionNum;

        Vector3 airWellPos = args.GetTouchToAirWallWorldPoint();

        e.airWelGamePosX = airWellPos.x;
        e.airWelGamePosY = airWellPos.y;
        e.airWelGamePosZ = airWellPos.z;

        e.startGamePosX = srcPos.x;
        e.startGamePosY = srcPos.y;
        e.startGamePosZ = srcPos.z;
        ///
        e.attackRange = 3f;
        SkillControllerInterface skill_contrl = GetControl();

        if (null != skill_contrl)
        {
            SkillInputData skill_input_data = skill_contrl.GetSkillInputData(args.SkillTags);
            if (null != skill_input_data)
            {
                e.attackRange = skill_input_data.castRange;
            }
        }

        return(e);
    }
Ejemplo n.º 7
0
        // ReSharper disable once RedundantOverriddenMember
        protected override bool OnGesture(SciterElement element, GestureArgs args)
        {
            //Console.WriteLine($"{args}");
            //if (args.Event == GestureEvent.Request)
            //	return true;

            return(base.OnGesture(element, args));
        }
Ejemplo n.º 8
0
 private void OnGestureEvent(Gesture gesture)
 {
     if (null == gesture)
     {
         return;
     }
     UnityEngine.Vector3 target_pos = gesture.GetStartTouchToWorldPoint();
     if (null != gesture.Recognizer && UnityEngine.Vector3.zero != target_pos)
     {
         if ("OnDoubleTap" == gesture.Recognizer.EventMessageName &&
             gesture.SelectedID < 0)
         {
             GfxModule.Skill.GfxSkillSystem.Instance.StopAttack(ArkCrossEngine.LogicSystem.PlayerSelf);
             //GfxModule.Skill.GfxSkillSystem.Instance.PushSkill(ArkCrossEngine.LogicSystem.PlayerSelf, SkillCategory.kRoll, target_pos);
             return;
         }
     }
     if (SkillCategory.kNone != gesture.SkillTags)
     {
         switch (gesture.SkillTags)
         {
         case SkillCategory.kSkillA:
         case SkillCategory.kSkillB:
         case SkillCategory.kSkillC:
         case SkillCategory.kSkillD:
         case SkillCategory.kSkillQ:
         case SkillCategory.kSkillE:
             GfxModule.Skill.GfxSkillSystem.Instance.StopAttack(ArkCrossEngine.LogicSystem.PlayerSelf);
             if (gesture.SectionNum > 0)
             {
                 if (waite_skill_buffer.Count > 0)
                 {
                     CandidateSkillInfo candidate_skill_info = new CandidateSkillInfo();
                     candidate_skill_info.skillType = gesture.SkillTags;
                     candidate_skill_info.targetPos = UnityEngine.Vector3.zero;
                     waite_skill_buffer.Add(candidate_skill_info);
                 }
                 else
                 {
                     GfxModule.Skill.GfxSkillSystem.Instance.PushSkill(ArkCrossEngine.LogicSystem.PlayerSelf, gesture.SkillTags, UnityEngine.Vector3.zero);
                 }
             }
             else
             {
                 waite_skill_buffer.Clear();
                 CandidateSkillInfo candidate_skill_info = new CandidateSkillInfo();
                 candidate_skill_info.skillType = gesture.SkillTags;
                 candidate_skill_info.targetPos = target_pos;
                 waite_skill_buffer.Add(candidate_skill_info);
                 GestureArgs e = TouchManager.ToGestureArgs(gesture);
                 LogicSystem.FireGestureEvent(e);
             }
             break;
         }
     }
 }
Ejemplo n.º 9
0
    public static void FireEvent(FingerEvent eventData)
    {
        if (!TouchEnable)
        {
            return;
        }

        GestureArgs e = ToGestureArgs(eventData);

        LogicSystem.FireGestureEvent(e);

        if (OnFingerEvent != null)
        {
            OnFingerEvent(eventData);
        }

        //Debug.LogWarning("...input event : " + eventData.Name + ", State : " + curTouchState.ToString());
    }
Ejemplo n.º 10
0
    public static void FireEvent(FingerEvent eventData)
    {
        if (!TouchEnable)
        {
            return;
        }

        int scene_id = WorldSystem.Instance.GetCurSceneId();

        if (scene_id > 0)
        {
            GestureArgs e = ToGestureArgs(eventData);
            LogicSystem.FireGestureEvent(e);
        }

        if (OnFingerEvent != null)
        {
            OnFingerEvent(eventData);
        }

        //Debug.LogWarning("...input event : " + eventData.Name + ", State : " + curTouchState.ToString());
    }
Ejemplo n.º 11
0
    private void TriggerMove(MovingJoystick move, bool isLift)
    {
        if (isLift)
        {
            GestureArgs e = new GestureArgs();
            e.name           = "OnSingleTap";
            e.airWelGamePosX = 0f;
            e.airWelGamePosY = 0f;
            e.airWelGamePosZ = 0f;
            e.selectedObjID  = -1;
            LogicSystem.FireGestureEvent(e);
            return;
        }

        GameObject playerSelf = LogicSystem.PlayerSelf;

        if (playerSelf != null && move.joystickAxis != Vector2.zero)
        {
            Vector2 joyStickDir = move.joystickAxis * 10.0f;
            Vector3 targetRot   = new Vector3(joyStickDir.x, 0, joyStickDir.y);
            Vector3 targetPos   = playerSelf.transform.position + targetRot;

            GestureArgs e = new GestureArgs();
            e.name           = "OnSingleTap";
            e.selectedObjID  = -1;
            e.towards        = Mathf.Atan2(targetPos.x - playerSelf.transform.position.x, targetPos.z - playerSelf.transform.position.z);
            e.airWelGamePosX = targetPos.x;
            e.airWelGamePosY = targetPos.y;
            e.airWelGamePosZ = targetPos.z;
            LogicSystem.FireGestureEvent(e);
            CurDirection = e.towards;
            ///
            if (null != OnJoystickMove)
            {
                OnJoystickMove(e.towards);
            }
        }
    }
Ejemplo n.º 12
0
    private void TriggerMove(MovingJoystick move, bool isLift)
    {
        if (isLift)
        {
            GestureArgs e = new GestureArgs();
            e.name           = "OnSingleTap";
            e.airWelGamePosX = 0f;
            e.airWelGamePosY = 0f;
            e.airWelGamePosZ = 0f;
            e.selectedObjID  = -1;
            e.towards        = -1f;
            e.inputType      = InputType.Joystick;
            //LogicSystem.FireGestureEvent(e);
            LogicSystem.SetJoystickInfo(e);
            return;
        }

        UnityEngine.GameObject playerSelf = LogicSystem.PlayerSelf;
        if (playerSelf != null && move.joystickAxis != UnityEngine.Vector2.zero)
        {
            UnityEngine.Vector2 joyStickDir = move.joystickAxis * 10.0f;
            UnityEngine.Vector3 targetRot   = new UnityEngine.Vector3(joyStickDir.x, 0, joyStickDir.y);
            UnityEngine.Vector3 targetPos   = playerSelf.transform.position + targetRot;

            GestureArgs e = new GestureArgs();
            e.name          = "OnSingleTap";
            e.selectedObjID = -1;
            float towards = UnityEngine.Mathf.Atan2(targetPos.x - playerSelf.transform.position.x, targetPos.z - playerSelf.transform.position.z);
            e.towards        = towards;
            e.airWelGamePosX = targetPos.x;
            e.airWelGamePosY = targetPos.y;
            e.airWelGamePosZ = targetPos.z;
            e.inputType      = InputType.Joystick;
            //LogicSystem.FireGestureEvent(e);
            LogicSystem.SetJoystickInfo(e);
        }
    }
 void IGestureClient.OnZoom(GestureArgs info, Point center, double zoomDelta)
 {
 }
 void IGestureClient.OnTwoFingerTap(GestureArgs info)
 {
 }
 void IGestureClient.OnRotate(GestureArgs info, Point center, double degreeDelta)
 {
 }
 void IGestureClient.OnPressAndTap(GestureArgs info)
 {
 }