Cocos2d-X开发中国象棋《十四》游戏打包成APK

上一篇博客中实现了从游戏场景返回到开始场景和使用xml实现在游戏中显示中文,这篇博客将会是Cocos2d-X开发中国象棋系列博客的最后一篇,这篇博客将介绍将中国象棋移植到Android上的方法

由于在前面我写了两篇关于将Cocos2d-X程序移植到Android上的方法,在这篇博客中只会粗劣的介绍

可以参考我前面的博客:
搭建Windows下的Android开发环境 :http://blog.csdn.net/u010105970/article/details/39755745

在Windows下搭建Cocos2d-X的Android开发环境 :http://blog.csdn.net/u010105970/article/details/40474803


将程序移植到 Eclipse上


选择jni


选择Android.mk


在LOCAL_SRC_FILES := hellocpp/main.cpp \下面添加

                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/SceneGame.cpp \
                  ../../Classes/SceneStart.cpp  \
                 ../../Classes/Stone.cpp

添加完成后的效果:


程序运行结果:

开始界面

游戏界面

显示了棋子的游戏界面

当玩家赢了显示结果框

当玩家输了显示结果框


完整版工程下载地址:http://pan.baidu.com/s/1pJBLFkf

代码和资源下载地址:http://download.csdn.net/detail/u010105970/8133081


  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是一个简单的象棋游戏的代码示例,使用了 Python 的 cocos2d-x 框架: ```python import cocos from cocos.actions import * from cocos.layer import * from cocos.scene import * from cocos.sprite import * from cocos.text import * from pyglet.window import key class ChessPiece(Sprite): def __init__(self, color, piece_type, position): if color == "red": if piece_type == "king": Sprite.__init__(self, "red_king.png") elif piece_type == "advisor": Sprite.__init__(self, "red_advisor.png") #...其他红方棋子 else: if piece_type == "king": Sprite.__init__(self, "black_king.png") elif piece_type == "advisor": Sprite.__init__(self, "black_advisor.png") #...其他黑方棋子 self.color = color self.piece_type = piece_type self.position = position self.x, self.y = position class ChessBoard(Layer): def __init__(self): super(ChessBoard, self).__init__() self.board = {} #初始化棋盘 for i in range(9): for j in range(10): self.board[(i, j)] = None #初始化红方棋子 self.board[(0, 0)] = ChessPiece("red", "rook", (0, 0)) self.board[(1, 0)] = ChessPiece("red", "knight", (1, 0)) #...其他红方棋子 #初始化黑方棋子 self.board[(0, 9)] = ChessPiece("black", "rook", (0, 9)) self.board[(1, 9)] = ChessPiece("black", "knight", (1, 9)) #...其他黑方棋子 for position, piece in self.board.items(): if piece: self.add(piece) def on_key_press(self, symbol, modifiers): if symbol == key.Q: cocos.director.director.pop() class ChessScene(Scene): def __init__(self): super(ChessScene, self).__init__() self.add(ChessBoard()) if __name__ == "__main__": cocos.director.director.init(width=800, height=800) cocos.director.director.run(ChessScene()) ``` 这个示例中,首先定义了一个 `ChessPiece` 类,表示每一个棋子,包括棋子的颜色、类型和位置。然后定义了一个 `ChessBoard` 类,表示整个棋盘,其中包括了一个棋子的字典 `board`,记录了每个位置上的棋子。在 `ChessBoard` 的初始化中,根据规则放置了所有的棋子。 最后定义了一个 `ChessScene` 类,表示整个游戏场景,包括了一个 `ChessBoard` 实例。在 `if __name__ == "__main__":` 中,初始化了游戏窗口并运行了 `ChessScene`。 你可以根据自己的需求修改棋子的图片和初始化棋盘的规则。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值