Invoke Snippets
Copy/paste JSON snippets for onClickInvokes / onValueChangedInvokes fields on Gnosis UI controls.
Use these in static Unity-authored controls or in CreateElement parameters.
Single invoke row shape
{
"service": "Setting",
"function": "SetDropdown",
"parameters": {
"key": "settings.framerateCap",
"index": 0
}
}Push View
[
{
"service": "GameUI",
"function": "PushView",
"parameters": {
"viewId": "game.panel.inventory",
"inTransitionId": "scalefade",
"outTransitionId": "scalefade"
}
}
]Pop View
[
{
"service": "GameUI",
"function": "PopView",
"parameters": {
"inTransitionId": "scalefade",
"outTransitionId": "scalefade"
}
}
]Push View + Click Sound
[
{
"service": "GameUI",
"function": "PushView",
"parameters": {
"viewId": "game.panel.inventory",
"inTransitionId": "scalefade"
}
},
{
"service": "Audio",
"function": "PlaySound",
"parameters": {
"id": "ui.click",
"volume": 0.9
}
}
]Exit Game
[
{
"service": "GameUI",
"function": "ExitGame",
"parameters": {}
}
]Dynamic value pattern (Toggle / Slider)
Toggle and Slider invocations inject parameters.value at runtime.
[
{
"service": "Setting",
"function": "SetSlider",
"parameters": {
"key": "audio.soundMasterVolume",
"value": 0.5
}
}
]The initial value is a fallback/default; runtime replaces it with the live control value.
Dynamic index/text pattern (Dropdown)
Dropdown invocations inject:
parameters.index(selected option index)parameters.text(selected option label)
[
{
"service": "Setting",
"function": "SetDropdown",
"parameters": {
"key": "settings.framerateCap",
"index": 0
}
}
]SetDropdown uses parameters.index. parameters.text can still be included for other service calls chained in the same invoke list.
Dynamic bool pattern (Toggle)
[
{
"service": "Setting",
"function": "SetBool",
"parameters": {
"key": "settings.vsyncEnabled",
"value": true
}
}
]Dynamic string pattern
[
{
"service": "Setting",
"function": "SetString",
"parameters": {
"key": "language",
"value": "en"
}
}
]Reusable transition preset snippet
Use this object wherever you need consistent UI transition ids.
{
"inTransitionId": "scalefade",
"outTransitionId": "scalefade"
}About PushViewAdditive
PushViewAdditive is currently an adapter-level API (UnityGameUIAdapter) and is not exposed as a GameUI service function in invoke payloads.
For invoke JSON, use GameUI.PushView / GameUI.PopView directly, or expose your own service function that wraps additive behavior if your project needs it.