Difference between revisions of "GetButtonPressed"

From the Fallout3 GECK Wiki
Jump to navigation Jump to search
imported>Quetzilla
(including example for extra clarity)
imported>Talkie Toaster
(Copying and editing example from CS wiki)
Line 8: Line 8:


The first time this is called after a [[ShowMessage]] button has been pressed, it returns the index of the button that was pressed, starting at zero. At all other times it returns -1.
The first time this is called after a [[ShowMessage]] button has been pressed, it returns the index of the button that was pressed, starting at zero. At all other times it returns -1.
'''Example'''
<pre>
Begin OnActivate
showmessage ExampleMessage
set buttonPressed to 1
end
begin gamemode
if buttonPressed == 1
set button to getbuttonpressed
if button > -1
set buttonPressed to 0
if button == 0
; choice 1
elseif button == 1
; choice 2
elseif button == 2
; choice 3
endif
endif
endif
end
</pre>


==Notes==
==Notes==

Revision as of 22:49, 2 January 2009

Description

GetButtonPressed is used to determine which button has been selected after a message box has been displayed using ShowMessage.

Syntax:

GetButtonPressed 

Example:

set buttonVar to GetButtonPressed 

The first time this is called after a ShowMessage button has been pressed, it returns the index of the button that was pressed, starting at zero. At all other times it returns -1.

Example

Begin OnActivate
	showmessage ExampleMessage
	set buttonPressed to 1
end

begin gamemode
	if buttonPressed == 1
		set button to getbuttonpressed

		if button > -1
			set buttonPressed to 0

			if button == 0
				; choice 1
			elseif button == 1
				; choice 2
			elseif button == 2
				; choice 3
			endif
		endif
	endif
end

Notes

  • This will only react to a ShowMessage call from within the same script.
  • The button indices are shown in the GECK when editing the message object and remain the same even if certain buttons are hidden with conditions. So, if a Message has 3 buttons, GetButtonPressed will return 2 when the last one is pressed even if that is the only button actually being displayed.

See Also

ShowMessage