Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
SMB.C
Package: Visual_C++GameDevelop.rar [view]
Upload User: sycq158
Upload Date: 2008-10-22
Package Size: 15361k
Code Size: 3k
Category:
Game Program
Development Platform:
Visual C++
- /****************************************************************************
- *Super Mario Bros. *
- *Copyright 1985 Nintendo *
- *Coded by: *
- * William Merrill Buerger *
- * Buergerw@warp.msoe.edu *
- * http://www.msoe.edu/~buergerw *
- *With help from: *
- * John Ratke -Keyboard Handler *
- * Themie Gouthas -XLIB graphics stuff *
- ****************************************************************************/
- #include<f:smbsmb.h> //Main Header file (f:smb = path of smb.h)//
- #include<f:smbsmbfunc.c> //Function file//
- //MAIN///////////////////////////////////////////////////////////////////////
- void main()
- {
- int move; //DEFINE & INITIALIZE LOCAL VARIABLES//
- int up;
- int down=0;
- int finish=0;
- int jumploop=0;
- int numplayers;
- int palloop;
- colorpal tempc;
- init();
- curplay=0;
- getmario();
- getinputs();
- numplayers=startscreen();
- if (numplayers==1)
- player[1].lives=0;
- //MAIN GAME LOOP/////////////////////////////////////////////////////////////
- while(finish!=3)
- {
- setcolors();
- times[0]=201;
- levelscreen();
- marioy=getinputs();
- if (player[curplay].screenx>=data.startpos[0]*16)
- player[curplay].screenx=data.startpos[0]*16;
- else
- player[curplay].screenx=0;
- if (player[curplay].screenx>0)
- marioy=data.startpos[1];
- mariox=40;
- up=0;
- move=0;
- down=0;
- palloop=0;
- tempc=data.palette[21];
- data.sprite=6;
- gettime(&t);
- times[1]=t.ti_sec;
- times[2]=times[1]-1;
- fillscreen(BACKGROUND);
- while(!finish) //CURRENT LEVEL AND PLAYER LOOP//
- {
- x_page_flip(0,0);
- rotatepal(&palloop,&tempc);
- fillscreen(BACKGROUND);
- drawscreen(player[curplay].screenx);
- drawmario(mariox,marioy);
- gettime(&t);
- times[1]=t.ti_sec;
- if (marioy<207)
- check_keybuf(&move,&finish,&up,&down,&jumploop);
- animate_mario(move);
- move_mario(&move);
- check_jump(&up,&down,&jumploop);
- check_blocks();
- check_finish(&finish);
- }
- //REACT TO END OF CURRENT PLAYER LOOP////////////////////////////////////////
- switch (finish)
- {
- case 1:
- player[curplay].lives--;
- finish=0;
- if (numplayers==2)
- {
- if (curplay==0 && player[1].lives!=0)
- curplay=1;
- else
- if (curplay==1 && player[0].lives!=0)
- curplay=0;
- }
- if (player[0].lives==0 && player[1].lives==0)
- finish=3;
- break;
- case 2:
- player[curplay].level++;
- if (player[curplay].level%5==0)
- player[curplay].level++;
- player[curplay].screenx=0;
- finish=0;
- break;
- case 3:
- graphstring(130,100,"Game Over",TEXTCOLOR,VisiblePageOffs);
- // while(!keybuf[KEY_ENTER]);
- break;
- }
- }
- //RETURN SCREEN AND KEYBOARD TO NORMAL///////////////////////////////////////
- exitgame();
- }
- //END////////////////////////////////////////////////////////////////////////