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(); } }
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); } }