Class BlockHolder
Komponente, die einen Block hält. Hält und verwaltet Blöcke innerhalb der Szene.
Normalerweise muss im Editor oder während der Laufzeit im Skript BlockRoot gesetzt werden. Dies wird typischerweise vom Mega Studio im Edit-Modus generiert. Wenn zur Laufzeit ein unbekannter Block lokalisiert wird, generiert BlockHolder automatisch einen BlockController und fügt ihn unter BlockRoot hinzu. Falls BlockRoot zu diesem Zeitpunkt nicht existiert, wird es automatisch erstellt.
[DisallowMultipleComponent]
public class BlockHolder : MonoBehaviour
- Vererbung
-
BlockHolder
Felder
BlockRootSource
Herkunft des Block-Root.
public BlockHolder.BlockRootSourceType BlockRootSource
MultiBlock
Strategie bei Lokalisierung mehrerer Blöcke. Muss vor MonoBehaviour.Start gesetzt werden.
public BlockHolder.MultiBlockStrategy MultiBlock
blocks
protected readonly Dictionary<string, BlockController> blocks
Eigenschaften
BlockRoot
Übergeordneter Knoten für alle Mega-Blöcke. Wird typischerweise von den Mega-Tools generiert. Falls nicht gesetzt, wird ein neuer Root-Knoten automatisch generiert, wenn der erste Block gehalten wird.
public BlockRootController BlockRoot { get; set; }
Blocks
Alle gehaltenen Mega-Blöcke.
public List<BlockController> Blocks { get; }
Methoden
GetBlock(string)
Ruft einen Block ab.
public BlockController GetBlock(string id)
Parameter
id
Hold(BlockInfo, LocalTransform)
Hält einen Block. Die lokale Block-Transformation wird durch die Eingabeparameter festgelegt.
public BlockController Hold(BlockController.BlockInfo info, LocalTransform transform)
Parameter
infotransform
Hold(BlockInfo, Location)
Hält einen Block. Die lokale Block-Transformation wird aus dem Ort berechnet.
public BlockController Hold(BlockController.BlockInfo info, Location location)
Parameter
infolocation