EffectFilter
< ModdingModding/EffectFilter
Jump to navigation
Jump to search
Work in Progress
This page is currently WORK IN PROGRESS. Some things may be missing.
Feel free to contribute and don't worry about perfection - other editors can make corrections if necessary. Just get creating!
Code location (what's this?):
Cosmoteer.Simulation.EffectFilter
Stores rules for filtering hit and media effects.
Also behaves like a rules class.
Name | Type | Required? | Buffable? | Default value | Description |
---|---|---|---|---|---|
Ships | bool | - | - | - | |
OperationalHealth | bool | - | - | - | |
StructuralHealth | bool | - | - | - | |
OnlyPartCategories | HashSet<ID<PartCategory>>? | - | - | - | |
ExcludePartCategories | HashSet<ID<PartCategory>>? | - | - | - | |
Shields | bool | - | - | - | |
Bullets | bool | - | - | - | If "false", the next 2 parameters are ignored. |
OnlyBulletCategories | HashSet<ID<BulletTargetableRules>>? | - | - | - | |
ExcludeBulletCategories | HashSet<ID<BulletTargetableRules>>? | - | - | - | |
Crew | bool | - | - | - | |
Nuggets | bool | - | - | - | |
IgnoreInvulnerability | bool | - | - | false
(effectively) |
|
Self | bool? | - | - | - | |
TargetedSelf | bool? | - | - | - | |
Friendlies | bool? | - | - | false
(effectively) |
|
TargetedFriendlies | bool? | - | - | - | |
Enemies | bool? | - | - | - | |
TargetedEnemies | bool? | - | - | - | |
Neutrals | bool? | - | - | - | |
TargetedNeutrals | bool? | - | - | - | |
Junk | bool? | - | - | - | |
TargetedJunk | bool? | - | - | - | |
Deconstruction | bool? | - | - | - |
Notes
Here is the switch for the defaults :
case EffectFilter.Defaults.All:
this.Ships = true;
this.OperationalHealth = true;
this.StructuralHealth = true;
this.Shields = true;
this.Bullets = true;
this.Crew = true;
this.Nuggets = true;
this.IgnoreInvulnerability = true;
this.Friendlies = new bool?(true);
this.Enemies = new bool?(true);
this.Neutrals = new bool?(true);
this.Junk = new bool?(true);
break;
case EffectFilter.Defaults.Enemy:
this.Ships = true;
this.OperationalHealth = true;
this.StructuralHealth = true;
this.Shields = true;
this.Bullets = true;
this.Crew = true;
this.Nuggets = true;
break;
case EffectFilter.Defaults.None:
this.Ships = false;
this.OperationalHealth = false;
this.StructuralHealth = false;
this.Shields = false;
this.Bullets = false;
this.Crew = false;
this.Nuggets = false;
this.Friendlies = new bool?(false);
this.Enemies = new bool?(false);
this.Neutrals = new bool?(false);
this.Junk = new bool?(false);
break;
case EffectFilter.Defaults.CollisionsOff:
this.Ships = true;
this.OperationalHealth = true;
this.StructuralHealth = true;
this.Shields = true;
this.Bullets = true;
this.Crew = true;
this.Nuggets = true;
this.IgnoreInvulnerability = true;
this.Friendlies = new bool?(false);
this.Enemies = new bool?(false);
this.Neutrals = new bool?(false);
this.Junk = new bool?(false);
break;
default:
throw new ArgumentOutOfRangeException(nameof (defaults), (object) defaults, (string) null);