Пример #1
0
    public void Die()
    {
        if (deathDialogue != null)
        {
            GameObject newDialogue = new GameObject("BossDeathDialogue");
            if (activeTargetGO != null)
            {
                ActionObject actionObj = newDialogue.AddComponent <ActionObject>();
                actionObj.activeActionTarget = activeTargetGO;
            }
            DialogueObject dialogueObj = newDialogue.AddComponent <DialogueObject>();
            dialogueObj.dialogueData = deathDialogue;
            dialogueObj.StartConversation();
        }

        Destroy(gameObject);
    }
Пример #2
0
    private void Update()
    {
        if (!dialogueMode)
        {
            float h = Input.GetAxis("Horizontal");
            float v = Input.GetAxis("Vertical");

            if (h > 0.5f)
            {
                dirEnum = Direction.RIGHT;
            }
            else if (h < -0.5f)
            {
                dirEnum = Direction.LEFT;
            }

            if (v > 0.5f)
            {
                dirEnum = Direction.UP;
            }
            else if (v < -0.5f)
            {
                dirEnum = Direction.DOWN;
            }

            Vector2 rayDir = GetDirection();

            RaycastHit2D rayHit = Physics2D.Raycast(playerTransform.position, rayDir * 2f);
            if (rayHit.collider == null)
            {
                return;
            }
            if (rayHit.collider.tag == "Dialogue")
            {
                if (Input.GetKeyDown(KeyCode.C))
                {
                    DialogueObject dialogueObj = rayHit.collider.gameObject.GetComponent <DialogueObject>();
                    dialogueObj.StartConversation();
                }
            }
        }
    }