public void Attack(GameObject target) { Debug.Log("atk"); BaseAttribute attack = entityData.GetAttributesController.GetAttribute <AttackAttr>(); if (attack == null) { Debug.Log("null"); return; } //do something to attack //target.GetComponent<ITarget>().GotHit(attack.Value); //initial value was 100 points // attack of 30 //so we add -30 points to our defense var levels = new List <BaseAttribute.LevelsAttribute>(5); for (var i = 0; i < 5; ++i) { levels.Add(new BaseAttribute.LevelsAttribute(10, 10)); } DefenseAttr attr = new DefenseAttr( -attack.Value, 0, 100, levels, GameEnums.Modifier.Addition); Modifier m = new Modifier(1, -1, GameEnums.Modifier.Addition, attr); entityData.GetAttributesController.AddModifier(m); }
public void Attack(GameObject target) { Debug.Log("atk"); BaseAttribute attack = entityData.GetAttribute <AttackAttr>(); if (attack == null) { Debug.Log("null"); return; } //do something to attack //target.GetComponent<ITarget>().GotHit(attack.Value); //initial value was 100 points // attack of 30 //so we add -30 points to our defense DefenseAttr attr = new DefenseAttr( -attack.Value, 0, 100, 0, GameEnums.Modifier.ADDITION); Modifier m = new Modifier(1, GameEnums.Modifier.ADDITION, attr); entityData.AddModifier(m); }
public DefenseAttr(DefenseAttr attribute) : base(attribute) { }