/// <summary> /// Method for giving enemy buff /// </summary> /// <param name="name">name of buff</param> public void GetBuff(string name) { if (!buffs.ContainsKey(name)) { BaseEnemyBuff newBuff = MVUtility.CreateEnemyBuff(name, this); buffs.Add(newBuff.name, newBuff); } }
/// <summary> /// Create new buff for enemy /// </summary> /// <param name="name">name of buff class</param> /// <param name="host">the host</param> /// <returns>created buff</returns> public static BaseEnemyBuff CreateEnemyBuff(string name, BaseEnemy host) { Type t = Type.GetType(name, false); if (t == null) { return(null); } BaseEnemyBuff newEnemyBuff = (BaseEnemyBuff)Activator.CreateInstance(t); newEnemyBuff.host = host; newEnemyBuff.SetDefault(); return(newEnemyBuff); }