How do I make a Status Effect system in a turn based combat RPG ?
I need help to make a simple status effect system for my turn based combat RPG. I'm new to delegates and events and am only familiar with basics of unity and know C#. Basically, I have two Scriptable Objects each containing functions for players' behaviors and enemies' behaviors. I also have a script containing Character statuses. When an action button is clicked by the player or when the Enemy AI chooses an action for their particular turns, and I want some of the actions of particular character to initiate certain effects on certain character or themselves. For example, if the player uses a Defense BUFF, all damage taken should reduce by 30% or if Magic BUFF is used, Mana consumption should be reduced by a 30% for a certain number of turns, and if a character casts a DEBUFF on the opponent, like a Health DEBUFF, then the opponent will lose 30HP every turn for a certain number of turns. Can someone please help me figure out the best method for me to do that?
Your answer
![](https://koobas.hobune.stream/wayback/20220613041304im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Way to assign event fields in created at runtime scriptable object (ScriptableObject Architecture) 0 Answers
Create events that fires off a coroutine from another script 0 Answers
Animation Event not firing or skip problem (When Fast Animation) 0 Answers
UnityEvent Generic (Inspector Serialization) 0 Answers
Convert Event.current.mousePosition to Input.mousePosition 0 Answers