diff --git a/src/app/components/editors/shared/sai-editor/sai-editor.component.ts b/src/app/components/editors/shared/sai-editor/sai-editor.component.ts
index 12482b77ed..0a6e8dcfff 100644
--- a/src/app/components/editors/shared/sai-editor/sai-editor.component.ts
+++ b/src/app/components/editors/shared/sai-editor/sai-editor.component.ts
@@ -31,6 +31,8 @@ import {
SAI_TARGET_PARAM4_NAMES,
SAI_TARGET_PARAM4_TOOLTIPS, SAI_TARGET_TOOLTIPS, SAI_TARGETS, SAI_TARGETS_KEYS
} from './constants/sai-targets';
+import { EVENT_PHASE_MASK } from '../../../../constants/flags/event-phase-mask';
+import { SMART_EVENT_FLAGS } from '../../../../constants/flags/smart-event-flags';
@Component({
selector: 'app-sai-editor',
@@ -39,6 +41,8 @@ import {
})
export class SaiEditorComponent extends MultiRowEditorComponent {
+ public readonly EVENT_PHASE_MASK = EVENT_PHASE_MASK;
+ public readonly SMART_EVENT_FLAGS = SMART_EVENT_FLAGS;
public readonly SAI_EVENTS = SAI_EVENTS;
public readonly SAI_EVENTS_KEYS = SAI_EVENTS_KEYS;
public readonly SAI_ACTIONS = SAI_ACTIONS;
diff --git a/src/app/components/editors/shared/sai-editor/sai-editor.module.ts b/src/app/components/editors/shared/sai-editor/sai-editor.module.ts
index 20759a8998..f3f5d6aeea 100644
--- a/src/app/components/editors/shared/sai-editor/sai-editor.module.ts
+++ b/src/app/components/editors/shared/sai-editor/sai-editor.module.ts
@@ -7,6 +7,7 @@ import { NgxDatatableModule } from '@swimlane/ngx-datatable';
import { QueryOutputModule } from '../query-output/query-output.module';
import { SaiEditorComponent } from './sai-editor.component';
import { SaiTopBarComponent } from './sai-top-bar/sai-top-bar.component';
+import { FlagsSelectorModule } from '../selectors/flags-selector/flags-selector.module';
@NgModule({
declarations: [
@@ -17,6 +18,7 @@ import { SaiTopBarComponent } from './sai-top-bar/sai-top-bar.component';
BrowserModule,
ReactiveFormsModule,
QueryOutputModule,
+ FlagsSelectorModule,
TooltipModule.forRoot(),
NgxDatatableModule,
],
diff --git a/src/app/constants/flags/event-phase-mask.ts b/src/app/constants/flags/event-phase-mask.ts
new file mode 100644
index 0000000000..9be206477f
--- /dev/null
+++ b/src/app/constants/flags/event-phase-mask.ts
@@ -0,0 +1,16 @@
+import { Flag } from '../../types/general';
+
+export const EVENT_PHASE_MASK: Flag[] = [
+ { bit: 0, name: 'SMART_EVENT_PHASE_1' },
+ { bit: 1, name: 'SMART_EVENT_PHASE_2' },
+ { bit: 2, name: 'SMART_EVENT_PHASE_3' },
+ { bit: 3, name: 'SMART_EVENT_PHASE_4' },
+ { bit: 4, name: 'SMART_EVENT_PHASE_5' },
+ { bit: 5, name: 'SMART_EVENT_PHASE_6' },
+ { bit: 6, name: 'SMART_EVENT_PHASE_7' },
+ { bit: 7, name: 'SMART_EVENT_PHASE_8' },
+ { bit: 8, name: 'SMART_EVENT_PHASE_9' },
+ { bit: 9, name: 'SMART_EVENT_PHASE_10' },
+ { bit: 10, name: 'SMART_EVENT_PHASE_11' },
+ { bit: 11, name: 'SMART_EVENT_PHASE_12' },
+];
diff --git a/src/app/constants/flags/phase-mask.ts b/src/app/constants/flags/phase-mask.ts
index 717f26d56c..11e1f3bdb7 100644
--- a/src/app/constants/flags/phase-mask.ts
+++ b/src/app/constants/flags/phase-mask.ts
@@ -33,5 +33,5 @@ export const PHASE_MASK: Flag[] = [
{ bit: 29, name: 'Phase 29' },
{ bit: 30, name: 'Phase 30' },
{ bit: 31, name: 'Phase 31' },
- { bit: 32, name: 'Phase 12' },
+ { bit: 32, name: 'Phase 32' },
];
diff --git a/src/app/constants/flags/smart-event-flags.ts b/src/app/constants/flags/smart-event-flags.ts
new file mode 100644
index 0000000000..b43e9c7df5
--- /dev/null
+++ b/src/app/constants/flags/smart-event-flags.ts
@@ -0,0 +1,13 @@
+import { Flag } from '../../types/general';
+
+export const SMART_EVENT_FLAGS: Flag[] = [
+ { bit: 0, name: 'NOT_REPEATABLE (Event can not repeat)' },
+ { bit: 1, name: 'DIFFICULTY_0 (Normal dungeon)' },
+ { bit: 2, name: 'DIFFICULTY_1 (Heroic dungeon)' },
+ { bit: 3, name: 'DIFFICULTY_2 (Normal raid)' },
+ { bit: 4, name: 'DIFFICULTY_3 (Heroic raid)' },
+ { bit: 5, name: 'RESERVED_5 (not used)' },
+ { bit: 6, name: 'RESERVED_6 (not used)' },
+ { bit: 7, name: 'DEBUG_ONLY (only used in debug build)' },
+ { bit: 8, name: 'DONT_RESET (Event will not reset)' },
+];