Difference between revisions of "GetMiscComponents - MiscObject"

From the Fallout4 CreationKit Wiki
Jump to navigation Jump to search
imported>Qazaaq
(added wiki link)
imported>Qazaaq
(changed code example)
Line 17: Line 17:
== Examples ==
== Examples ==
<source lang="papyrus">
<source lang="papyrus">
; Count miscellaneous components
; Count how many different types of components are used
int count = Item.GetMiscComponents().Length
MiscObject DeskFanOffice01
Debug.Trace(Item + " has " + count + " components.")
 
int count = DeskFanOffice01.GetMiscComponents().Length
If (count == 1)
    Debug.Trace(DeskFanOffice01 + " has one type of component.")
ElseIf (count > 0)
    Debug.Trace(DeskFanOffice01 + " has "+count+" types of component.")
Else
    Debug.Trace(DeskFanOffice01 + " has no components.")
EndIf
</source>
</source>




<source lang="papyrus">
<source lang="papyrus">
{For each miscellaneous component}
Scriptname Example extends ScriptObject
MiscObject:MiscComponent[] components = Item.GetMiscComponents()
import MiscObject
If (components)
 
    int index = 0
MiscObject Property DeskFanOffice01 Auto Const Mandatory
    While (index < components.Length)
 
        Debug.Trace(Item + " uses " + components[index].Count + " of the " + components[index].Object + " component.")
Event OnInit()
        index += 1
    {For each miscellaneous component}
    EndWhile
    MiscComponent[] components = DeskFanOffice01.GetMiscComponents()
Else
    If (components)
    Debug.Trace(Item + " has no components.")
        int index = 0
EndIf
        While (index < components.Length)
            Debug.Trace("("+index+" of "+components.Length+") There is "+components[index].Count+" of the '"+components[index].Object+"' component")
            index += 1
        EndWhile
    Else
        Debug.Trace(DeskFanOffice01+" has no components.")
    EndIf
EndEvent
</source>
</source>



Revision as of 19:27, 2 December 2018

F4SE Member of: MiscObject Script
Requires F4SE version 0.4.2 or higher.

Gets the Component Data for this MiscItem as an array of MiscComponent structures.

Syntax

MiscComponent[] Function GetMiscComponents() Native

Parameters

  • None

Return Value

An array of MiscComponent structures.

Examples

; Count how many different types of components are used
MiscObject DeskFanOffice01

int count = DeskFanOffice01.GetMiscComponents().Length
If (count == 1)
    Debug.Trace(DeskFanOffice01 + " has one type of component.")
ElseIf (count > 0)
    Debug.Trace(DeskFanOffice01 + " has "+count+" types of component.")
Else
    Debug.Trace(DeskFanOffice01 + " has no components.")
EndIf


Scriptname Example extends ScriptObject
import MiscObject

MiscObject Property DeskFanOffice01 Auto Const Mandatory

Event OnInit()
    {For each miscellaneous component}
    MiscComponent[] components = DeskFanOffice01.GetMiscComponents()
    If (components)
        int index = 0
        While (index < components.Length)
            Debug.Trace("("+index+" of "+components.Length+") There is "+components[index].Count+" of the '"+components[index].Object+"' component")
            index += 1
        EndWhile
    Else
        Debug.Trace(DeskFanOffice01+" has no components.")
    EndIf
EndEvent

Notes

See Also