|
|
|
|
#1 |
![]() Join Date: Sep 2009
Reputation: 330
Posts: 1,464
|
Any modder got Show() to work ?
Hello all.
I have tried this several times now and I just cannot get show() to work inside an esp file. Beth use it for the doom stones and other such things and it works for them from their esm file. I have never seen it work inside a mod either as a trigger or a quest script or dialog result. Here is an example trigger I was using to test it. Everything works except for the show command. No errors are given. wowdarkroadsstorymessagebox01a is message I want to display, it was created so I have not forgotten that step. wowdarkroadsstorymessagebox01a settings are messagebox ticked, then the message it self. Nothing else. Here is the script. It works if I put the message in debug, but not if I use Show(). No errors are given from this script. Scriptname wowdarkroadstriggerstory01 extends ObjectReference Quest Property wowskilltree Auto message Property wowdarkroadsstorymessagebox01a auto int doonce Event OnLoad() if doonce != 1 ;debug.messagebox("Onload works") (wowskilltree as wowskilltreescript).wowdwemerskill() (wowskilltree as wowskilltreescript).wowfalmerskill() wowdarkroadsstorymessagebox01a.Show() doonce = 1 endif EndEvent |
|
|
|
|
|
#2 |
![]() Join Date: Apr 2011
Reputation: 158
Posts: 1,180
|
I have always defined my Message Boxes as ints when using them, and I always define them to .Show in their own separate functions.
Code:
Event OnActivate(ObjectReference akActionRef) MainMenu() ENDEVENT Function MainMenu() int ibutton = SkyRadioMB2.Show() If (ibutton == 0) endif EndFunction I have only tried it like that though, not sure about any other types of messages. |
|
|
|
|
|
#3 |
![]() Join Date: Sep 2009
Reputation: 330
Posts: 1,464
|
Thanks Super.
+ rep. I'll try it your way and see if it works but looking at the example I see you declaring int, I see you checking int, but nothing that runs the message. Also I am not seeing how SkyRadioMB2.Show was declared, looks like a straight cut and paste from the wiki to me which is wrong most of the time or missing vital information such as this. Message Property SkyRadioMB2 Auto. Which should be needed for SkyRadioMB2 to be recognized by the above script as a message and not give an error. Knowing how Messages are declared by working examples might help me too since its the one thing the wiki treats as a trade secret and leaves the modder guessing which function has the desired command and whether its a property or not. For all I know it might only work if I do this. Int Property SkyRadioMB2 Auto I have seen this in scripts that do work. Message Property SkyRadioMB2 Auto But it just does not work in an esp so far no matter what I try. Its like the game knows the command is valid but refuses to run it. |
|
|
|
|
|
#4 |
![]() Join Date: Apr 2011
Reputation: 158
Posts: 1,180
|
hehe, sorry, I snipped out most of the script last night
. Caused some confusion, it was pretty late DX.Code:
Scriptname SkyRadioScript extends ObjectReference Message property SkyRadioMB2 Auto Event OnActivate(ObjectReference akActionRef) MainMenu() ENDEVENT Function MainMenu() int ibutton = SkyRadioMB2.Show() If (ibutton == 0) endif EndFunction Now as to why its still not working, I would try placing a Utility.Wait(0.1) in between your other functions and the message box. Sometimes I notice scripts get flooded with too much at once and seem to skip functions unless a Wait utility is there to give them a brief pause. Also, if your debug message shows, that means its pretty much a problem with the .show() command. Have you actually defined the message property? Sometimes after editing scripts, it resets property values. Your may have to go back into your Scripts properties and assign it to point to the message you want manually. If its not those things, my guess is that .show doesn't work too well from a OnLoad event. I have never tried so I can't say, but I know trying to call some functions through some events just does not work at all (animations through OnEquip for example, which is ANNOYING.) Last edited by superboyofmeat: 04-22-2012 at 08:44 AM. |
|
|
|
|
|
#5 | |
![]() Join Date: Sep 2009
Reputation: 330
Posts: 1,464
|
NP about the missing info, just wanted to check its the same as mine. Thanks for the update Superboy.
Quote:
Good point about the script properties too, thats another thing I have seen, though this one I checked, its still there and still working. Didnt know other things had problems with events too, thanks for that tip. I expect we will find a long list of "dont works" in skyrim that must be avoided. I'll run some tests later and see if anything gets this working or not and post of it does. Thanks again
|
|
|
|
|
|
|
#6 |
![]() Join Date: Sep 2009
Reputation: 330
Posts: 1,464
|
Superboy
I afraid its as I expected, your example does not work either and neither does variations on the function example. Show() is a no show. So far it has been 100% none functional inside a mod. |
|
|
|
|
|
#7 |
![]() Join Date: Sep 2009
Reputation: 330
Posts: 1,464
|
I converted some esps in to esms for fallout nv and found some scripted stuff stopped working in the esm but not in the esp. I think that is what we are seeing here for esps. Another new bug to suffer from.
|
|
|
|
![]() |
|
||||||
| Thread Tools | |
| Display Modes | |
|
|