Difference between revisions of "GetButtonPressed"

From GECK

(Copying and editing example from CS wiki)
m (Changing example variables)
Line 13: Line 13:
 
Begin OnActivate
 
Begin OnActivate
 
showmessage ExampleMessage
 
showmessage ExampleMessage
set buttonPressed to 1
+
set awaitingInput to 1
 
end
 
end
  
 
begin gamemode
 
begin gamemode
if buttonPressed == 1
+
if awaitingInput == 1
set button to getbuttonpressed
+
set buttonVar to getbuttonpressed
  
if button > -1
+
if buttonVar > -1
set buttonPressed to 0
+
set awaitingInput to 0
  
if button == 0
+
if buttonVar == 0
 
; choice 1
 
; choice 1
elseif button == 1
+
elseif buttonVar == 1
 
; choice 2
 
; choice 2
elseif button == 2
+
elseif buttonVar == 2
 
; choice 3
 
; choice 3
 
endif
 
endif

Revision as of 19:29, 5 June 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 awaitingInput to 1
end

begin gamemode
	if awaitingInput == 1
		set buttonVar to getbuttonpressed

		if buttonVar > -1
			set awaitingInput to 0

			if buttonVar == 0
				; choice 1
			elseif buttonVar == 1
				; choice 2
			elseif buttonVar == 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

Personal tools