全て。
現在、cPickle を使用して Roguelike の「save_game」関数を作成しようとしています。
save_game() はゲームの状態を適切にピクルしますが、ゲームを終了すると、保存されたゲームを再開しようとすると、load_game() 関数はピクルされたファイルが存在することを認めることをきっぱりと拒否します (それは、保存されたデータがないことを教えてくれるだけです)。ロード)。
ここに save_game() があります:
def save_game():
#Write the game data to a cPickled file
f = open('savegame', 'wb')
cPickle.dump('map',f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('objects',f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('player_index',f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('stairs_index', f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('inventory',f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('game_msgs',f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('game_state',f, protocol=cPickle.HIGHEST_PROTOCOL)
cPickle.dump('dungeon_level',f, protocol=cPickle.HIGHEST_PROTOCOL)
f.close()
これは load_game() です:
f = open('savegame', 'rb')
cPickle.load(f)
f.close()
私はこれを適切に行っていますか、それともすべて低音が悪いですか? 笑