gpt4 book ai didi

java - 如何在 Java 中生成 map ?

转载 作者:搜寻专家 更新时间:2023-11-01 04:02:33 26 4
gpt4 key购买 nike

我想为一个项目完成一个 RPG 游戏,但不知道如何制作游戏 map 。它不需要是图形化的,但整个 map 和每个图 block 的代码必须正确。

到目前为止,我考虑过使用包含所有链接图 block 的 ArrayList 制作非矩阵 map (应教授的要求)。

public abstract class Casella {
/**
* @uml.property name="tabellone"
* @uml.associationEnd multiplicity="(1 1)" inverse="casella:Tabellone"
* @uml.association name="contains"
*/

private int id;
private boolean free = true;
private List adjacent;
private List items;
private Tabellone tabellone = null;

public void in(){
free = false;
}

public void out(){
free = true;
}

}

这是单个图 block 的代码(有 3 个扩展它的类)。我仍然不知道如何组合和生成 map 。

感谢您的宝贵时间。

最佳答案

不要从实现开始,要从您想如何使用 map 开始。这会给你一些如何实现它的限制。例如:

绘制 map 时,如何访问?通过坐标?还是通过“从地 block X 向西走”?

[编辑] 我建议从 RPG 游戏的主循环开始。您需要将角色/标记放置在某处(即它需要与图 block 有某种关系)。

然后你需要移动角色。角色必须能够检查当前板 block (对手、元素、类型)。它需要一种方法来知道它如何移动(即右边有墙吗?)

这为您的 map 提供了一个界面:它为游戏中的其他对象呈现的服务。当您知道接口(interface)需要提供什么时,您应该知道如何实现 map (数据结构)。

至于生成 map ,使用随机数生成器加上一些“常识”。看看相邻的牌:当它们都是城市时,这 block 牌可能也是城市。平原也一样。山是奇异项,出现频率最低。

运行此代码,将 map 打印为 ASCII(“C”ity、“P”lain、“H”ill)以查看其是否有效。

关于java - 如何在 Java 中生成 map ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1026975/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com