RelativePartCriteria

From Cosmoteer Wiki
< Modding‎ | 🔮 BuffsModding/Buffs/RelativePartCriteria
Jump to navigation Jump to search
Code location (what's this?): Cosmoteer.Ships.Parts.RelativePartCriteria

Defines the criteria that decides when one part can reference another part.

This is not a component. You use it inside components.

Inherits nothing.

Seems to be usable outside of buffs?

Parameters (Complete list)
Name Type Required? Buffable? Default value Description
IDs List<ID<PartRules>>? Yes

(but not all of them)

- - A list of part IDs ( = identifiers). The singular syntax ID = is also valid.

These will receive the buff.

Categories List<ID<PartCategory>>? Yes

(but not all of them)

- - A list of part category names. The singular syntax Category = is also valid.

These will receive the buff.

ExcludeIDs List<ID<PartRules>>? Yes

(but not all of them)

- - A list of part IDs ( = identifiers). The singular syntax ID = is also valid.

These will not receive the buff.

ExcludeCategories List<ID<PartCategory>>? Yes

(but not all of them)

- - A list of part category names. The singular syntax Category = is also valid.

These will not receive the buff.

Rot int?

meaning : 0 to 3 (there are 4 rotations)

- - - Which rotation is being considered.
FlipX bool - - -
Left Range<int>? - - -
Right Range<int>? - - -
Top Range<int>? - - -
Bottom Range<int>? - - -

Examples

The MRT's thruster_rocket_extender uses it multiple times, here is one instance checking for a component in another extender or the nozzle :

IsConnectedProxy
{
	Type = ToggleProxy
	PartLocation = [0, 2]
	ComponentID = IsConnected
	PartCriteria
	{
		IDs = [cosmoteer.thruster_rocket_nozzle, cosmoteer.thruster_rocket_extender]
		Rot = 0
		Left = 0
		Right = 3
		Top = 2
	}
}

...and another about fuel pod extenders :

LeftBatteryStorage
{
	Type = ResourceStorageProxy
	ResourceType = battery
	PartLocation = [-1, 0]
	ComponentID = LocalBatteryStorage
	PartCriteria
	{
		ID = cosmoteer.thruster_rocket_battery
		Rot = 0
		Top = 0
		Bottom = 2
		Right = 0
	}
}