
正文
大富翁游戏java源代码,java三国大富翁游戏
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
用C语言写大富翁源代码
struct maptype
{
int money,belong;
char name[20];
}map[9][13]={0};
struct player
{
int x,y,money,di;
}man[3]={0};
int dx[5]={0,0,1, 0,-1};
int dy[5]={0,1,0,-1, 0};
int i,j,x,y;
int turn,step,res;
char out[1000];
char *s11="姓名史艳文";
char *s12="资金";
char *s21="姓名比卡超";
char *s22="资金";
char *s31="你需要付给对手";
char *s32="元";
char *s41="老友轮到你走啦";
char *s42="轮到对手走啦";
char *s51="买下此地要";
char *s52="买";
char *s53="不买";
char *s54="老大你的钱不够";
char *z1="起点";
char *z2="休息处";
char *fa="经过起点发旅费";
char *m1="路过岳王庙";
char *m2="路过纯白镇";
char *m3="获取钱三千";
char *m4="获取钱六千";
char *zi1="行";
char *zi2="动";
char *zi3="查";
char *zi4="看";
char *zi5="离";
char *zi6="开";
char *last="你要花两千元升级地价吗";
#define ESC 0x011b
#define ENTER 0x1c0d
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define UP 0x4800
#define DOWN 0x5000
#includestdio.h
#includestdlib.h
#include"first.c"
#includegraphics.h
#include "bmp16.h"
#include"files.c"
int graphdriver=VGA;
int graphmode=VGAHI;
FILE *hzk_p;
void open_hzk(void);
void get_hz(char incode[],char bytes[]);
void dishz(int x,int y,char code[],int color);
#include"rich2.c"
int main()
{
initgraph(graphdriver,graphmode,"");
cleardevice();
open_hzk();
first();
begin();
files();
setbkcolor(0);
while (1)
{
print(0);
step=random(6)+1;
{}
if (turn==1)
{
next3();
}
chuli(turn,step);
buy();
{}
turn=(turn+1)%2;
if (turn==0)
turn=2;
step=0;
}
return 0;
}
void open_hzk()
{
hzk_p=fopen("hzk16","rb");
if (!hzk_p)
{
printf("The file no\n");
getch();
closegraph();
exit(1);
}
}
void get_hz(char incode[],char bytes[])
{
unsigned char qh,wh;
unsigned long offset;
qh=incode[0]-0xa0;
wh=incode[1]-0xa0;
offset=(94*(qh-1)+(wh-1))*32L;
fseek(hzk_p,offset,SEEK_SET);
fread(bytes,32,1,hzk_p);
}
void dishz(int x0,int y0,char code[],int color)
{
unsigned char mask[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
int i,j,x,y,pos;
char mat[32];
get_hz(code,mat);
y=y0;
for(i=0;i16;i++)
{
x=x0;
pos=2*i;
for (j=0;j16;j++)
{
if ((mask[j%8]mat[pos+j/8])!=NULL)
putpixel(x,y,color);
++x;
}
++y;
}
}
相关问答
Q1: 求大富翁源代码
#includeiostream.h
#includeiomanip.h
#includestring.h
#define _GOLD 2 //标志有金子的格子
#define _TRAP 3 //标志有陷阱的格子
#define _OBSTACLE 4 //标志有障碍物的格子
class simgame
{
public:
simgame(char *nm,int);
void terminate(){delete []name;};
void init(int data[],int n);
void run();
void display();
private:
char *name;
int way[50]; //标志环道格子种类的数组
int location;
int life;
int money;
int isdead; //判断是否死亡
int isforward; //判断是顺行还是逆行
};
simgame::simgame(char *nm,int isfd=1)
{
strcpy(name,nm);
isforward=isfd;
location=0;
life=money=100;
isdead=0;
}
void simgame::init(int data[],int n)
{
int nn=0; //用于循环data数组以保证把way数组完整赋值
int i;
way[0]=0;
if(isforward)
{
for(int i=1;i50;i++)
{
if(nn=n)nn=0; //如果data数组到达末尾,从头开始
way[i]=data[nn];
nn++;
}
}
else
{
nn=n-1;
for(i=1;i50;i++)
{
if(nn0)nn=n-1;
way[i]=data[nn];
nn--;
}
}
}
void simgame::display()
{
cout"老鼠"name":";
if(life0)
{
cout"位置="setw(5)location;
cout"生命="setw(5)life;
cout"金钱="setw(5)money;
}
else
cout"Dead!";
}
void simgame::run()
{
int i;
int isstop=0;
if(isdead)return;
if(isforward) //正常行走的过程
{
for(i=1;i5;i++)
{
if(location+i==50)
location-=50; //如果到达末尾则从头开始走,并把位置变量重新赋值
if(way[location+i]==_OBSTACLE) //如果途中有障碍物,则停止
{
location+=i;
isstop=1; //标志,表示是否停留
break;
}
}
if(!isstop)
location+=4;
switch(way[location])
{
case _GOLD:money+=50;break;
case _TRAP:life-=80;break;
default:break;
}
if(life=0)isdead=1;
}
else //逆行的过程
{
for(i=1;i4;i++)
{
if(location+i==50)
location-=50;
if(way[location+i]==_OBSTACLE)
{
location+=i;
isstop=1;
break;
}
}
if(!isstop)
location+=3;
switch(way[location])
{
case _GOLD:money+=50;break;
case _TRAP:life-=80;break;
default:break;
}
if(life=0)isdead=1;
}
}
void main()
{
simgame mice1("A");
simgame mice2("B",0);
int data[20]={1,2,2,2,3,2,3,4,1,2,3,4,1,2,3,4,3,2,2,1};
mice1.init(data,20);
mice2.init(data,20);
for(int i=0;i5;i++)
{
mice1.run();
mice2.run();
cout"轮次:"i+1endl;
mice1.display();
mice2.display();
}
mice1.terminate();
mice2.terminate();
}
可以编译,但不可以运行,求大虾给诊断一哈,谢谢谢谢
问题补充:题目:一条由50个格子组成的环形跑道,其中一个格子是起点,两只鼠都从起点按相反方向出发,一只鼠按正方向前进且每次前进4格,另一只鼠按反方向出发,且每次前进3个格子,每只鼠出发时都有100点生命值和100个金子;跑道由普通格子,带金币的格子,带陷阱的格子,带障碍的格子等四种组成!
规则:a,起点是普通格子,任何普通格子鼠可以顺利通过.
b.鼠每路过或停在一个带金币的格子上就增加50个金币
c.鼠停留在陷阱的格子上,损失生命80点.
d.鼠路过带障碍的格子时,本轮停止前进.
1.并实现相关的类,同时模拟此游戏
输入:已在main()中提供一个大小为20的一维整型数组data,数值可为1,2,3,4,分别表示四种类型的格子,其中data(0)表示起点.
输出:10轮次内,每轮走完后两只老鼠的各自位置,生命,和拥有的金币数.
要main()函数应为如下格式
void main()
{
int data[20]={1,2,2,2,3,2,3,4,1,2,3,4,1,2,3,4,3,2,2,1};
simgame game;
game.init(data,20);
game.run(5)
game.terminate();
}
输出:
轮次1:
老鼠A:位置=##生命=##金钱=##
老鼠B:位置=##生命=##金钱=##
轮次2:
.......
宏:
#define _GOLD 2 //金子
#define _TRAP 3 //陷阱
#define _OBSTACLE 4 //障碍物
Q2: 用手机下了大富翁环岛之旅,以前没有玩过这个不知道怎么玩啊?有没有高手指点一下
大富翁环岛之旅[游戏代码:180001]
在电脑上极具知名度的游戏「大富翁」登陆手机游戏市场罗!可别小看手机的能力,虽然没有强大的3D功能,但「大富翁~环岛之旅」画面使用45度斜角的表现方式,游戏感可不输一般电脑游戏。这次大富翁的主题在环岛之旅,将台湾各地的名胜古迹搬到游戏中,成为大家可以买卖赚钱的基地,当然和传统大富翁的规则一样,可以在这些地点盖上建筑物,收取高额的过路费。谁说在手机上只能玩玩简单的益智游戏,「大富翁~环岛之旅」提供了精致又有趣的内容,可说是物超所值,玩家们可别浪费你手机大好JAVA功能,赶快下载吧!
操作方式 ★↑ or 数字〔2〕=往上移动
★↓ or 数字〔8〕=往下移动
★← or 数字〔4〕=往左移动
★→ or 数字〔6〕=往右移动
★JOYSTICK=开始游戏/掷骰子/决定
★SOFTKEY 1=开始游戏/详述/确定
★SOFTKEY 2=取消
游戏价格 NT $70 / 次
(只要花一次费用,就能将游戏永久储存於手机上,无使用限制)
适用手机 Nokia 3650,7650 (47K)
Nokia 6100,6610,7210,7250,7250i,2650,3100,3108,3120,3200,3220,3300,5140,6108,6170,6220,6230,6610i,6820,7200,
7260,7600 (49K)
Motorola T720,T720i (57K)
Q3: 求Java大富翁的代码
package test;
import java.util.Scanner;
public class ZhiShaiZhiDaoZhongDian {
public static void main(String[] args) {
System.out.println("---------------游戏开始----------------");
boolean flag = true;
int count=1;
Scanner scanner = new Scanner(System.in);
while (flag) {
System.out.println("输入任何值摇动筛子。。。");
String b=scanner.next();
int a=(int)(1+Math.random()*6);
System.out.println("筛子朝上面的值为: "+a);
switch (a) {
case 1:
count = count(count+1);
break;
case 2:
count=count(count+2);
break;
case 3:
count=count(count+3);
break;
case 4:
count=count(count+4);
break;
case 5:
count=count(count+5);
break;
case 6:
count=count(count+6);
break;
default:
break;
}
if(count==17){
flag=false;
}
}
}
private static int count(int count){
//向前进一步。
if(count==2||count==5||count==6||count==9||count==10||count==12||count==13||count==15){
System.out.println("前进一步");
return count;
}
if(count==3){
System.out.println("进入快速通道,直达9");
return 9;
}
if(count==4){
System.out.println("后退两步");
return 2;
}
if(count==14){
System.out.println("回退到6");
return 6;
}
if(count==7||count==11){
System.out.println("返回到起点");
return 1;
}
if(count==8){
System.out.println("进入快速通道,直达13");
return 13;
}
if(count==16){
System.out.println("后退三步");
return 13;
}
if(count=17){
System.out.println("***到达终点,游戏结束***");
return 17;
}
return count;
}
}
————————————————
望采纳,谢谢。






