unity制作斗地主游戏大致流程
2015-11-03 09:25
387 查看
1 导入NGUI包
2 绘制一个斗地主bg图
3 绘制一个斗地主牌 拖成预设
4 添加一个脚本CardsBox:牌预设CardObjPrefab,总共是54张。
绘制牌Init 克隆CardObjPrefab + 给每个牌挂上一个属于自己的Card脚本
洗牌Shuffle(随机交换了一下位置),
发牌SendCard,2点之间确定一个方向, 起点(整副牌中最后一张),
终点(玩家所在位置),
剩余3张牌时,设置游戏状态为抢地主状态SetRunState(RUNSTATE.BEHOST)
5 创建3个玩家 2个Computer(脚本)+1Player(脚本)继承User(脚本)
在User类给每个玩家添加手牌AddCard,并且排序Sort+重设牌的坐标ReSetCardPos
6 抢地主后设置游戏状态正式游戏SetRunState(RUNSTATE.GAME);
并且地主玩家设置为主动出牌状态SetUserState(USERSTATE.OUTPUT);
7 在Player类,玩家点击出牌时ChuPai--OutPutCard--设置下家要牌状态
userDown.SetUserState(USERSTATE.BEPUT);//设置下家 要打我出的牌 被动出牌状态
SetUserState(USERSTATE.THINK);//设置我的状态为静止状态
主动出牌的时候 USERSTATE.OUTPUT检测玩家选择的牌是否是合法JudeVOwn(合法的依据是必须是定义的BRANDSTATUS中的除
_NONE外的任意一种)
被动出牌的时候 USERSTATE.BEPUT 检测玩家选择的牌是否是合法JudeVOwn(合法的依据是必须是定义的BRANDSTATUS中的除
_NONE外的任意一种)+ 与上家的牌型outStatustion是否一致(上家出了牌的情况下,否则就上上家)+
我的牌型outStatustion与上家牌型outStatustion一致的情况下,我的牌num需要比上家的牌num大才能出
出了之后一样的同上设置下家状态+设置我的状态
8 电脑Computer类
检测行动状态:主动出牌 OutPut 时检测牌型是否合法 GameLogicCheck+ 出了之后一样的同上设置下家状态+设置我的状态
被动出牌 BePut 时检测牌型是否合法 GameLogicCheck + 与上家的牌型outStatustion是否一致(上家出了牌的情况下,否则就上上家)+
我的牌型outStatustion与上家牌型outStatustion一致的情况下,我的牌num需要比上家的牌num大才能出
出了之后一样的同上设置下家状态+设置我的状态
9 胜利 :在游戏状态中检测,看哪位玩家的手牌最先出完(手牌数量为0),即谁赢了,
然后亮出剩下玩家的手牌
2 绘制一个斗地主bg图
3 绘制一个斗地主牌 拖成预设
4 添加一个脚本CardsBox:牌预设CardObjPrefab,总共是54张。
绘制牌Init 克隆CardObjPrefab + 给每个牌挂上一个属于自己的Card脚本
洗牌Shuffle(随机交换了一下位置),
发牌SendCard,2点之间确定一个方向, 起点(整副牌中最后一张),
终点(玩家所在位置),
剩余3张牌时,设置游戏状态为抢地主状态SetRunState(RUNSTATE.BEHOST)
5 创建3个玩家 2个Computer(脚本)+1Player(脚本)继承User(脚本)
在User类给每个玩家添加手牌AddCard,并且排序Sort+重设牌的坐标ReSetCardPos
6 抢地主后设置游戏状态正式游戏SetRunState(RUNSTATE.GAME);
并且地主玩家设置为主动出牌状态SetUserState(USERSTATE.OUTPUT);
7 在Player类,玩家点击出牌时ChuPai--OutPutCard--设置下家要牌状态
userDown.SetUserState(USERSTATE.BEPUT);//设置下家 要打我出的牌 被动出牌状态
SetUserState(USERSTATE.THINK);//设置我的状态为静止状态
主动出牌的时候 USERSTATE.OUTPUT检测玩家选择的牌是否是合法JudeVOwn(合法的依据是必须是定义的BRANDSTATUS中的除
_NONE外的任意一种)
被动出牌的时候 USERSTATE.BEPUT 检测玩家选择的牌是否是合法JudeVOwn(合法的依据是必须是定义的BRANDSTATUS中的除
_NONE外的任意一种)+ 与上家的牌型outStatustion是否一致(上家出了牌的情况下,否则就上上家)+
我的牌型outStatustion与上家牌型outStatustion一致的情况下,我的牌num需要比上家的牌num大才能出
出了之后一样的同上设置下家状态+设置我的状态
8 电脑Computer类
检测行动状态:主动出牌 OutPut 时检测牌型是否合法 GameLogicCheck+ 出了之后一样的同上设置下家状态+设置我的状态
被动出牌 BePut 时检测牌型是否合法 GameLogicCheck + 与上家的牌型outStatustion是否一致(上家出了牌的情况下,否则就上上家)+
我的牌型outStatustion与上家牌型outStatustion一致的情况下,我的牌num需要比上家的牌num大才能出
出了之后一样的同上设置下家状态+设置我的状态
9 胜利 :在游戏状态中检测,看哪位玩家的手牌最先出完(手牌数量为0),即谁赢了,
然后亮出剩下玩家的手牌
相关文章推荐
- Unity3d 4.6.8 ShareSDK 分享新浪,微信,qq,经验总结
- Unity 鼠标事件 GUI GUILayerOut Input Application(截屏,getMouseDown,getKeyCode) 射线
- 说说Unity3D里的各种坐标系
- Unity3D脚本语言UnityScript初探
- unity, particle play once and destroy
- Unity3D移动平台动态读取外部文件全解析
- Unity3D 5.0简单的实现跳跃功能
- 使用Unity画一条平滑曲线(贝塞尔曲线)并使小球沿曲线运动
- Unity uGUI鼠标击穿检测
- Unity Shader:Blur
- 在Asset Store上购买unity插件
- 辛巴学院-Unity-剑英的c#提高篇(一)主循环
- 在Unity中获得一个物体的所有子物体包括孙物体。
- unity3d 物理引擎
- Kinect2.0+Unity之环境搭建
- 设置unity 编译文件到android项目
- 20151102—unity3D随笔
- Unity5 如何做资源管理和增量更新
- Microsoft.Practices.Unity mvc controller 注入
- Unity4.3 遮挡剔除:基本知识