public void Initialize(BuffConfiguration newConfiguration, ElementType[] newAffinity, BattleNPC newCaster = null) { m_Configuration = newConfiguration; m_BuffActiveObject = _createBuffActive(newConfiguration); m_SkillAffinity = newAffinity; m_Caster = newCaster; }
public override string ToString() { string passiveText; switch (Type) { case JudgementType.Basic: if (BasicType == BasicType.Number) { if (BuffPassive.IsZero) { passiveText = ""; } else { passiveText = BuffPassive.ToString(false); } } else { passiveText = $"/{BasicType.GetText()}{BuffPassive.ToString(true)}"; } break; case JudgementType.Versus: passiveText = $"/{UseSkillPassive.GetText()}{BuffPassive.ToString(true)}"; break; default: return(Type.GetText()); } return($"{Type.GetText()}({UseSkillActive.GetText()}{BuffActive.ToString(true)}{passiveText})"); }
public BuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) { Configuration = newConfiguration; Controller = newController; BuffCaster = caster; BuffDiff = 0; }
private void OnBuffFunction(string methodName, params object[] parameter) { var myClass = new BuffActive(); var method = myClass.GetType().GetMethod(methodName); if (method != null) { method.Invoke(myClass, parameter); } }
private void _applyBuffWhenPassesChance(BattleNPC targetNPC) { bool passedChanceToHit = GameGlobals.CheckPercentHitChance(m_Configuration.ChanceToApply); if (passedChanceToHit) { BuffActive newActive = Instantiate(m_BuffActiveObject, targetNPC.transform); newActive.gameObject.SetActive(true); targetNPC.RegisterBuff(newActive); newActive.Initialize(m_Configuration, m_SkillAffinity, m_Caster); newActive.StartBuffs(targetNPC); } }
private BuffActive _createBuffActive(BuffConfiguration configuration) { GameObject newObject = new GameObject(configuration.name); newObject.SetActive(false); SpriteRenderer renderer = newObject.AddComponent <SpriteRenderer>(); renderer.material = m_BuffSpriteMaterial; renderer.sortingLayerName = BattleGlobals.BUFF_LAYER_NAME; newObject.layer = LayerMask.NameToLayer(BattleGlobals.BUFF_LAYER_NAME); renderer.sortingOrder = m_BuffSpriteOrder; BuffActive newActive = newObject.AddComponent <BuffActive>(); return(newActive); }
public SkillDropBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { }
public BuffByte GenerateBuffByteFromByteType(BuffActive newController, BattleNPC caster) { BuffByte returnObject = null; switch (ByteType) { case BuffByteType.Cleanse: returnObject = new CleanseBuffByte(this, newController, caster); break; case BuffByteType.Current_Health: returnObject = new CurrentHealthBuffByte(this, newController, caster); break; case BuffByteType.Delayed_Revive: returnObject = new DelayedReviveBuffByte(this, newController, caster); break; case BuffByteType.Experience: returnObject = new ExperienceBuffByte(this, newController, caster); break; case BuffByteType.Flat_Resistance: returnObject = new FlatResistanceBuffByte(this, newController, caster); break; case BuffByteType.Martyr: returnObject = new MartyrBuffByte(this, newController, caster); break; case BuffByteType.Maximum_Health: returnObject = new MaxHealthBuffByte(this, newController, caster); break; case BuffByteType.Move_Speed: returnObject = new MoveSpeedBuffByte(this, newController, caster); break; case BuffByteType.Readiness: returnObject = new ReadinessBuffByte(this, newController, caster); break; case BuffByteType.Resistance: returnObject = new ResistanceBuffByte(this, newController, caster); break; case BuffByteType.Retaliate: returnObject = new RetaliateBuffByte(this, newController, caster); break; case BuffByteType.Skill_Drop: returnObject = new SkillDropBuffByte(this, newController, caster); break; case BuffByteType.Skill_Level: returnObject = new SkillLevelBuffByte(this, newController, caster); break; case BuffByteType.Stun: returnObject = new StunDebuffByte(this, newController, caster); break; case BuffByteType.Taunt: returnObject = new TauntDebuffByte(this, newController, caster); break; default: break; } return(returnObject); }
public MoveSpeedBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { }
public ExperienceBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { }
public DelayedReviveBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { }
public FlatResistanceBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { m_GotLock = false; }
public TauntDebuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { Configuration.IsDebuff = true; }
public ReadinessBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { }
public RetaliateBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { Continuous = true; }
public CurrentHealthBuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { }
public StunDebuffByte(BuffByteConfig newConfiguration, BuffActive newController, BattleNPC caster) : base(newConfiguration, newController, caster) { m_AlreadyAppliedStun = false; Configuration.IsDebuff = true; }