Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我一直在研究 libtcod/C++ roguelike,但遇到了一个小问题。
当玩家在楼层之间移动时,前一层的物品会留在新地图上,最终会出现在墙壁上,每次我在楼层之间移动时,都会生成更多物品,直到地图被淹没。
有什么方法可以保存特定的楼层(可能是种子),以便保留演员当前的 x/y 以供以后重新加载?
创建一个Map存储地图详细信息(墙壁、楼梯等)、地板上的物品和任何怪物的类。然后您可以创建一个std::map<int, Map>密钥为楼层号的密钥。
Map
std::map<int, Map>
然后,每当您更改楼层时,您都会检查该楼层std::map的Map对象是否存在,是否加载它,如果不创建一个新的Map.
std::map