private void eventLoseHealth() { //Need to make TakeDamage public in SpellCaster.cs int damage = (int)Random.Range(1f, 5f); spellCaster.TakeDamage(damage); PanelHolder.instance.displayNotify("Clumsy Traveler", "You tripped over a rock and lost " + damage.ToString() + " health.", "OK"); }
//TODO: start combat here. public override void OnEvent(FinalBoss evnt) { BoltConsole.Write("Final Boss battle (not yet implemented so everyone dies)"); BoltConsole.Write("Final Boss battle (not yet implemented so everyone dies)"); PanelHolder.instance.displayNotify("Final Boss Battle", "(not yet implemented so everyone dies)", "OK"); playerSpellcaster = playerEntity.GetComponent <Player>().spellcaster; playerSpellcaster.TakeDamage((int)(playerSpellcaster.fCurrentHealth)); SpellCaster.savePlayerData(playerSpellcaster); }
/*Everyone recieves this during combat*/ public override void OnEvent(BossAttacksEveryoneEvent evnt) { try { GameObject bossImage = GameObject.FindGameObjectWithTag("Enemy"); bossImage.GetComponent <SpriteRenderer>().sprite = bossAttackSprite; StartCoroutine(WaitForAttack(bossImage)); } catch { } playerSpellcaster = playerEntity.GetComponent <Player>().spellcaster; playerSpellcaster.TakeDamage((int)evnt.Damage); //TODO: MAYBE DISPLAY FEEDBACK? }
// Deals a percent amount of damage to a target spellcaster, and display a pop-up message. // Also tries to update the healthvalue UI-component in the mainplayerscene. public override void OnEvent(DealPercentDmgEvent evnt) { playerSpellcaster = playerEntity.GetComponent <Player>().spellcaster; if (playerSpellcaster.spellcasterID == evnt.SpellcasterID) { PanelHolder.instance.displayNotify(evnt.EventName, "Lose " + ((int)(evnt.PercentDmgDecimal * 100)) + "% health", "OK"); playerSpellcaster.TakeDamage((int)(playerSpellcaster.fCurrentHealth * evnt.PercentDmgDecimal)); SpellCaster.savePlayerData(playerSpellcaster); try { GameObject health = GameObject.Find("text_healthvalue"); if (health != null) { health.GetComponent <Text>().text = playerSpellcaster.fCurrentHealth + " / 20"; } } catch { // Not in home page } } }