如何编写简单的游戏程序?

//stone.cpp
#include <graphics.h>
#include <iostream.h>
#include <conio.h>
#include <bios.h>
#include <stdlib.h>
#include <time.h>
#include <dos.h>

const int Timer=0x1c;
int count;
int board[20][10];
const int ESC=0x11b,ENTER=0x1c0d,
UP=0x4800,DOWN=0x5000,LEFT=0x4b00,RIGHT=0x4d00;

void analyze(int shapeNum,int (*result)[2]);
void drawShape(int screenX,int screenY,int shapeNum,int fillColor);
void prepare();
void interrupt (*oldHandle)(...);
void interrupt newHandle(...);
void setNewVect();
void recoverOldVect();
int afterChange(int boardX,int boardY,int shapeNum,int key);
int deleteRow(int boardX,int shapeNum);
int rowFull(int row);
void fillBoard(int boardX,int boardY,int shapeNum);

void main()
{ int driver,mode,errorCode;
driver=DETECT;
mode=0;
initgraph(&driver,&mode,"");
errorCode=graphresult();
if(errorCode){
cerr<<"Initgraph Failed!"<<endl;
return;
}
const shape[19]={5410,12840,3210,6542,9840,4210,9510,6210,9851,6540, <br> 8410,5421,9540,6510,8541,6541,8540,5210,9541};

randomize();
int key,start,end,index,randNum,boardX,boardY,screenX,screenY,score;
int speed,TboardX,TboardY,Tindex,sign,shiftPressed,t;
setcolor(LIGHTGRAY);
setNewVect();

for(;;){
cleardevice();
setbkcolor(BLACK);
prepare();
score=0;
speed=18;
gotoxy(1,1);
delline();
cout<<"Your score is: "<<score*10<<endl;
while(1){
randNum=random(5);
switch(randNum)
{case 0:start=end=0;break; <br> case 1:start=1;end=2;break; <br> case 2:start=3;end=10;break; <br> case 3:start=11;end=14;break; <br> case 4:start=15;end=18; <br> }//switch
index=start+random(end-start+1);

boardX=0;boardY=4;
sign=afterChange(boardX,boardY,shape[index],DOWN);
screenX=boardY*10+200;screenY=boardX*10+100;
if(sign==2) {
drawShape(screenX,screenY,shape[index],RED);
break;
}
drawShape(screenX,screenY,shape[index],YELLOW);
count=0;
while(2){
key=0;
if(bioskey(1)) {
key=bioskey(0);
t=bioskey(2);
shiftPressed=(t==0x21||t==0x22?1:0);
}
if(key==ESC) break;
if(count>speed){
if(key==0) shiftPressed=0;
key=DOWN;
count=0;
}
if(key==UP||key==DOWN||key==LEFT||key==RIGHT){
//cout<<"shiftPressed:"<http://zzdxjyzd.com<shiftPressed<<endl;
TboardX=boardX;
TboardY=boardY;
Tindex=index;
switch(key)
{case UP: index=(index==end?start:index+1);break; <br> case DOWN: if(shiftPressed) { <br> for(t=boardX+1;t<=19;t++) <br> if(afterChange(t,boardY,shape[index],key)==3) <br> boardX=t; <br> else break; <br> }
else boardX++;
break;

原文地址:https://www.cnblogs.com/dakunqq/p/11372238.html

时间: 2024-07-29 08:07:44

如何编写简单的游戏程序?的相关文章

C#编写简单的聊天程序(转)

这是一篇基于Socket进行网络编程的入门文章,我对于网络编程的学习并不够深入,这篇文章是对于自己知识的一个巩固,同时希望能为初学的朋友提供一点参考.文章大体分为四个部分:程序的分析与设计.C#网络编程基础(篇外篇).聊天程序的实现模式.程序实现. 程序的分析与设计 1.明确程序功能 如果大家现在已经参加了工作,你的经理或者老板告诉你,“小王,我需要你开发一个聊天程序”.那么接下来该怎么做呢?你是不是在脑子里有个雏形,然后就直接打开VS2005开始设计窗体,编写代码了呢?在开始之前,我们首先需要

使用visual c+编写简单的木马程序

如今人们谈"马"色变,因为木马危害用户计算机,窃取银行钱财,当然可以用杀毒软件搞定,其实木马编程也简单,编程语音,c+,易语言,c#都可以制作简单的木马悄悄运行于后台,这里以ivsual c+编写简单的木马为例: Visual C++编程时用到了这些功能,现在我把它组装成一个很简单的木马了. 本代码已封装成类方便代码重用 :1,自我复制.2,修改注册表自动运行.3,关闭进程.4,启动程序.5,重启关机功能. 代码如下:class CTrojanHorse { public://add

使用JAVAEE编写简单的加法程序

首先选择菜单file-new-maven project,勾选"Create a &simple project (skip archetype selection)"项: 新建Maven项目,新建完成项目之后首先配置web.xml(WEB-INF目录下)文件找到<welcome-file>修改为你新建的主页面的名称及文件名</welcome-file>,我新建的是add所以为<welcome-file>add.jsp</welcome

Python 练习: 简单角色游戏程序

要求: 1.创建三个游戏人物,分别是: 苍井井,女,18,初始战斗力1000 东尼木木,男,20,初始战斗力1800 波多多,女,19,初始战斗力2500 2.游戏场景,分别: 草丛战斗,消耗200战斗力 自我修炼,增长100战斗力 多人游戏,消耗500战斗力 class Person: def __init__(self, name, gender, age, fight): self.name = name self.gender = gender self.age = age self.f

java编写简单的累加程序

package demo; public class CommanParameter { public static void main(String args[]){ System.out.println("参数个数"+args.length);//输出参数的长度 int a,n=0; for(String arg:args){ a=Integer.parseInt(arg);//将输入的数据进行强制类型转化 n=n+a; } System.out.println(n); } }

JavaScript编写简单的抽奖程序

1.需求说明 某公司年终抽奖,需要有如下功能 1)可以根据实际情况设置到场人数的最大值 2) 点击“开始”,大屏幕滚动,点击“停止”,获奖者的编号出现在大屏幕上 3)在界面里显示全部奖项获奖人编号 4)不重复获奖 5)不会因为输入错误而导致抽奖结果异常. 2.代码呈上 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN"> <html> <head> <title>某公

JavaScriipt编写简单的抽奖程序

1.需求说明 某公司年终抽奖,需要有如下功能 1)可以根据实际情况设置到场人数的最大值 2) 点击"开始",大屏幕滚动,点击"停止",获奖者的编号出现在大屏幕上 3)在界面里显示全部奖项获奖人编号 4)不重复获奖 5)不会因为输入错误而导致抽奖结果异常. 2.代码呈上 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN"> <html> <head

JNI编程(一) —— 编写一个最简单的JNI程序

来自:http://chnic.iteye.com/blog/198745 忙了好一段时间,总算得了几天的空闲.貌似很久没更新blog了,实在罪过.其实之前一直想把JNI的相关东西整理一下的,就从今天开始吧.Here we go. JNI其实是Java Native Interface的简称,也就是java本地接口.它提供了若干的API实现了和Java和其他语言的通信(主要是C&C++).也许不少人觉得Java已经足够强大,为什么要需要JNI这种东西呢?我们知道Java是一种平台无关性的语言,平

编写运行最简单的java程序——使用记事本编写java程序

第一个java程序--使用记事本编辑 经过上篇文章的java环境搭建成功的小伙伴们可以在自己的计算机上编写属于自己的java程序了yo~ 还没有搭建环境变量的小伙伴请转移到上一篇的随笔中去完成搭建. 连接地址:http://www.cnblogs.com/hysum/p/7084380.html 现在我们可以通过使用记事本来编辑我们的第一个java小程序. 第一步 .使用记事本编辑程序代码 用记事本编写的是java的源代码文件,里面的代码就是我们平时学习的java代码.生成的文件后缀是.java