diff --git a/source/state/level.py b/source/state/level.py index f9ed135..61c7833 100644 --- a/source/state/level.py +++ b/source/state/level.py @@ -1,5 +1,4 @@ import os -import json import pygame as pg import random import logging @@ -31,15 +30,6 @@ class Level(tool.State): self.setupBackground() self.initState() - def saveUserData(self): - with open(c.USERDATA_PATH, "w") as f: - userdata = {} - for i in self.game_info: - if i in c.INIT_USERDATA: - userdata[i] = self.game_info[i] - dataToSave = json.dumps(userdata, sort_keys=True, indent=4) - f.write(dataToSave) - def loadMap(self): # 冒险模式 if self.game_info[c.GAME_MODE] == c.MODE_ADVENTURE: diff --git a/source/state/mainmenu.py b/source/state/mainmenu.py index 5eb9ae1..57702cc 100644 --- a/source/state/mainmenu.py +++ b/source/state/mainmenu.py @@ -1,6 +1,5 @@ import pygame as pg import os -import json from .. import tool from .. import constants as c @@ -25,15 +24,6 @@ class Menu(tool.State): for i in c.SOUNDS: i.set_volume(self.game_info[c.SOUND_VOLUME]) - def saveUserData(self): - with open(c.USERDATA_PATH, "w") as f: - userdata = {} - for i in self.game_info: - if i in c.INIT_USERDATA: - userdata[i] = self.game_info[i] - dataToSave = json.dumps(userdata, sort_keys=True, indent=4) - f.write(dataToSave) - def setupBackground(self): frame_rect = (80, 0, 800, 600) # 1、形参中加单星号,即f(*x)则表示x为元组,所有对x的操作都应将x视为元组类型进行。 diff --git a/source/tool.py b/source/tool.py index a50b8e6..8ef40dd 100755 --- a/source/tool.py +++ b/source/tool.py @@ -37,6 +37,16 @@ class State(): else: return False + # 工具:用户数据保存函数 + def saveUserData(self): + with open(c.USERDATA_PATH, "w") as f: + userdata = {} + for i in self.game_info: + if i in c.INIT_USERDATA: + userdata[i] = self.game_info[i] + data_to_save = json.dumps(userdata, sort_keys=True, indent=4) + f.write(data_to_save) + # control this game. do event loops class Control(): def __init__(self):