aboutsummaryrefslogtreecommitdiff
path: root/kennel/engine/components/component.py
blob: 7fd775762b69ca9b8c0609e6dd5c5f506da63455 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from abc import abstractmethod
from enum import Enum


class ComponentType(str, Enum):
    POSITION = "POSITION"
    CONTROLLABLE = "CONTROLLABLE"
    MARKOV = "MARKOV"
    SPRITESHEET = "SPRITESHEET"


class Component:
    def __init__(self, component_type: ComponentType):
        self.component_type = component_type

    @abstractmethod
    def to_dict(self) -> dict:
        pass