CharacterSpecific Templatesystems #36

Merged
sebastian merged 31 commits from template-systems into main 2024-04-14 13:45:04 +02:00
Showing only changes of commit 4d4efa49c9 - Show all commits

View File

@ -15,7 +15,7 @@ export class Character extends ModelComponent implements TemplateElement {
super(componentName, componentDescription, ModelComponentType.CHARACTER);
}
addCharacterSpecificSimpleTemplatesystem(gamesystem: Gamesystem<any, any>) {
addCharacterSpecificSimpleTemplatesystem(gamesystem: Gamesystem<any, any>, recursiveCall: boolean = false) {
if(!this.isTemplateSystemCharacterSpecific(gamesystem.componentName)) {
if(gamesystem instanceof SimpleTemplateGamesystem) {
this.characterSpecificTemplateSystems.push(gamesystem)
@ -23,10 +23,15 @@ export class Character extends ModelComponent implements TemplateElement {
} else if(gamesystem instanceof ProductTemplateSystem) {
this.characterSpecificTemplateSystems.push(gamesystem)
gamesystem.addTemplateElement(this)
if(!recursiveCall) {
gamesystem.innerGamesystems.forEach(innerGamesystem => this.addCharacterSpecificSimpleTemplatesystem(innerGamesystem, true))
}
}
if(gamesystem.parentGamesystem != undefined) {
this.addCharacterSpecificSimpleTemplatesystem(gamesystem.parentGamesystem)
this.addCharacterSpecificSimpleTemplatesystem(gamesystem.parentGamesystem, true)
}
}
}