Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (gameManager.gameState == GameManager.GameState.PAUSE)
        {
            return;
        }

        #if UNITY_STANDALONE || UNITY_WEBGL || UNITY_EDITOR
        if (Input.GetButtonDown(attractor.atk) && !attractor.dashing && !attractor.blocking)
        {
            attractor.Dash();
        }

        if (Input.GetButtonDown(attractor.def))
        {
            attractor.Block();
        }

        if (Input.GetButtonUp(attractor.def))
        {
            attractor.ReleaseBlock();
        }

        // Simular swipe com as setas do teclado
        if (Input.GetButtonDown(attractor.up) || Input.GetAxisRaw(attractor.joyVertical) == 1f)
        {
            print("UP");
            print(Input.GetAxis(attractor.joyVertical));
            attractor.Dodge(new Vector2(0, 1));
        }
        else if (Input.GetButtonDown(attractor.right) || Input.GetAxisRaw(attractor.joyHorizontal) == 1f)
        {
            print("RIGHT");
            print(Input.GetAxis(attractor.joyHorizontal));
            attractor.Dodge(new Vector2(1, 0));
        }
        else if (Input.GetButtonDown(attractor.down) || Input.GetAxisRaw(attractor.joyVertical) == -1f)
        {
            print("DOWN");
            attractor.Dodge(new Vector2(0, -1));
        }
        else if (Input.GetButtonDown(attractor.left) || Input.GetAxisRaw(attractor.joyHorizontal) == -1f)
        {
            print("LEFT");
            attractor.Dodge(new Vector2(-1, 0));
        }
        #elif UNITY_IOS || UNITY_ANDROID
        if (Input.touchCount > 0)
        {
            Touch touch = Input.touches[0];
            GetSwipeDir(touch);
        }
        #endif

        UpdateColor();
    }
Ejemplo n.º 2
0
    private void ChooseAction()
    {
        float chance = chanceToBlock;
        float dist   = GetClosestDistanceToBorder();

        if (dist <= distanceToGoAgress || attractor.stunned)
        {
            chance = .01f;
        }
        else
        {
            chance = chanceToBlock;
        }

        float rand = Random.value;

        if (rand <= chance)
        {
            attractor.Block();
        }
        else
        {
            attractor.ReleaseBlock();
            attractor.Dash();
        }
    }
Ejemplo n.º 3
0
    private void SetupButtons(Attractor attractor, string buttonContainer)
    {
        // Button and event trigger
        EventTrigger pAtkEventTrigger = GameObject.Find(buttonContainer).transform.Find("Atk").GetComponent <EventTrigger>();
        EventTrigger pDefEventTrigger = GameObject.Find(buttonContainer).transform.Find("Def").GetComponent <EventTrigger>();

        EventTrigger.Entry entryDash = new EventTrigger.Entry();
        entryDash.eventID = EventTriggerType.PointerDown;
        entryDash.callback.AddListener((data) => { attractor.Dash(); });
        pAtkEventTrigger.triggers.Add(entryDash);

        EventTrigger.Entry entryBlock = new EventTrigger.Entry();
        entryBlock.eventID = EventTriggerType.PointerDown;
        entryBlock.callback.AddListener((data) => { attractor.Block(); });
        pDefEventTrigger.triggers.Add(entryBlock);

        EventTrigger.Entry entryReleaseBlock = new EventTrigger.Entry();
        entryReleaseBlock.eventID = EventTriggerType.PointerUp;
        entryReleaseBlock.callback.AddListener((data) => { attractor.ReleaseBlock(); });
        pDefEventTrigger.triggers.Add(entryReleaseBlock);
    }