第一范文网 - 专业文章范例文档资料分享平台

(只要10分)基于Android的五子棋游戏设计

来源:用户分享 时间:2025/5/19 20:15:11 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

}

}

setMode(PLAYER_ONE_LOST);

};

//是否正在下某一步棋过程中,主是电脑下棋时需要较长的计算时间,这期间一定不可以再响应触摸事件

private boolean onProcessing() { }

return whoRun == -1;

//默认第一个玩家先行 private int whoRun = 1; private void setPlayer1Run(){ whoRun = 1; }

private void setOnProcessing(){

whoRun = -1; }

//是否轮到人类玩家下子 private boolean isPlayer1Run(){ return whoRun==1; }

//是否轮到人类玩家下子

private boolean isPlayer2Run(){ }

private void setPlayer2Run(){ whoRun = 2; }

private void refressCanvas(){ //触发onDraw函数 }

private void drawPlayer1Point(Canvas canvas){ int size = player1.getMyPoints().size()-1; if(size<0){ return ;

}

return whoRun==2;

Chessboard.this.invalidate();

- 41 -

}

for (int i = 0; i < size; i++) { drawPoint(canvas, player1.getMyPoints().get(i), BLACK); }

//最后下的一个点标成黄色

drawPoint(canvas, player1.getMyPoints().get(size), NEW_BLACK);

private void drawPlayer2Point(Canvas canvas){

if(player2==null){

return ;

}

int size = player2.getMyPoints().size()-1; if(size<0){ return ;

}

for (int i = 0; i < size; i++) { drawPoint(canvas, player2.getMyPoints().get(i), WHITE); }

//最后下的一个点标成黄色

drawPoint(canvas, player2.getMyPoints().get(size), NEW_WHITE); }

//初始化好三种颜色的点

public void fillPointArrays(int color,Drawable drawable) {

Bitmap bitmap = Bitmap.createBitmap(pointSize, pointSize, Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); drawable.setBounds(0, 0, pointSize, pointSize); drawable.draw(canvas); pointArray[color] = bitmap;

}

//doRun方法操作的是看不见的内存数据,此方法内容数据以图画的方式表现出来,所以画之前数据一定要先准备好

@Override

protected void onDraw(Canvas canvas) { drawChssboardLines(canvas); //画鼠标所在的点 }

drawPlayer1Point(canvas); //画电脑下的棋子 drawPlayer2Point(canvas);

- 42 -

}

public List getFreePoints() { return allFreePoints; }

//初始化空白点集合 private void createPoints(){ allFreePoints.clear(); for (int i = 0; i < maxX; i++) { for (int j = 0; j < maxY; j++) { allFreePoints.add(new Point(i, j));

}

}

}

public int getMaxX() { return maxX; }

public int getMaxY() { return maxY; }

- 43 -

(只要10分)基于Android的五子棋游戏设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1v9th2jl2g4x67j2pupj_11.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top