public CacheAvoidance(AvoidanceType type, int snoid, int raguid, int acdguid, Vector3 position, string name = "") : base(snoid, raguid, acdguid, position, name) { AvoidanceType = type; AvoidanceValue = FunkyBaseExtension.Settings.Avoidance.Avoidances[(int)type]; targetType = TargetType.Avoidance; }
public CacheAvoidance(CacheObject parent, AvoidanceType type, Ray R, double speed) : base(parent) { AvoidanceType = type; AvoidanceValue = FunkyBaseExtension.Settings.Avoidance.Avoidances[(int)type]; ray_ = R; Speed = speed; projectile_startPosition = base.Position; }
public override bool Equals(object obj) { //Check for null and compare run-time types. if (obj == null || this.GetType() != obj.GetType()) { return(false); } else { AvoidanceValue p = (AvoidanceValue)obj; return(this.Type == p.Type); } }
public CacheAvoidance(CacheObject parent, AvoidanceType avoidancetype) : base(parent) { AvoidanceType = avoidancetype; AvoidanceValue = FunkyBaseExtension.Settings.Avoidance.Avoidances[(int)avoidancetype]; RefreshRemovalCounter = AvoidanceValue.RemovalSeconds; //Special avoidances that require additional loops before removal (note: the loops are checked every 150ms, but obstacles are checked twice!) //if (AvoidanceType.HasFlag(AvoidanceType.TreeSpore) && SNOID == 6578) // RefreshRemovalCounter = 75; //else if (AvoidanceType.HasFlag(AvoidanceType.GrotesqueExplosion)) // RefreshRemovalCounter = 25; //else if (AvoidanceType.HasFlag(AvoidanceType.DemonicForge)) // RefreshRemovalCounter = 10; }