Jump to content

Help a Papyrus Noob - Cast on ReferenceObject


Recommended Posts

Posted

Just fair warning, I'm trying to get my feet wet with Papyrus trying to make personal changes to some mods and I'm having difficulty wrangling it.

I'm trying to compile the modified script below from the Radiant Prostitution mod and having no luck.

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 3
Scriptname mf_simplerjobgiveitemsuccess Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_2
Function Fragment_2(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
SatiatedSpell.cast (theClient)
;END CODE
EndFunction
;END FRAGMENT

;BEGIN FRAGMENT Fragment_1
Function Fragment_1(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
GetOwningQuest().setstage(30)
;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

mf_simplerjobscript Property SimplerJob  Auto  
Spell Property SatiatedSpell Auto 
Actor Property Client Auto 
ReferenceAlias Property theClient  Auto  

Basically I'm trying to make the script cast a spell (SatiatedSpell) onto a ReferenceAliases from the quest (theClient)

The problem I'm finding is while I can get the script to compile when the .cast part is directed at an actor (Client), I can't get it to work when I put in a ReferenceAlias property.

I get the feeling I'm missing a step where I can connect the The ReferenceAlias to the Actor but as I said I'm pretty new to all this so I'm uncertain what that step is.

Posted
;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 3
Scriptname mf_simplerjobgiveitemsuccess Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_2
Function Fragment_2(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
ObjectReference target = theClient.GetReference()

if target != none
    SatiatedSpell.Cast(target, target)
endif
;END CODE
EndFunction
;END FRAGMENT

;BEGIN FRAGMENT Fragment_1
Function Fragment_1(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
GetOwningQuest().setstage(30)
;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

mf_simplerjobscript Property SimplerJob  Auto  
Spell Property SatiatedSpell Auto 
Actor Property Client Auto 
ReferenceAlias Property theClient  Auto  

 

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...