public void ShowScorePopup(Vector3 worldPosition, int score) { GameObject scorePopupObject = Utils.Spawn(ScorePopupPrefab, ScorePopupRoot); ScorePopup scorePopup = scorePopupObject.GetComponent <ScorePopup>(); scorePopup.Init(worldPosition, score); }
public void OnDeath(int points) { AudioManager.Instance.OnBombHit(); currentTween.Kill(); ScorePopup sp = scorePopup.gameObject.GetComponentInChildren <ScorePopup>(); scorePopup.transform.position = this.transform.position; sp.Init(transform.position, points); //Destroy(scorePopup, scoreLifetime); }
public virtual void Death(int playerNumber) { if (GameManager.instance.SelectedGamemode != null) { GameManager.instance.SelectedGamemode.AwardAiKill(playerNumber); ScorePopup scorePopup = Instantiate(LevelManager.instance.scorePopupPrefab, transform.position, Quaternion.identity); scorePopup.Init(GameManager.instance.SelectedGamemode.aiKillsPointReward); } SpawnWeapon(); Destroy(gameObject); }
public override void PlayerDied() { base.PlayerDied(); if (playersStillAliveThisRound == 1) { int winningPlayerNumber = 0; for (int i = 0; i < players.Length; i++) { if (players[i].isStillAlive) { winningPlayerNumber = players[i].playerNumber; ScorePopup scorePopup = Instantiate(LevelManager.instance.scorePopupPrefab, players[i].playerMovement.transform.position, Quaternion.identity); scorePopup.Init(lastPlayerAlivePoints); } } AwardRoundWin(winningPlayerNumber); EndRound(winningPlayerNumber); } else if (playersStillAliveThisRound < 1) { EndRound(0); } }
void OnChargeComplete() { if (chargedParticle != null) { GameObject go = Instantiate(chargedParticle, transform.position, Quaternion.identity); ParticleSystem[] particles = go.GetComponentsInChildren <ParticleSystem>(); foreach (var particle in particles) { particle.startColor = GameManager.instance.playerColours[playerNumber - 1]; particle.Play(); } } if (GameManager.instance.SelectedGamemode != null) { GameManager.instance.SelectedGamemode.AwardExtraction(playerNumber); ScorePopup scorePopup = Instantiate(LevelManager.instance.scorePopupPrefab, playerShoot.gunOriginTransform.transform.position, Quaternion.identity); scorePopup.Init(GameManager.instance.SelectedGamemode.extractionPointReward); } if (SoundManager.instance != null) { SoundManager.instance.PlaySFX("SFX_Extraction"); } }
public void HitByPlayer(int projectilePlayerNumber, bool canHurtSelf = false) { if (GameManager.instance.SelectedGamemode != null) { if (GameManager.instance.SelectedGamemode.noFriendlyFire) { return; } } if (hasShield) { UseShield(); return; } if (canHurtSelf == false) { if (projectilePlayerNumber == playerNumber) { return; } } if (isAlive == false) // Already dead so cant be killed again { return; } isAlive = false; health = 0; if (projectilePlayerNumber == playerNumber) { if (GameManager.instance.SelectedGamemode != null) { GameManager.instance.SelectedGamemode.AddToStats(playerNumber, StatTypes.Suicides, 1); } } if (isGamepad) { StartCoroutine("Haptic"); } StartCoroutine("FlashHurt"); JuiceManager.TimeSleep(playerParams.playerHitSlowMoDuration, playerParams.playerHitTimeScale, false); ParticleSystem p = Instantiate(bloodSplatterParticle, transform.position, Quaternion.identity); p.Play(); Destroy(p.gameObject, 3); if (projectilePlayerNumber != playerNumber) { if (GameManager.instance.SelectedGamemode != null) { GameManager.instance.AwardKill(projectilePlayerNumber); ScorePopup scorePopup = Instantiate(LevelManager.instance.scorePopupPrefab, transform.position, Quaternion.identity); scorePopup.Init(GameManager.instance.SelectedGamemode.playerKillsPointReward); } } Death(); }