Show / Hide Table of Contents

Class StockpileComponent

Inheritance
System.Object
WorldObjectComponent
StockpileComponent
Implements
ILinkable
IOwned
IController
IViewController
IHasUniversalID
IHasSerializableID
IRPCAuthChecks
System.ComponentModel.INotifyPropertyChanged
IThreadSafeSubscriptions
ISubscriptions<ThreadSafeSubscriptions>
ISubscriptions
IHasInteractions
ITickOnDemand
Inherited Members
WorldObjectComponent.IsRPCAuthorized(IWorldObserver, AccessType, Object[])
WorldObjectComponent.PostInitialize()
WorldObjectComponent.OnCreate()
WorldObjectComponent.Tick()
WorldObjectComponent.LateTick()
WorldObjectComponent.TryPickup(Player, InventoryChangeSet, Inventory, Boolean)
WorldObjectComponent.OnPickup(Player)
WorldObjectComponent.OnBeforeObjectMoved()
WorldObjectComponent.OnAfterObjectMoved()
WorldObjectComponent.OnLinkClicked(TooltipOrigin, TooltipClickContext, User)
WorldObjectComponent.UILinkContent()
WorldObjectComponent.Parent
WorldObjectComponent.Name
WorldObjectComponent.IconName
WorldObjectComponent.ForceActiveTab
WorldObjectComponent.ComponentPrefabName
WorldObjectComponent.ComponentTabName
WorldObjectComponent.Enabled
WorldObjectComponent.IsDestroyed
WorldObjectComponent.Availability
WorldObjectComponent.ShouldRequestEverything
WorldObjectComponent.Owners
WorldObjectComponent.ControllerID
WorldObjectComponent.IOwned.Deed
WorldObjectComponent.Subscriptions
WorldObjectComponent.PropertyChanged
Namespace: Eco.Gameplay.Components.Storage
Assembly: Eco.Gameplay.dll
Syntax
[RequireComponent]
public class StockpileComponent : WorldObjectComponent, ILinkable, IOwned, IController, IViewController, IHasUniversalID, IHasSerializableID, IRPCAuthChecks, INotifyPropertyChanged, IThreadSafeSubscriptions, ISubscriptions<ThreadSafeSubscriptions>, ISubscriptions, IHasInteractions, ITickOnDemand

Constructors

StockpileComponent()

Declaration
public StockpileComponent()

Fields

DefaultDimensions

Declaration
public static readonly Vector3i DefaultDimensions
Field Value
Type Description
Vector3i

OnBlocksChanged

Declaration
public ThreadSafeAction<HashSet<Vector3i>> OnBlocksChanged
Field Value
Type Description
ThreadSafeAction<System.Collections.Generic.HashSet<Vector3i>>

Properties

BlockTypes

Declaration
public Type[] BlockTypes { get; }
Property Value
Type Description
System.Type[]

Dimensions

Declaration
public Vector3i Dimensions { get; }
Property Value
Type Description
Vector3i

YOffset

Declaration
public int YOffset { get; }
Property Value
Type Description
System.Int32

Methods

ClearPlacementArea(User, Vector3i, Vector3i, Quaternion, Int32)

Declaration
public static void ClearPlacementArea(User actor, Vector3i pos, Vector3i dim, Quaternion rotation, int outline = 0)
Parameters
Type Name Description
User actor
Vector3i pos
Vector3i dim
Quaternion rotation
System.Int32 outline

Destroy()

Declaration
public override void Destroy()
Overrides
WorldObjectComponent.Destroy()

Initialize()

Declaration
public override void Initialize()
Overrides
WorldObjectComponent.Initialize()

Initialize(Vector3i, Int32)

Declaration
public void Initialize(Vector3i dimensions, int yOffset = 0)
Parameters
Type Name Description
Vector3i dimensions
System.Int32 yOffset

TickOnDemand()

Ticks only when explicitly requested (see ITickOnDemand docs).

Declaration
public void TickOnDemand()

UpdateStockpileFromInventory()

Updates contents of BlockTypes to match contents of Eco.Gameplay.Components.Storage.StockpileComponent.storage

Declaration
public void UpdateStockpileFromInventory()

Implements

ILinkable
IOwned
IController
IViewController
IHasUniversalID
IHasSerializableID
IRPCAuthChecks
System.ComponentModel.INotifyPropertyChanged
IThreadSafeSubscriptions
ISubscriptions<TSubscriptionsList>
ISubscriptions
IHasInteractions
ITickOnDemand

Extension Methods

TagUtils.TagNames(Object, Boolean)
TagUtils.TagDisplayNames(Object, Boolean)
ClientSetViewExtensions.SetClassOfProperty(Object, Player, String, String, Int32)
TypeTooltipExtensions.UILinkGeneric(Object)
☀
☾
In This Article
Back to top
Copyright (c) Strange Loop Games 2021
☀
☾