|  | 
|  | Projectile (Item item, ContentXElement element) | 
|  | 
| override void | OnItemLoaded () | 
|  | Called when all the components of the item have been loaded. Use to initialize connections between components and such. 
 | 
|  | 
| float | GetSpreadFromPool () | 
|  | 
| void | Shoot (Character user, Vector2 weaponPos, Vector2 spawnPos, float rotation, List< Body > ignoredBodies, bool createNetworkEvent, float damageMultiplier=1f, float launchImpulseModifier=0f) | 
|  | 
| bool | Use (Character character=null, float launchImpulseModifier=0f) | 
|  | 
| override bool | Use (float deltaTime, Character character=null) | 
|  | 
| override void | Drop (Character dropper, bool setTransform=true) | 
|  | a Character has dropped the item 
 | 
|  | 
| override void | Update (float deltaTime, Camera cam) | 
|  | 
| bool | ShouldIgnoreSubmarineCollision (Fixture target, Contact contact) | 
|  | Should the collision with the target submarine be ignored (e.g. did the projectile collide with the wall behind the turret when being launched) 
 | 
|  | 
| bool | IsAttachedTo (PhysicsBody body) | 
|  | 
| void | Unstick () | 
|  | 
| readonly record struct | ItemUseInfo (Item Item, Character User) | 
|  | 
|  | ItemComponent (Item item, ContentXElement element) | 
|  | 
| void | SetRequiredItems (ContentXElement element, bool allowEmpty=false) | 
|  | 
| virtual void | Move (Vector2 amount, bool ignoreContacts=false) | 
|  | 
| virtual bool | Pick (Character picker) | 
|  | a Character has picked the item 
 | 
|  | 
| virtual bool | Select (Character character) | 
|  | 
| virtual bool | CrewAIOperate (float deltaTime, Character character, AIObjectiveOperateItem objective) | 
|  | Returnstrue if the operation was completed
 
 | 
|  | 
| virtual void | UpdateBroken (float deltaTime, Camera cam) | 
|  | 
| virtual bool | SecondaryUse (float deltaTime, Character character=null) | 
|  | 
| virtual void | Equip (Character character) | 
|  | 
| virtual void | Unequip (Character character) | 
|  | 
| virtual void | ReceiveSignal (Signal signal, Connection connection) | 
|  | 
| virtual bool | Combine (Item item, Character user) | 
|  | 
| void | Remove () | 
|  | 
| void | ShallowRemove () | 
|  | Remove the component so that it doesn't appear to exist in the game world (stop sounds, remove bodies etc) but don't reset anything that's required for cloning the item. 
 | 
|  | 
| bool | HasRequiredSkills (Character character) | 
|  | 
| bool | HasRequiredSkills (Character character, out Skill insufficientSkill) | 
|  | 
| virtual float | GetSkillMultiplier () | 
|  | 
| float | DegreeOfSuccess (Character character) | 
|  | Returns 0.0f-1.0f based on how well the Character can use the itemcomponent. 
 | 
|  | 
| float | DegreeOfSuccess (Character character, List< Skill > requiredSkills) | 
|  | Returns 0.0f-1.0f based on how well the Character can use the itemcomponent. 
 | 
|  | 
| virtual void | FlipX (bool relativeToSub) | 
|  | 
| virtual void | FlipY (bool relativeToSub) | 
|  | 
| bool | IsEmpty (Character user) | 
|  | Returns true if the item is lacking required contained items, or if there's nothing with a non-zero condition inside. 
 | 
|  | 
| bool | HasRequiredContainedItems (Character user, bool addMessage, LocalizedString msg=null) | 
|  | 
| virtual bool | HasAccess (Character character) | 
|  | Only checks if any of the Picked requirements are matched (used for checking id card(s)). Much simpler and a bit different than HasRequiredItems. 
 | 
|  | 
| virtual bool | HasRequiredItems (Character character, bool addMessage, LocalizedString msg=null) | 
|  | 
| void | ApplyStatusEffects (ActionType type, float deltaTime, Character character=null, Limb targetLimb=null, Entity useTarget=null, Character user=null, Vector2? worldPosition=null, float afflictionMultiplier=1.0f) | 
|  | 
| virtual void | Load (ContentXElement componentElement, bool usePrefabValues, IdRemap idRemap, bool isItemSwap) | 
|  | 
| virtual void | OnMapLoaded () | 
|  | Called when all items have been loaded. Use to initialize connections between items. 
 | 
|  | 
| virtual void | OnScaleChanged () | 
|  | 
| virtual void | OnInventoryChanged () | 
|  | Called when the item has an ItemContainer and the contents inside of it changed. 
 | 
