PlayerEnergy


SUBMITTED BY: Guest

DATE: June 14, 2013, 12:21 p.m.

FORMAT: Text only

SIZE: 2.5 kB

HITS: 5196

  1. /// <summary>
  2. /// PlayerEnergy handles the energylevel of the player.
  3. /// </summary>
  4. public class PlayerEnergy : CharResource
  5. {
  6. public Transform cameraObject;
  7. private Transform myTransform;
  8. private bool godMode = false;
  9. private bool lastHit = false;
  10. private AudioManager audioManager;
  11. /// <summary>
  12. /// Start this instance.
  13. /// </summary>
  14. private void Start ()
  15. {
  16. alive = true;
  17. myTransform = transform;
  18. audioManager = myTransform.GetComponent<AudioManager>();
  19. screenOverlay = cameraObject.GetComponent<ScreenOverlay>();
  20. }
  21. /// <summary>
  22. /// Update this instance.
  23. /// </summary>
  24. private void Update ()
  25. {
  26. //AddjustResource(0);
  27. RecieveFallDamage();
  28. if(curValue <= 0 && lastHit)
  29. {
  30. Die();
  31. }
  32. }
  33. /// <summary>
  34. /// Processes the incoming damage.
  35. /// </summary>
  36. public override void ProcessDamage(float damage)
  37. {
  38. //Reduce the current energy value
  39. AddjustResource(damage);
  40. //Screen effects enable
  41. EnableScreenEffect(true);
  42. StartCoroutine(ScreenEffectTimer(screenEffectTime));
  43. //Audio
  44. audioManager.PlayAudio(false, 1, 40, 0, "Voices/Player (Jack)",
  45. "PlayerGettingHit1", "PlayerGettingHit2", "PlayerGettingHit3");
  46. }
  47. /// <summary>
  48. /// Is the energy depleted.
  49. /// </summary>
  50. /// <returns>
  51. /// The Depleted Energy
  52. /// </returns>
  53. public bool EnergyDepleted()
  54. {
  55. if(CurValue <= 0)
  56. {
  57. return true;
  58. }
  59. else
  60. {
  61. return false;
  62. }
  63. }
  64. /// <summary>
  65. /// Let this character die.
  66. /// </summary>
  67. public override void Die()
  68. {
  69. curValue = 0;
  70. lastHit = true;
  71. //Topple the player over
  72. Quaternion targetRotation = Quaternion.Euler(40, 0, -90);
  73. myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
  74. targetRotation, Time.deltaTime * 4.0f);
  75. if(alive)
  76. {
  77. //Audio
  78. //audioScript.PlayDying("Jack");
  79. myTransform.tag = "Untagged";
  80. Destroy(GetComponent<BaseInputs>());
  81. Destroy(GetComponent<PlayerMovement>());
  82. GameObject gameMaster = GameObject.FindGameObjectWithTag("GameMaster");
  83. Destroy(gameMaster.GetComponent<Pause>());
  84. //Game over after 2 seconds
  85. AutoFade.LoadLevel(Application.loadedLevel, 2, 1, Color.black);
  86. alive = false;
  87. }
  88. }
  89. }

comments powered by Disqus