Talk:MoveTo - ObjectReference

From the CreationKit Wiki
Revision as of 10:24, 2 May 2012 by imported>Fg109 (dropped objects bug)
Jump to navigation Jump to search

If I try this script on an object with the reference placed in the worldspace and named.

Scriptname E0HelloWorld extends ObjectReference  
Event onActivate(ObjectReference akActivate)
    Debug.Notification("Teleporting...")
    akActivate.MoveTo(WhiterunCOCREF)
EndEvent

And it gives me the error that WhiterunCOCREF isn't defined, when I've set the name of the reference to that.

--Elec0 00:20, 8 February 2012 (EST)

In Papyrus, forms can no longer be referenced directly by their editorIDs. Instead, you need to create a property, and assign the value of that property to the form you're trying to access in the Creation Kit.
For example:
ScriptName E0HelloWorld extends ObjectReference

ObjectReference property WhiterunCOCREF auto

Event onActivate(ObjectReference akActivate)
    Debug.Notification("Teleporting...")
    akActivate.MoveTo(WhiterunCOCREF)
EndEvent
-- Cipscis 03:34, 8 February 2012 (EST)
This is mightly inconvient, especially if I have whole load of stuff to refer.
AoshimaMichio 14:45, 18 February 2012 (EST)
As an experienced scripter, I beg to differ - it's one of my favourite new features of Papyrus. This enables us to write scripts for general usage, and then let the specific forms that it deals with be set up in the Creation Kit.
If you need to refer to a lot of stuff by their editorIDs, then all you need to do is add one more short line for each and use the Creation Kit's "Auto-fill all" button. You might not like this, but it is well worth the added power we get from being able to use Properties.
-- Cipscis 00:51, 19 February 2012 (EST)

Dropped Object

Bug with dropped objects
--Fg109 11:24, 2 May 2012 (EDT)