Class BuildableItemCreator
Provides convenient static methods for creating custom buildable items.
[Obsolete("Use S1API.Items.Buildable.BuildableItemCreator instead")]
public static class BuildableItemCreator
- Inheritance
-
BuildableItemCreator
- Inherited Members
Remarks
Use CreateBuilder() for creating items from scratch, or CloneFrom(string) for creating variants of existing buildable items.
Methods
CloneFrom(BuildableItemDefinition)
Creates a new buildable item by cloning from an existing BuildableItemDefinition wrapper.
public static BuildableItemDefinitionBuilder CloneFrom(BuildableItemDefinition source)
Parameters
sourceBuildableItemDefinitionThe buildable item definition to clone from.
Returns
- BuildableItemDefinitionBuilder
A builder initialized with the source item's properties, ready for customization.
Examples
var originalRack = ItemManager.GetItemDefinition("StorageRack-1x0.5") as BuildableItemDefinition;
var metalRack = BuildableItemCreator.CloneFrom(originalRack)
.WithBasicInfo("metal_rack_small", "Small Metal Storage Rack", "A metal version")
.WithBuildSound(BuildSoundType.Metal)
.Build();
CloneFrom(string)
Creates a new buildable item by cloning an existing item's properties. This is useful for creating variants of existing items (e.g., different materials, sizes).
public static BuildableItemDefinitionBuilder CloneFrom(string sourceItemId)
Parameters
sourceItemIdstringThe ID of the existing buildable item to clone from.
Returns
- BuildableItemDefinitionBuilder
A builder initialized with the source item's properties, ready for customization.
Examples
var metalRack = BuildableItemCreator.CloneFrom("StorageRack-1x0.5")
.WithBasicInfo("metal_rack_small", "Small Metal Storage Rack", "A metal version")
.WithBuildSound(BuildSoundType.Metal)
.WithPricing(72f, 0.5f)
.Build();
CreateBuilder()
Creates a new builder for composing a buildable item definition with full flexibility. Use fluent methods to configure the item, then call Build() to register it.
public static BuildableItemDefinitionBuilder CreateBuilder()
Returns
- BuildableItemDefinitionBuilder
A new BuildableItemDefinitionBuilder instance for fluent configuration.
Examples
var item = BuildableItemCreator.CreateBuilder()
.WithBasicInfo("my_rack", "Custom Storage Rack", "A custom storage rack")
.WithBuildSound(BuildSoundType.Metal)
.WithPricing(75f, 0.5f)
.Build();