private static bool OnPersonalDamagePrefix( ref SPKillFeedVM __instance, int totalDamage, bool isFatalDamage, bool isVictimAgentMount, bool isFriendlyFire, string victimAgentName ) { if (SubModule.Config.EnablePersonalKillFeed) { __instance.PersonalFeed.OnPersonalHit(totalDamage, isFatalDamage, isVictimAgentMount, isFriendlyFire, victimAgentName); } return(false); }
private static bool OnAgentRemovedPrefix( ref SPKillFeedVM __instance, Agent affectedAgent, Agent affectorAgent ) { var assistedAgent = (Agent)__instance.Call("GetAssistedAgent", affectedAgent, affectorAgent); if (SubModule.Config.EnablePersonalKillFeed) { if (Agent.Main != null && assistedAgent == Agent.Main) { __instance.PersonalFeed.OnPersonalAssist(affectedAgent.Name); } } if (SubModule.Config.EnableGeneralKillFeed) { __instance.GeneralCasualty.OnAgentRemoved(affectedAgent, affectorAgent, assistedAgent); } return(false); }
public BleedingComponent(Agent victim, Agent attacker, double tickDamage, Blow b, Config config, Mission mission, SPKillFeedVM hitFeed) : base(victim) { _victim = victim; _attacker = attacker; _b = b; _config = config; _mission = mission; _tickDamage = tickDamage; _bandaged = false; _hitFeed = hitFeed; _dropRate = 0.8f; _timer = new System.Timers.Timer() { Interval = _config.SecondsBetweenTicks * 1000, AutoReset = false }; _enabled = true; DealBleedingDamage(); }