Load Character Specific States of Character Specific Gamesystems
All checks were successful
E2E Testing / test (push) Successful in 1m31s
All checks were successful
E2E Testing / test (push) Successful in 1m31s
This commit is contained in:
parent
5cb535a264
commit
413d16392b
@ -23,13 +23,22 @@ export class CharacterEditorComponent implements OnInit{
|
|||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.referenceGamesystems.forEach(referenceGamesystem => {
|
this.referenceGamesystems.forEach(referenceGamesystem => {
|
||||||
if(referenceGamesystem instanceof SimpleGamesystem) {
|
if(referenceGamesystem instanceof SimpleGamesystem) {
|
||||||
|
const characterSpecificGamesystem = this.findReferencedGamesystemInCharacter(referenceGamesystem.componentName)
|
||||||
|
if(characterSpecificGamesystem != undefined) {
|
||||||
|
this.templateSimpleGamesystems.push(characterSpecificGamesystem)
|
||||||
|
} else {
|
||||||
this.templateSimpleGamesystems.push(new TemplateGamesystem(referenceGamesystem))
|
this.templateSimpleGamesystems.push(new TemplateGamesystem(referenceGamesystem))
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
this.templateProductGamesystems.push(referenceGamesystem as ProductGamesystem)
|
this.templateProductGamesystems.push(referenceGamesystem as ProductGamesystem)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private findReferencedGamesystemInCharacter(referenceGamesystemName: string) {
|
||||||
|
return this.character!.characterSpecificGamesystems.find(system => system.referenceGamesystem.componentName === referenceGamesystemName)
|
||||||
|
}
|
||||||
|
|
||||||
onRemoveLastTemplateState(templateGamesystem: TemplateGamesystem) {
|
onRemoveLastTemplateState(templateGamesystem: TemplateGamesystem) {
|
||||||
this.character!.removeCharacterSpecificGamesystem(templateGamesystem)
|
this.character!.removeCharacterSpecificGamesystem(templateGamesystem)
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import {Component, EventEmitter, Input, Output} from '@angular/core';
|
import {Component, EventEmitter, Input, OnChanges, Output} from '@angular/core';
|
||||||
import {SimpleGamesystem} from "../../../project/game-model/gamesystems/SimpleGamesystem";
|
import {SimpleGamesystem} from "../../../project/game-model/gamesystems/SimpleGamesystem";
|
||||||
import {ScriptAccount} from "../../../project/game-model/scriptAccounts/ScriptAccount";
|
import {ScriptAccount} from "../../../project/game-model/scriptAccounts/ScriptAccount";
|
||||||
import {Gamesystem} from "../../../project/game-model/gamesystems/Gamesystem";
|
import {Gamesystem} from "../../../project/game-model/gamesystems/Gamesystem";
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import {Component, EventEmitter, Input, Output, ViewChild} from '@angular/core';
|
import {Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild} from '@angular/core';
|
||||||
import {SimpleState} from "../../../../project/game-model/gamesystems/states/SimpleState";
|
import {SimpleState} from "../../../../project/game-model/gamesystems/states/SimpleState";
|
||||||
import {TemplateGamesystem} from "../../../../project/game-model/gamesystems/TemplateGamesystem";
|
import {TemplateGamesystem} from "../../../../project/game-model/gamesystems/TemplateGamesystem";
|
||||||
import {SimpleStateEditorComponent} from "../../state-editor/simple-state-editor/simple-state-editor.component";
|
import {SimpleStateEditorComponent} from "../../state-editor/simple-state-editor/simple-state-editor.component";
|
||||||
@ -19,7 +19,7 @@ import {ScriptAccountCondition} from "../../../../project/game-model/gamesystems
|
|||||||
]),
|
]),
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class TemplateStateEditorComponent {
|
export class TemplateStateEditorComponent implements OnChanges {
|
||||||
|
|
||||||
@Input() templateGamesystem: TemplateGamesystem | undefined
|
@Input() templateGamesystem: TemplateGamesystem | undefined
|
||||||
@Input() scriptAccounts: ScriptAccount[] = []
|
@Input() scriptAccounts: ScriptAccount[] = []
|
||||||
@ -34,6 +34,10 @@ export class TemplateStateEditorComponent {
|
|||||||
|
|
||||||
editedStateLabelError: boolean = false;
|
editedStateLabelError: boolean = false;
|
||||||
|
|
||||||
|
ngOnChanges() {
|
||||||
|
this.dataSource.data = this.templateGamesystem!.templateStates
|
||||||
|
}
|
||||||
|
|
||||||
onExtractReferenceState(state: SimpleState) {
|
onExtractReferenceState(state: SimpleState) {
|
||||||
if(this.templateGamesystem!.templateStates.length == 0) {
|
if(this.templateGamesystem!.templateStates.length == 0) {
|
||||||
this.onAddFirstTemplateState.emit(state)
|
this.onAddFirstTemplateState.emit(state)
|
||||||
|
Loading…
Reference in New Issue
Block a user