maintaining stuff

This commit is contained in:
2026-06-25 14:35:03 -04:00
parent b00c3f9a99
commit 0b0205e149

View File

@@ -1,41 +1,32 @@
import time import time
from dataclasses import dataclass, field, asdict
@dataclass
class Cat: class Cat:
def __init__(self, name, traits, fullness=100, happiness=100, last_updated=None): name: str
self.name = name traits: dict
self.traits = traits fullness: float = 100
self.fullness = fullness happiness: float = 100
self.happiness = happiness sick: bool = False
self.last_updated = last_updated if last_updated is not None else time.time() depressed: bool = False
last_updated: float = field(default_factory=time.time)
def to_dict(self): def to_dict(self):
return { return asdict(self)
"name": self.name,
"traits": self.traits,
"fullness": self.fullness,
"happiness": self.happiness,
"last_updated": self.last_updated,
}
@staticmethod @staticmethod
def from_dict(data): def from_dict(data):
return Cat( return Cat(**data)
data["name"],
data["traits"],
data["fullness"],
data["happiness"],
data["last_updated"],
)
@dataclass
class Save: class Save:
def __init__(self, version, cat: Cat): version: int
self.version = version cat: Cat
self.cat = cat
def to_dict(self): def to_dict(self):
return {"version": self.version, "cat": self.cat.to_dict()} return asdict(self)
@staticmethod @staticmethod
def from_dict(data): def from_dict(data):