资源简介
这是一个利用网狐引擎自己开发的骰子游戏的服务器,
我会看看下载数量再顶游戏客户端是否上传上来.
此服务器里有小部分的算法希望大家能引以为用。
代码片段和文件信息
// DICE.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include “DICE.h“
#include “stdlib.h“
#include “time.h“
//构造函数
DispatchDICE::DispatchDICE()
{
BankerNum = 10;
m_UserNum = 0;
// for (int i = 0;i < 8;i++)
// {
// m_dUser[i].Score = 0;
// }
// for(int i = 0;i < 7;i++)
// {
// m_Banker[i] = 10;
// }
}
//析构函数
DispatchDICE::~DispatchDICE()
{
}
//接收玩家信息
void DispatchDICE::SetPlayerGameInfo(User MU[]int PlayerNum)
{
// for (int i = 0;i < 8;i++)
// {
// if (MU[i].Score != 100)
// {
// m_UserNum = i;
// break;
// }
// }
// if (m_UserNum == 0)
// {
// m_UserNum = 8;
// }
m_UserNum = PlayerNum; //传入多少个玩家
for (int i = 0;i < m_UserNum;i++)
{
m_dUser[i].PlayerID = MU[i].PlayerID;
m_dUser[i].chairID = MU[i].chairID;
m_dUser[i].AlarmSign = MU[i].AlarmSign;
m_dUser[i].Score = MU[i].Score;
m_dUser[i].MaxWinScore = MU[i].MaxWinScore;
m_dUser[i].WhetherBanker = MU[i].WhetherBanker;
}
for (int i = m_UserNum ;i < 8;i++)
{
m_dUser[i].PlayerID = 10;
m_dUser[i].chairID = 10;
m_dUser[i].AlarmSign = LOSE;
m_dUser[i].Score = 0;
m_dUser[i].MaxWinScore = 0;
m_dUser[i].WhetherBanker = false;
}
//判断庄家
for (int i = 0;i < m_UserNum;i++)
{
if (m_dUser[i].WhetherBanker == true)
{
BankerNum = i;
break;
}
}
//判断庄家
}
//统计庄家与闲家输赢关系(统计输赢概率)
void DispatchDICE::SetWinProbability()
{
for (int i = 0;i < m_UserNum;i++)
{
if (m_dUser[i].Score > m_dUser[i].MaxWinScore&&m_dUser[i].WhetherBanker != true)
{
m_dUser[i].AlarmSign = NORMAL;
}
}
for(int j = 0;j < 2;j++)
{
for (int i = 0;i < m_UserNum;i++)
{
if (m_dUser[i].WhetherBanker != true)
{
int a = 10;
a = m_dUser[i].AlarmSign - m_dUser[BankerNum].AlarmSign;
switch(a)
{
case 2:
{
m_dUser[i].WinProbability = 0.80;
break;
}
case 1:
{
m_dUser[i].WinProbability = 0.6;
break;
}
case 0:
{
m_dUser[i].WinProbability = 0.4;
break;
}
case -1:
{
m_dUser[i].WinProbability = 0.25;
break;
}
case -2:
{
m_dUser[i].WinProbability = 0.1;
break;
}
}
}
}
//判断庄家输赢情况
int SumScore;
SumScore = 0;
for (int i = 0;i < m_UserNum;i++)
{
if (m_dUser[i].WhetherBanker != true&&m_dUser[i].WinProbability == 0.1)
{
SumScore = SumScore + m_dUser[i].Score;
}
else
if (m_dUser[i].WhetherBanker != true&&m_dUser[i].WinProbability == 0.8)
{
SumScore = SumScore - m_dUser[i].Score;
}
}
if (SumScore > m_dUser[BankerNum].MaxWinScore)
{
m_dUser[BankerNum].AlarmSign = NORMAL;
}
else
break;
}
}
//分配庄家点数
void DispatchDICE::OutBankerNum()
{
int BankerWin = 0;
int BankerLose = 0;
for (int i = 0;i < m_UserNum;i++)
{
if (m_dUser[i].WhetherBanker != true)
{
if (m_dUser[i].WinP
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 18151 2009-11-16 14:41 游戏服务器\DICE.cpp
文件 2082 2009-09-15 15:53 游戏服务器\DICE.h
文件 4033 2009-05-30 09:31 游戏服务器\GameLogic.cpp
文件 1126 2009-05-30 09:31 游戏服务器\GameLogic.h
文件 18740 2009-12-18 14:28 游戏服务器\GameServer.aps
文件 664 2009-11-18 17:03 游戏服务器\GameServer.cpp
文件 6565 2009-12-17 08:45 游戏服务器\GameServer.vcproj
文件 1418 2009-12-05 09:10 游戏服务器\GameServer.vcproj.SK.st.user
文件 1429 2009-07-04 11:58 游戏服务器\GameServer.vcproj.TXG.st.user
文件 319 2009-07-04 11:21 游戏服务器\GameServer.vcproj.vspscc
文件 1375 2009-07-24 09:25 游戏服务器\GameServer.vcproj.YT.st.user
文件 3192 2009-11-06 14:21 游戏服务器\GameServerManager.cpp
文件 1304 2009-05-30 09:31 游戏服务器\GameServerManager.h
文件 199 2009-11-13 15:24 游戏服务器\mssccprj.scc
文件 1679 2009-05-30 09:31 游戏服务器\ReadMe.txt
..A.SHR 105 2009-11-05 10:28 游戏服务器\Res\vssver2.scc
文件 367 2009-05-30 09:31 游戏服务器\Resource.h
文件 141 2009-05-30 09:31 游戏服务器\Stdafx.cpp
文件 53274 2009-12-20 16:04 游戏服务器\Tablefr
文件 2002 2009-12-16 10:18 游戏服务器\Stdafx.h
....SHR 591 2009-11-13 15:24 游戏服务器\vssver2.scc
文件 1375 2009-12-20 19:11 游戏服务器\GameServer.vcproj.SK.Administrator.user
文件 7208 2009-12-17 19:48 游戏服务器\Tablefr
文件 3189 2009-12-18 11:37 游戏服务器\GameServer.rc
目录 0 2009-11-08 10:16 游戏服务器\Res
目录 0 2009-12-05 14:12 游戏服务器
----------- --------- ---------- ----- ----
130528 26
- 上一篇:冒险岛V079物品ID.txt
- 下一篇:stm32f103c8移植ucosII
评论
共有 条评论