|  | 
| virtual XElement | Save (XElement parentElement) | 
|  | 
| virtual void | Reset () | 
|  | 
| virtual void | ParseMsg () | 
|  | 
| virtual bool | ValidateEventData (NetEntityEvent.IData data) | 
|  | 
|  | 
| static byte | SpreadCounter  [get] | 
|  | 
| Attack | Attack  [get] | 
|  | 
| Character | User  [get, set] | 
|  | 
| Character | Attacker  [get, set] | 
|  | 
| IEnumerable< Body > | Hits  [get] | 
|  | 
| float | LaunchImpulse  [get, set] | 
|  | 
| float | ImpulseSpread  [get, set] | 
|  | 
| float | LaunchRotation  [get, set] | 
|  | 
| float | LaunchRotationRadians  [get] | 
|  | 
| bool | DoesStick  [get, set] | 
|  | 
| bool | StickToCharacters  [get, set] | 
|  | 
| bool | StickToStructures  [get, set] | 
|  | 
| bool | StickToItems  [get, set] | 
|  | 
| bool | StickToDoors  [get, set] | 
|  | 
| bool | StickToDeflective  [get, set] | 
|  | 
| bool | StickToLightTargets  [get, set] | 
|  | 
| bool | Hitscan  [get, set] | 
|  | 
| int | HitScanCount  [get, set] | 
|  | 
| int | MaxTargetsToHit  [get, set] | 
|  | 
| bool | RemoveOnHit  [get, set] | 
|  | 
| float | Spread  [get, set] | 
|  | 
| bool | StaticSpread  [get, set] | 
|  | 
| bool | FriendlyFire  [get, set] | 
|  | 
| float | DeactivationTime  [get, set] | 
|  | 
| float | StickDuration  [get, set] | 
|  | 
| float | MaxJointTranslation  [get, set] | 
|  | 
| bool | Prismatic  [get, set] | 
|  | 
| bool | IgnoreProjectilesWhileActive  [get, set] | 
|  | 
| Body | StickTarget  [get] | 
|  | 
| bool | DamageDoors  [get, set] | 
|  | 
| bool | DamageUser  [get, set] | 
|  | 
| bool | IsStuckToTarget  [get] | 
|  | 
| ItemComponent | Parent  [get, set] | 
|  | 
| bool | InheritParentIsActive  [get, set] | 
|  | 
| virtual bool | DontTransferInventoryBetweenSubs  [get] | 
|  | If enabled, the contents of the item are not transferred when the player transfers items between subs. Use this if this component uses item containers in a way where removing the item from the container via external means would cause problems. 
 | 
|  | 
| virtual bool | DisallowSellingItemsFromContainer  [get] | 
|  | If enabled, the items inside any of the item containers on this item cannot be sold at an outpost. Use in similar cases as DontTransferInventoryBetweenSubs. 
 | 
|  | 
| float | PickingTime  [get, set] | 
|  | 
| string | PickingMsg  [get, set] | 
|  | 
| Dictionary< Identifier, SerializableProperty > | SerializableProperties  [get, protected set] | 
|  | 
| virtual bool | IsActive  [get, set] | 
|  | 
| PropertyConditional.LogicalOperatorType | IsActiveConditionalComparison  [get, set] | 
|  | 
| bool | Drawable  [get, set] | 
|  | 
| bool | CanBePicked  [get, set] | 
|  | 
| bool | DrawHudWhenEquipped  [get, protected set] | 
|  | 
| bool | LockGuiFramePosition  [get, set] | 
|  | 
| Point | GuiFrameOffset  [get, set] | 
|  | 
| bool | CanBeSelected  [get, set] | 
|  | 
| bool | CanBeCombined  [get, set] | 
|  | 
| bool | RemoveOnCombined  [get, set] | 
|  | 
| bool | CharacterUsable  [get, set] | 
|  | 
| bool | AllowInGameEditing  [get, set] | 
|  | 
| InputType | PickKey  [get, protected set] | 
|  | 
| InputType | SelectKey  [get, protected set] | 
|  | 
| bool | DeleteOnUse  [get, set] | 
|  | 
| Item | Item  [get] | 
|  | 
| string | Name  [get] | 
|  | 
| string | Msg  [get, set] | 
|  | 
| LocalizedString | DisplayMsg  [get, set] | 
|  | 
| float | CombatPriority  [get] | 
|  | 
| int | ManuallySelectedSound  [get] | 
|  | Which sound should be played when manual sound selection type is selected? Not [Editable] because we don't want this visible in the editor for every component. 
 | 
|  | 
| float | Speed  [get] | 
|  | Can be used by status effects or conditionals to the speed of the item. 
 | 
|  | 
| virtual bool | UpdateWhenInactive  [get] | 
|  |