Add wait and updategui trigger
This commit is contained in:
@@ -361,6 +361,10 @@ export const languageEnglish = {
|
||||
v2GetDisplayStateDesc: "Get Display State => {{outputVar}}",
|
||||
v2SetDisplayState: "Set Display State",
|
||||
v2SetDisplayStateDesc: "Set Display State to {{value}}",
|
||||
v2UpdateGUI: "Update GUI",
|
||||
v2UpdateGUIDesc: "Update GUI",
|
||||
v2Wait: "Wait",
|
||||
v2WaitDesc: "Wait {{value}} seconds",
|
||||
},
|
||||
|
||||
confirm: "Confirm",
|
||||
|
||||
@@ -313,6 +313,10 @@ export const languageKorean = {
|
||||
"v2SetDisplayStateDesc": "디스플레이 상태를 {{value}}로 설정",
|
||||
"v2GetDisplayState": "현재 디스플레이 데이터 가져오기",
|
||||
"v2GetDisplayStateDesc": "현재 디스플레이 테이터 가져오기 => {{outputVar}}",
|
||||
"v2UpdateGUI": "GUI 업데이트",
|
||||
"v2UpdateGUIDesc": "GUI 업데이트",
|
||||
"v2Wait": "기다리기",
|
||||
"v2WaitDesc": "{{value}} 초 기다리기",
|
||||
},
|
||||
"confirm": "확인",
|
||||
"goback": "뒤로",
|
||||
|
||||
@@ -31,6 +31,8 @@
|
||||
'v2ConsoleLog',
|
||||
'v2StopTrigger',
|
||||
'v2Random',
|
||||
'v2UpdateGUI',
|
||||
'v2Wait',
|
||||
|
||||
//Chat
|
||||
'v2CutChat',
|
||||
@@ -647,6 +649,22 @@
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 'v2UpdateGUI':{
|
||||
editTrigger = {
|
||||
type: 'v2UpdateGUI',
|
||||
indent: 0
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 'v2Wait':{
|
||||
editTrigger = {
|
||||
type: 'v2Wait',
|
||||
value: '1',
|
||||
valueType: 'value',
|
||||
indent: 0
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1459,6 +1477,13 @@
|
||||
<OptionInput value="var">{language.var}</OptionInput>
|
||||
</SelectInput>
|
||||
<TextInput bind:value={editTrigger.value} />
|
||||
{:else if editTrigger.type === 'v2Wait'}
|
||||
<span class="block text-textcolor">{language.value}</span>
|
||||
<SelectInput bind:value={editTrigger.valueType}>
|
||||
<OptionInput value="value">{language.value}</OptionInput>
|
||||
<OptionInput value="var">{language.var}</OptionInput>
|
||||
</SelectInput>
|
||||
<TextInput bind:value={editTrigger.value} />
|
||||
{:else}
|
||||
<span>{language.noConfig}</span>
|
||||
{/if}
|
||||
|
||||
@@ -37,7 +37,7 @@ export type triggerEffectV2 = triggerV2Header|triggerV2IfVar|triggerV2Else|tri
|
||||
triggerV2SetCharacterDesc|triggerV2MakeArrayVar|triggerV2GetArrayVarLength|triggerV2GetArrayVar|triggerV2SetArrayVar|
|
||||
triggerV2PushArrayVar|triggerV2PopArrayVar|triggerV2ShiftArrayVar|triggerV2UnshiftArrayVar|triggerV2SpliceArrayVar|triggerV2GetFirstMessage|
|
||||
triggerV2SliceArrayVar|triggerV2GetIndexOfValueInArrayVar|triggerV2RemoveIndexFromArrayVar|triggerV2ConcatString|triggerV2GetLastUserMessage|
|
||||
triggerV2GetLastCharMessage|triggerV2GetAlertInput|triggerV2GetDisplayState|triggerV2SetDisplayState
|
||||
triggerV2GetLastCharMessage|triggerV2GetAlertInput|triggerV2GetDisplayState|triggerV2SetDisplayState|triggerV2UpdateGUI|triggerV2Wait
|
||||
|
||||
export type triggerConditionsVar = {
|
||||
type:'var'|'value'
|
||||
@@ -625,6 +625,18 @@ export type triggerV2SetDisplayState = {
|
||||
indent: number
|
||||
}
|
||||
|
||||
export type triggerV2UpdateGUI = {
|
||||
type: 'v2UpdateGUI',
|
||||
indent: number
|
||||
}
|
||||
|
||||
export type triggerV2Wait = {
|
||||
type: 'v2Wait',
|
||||
value: string,
|
||||
valueType: 'var'|'value',
|
||||
indent: number
|
||||
}
|
||||
|
||||
export const displayAllowList = [
|
||||
'v2GetDisplayState',
|
||||
'v2SetDisplayState',
|
||||
@@ -1683,6 +1695,15 @@ export async function runTrigger(char:character,mode:triggerMode, arg:{
|
||||
arg.displayData = effect.valueType === 'value' ? risuChatParser(effect.value,{chara:char}) : getVar(risuChatParser(effect.value,{chara:char}))
|
||||
break
|
||||
}
|
||||
case 'v2UpdateGUI':{
|
||||
ReloadGUIPointer.set(get(ReloadGUIPointer) + 1)
|
||||
break
|
||||
}
|
||||
case 'v2Wait':{
|
||||
let value = effect.valueType === 'value' ? Number(risuChatParser(effect.value,{chara:char})) : Number(getVar(risuChatParser(effect.value,{chara:char})))
|
||||
await sleep(value * 1000)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user