Unity中国象棋小游戏
LudoArtificis
还在努力学习的游戏制作者
展开
-
Unity中国象棋(三)——各类棋子规则
首先,新建一个RuleManager脚本,写下各类棋子的走棋规则,先贴上脚本public class RuleManager : MonoBehaviour{ /// /// 将的走棋规则 /// /// public static bool moveJiang(int selectedId, int row, int col, int原创 2017-02-05 21:22:17 · 3628 阅读 · 16 评论 -
Unity中国象棋(四)——悔棋、判断胜负的实现,以及动画特效和代码的优化
悔棋功能的实现:基本思路就是创建一个List,保存每一步所移动的棋子ID,移动前的位置A的坐标,移动后的位置B的坐标,以及吃掉的棋子的ID(若没有吃掉棋子则ID为-1)附上相关代码:结构体的List public struct step { public int moveId; public int killId; publ原创 2017-02-06 17:53:54 · 4117 阅读 · 6 评论 -
Unity中国象棋(一)——初始化棋子
新建一个plane,作为背景,新建一个StoneManager脚本,挂在plane上初始化32个棋子,每个棋子自带6个属性值:ID,x轴的坐标位置,y轴的坐标位置,是否为红子,是否死亡,棋子的类型。通过结构体Stone实现;由于每个棋子的位置、类型难以通过ID区分,并且棋子的数量较少,故直接用结构体StonePos将其一一赋值;利用其ID(也可利用其是否为红子的属性)和其类型,原创 2017-01-27 21:49:38 · 7353 阅读 · 5 评论 -
Unity中国象棋(二)——走棋
在新弄一个选框的Sprite当作一个新的预制体,新建GameManager脚本,控制象棋的走棋Update函数主要逻辑:当鼠标点击时触发1、若没有被选中的棋子,则判断此次点击的是否是棋子,若是,则选中它;2、若有被选中的棋子,则判断此次点击的是否是棋子,若是,扔掉当前位置上的棋子,并将选中的棋子移动到当前位置;若不是,则移动选中的棋子到当前位置。取消选中;using Unity原创 2017-01-31 19:44:40 · 5767 阅读 · 4 评论 -
Unity中国象棋(五)——网络对战的实现(服务端的基本功能)
博主主要是用了socket的方法去实现了服务器和客户端之间的通信,由于楼主对于socket网络编程这一方面的基础相当薄弱,故也是边学边学,有些地方的代码不够完善还请大神指正!博主还需学习。首先,先说说服务端方面:服务端采用的是VS的windows form窗体应用程序做的,也是为了方便查看吧。原创 2017-02-26 19:35:04 · 3546 阅读 · 0 评论