Exemplo n.º 1
0
    void Update()
    {
        if (Time.timeScale > 0)
        {
            Vector3 aimPosition /*= new Vector3( 0.0f, 1.0f, 0.0f )*/;

            if (belongsToPlayer)
            {
                Vector3 v3 = Input.mousePosition;
                v3.z        = cameraDistance;
                aimPosition = TheCamera.ScreenToWorldPoint(v3);
            }
            else
            {
                if (HasAnyObject())
                {
                    aimPosition = Player.mainPlayer.transform.position;
                }
                else
                {
                    SanjoEnemy enemyScript = owner.GetComponent <SanjoEnemy>();

                    ThingToProtect protectObj = enemyScript.GetAI().target;

                    aimPosition = protectObj.transform.position;
                }
            }

            Vector3 handPos         = GetHandPosition(aimPosition);
            float   angleFromPlayer = GetHandAngle(handPos);
            AdjustImageForAngle(angleFromPlayer);
            handMainTransform.rotation = Quaternion.Euler(0, 0, angleFromPlayer);
            handMainTransform.position = handPos;

            if (belongsToPlayer && Input.GetMouseButtonDown(0))
            {
                if (HasAnyObject())
                {
                    Throw();
                }
                //else
                //{
                //	FireGun();
                //}
            }

            imageT.localRotation = Quaternion.Lerp(imageT.localRotation, theIQ, Time.deltaTime * 3);
        }

        if (!belongsToPlayer && HasAnyObject())
        {
            Throw();
        }
    }
Exemplo n.º 2
0
    void OnTriggerEnter2D(Collider2D col)
    {
        bool didHit = true;

        if (col.gameObject.CompareTag("Player"))
        {
            var playerScript = col.gameObject.GetComponentInParent <Player>();
            if (playerScript != owner)
            {
                AudioManager.Instance.PlayHitPlayerSound();
                playerScript.GetHit();
            }
        }
        else if (col.gameObject.CompareTag("Enemy"))
        {
            Enemy enemyScript = col.gameObject.GetComponentInParent <Enemy>();
            if (enemyScript != null && enemyScript != owner && !(owner is Enemy))
            {
                enemyScript.Kill(myT.right, myT.position);
            }
            else
            {
                SanjoEnemy sanjoEnemyScript = col.gameObject.GetComponentInParent <SanjoEnemy>();
                if (sanjoEnemyScript != null && sanjoEnemyScript != owner && !(owner is SanjoEnemy) && col.gameObject.GetComponent <SanjoCollisionChecker>() == null)
                {
                    sanjoEnemyScript.BulletHit(myT.right, myT.position);
                }
                else
                {
                    didHit = false;
                }
            }
        }
        else
        {
            AudioManager.Instance.PlayHitWallSound();
        }
        if (didHit)
        {
            Destroy(gameObject);
        }
    }