+
+
\ No newline at end of file
diff --git a/src/lib/SideBars/Scripts/TriggerList.svelte b/src/lib/SideBars/Scripts/TriggerList.svelte
new file mode 100644
index 00000000..8cba7fd8
--- /dev/null
+++ b/src/lib/SideBars/Scripts/TriggerList.svelte
@@ -0,0 +1,23 @@
+
+
+
+ {#if value.length === 0}
+
No Scripts
+ {/if}
+ {#key sorted}
+ {#each value as triggerscript, i}
+ {
+ let triggerscript = value
+ triggerscript.splice(i, 1)
+ value = triggerscript
+ }}/>
+ {/each}
+ {/key}
+
\ No newline at end of file
diff --git a/src/lib/UI/GUI/NumberInput.svelte b/src/lib/UI/GUI/NumberInput.svelte
index 9ab7b19c..3a53085e 100644
--- a/src/lib/UI/GUI/NumberInput.svelte
+++ b/src/lib/UI/GUI/NumberInput.svelte
@@ -1,27 +1,14 @@
-
-
'|'<'|'>='|'<='
+}
+
+export type triggerConditionsExists ={
+ type: 'exists'
+ value:string
+ type2: 'strict'|'loose'|'regex',
+ depth: number
+}
+
+export interface triggerEffectSetvar{
+ type: 'setvar'
+ var:string
+ value:string
+}
+
+export interface triggerEffectSystemPrompt{
+ type: 'systemprompt',
+ location: 'start'|'historyend'|'promptend',
+ value:string
+}
+
+export interface triggerEffectImpersonate{
+ type: 'impersonate'
+ role: 'user'|'char',
+ value:string
+}
\ No newline at end of file
diff --git a/src/ts/storage/database.ts b/src/ts/storage/database.ts
index d22e9b95..36fd4bb3 100644
--- a/src/ts/storage/database.ts
+++ b/src/ts/storage/database.ts
@@ -2,6 +2,7 @@ import { get, writable } from 'svelte/store';
import { checkNullish, selectSingleFile } from '../util';
import { changeLanguage, language } from '../../lang';
import type { RisuPlugin } from '../plugins/plugins';
+import type {triggerscript as triggerscriptMain} from '../process/triggers';
import { downloadFile, saveAsset as saveImageGlobal } from './globalApi';
import { clone, cloneDeep } from 'lodash';
import { defaultAutoSuggestPrompt, defaultJailbreak, defaultMainPrompt } from './defaultPrompts';
@@ -300,6 +301,8 @@ export interface customscript{
}
+export type triggerscript = triggerscriptMain
+
export interface loreBook{
key:string
secondkey:string
@@ -331,6 +334,7 @@ export interface character{
chaId: string
sdData: [string, string][]
customscript: customscript[]
+ triggerscript: triggerscript[]
utilityBot: boolean
exampleMessage:string
removedQuotes?:boolean
@@ -540,7 +544,7 @@ export interface Database{
token:string,
model:string
}
- globalscript: customscript[]
+ globalscript: customscript[],
sendWithEnter:boolean
clickToEdit: boolean
koboldURL:string