你需要把游戏状态看作是你可以给它赋值的东西。如果这是一个非常简单的文本游戏,那么玩家将有一个位置,这个位置大概是你可以通过引用“跳转”到的东西。在
假设您的代码遵循以下伪代码模式:start
player_location = 0
print_start_game_text()
begin loop:
display_text_for_location[player_location]
display_options_for_location[player_location]
player_location = parse_player_response(response_options_for_location[player_location])
if isGameEndCondition(player_location):
break;
print_end_game_text()
end
此模式将引用一些数据文件,这些文件为每个位置提供了一些集合,例如1, "you are in a room, doors are [E]ast and [W]est. You can [S]ave your game, or [L]oad a previously saved one", { "E" : 3, "W" : 2, "S" : "savegame", "L" : "loadgame" }
然后使用一个函数显示一些选项,收集用户的响应并解析该数据,返回一个值;下一个位置。然后有一个新的键来引用数据文件中的下一个元素。在
如果你的游戏就这么简单,那么你的保存文件只需要包含一个引用,玩家的位置!简单。在
如果你有玩家可以操纵的对象,那么你需要找出一种方法来跟踪这些对象、它们的位置或状态值-这完全取决于你的游戏做了什么,以及它是如何玩的。在
你应该考虑这些程序和数据线,因为这将使游戏更容易设计,然后,扩展,因为你所要做的就是创建一个新的冒险,或级别,提供一个新的数据文件。在