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