public override void CastCore() { playerManager = ItemUtils.ObtainPlayerManager(gameObject); if (playerManager == null) { Debug.Log("Skill is casted when not attached to any player."); return; } OpenNextDoor(); }
public override void CastCore() { playerManager = ItemUtils.ObtainPlayerManager(gameObject); if (playerManager == null) { Debug.Log("Skill is casted when not attached to any player."); return; } GameObject newBall = Instantiate(ball, playerManager.transform.position + playerManager.transform.forward * 2f, playerManager.camera.transform.rotation); SpaceExchangeBallObj ballObj = newBall.GetComponent <SpaceExchangeBallObj>(); ballObj.owner = playerManager.gameObject; Destroy(newBall, lifetime); cooldownTimeLeft = CooldownTimeTotal; }
public override void CastCore() { playerManager = ItemUtils.ObtainPlayerManager(gameObject); if (playerManager == null) { Debug.Log("Skill is casted when not attached to any player."); return; } float angleBetweenTwoBall = 180f / ballNumOneShot; for (float curAngle = -90f; curAngle <= 90f; curAngle += angleBetweenTwoBall) { GameObject newBall = Instantiate( ball, playerManager.transform.position + playerManager.transform.forward * 5f, playerManager.camera.transform.rotation * Quaternion.AngleAxis(curAngle, playerManager.camera.transform.up) ); LightningBallObj ballObj = newBall.GetComponent <LightningBallObj>(); ballObj.owner = playerManager.gameObject; Destroy(newBall, lifetime); } }