public override void AddInteractions(InteractionObjectPair iop, Sim actor, WeatherStone target, List <InteractionObjectPair> results) { foreach (WeatherStone.SummonWeatherType type in SummonWeatherEx.GetSummonWeatherTypeForSim(actor.SimDescription)) { results.Add(new InteractionObjectPair(new Definition(type), target)); } }
public override InteractionInstance CreateInstance(ref InteractionInstanceParameters parameters) { InteractionInstance na = new SummonWeatherEx(); na.Init(ref parameters); return(na); }
public override bool Test(Sim actor, WeatherStone target, bool isAutonomous, ref GreyedOutTooltipCallback greyedOutTooltipCallback) { if (!SummonWeatherEx.CommonTest(target, actor, mType, ref greyedOutTooltipCallback, isAutonomous)) { return(false); } return(HasValidCandidates(actor.LotCurrent, actor, mType)); }
private static bool IsValidCandidate(Sim sim, Sim actor, WeatherStone.SummonWeatherType type) { if (sim.SimDescription.ChildOrBelow) { return(false); } else if (sim == actor) { return(false); } return(SummonWeatherEx.GetSummonWeatherTypeForSim(sim.SimDescription).Contains(type)); }
public override InteractionInstance CreateInstance(ref InteractionInstanceParameters parameters) { InteractionInstance na = new SummonWeatherEx(); na.Init(ref parameters); return na; }