Zjh游戏(二十三)自身弃牌、比牌以及加注的处理
自身玩家弃牌
- 三个玩家都有弃牌的操作,可以提取到基类中
- 弃牌操作多了些操作,只需要重写即可
- 在比牌失败以及弃牌按钮的点击事件中调用这个方法
BaseManager_Stand
/// <summary>/// 弃牌/// </summary>protected virtual void GiveUpCard(){isGiveUpCard = true;//是否弃牌设置为truego_CountDown.SetActive(false);//隐藏倒计时txt_GiveUp.SetActive(true);//显示已放弃m_IsStartStakes = false;//自身是否开始下注设置为falsem_ZjhManager.SetNextPlayerStartStakes();//设置下一位玩家下注///删除三张牌foreach (var item in m_SpawnCardLsit){Destroy(item);}}
SelfManager_Stand
/// <summary>/// 弃牌/// </summary>protected override void GiveUpCard(){base.GiveUpCard();go_CompareButtons.SetActive(false);//隐藏比牌按钮go_BottomButton.SetActive(false);//隐藏底部按钮}
自身玩家加注的处理
- 在UGUI中所有的按钮的点击范围都是一个长方形
- 本游戏中的底部按钮为不规则的图片,所以需要进行设置
- 利用alphaHitTestMinimumThreshold来进行设置UGUI的按钮点击范围
- 设置倍数的颜色,实现当前的倍数颜色和未点击的倍数颜色不同
- 加注的点击,确定当前是几倍,在调用ZhjManager_Stand中的下注方法
- 最后进行设置
SelfManager_Stand
//设置颜色private void FixedUpdate(){if (tgo_2.isOn){tgo_2.GetComponent<Image>().color = Color.gray;tgo_5.GetComponent<Image>().color = Color.white;tgo_10.GetComponent<Image>().color = Color.white;}if (tgo_5.isOn){tgo_5.GetComponent<Image>().color = Color.gray;tgo_2.GetComponent<Image>().color = Color.white;tgo_10.GetComponent<Image>().color = Color.white;}if (tgo_10.isOn){tgo_10.GetComponent<Image>().color = Color.gray;tgo_5.GetComponent<Image>().color = Color.white;tgo_2.GetComponent<Image>().color = Color.white;}}
//设置所有按钮的点击范围btn_LockCard.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;btn_FollowStakes.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;btn_AddStakes.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;btn_ComapreCard.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;btn_GiveUp.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;tgo_2.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;tgo_5.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;tgo_10.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;//加注的方法/// <summary>/// 加注按钮的点击/// </summary>private void OnAddStakesButtonClick(){if (tgo_2.isOn){StakesAffter(m_ZjhManager.Stakes(m_ZjhManager.Stakes(0) * 1), "不看");}if (tgo_5.isOn){StakesAffter(m_ZjhManager.Stakes(m_ZjhManager.Stakes(0) * 5), "不看");}if (tgo_10.isOn){StakesAffter(m_ZjhManager.Stakes(m_ZjhManager.Stakes(0) * 9), "不看");}m_IsStartStakes = false;//是否开始下注设置为falsego_CountDown.SetActive(false);//隐藏倒计时SetBottomButtonInteractable(false);//底部按钮的可交互性设置为falsego_CompareButtons.SetActive(false);//比牌按钮设置为falsem_ZjhManager.SetNextPlayerStartStakes();//设置下一位玩家可以下注}
自身比牌
- 制作两个按钮,一个和左边玩家进行比牌,一个和右边玩家进行比牌
- 在ZhjManager_Stand中定义两个属性,Get值为 return左右两边玩家中bool值是否弃牌
- 在点击比牌按钮时,调用ZhjManager_Stand中的两个属性进行判断左右两边玩家是否弃牌,如果未弃牌则显示比牌按钮
- 在ZhjManager_Stand中创建自身玩家与两个玩家比牌的方法,广播VSWithSelf这个事件码
- 给两个按钮添加点击事件,调用ZjhManager_Stand中的比牌方法
SelfManager_Stand
/// <summary>/// 比牌按钮的点击/// </summary>private void OnCompareButtonClick(){go_CompareButtons.SetActive(true);if (m_ZjhManager.m_LeftIsGiveUp){btn_CompareLeft.gameObject.SetActive(false);}if (m_ZjhManager.m_RightIsGiveUp){btn_CompareRight.gameObject.SetActive(false);}}/// <summary>/// 与左边玩家比牌的按钮点击/// </summary>private void OnCompareLeftButtonClick(){m_ZjhManager.SelfPlayerWithLeftPlayerCompared();SetBottomButtonInteractable(false);}/// <summary>/// 与右边玩家比牌的按钮点击/// </summary>private void OnCompareRightButtonClick(){m_ZjhManager.SelfPlayerWithRightPlayerCompared();SetBottomButtonInteractable(false);}
ZhjManager_Stand
public bool m_LeftIsGiveUp { get { return m_LeftManager.isGiveUpCard; } }public bool m_RightIsGiveUp { get { return m_RightManager.isGiveUpCard; } }/// <summary>/// self玩家与左边玩家比牌/// </summary>public void SelfPlayerWithLeftPlayerCompared(){EventCenter.Broadcast(EventDefine.VSWithSelf, (BaseManager_Stand)m_SelfManager, (BaseManager_Stand)m_LeftManager, "我", "左边玩家");} /// <summary>/// self玩家与右边玩家比牌/// </summary>public void SelfPlayerWithRightPlayerCompared(){EventCenter.Broadcast(EventDefine.VSWithSelf, (BaseManager_Stand)m_SelfManager, (BaseManager_Stand)m_RightManager, "我", "右边玩家");}
Zjh游戏(二十三)自身弃牌、比牌以及加注的处理相关推荐
- Zjh游戏(十三)获取用户信息
添加获取用户信息的子操作码 using System; using System.Collections.Generic; using System.Linq; using System.Text;n ...
- 【Visual C++】游戏开发五十六 浅墨DirectX教程二十三 打造游戏GUI界面(一)
本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/16384009 作者:毛星 ...
- [系统安全] 二十三.逆向分析之OllyDbg动态调试复习及TraceMe案例分析
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- 『牛角书』基于JS实现的鸿蒙游戏——二十四点纸牌
目录 前言 概述 正式开始 一.创建项目 二.编码 1.项目结构 2.实现思路 3.主要代码块 三.页面及功能展示 1.运算正确 2.运算错误 3.换一批及重置 本人项目仓库链接 前言 相信大家都有玩 ...
- 深入理解常见的二十三种设计模式
深入理解常见的二十三种设计模式 文章目录 深入理解常见的二十三种设计模式 一.设计模式的分类 1.1 创建型(五种) 1.2 结构型(七种) 1.3 行为型(十一种) 二.创建型 2.1 单例模式 2 ...
- z490 linux raid,PC硬件与外设 篇二十三:光威弈系列Pro Z490平台装机评测(含raid模式)...
PC硬件与外设 篇二十三:光威弈系列Pro Z490平台装机评测(含raid模式) 2020-06-16 09:53:51 0点赞 0收藏 0评论 创作立场声明:raid模式值得体验 存储颗粒与主控的 ...
- 2021-07-06美学心得(第二百二十三集) 罗国正 (2021年6月)
美学心得(第二百二十三集) 罗国正 (2021年6月) 2984.清朝画家.画论家布颜图,满洲镶白旗人,官绥远副都统,能画.善诗.好琴.他的主要美学观点如下: 1.绘画分"为人画" ...
- Java代码设计模式讲解二十三种设计模式
设计模式 文章目录 设计模式 一.创造型设计模式 1.1 单例模式 1.1.1 饿汉式单例模式 1.1.2 懒汉式单例模式 (1)线程不安全的情况 (2)线程安全的情况 1. 实例化的方法上加sync ...
- Java实现二十三种设计模式(五)—— 十一种行为型模式 (中)——解释器模式、迭代器模式、中介者模式、备忘录模式
Java实现二十三种设计模式(五)-- 十一种行为型模式 (中)--解释器模式.迭代器模式.中介者模式.备忘录模式 一.解释器模式 我国 IT 界历来有一个汉语编程梦,虽然各方对于汉语编程争论不休,甚 ...
- 云计算设计模式(二十三)——Throttling节流模式
云计算设计模式(二十三)--Throttling节流模式 控制由应用程序使用,一个单独的租户或整个服务的一个实例的资源的消耗.这样的模式能够同意系统继续执行并满足服务水平协议.即使当添加需求的资源放置 ...
最新文章
- Redis官方的高可用性解决方案
- linux杀死tomcat进程6,Linux下启动停止查看杀死Tomcat进程(示例代码)
- Linux命令——expr
- 一个人最重要的是跌倒了爬起来的能力
- 4个月高效备考信息系统项目管理师经验分享【57,49,49】
- LeetCode:Sudoku Solver Valid Sudouku
- 授权(Authentication)
- Lugre摩擦模型的Stribeck曲线仿真
- 编写Python高质量代码,资深程序员的 91 个建议
- 获取文本上字符出现的次数,把数据写入文件
- 圣诞祝福网页_圣诞营销H5的多种趣味玩法(案例+模板)
- SQL2016发布订阅热备操作手册
- Java性能优化的35种方法
- 学制两年的计算机考研院校,研究生学制三年合适还是两年实用
- 迅雷手机版苹果版_iOS迅雷2019内测版重磅发布,果粉们珍藏好这份详细下载教程...
- 服务器部署方案文档,IBM目录服务器部署方案
- ae 渲染 计算机内存不足,AE内存不足怎么办? After Effects内存不足【解决方法】...
- React React组件之间的通信方式
- 竟然可以用Python操作 Word 文档,这么多的骚操作!
- 手机Web前端调试页面之——Chrome DevTools(谷歌浏览器)的模拟手机调试
热门文章
- 真的要转到云IDE了吗?VS Code的开源IDE
- 取消烦人的自动代理配置
- 微信订阅号内测大改版,这一次更像「今日头条」了
- Java算法基础:使用递归算法实现,平方相加1^2 + 2^2 + 3^2 +...+ n^2。
- Python中机器学习神器——sklearn模块
- 中学生应该如何选择零食
- 26岁,转行Python,是这辈子最成功的一件事......
- linux 清屏命令(3种方式),Linux 清屏命令
- 吊打面试官之一面自我介绍
- python绘制月亮_用Python写一个嫦娥奔月,中秋快乐