43 lines
1.1 KiB
Python
43 lines
1.1 KiB
Python
import time
|
|
|
|
|
|
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()
|
|
|
|
def to_dict(self):
|
|
return {
|
|
"name": self.name,
|
|
"traits": self.traits,
|
|
"fullness": self.fullness,
|
|
"happiness": self.happiness,
|
|
"last_updated": self.last_updated,
|
|
}
|
|
|
|
@staticmethod
|
|
def from_dict(data):
|
|
return Cat(
|
|
data["name"],
|
|
data["traits"],
|
|
data["fullness"],
|
|
data["happiness"],
|
|
data["last_updated"],
|
|
)
|
|
|
|
|
|
class Save:
|
|
def __init__(self, version, cat: Cat):
|
|
self.version = version
|
|
self.cat = cat
|
|
|
|
def to_dict(self):
|
|
return {"version": self.version, "cat": self.cat.to_dict()}
|
|
|
|
@staticmethod
|
|
def from_dict(data):
|
|
return Save(data["version"], Cat.from_dict(data["cat"]))
|