Difference between revisions of "IsFurnitureInUse - ObjectReference"
Jump to navigation
Jump to search
imported>B1gBadDaddy m (changed indentation for workaround script) |
imported>B1gBadDaddy m (added on activate section to workaround script) |
||
Line 35: | Line 35: | ||
# If the furniture object has no marker, or is being activated remotely so no animation plays, IsFurnitureInUse will return false. To workaround this, if the furniture disables looking controls (for example crafting stations), the below example can be used instead.<br/> | # If the furniture object has no marker, or is being activated remotely so no animation plays, IsFurnitureInUse will return false. To workaround this, if the furniture disables looking controls (for example crafting stations), the below example can be used instead.<br/> | ||
<source lang="papyrus"> | <source lang="papyrus"> | ||
Event OnActivate(ObjectReference akActionRef) | |||
Utility.Wait(1.0) | |||
RegisterForSingleUpdate(0.5) | |||
EndEvent | |||
Event OnUpdate() | Event OnUpdate() | ||
Revision as of 10:35, 2 July 2017
Member of: ObjectReference Script
Checks to see if any furniture marker on this object is in use, optionally ignoring markers that are reserved, but not currently used.
Syntax
bool Function IsFurnitureInUse(bool abIgnoreReserved = false) native
Parameters
- abIgnoreReserved: Whether to ignore reserved markers or not.
- Default: False
Return Value
If any marker on the furniture is in use. (Or reserved, if we aren't ignoring reservations)
Examples
; Is the bed in use (or someone has reserved it)?
if Bed.IsFurnitureInUse()
Debug.Trace("Bed is being used")
endIf
; Is the bed actually in use (ignoring reservations)?
if Bed.IsFurnitureInUse(true)
Debug.Trace("Bed is actually being used")
endIf
Notes
- If the furniture object has no marker, or is being activated remotely so no animation plays, IsFurnitureInUse will return false. To workaround this, if the furniture disables looking controls (for example crafting stations), the below example can be used instead.
Event OnActivate(ObjectReference akActionRef)
Utility.Wait(1.0)
RegisterForSingleUpdate(0.5)
EndEvent
Event OnUpdate()
if ( ! Game.IsLookingControlsEnabled() )
; Controls disabled, Player must still be using this furniture
RegisterForSingleUpdate(0.5)
return
else
; Furniture no longer in use
endif
EndEvent