首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数组中的NPC运动

数组中的NPC运动
EN

Stack Overflow用户
提问于 2011-12-01 21:12:19
回答 1查看 79关注 0票数 0

我正在做一个数组游戏,下面是我的Board类,它绘制数组并在11,11处产生5个猎人,我的'route1‘方法应该是当玩家移动时移动猎人的方法,但是我的hunter.x和hunter.y在每次重新绘制后都停留在11,我该如何解决这个问题?

代码语言:javascript
复制
  public class Board { 

    public String emptyfield = "-";
    public  String [][]a2 = new String[12][12];
 public Hunter hunters[] = new Hunter[5];

public void paint(){

    int numHunters =5 ;
    for (int i =0; i < numHunters; i ++){
        hunters[i] = new Hunter(11,11,"H");
    }
Player player = new Player();
        for (int r = 0 ; r < a2.length; r++){
            for (int c= 0; c <a2[r].length; c++){
                a2 [r][c] = emptyfield;
                a2[Player.x][Player.y] = Player.name;
                for (int i = 0; i < numHunters; i++){
                     Hunter h = hunters[i];
                     a2[h.x][h.y]=h.name;

                }
                System.out.print(" "+a2[r][c]);
            }
            System.out.println("");
        }
        System.out.println("     Strength:  "+Player.hp);System.out.println("      Score  "+Player.score);

    }

public void route1(){
    Board board = new Board();
    Hunter Hunter = new Hunter(11,11,"H");
    Scanner in = new Scanner(System.in);
    Random number = new Random(2);
    int random = number.nextInt(2);
     if(random ==1)
        Hunter.x = Hunter.x -1;
    else
       Hunter.y = Hunter.y -1;
    }
EN

回答 1

Stack Overflow用户

发布于 2012-02-04 04:17:28

如果我没看错的话,每次你调用paint的时候,你都会在11,11位置重新创建你的猎人。

代码语言:javascript
复制
public void paint(){

    int numHunters =5 ;
    for (int i =0; i < numHunters; i ++)
    {
        hunters[i] = new Hunter(11,11,"H");
    }

每次调用paint时,这段代码都会替换您的猎人数组,擦除后面在代码中所做的任何更改。您需要将(new Hunter(11,11,"H")移动到只调用一次的地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8341961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档