private float GetBuff(BattleStatusData.TypeEnum valueType) { float value; float total; Buff buff; total = BattleFieldManager.Instance.GetFieldBuff(Position, valueType); foreach (KeyValuePair <int, BattleStatus> item in StatusDic) { if (item.Value is Buff && ((Buff)item.Value).Type == valueType) { buff = (Buff)item.Value; if (valueType == BattleStatusData.TypeEnum.MOV) { value = buff.Value; total += value; } else { value = (float)buff.Value; total *= value; } } } return(total); }
public Buff(BattleStatusData.TypeEnum type, int value) //計算機用的 { Type = type; Value = value; if (type != BattleStatusData.TypeEnum.MOV) { Value /= 100f; } }
public float GetFieldBuff(Vector2 position, BattleStatusData.TypeEnum valueType) { BattleField battleField; MapDic.TryGetValue(Vector2Int.RoundToInt(position), out battleField); if (battleField != null && battleField.Status is Buff) { Buff buff = (Buff)battleField.Status; if (buff != null && buff.Type == valueType) { return(buff.Value); } else { if (valueType == BattleStatusData.TypeEnum.MOV) { return(0); } else { return(1); } } } else { if (valueType == BattleStatusData.TypeEnum.MOV) { return(0); } else { return(1); } } }
public Buff(int id, int lv) { Data = BattleStatusData.GetData(id); Type = Data.ValueType; if (Data.ValueList.Count >= lv) { Value = Data.ValueList[lv - 1]; } else { Value = Data.ValueList[0]; } if (Data.ValueType != BattleStatusData.TypeEnum.MOV) { Value /= 100f; } RemainTurn = Data.Turn; Message = Data.Message; Icon = Data.Icon; Comment = Data.GetComment(lv); }