public override void SetBuffDistributionItem(BuffDistribution distribs, long start, long end, long boonid) { long cDur = GetClampedDuration(start, end); if (cDur == 0) { return; } foreach (BuffSimulationItemBase item in Stacks) { item.SetBuffDistributionItem(distribs, start, end, boonid); } }
public override void SetBuffDistributionItem(BuffDistribution distribs, long start, long end, long buffID) { Dictionary <AgentItem, BuffDistributionItem> distrib = distribs.GetDistrib(buffID); AgentItem agent = Src; long value = GetValue(start, end); if (value == 0) { return; } if (distrib.TryGetValue(agent, out BuffDistributionItem toModify)) { toModify.IncrementOverstack(value); } else { distrib.Add(agent, new BuffDistributionItem( 0, value, 0, 0, 0, 0)); } }
public override void SetBuffDistributionItem(BuffDistribution distribs, long start, long end, long buffID) { long cDur = GetClampedDuration(start, end); if (cDur == 0) { return; } Dictionary <AgentItem, BuffDistributionItem> distrib = distribs.GetDistrib(buffID); AgentItem agent = _src; AgentItem seedAgent = _seedSrc; if (distrib.TryGetValue(agent, out BuffDistributionItem toModify)) { toModify.IncrementValue(cDur); } else { distrib.Add(agent, new BuffDistributionItem( cDur, 0, 0, 0, 0, 0)); } if (_isExtension) { if (distrib.TryGetValue(agent, out toModify)) { toModify.IncrementExtension(cDur); } else { distrib.Add(agent, new BuffDistributionItem( 0, 0, 0, 0, cDur, 0)); } } if (agent != seedAgent) { if (distrib.TryGetValue(seedAgent, out toModify)) { toModify.IncrementExtended(cDur); } else { distrib.Add(seedAgent, new BuffDistributionItem( 0, 0, 0, 0, 0, cDur)); } } if (agent == ParserHelper._unknownAgent) { if (distrib.TryGetValue(seedAgent, out toModify)) { toModify.IncrementUnknownExtension(cDur); } else { distrib.Add(seedAgent, new BuffDistributionItem( 0, 0, 0, cDur, 0, 0)); } } }
public override void SetBuffDistributionItem(BuffDistribution distribs, long start, long end, long boonid) { Stacks.First().SetBuffDistributionItem(distribs, start, end, boonid); }
public abstract void SetBuffDistributionItem(BuffDistribution distribs, long start, long end, long boonid);