Namespace ItemChanger
Classes
AbstractItem
The base class for all items.
AbstractLocation
The base class for all locations. Locations are used by placements to place items.
Usually the location contains raw data and an implementation that may be customizable to an extent by the placement.
AbstractPlacement
The base class for all placements. Placements carry a list of items and specify how to implement those items, often using locations.
BoxedBool
IBool which represents a constant value.
BoxedSprite
ISprite wrapper for Sprite. Use only for items created and disposed at runtime--it is not serializable.
BoxedString
ChangeSceneInfo
Instructions for a container to change scene.
Conjunction
ConsumablePDIntCost
Cost which subtracts the specified amount from the specified PlayerData int. Can only be paid when the result of the subtraction would be nonnegative.
Container
Base class for types which implement creating and fsm-editing item containers.
ContainerGiveInfo
Instructions for a container to give items.
ContainerInfo
Data for instructing a Container class to make changes. The ContainerGiveInfo field must not be null.
Cost
Data type used generally for cost handling, including in shops and y/n dialogue prompts.
CostDisplayer
A utility object which dictates how costs (and especially multicosts) are to be displayed in non-textual contexts such as shops. Accounts for multicosts and other correctly-implemented nested costs.
CostInfo
Instructions for a container to enforce a Cost.
CostTag
Tag used for carrying information about costs, particularly for items in a shop or other multicost placement.
Deployer
Abstract IDeployer which creates an object and places it at the specified coordinates. Inheritors must specify how the object is instantiated; the base class handles positioning and activation.
Disjunction
DualSprite
EggCostDisplayer
A cumulative cost displayer which displays rancid egg costs with a default cost sprite of a rancid egg
EmbeddedSprite
An ISprite which retrieves its sprite from a SpriteManager.
EmptySprite
Events
The main class in ItemChanger for organizing events. Some specific events are defined in AbstractPlacement and AbstractItem instead.
Finder
FormattedLanguageString
An IString which substitutes arguments into a format string provided by Language.
GeoCost
Cost which subtracts the specified amount from the GeoCounter. Can only be paid when the result of the subtraction would be nonnegative.
GeoCostDisplayer
A noncumulative cost displayer which displays geo costs (as in vanilla shops).
GetItemEventArgs
GetLocationEventArgs
GiveEventArgs
GiveInfo
The parameters included when an item is given. May be null.
ItemChangerMod
ItemChangerSprite
An EmbeddedSprite which retrieves its sprite from SpriteManager.Instance.
ItemNames
LanguageGetArgs
LanguageKey.LanguageKeyDictConverter<TValue>
LanguageString
LocationNames
MultiCost
Cost which is the concatenation of other costs. Can only be paid if all of its costs can be paid, and pays all its costs sequentially.
NamedBoolFunction
NamedFunction<T>
Stores a delegate by name for use with a value-providing interface (IBool, IString, ISprite). The function must be defined before the value property is accessed. To ensure compatibility with round-trip deserialization, it is advised to define the function from a Module or Tag's Load.
NamedSpriteFunction
NamedStringFunction
Negation
PaywallString
PDBool
IBool which represents a PlayerData bool.
PDBoolCost
Cost which has no pay effects, but can only be paid when the specified PlayerData bool is true.
PDIntBool
IBool which represents comparison on a PlayerData int.
Supports IWritableBool in one direction only (direction depends on comparison operator).
PDIntCost
Cost which has no pay effects, but can only be paid when the specified PlayerData int comparison succeeds.
PDIntCostDisplayer
A cost displayer which displays PD int costs matching a provided PD variable name. When set set to cumulative, it will check for PDIntCost; when set to noncumulative it will check for ConsumablePDIntCost. Cost sprite is user-customizable and defaults to null.
PlacementAllObtainedBool
IBool which searches for a placement by name and checks whether all items on the placement are obtained.
If the placement does not exist, defaults to the value of missingPlacementTest, or true if missingPlacementTest is null.
PlacementVisitStateBool
IBool which searches for a placement by name and checks whether its VisitState includes specified flags.
If the placement does not exist, defaults to the value of missingPlacementTest, or true if missingPlacementTest is null.
ReadOnlyGiveEventArgs
SceneNames
SDBool
IBool which represents the value of a PersistentBoolData in SceneData.
Settings
SingleCostDisplayerSelectionStrategy
A cost displayer selection strategy which applies a single cost displayer to all items.
SmallPlatform
A Deployer which creates a platform at the specified point.
SpriteGetArgs
StartDef
StartDef.StartComponent
StringGetArgs
Tag
TaggableObject
TaggableObject.TagListDeserializer
TaggableObject.TagListSerializer
Transition.TransitionDictConverter<TValue>
UIDef
VisitStateChangedEventArgs
Structs
FsmID
LanguageKey
SaveSettings
Transition
Interfaces
IBool
Interface which can supply a bool value. Used frequently for serializable bool tests.
ICostDisplayerSelectionStrategy
Interface used to select a cost displayer for a given shop
IDeployer
Interface for very simple scene change actions, which can be added directly to settings.
The most common use is a Deployer, which creates an object at specified coordinates.
IShopNotchCostTag
Interface used by shops to determine whether an item has a notch cost that should be displayed.
The notch cost of a CharmItem or EquippedCharmItem is displayed even if it does not have this tag.
ISprite
IString
ITransition
IWritableBool
IBool which supports write operations.
Enums
ComparisonOperator
Enum used to specify an operation for comparing two numbers.
DefaultShopItems
Flags enum used to specify items that should not be removed from a shop by a ShopLocation.
DropType
Unused.
Finder.FinderItemSheets
Finder.FinderLocationSheets
FlingType
Enum for controlling how items (particularly geo) should be flung from a location.
GeoRockSubtype
Enum used to refer to the different geo rock prefabs that are supported.
GrubfatherRewards
Flags enum used to specify a subset of rewards from Grubfather.
MessageType
Enum used to communicate compatibility with different UIDef types.
ModuleHandlingFlags
Enum which provides additional information for serialization and other module handling purposes.
ObtainState
Enum for the current state of an item, to determine whether it has been given and whether it is eligible to be given.
Persistence
Enum for controlling respawn behavior of items.
PlacementConflictResolution
Enum for controlling what should happen when a placement is added, and another placement with the same name already exists in settings.
SeerRewards
Flags enum used to specify a subset of rewards from the Seer.
ShinyFling
Enum for controlling how a shiny should be flung when activated.
SoulTotemSubtype
Enum used to refer to the different soul totem prefabs that are supported.
SpecialStartEffects
Enum for adding special behvaior to the respawn marker tied to a StartDef.
TagHandlingFlags
Enum which provides additional information for serialization and other tag handling purposes.
TextType
Enum for describing the text alignment and background of a lore tablet.
VisitState
Delegates
Events.LanguageEdit
Delegate type which allows subscriber to optionally edit the input string.
Events.TransitionOverrideListener
Delegate type used to communicate when a transition is overriden.