单机玩家的下注
- 根据牌型确定玩家的下注次数
- 如果是顺子,金花,顺金则下注次数为当前牌型*6
- 单张随机比牌、弃牌、跟注
- 对子随机比牌、跟注
- 豹子、235则一直跟注
//变量
/// <summary>
/// 下注的等待时间
/// </summary>
private float m_RandomWaitStakesTime = 0;
/// <summary>
/// 是否有下注次数
/// </summary>
private bool m_IsHasStakesNum = false;
/// <summary>
/// 下注次数
/// </summary>
private int m_StakesNum = 0;
//方法
private void FixedUpdate()
{
if (m_IsStartStakes)
{
if (m_RandomWaitStakesTime>=0)//等待时间结束,开始下注
{
//开始下注
PutStakes();
m_IsStartStakes = false;
go_CountDown.SetActive(false);
m_ZjhManager_Stand.SetNextPlayerStakes();
return;
}
m_Tiemr += Time.deltaTime;
if (m_Tiemr >= 1)
{
m_RandomWaitStakesTime--;
m_Tiemr = 0;
m_Time--;
txt_CountDown.text = m_Time.ToString();
}
}
}
/// <summary>
/// 下注
/// </summary>
private void PutStakes()
{
if (m_IsHasStakesNum)
{
m_StakesNum--;
if (m_StakesSum<=0)
{
GetPutStakesNum();//获取下注次数
//比牌 TODO
return;
}
//调用zjhmanager的下注方法
int stakesNum = m_ZjhManager_Stand.Stakes(Random.Range(3, 6));
UpdateCoin(stakesNum,"不看");
}
else if (m_CardType==CardType.Duizi)
{
int rand = Random.Range(0,10);
if (rand<5)//跟注
{
UpdateCoin(m_ZjhManager_Stand.Stakes(Random.Range(3,6)),"不看");
}
else//比牌
{
}
}
else if(m_CardType==CardType.Min)
{
int rand = Random.Range(0, 15);
if (rand<5)//跟注
{
UpdateCoin(m_ZjhManager_Stand.Stakes(Random.Range(3, 6)), "不看");
}
else if(rand>5&&rand<10)//比牌
{
}
else//弃牌
{
}
}
else if (m_CardType==CardType.Max||m_CardType==CardType.Baozi)
{
UpdateCoin(m_ZjhManager_Stand.Stakes(Random.Range(5, 8)), "不看");
}
}
/// <summary>
/// 下注提示
/// </summary>
private void UpdateCoin(int coin, string str)
{ //显示提示
m_StakesCountHint.Show(coin + str);
//更新下注的总数
m_StakesNum += coin;
txt_StakesSum.text = m_StakesNum.ToString();
}
/// <summary>
/// 弃牌
/// </summary>
private void GiveUpCard()
{
m_IsStartStakes = false;
txt_GiveUp.SetActive(true);
go_CountDown.SetActive(false);
m_ZjhManager_Stand.SetNextPlayerStakes();
m_IsGaveUp = true;
foreach (var item in m_SpawnCardList)
{
Destroy(item);
}
}
/// <summary>
/// 获取下注次数
/// </summary>
private void GetPutStakesNum()
{
if ((int)m_CardType >= 2 && (int)m_CardType <= 4)
{
m_IsHasStakesNum = true;
m_StakesNum = (int)m_CardType * 6;
}
}