栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

超级玛丽-c++

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

超级玛丽-c++

#include
#include
#include
using namespace std;
#define Y 20
#define X 80
#define K 17
short Map[Y][X]={
{7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,7,7,7,7,7,7,7,7,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,4,0,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,7,7,7,7,0,0,0,0,0,0,0,7,7,7,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,7,7,7,7,7,0,0,0,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,6,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7},
{7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,6,4,7},
{7,7,7,7,7,7,7,7,7,7,7,4,4,4,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7},
};
int px,py,ps;
char c;
void color(int a);
void gotoxy(int i,int j);
void start();
void csh();
void drawmap(int k);
void draw_player();
void cls_player();
void _cin();
void _k(int x,int y);
int main(){
    start();csh();drawmap(px-5);draw_player();
    while(true){
        _cin();
        if(ps==K&&Map[py][px]==9){system("cls");gotoxy(9,38);color(14);printf("Win!n");break;}
        if(Map[py][px]==4||Map[py+1][px]==4){system("cls");gotoxy(9,35);color(4);printf("Game over!n");break;}
        _sleep(10);
    }
    while(c=getch()){}
    return 0;
}
void color(int a){
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a);
    return;
}
void gotoxy(int i,int j){
    COORD position={j,i};SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),position);
    return;
}
void start(){
    CONSOLE_CURSOR_INFO cursor_info={1,0};SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
    color(1);gotoxy(8,36);printf("超");_sleep(250);color(4);gotoxy(8,38);printf("级");_sleep(250);color(3);gotoxy(8,40);printf("马");_sleep(250);color(14);gotoxy(8,42);printf("丽");_sleep(250);
    color(7);gotoxy(10,31);printf("游戏加载中…");_sleep(500);for(int q=0;q<3;q++)for(int w=0;w<4;w++){gotoxy(10,41+w*2);printf("…      ");_sleep(500);}
    system("cls");string s="游戏规则:nnw,a,s,d控制小人移动(跳跃时先按w,再按a或d)nn碰到尖刺死亡nn捡到所有金币并且走到终点获胜"; for(int i=0;i     return;
}
void csh(){
    px=5;py=18;ps=0;
    return;
}
void drawmap(int k){
    if(k<0)k=0;
    for(int y=0;y
        for(int x=0;x<40;x++){
            if(x+k<80){
                gotoxy(y,x*2);
                switch(Map[y][x+k]){ 
                    case 9:color(3);printf("终");break; 
                    case 7:color(7);printf("■");break;
                    case 6:color(14);printf("●");break;
                    case 4:color(4);printf("▲");break;
                    case 0:printf("  ");break;
                }
            }
        }
    }
    return;
}
void draw_player(){
    if(px<=5)gotoxy(py,px*2);else gotoxy(py,10);color(14);printf("♀");
    return;
}
void cls_player(){
    if(px<=5)gotoxy(py,px*2);else gotoxy(py,10);printf("  ");
    return;
}
void _cin(){
    if(kbhit()!=0){
        while(kbhit()!=0)c=getch();
        switch(c){
            case 'a':case 'A':{if(Map[py][px-1]!=7)px--;_k(px,py);break;}
            case 'd':case 'D':{if(Map[py][px+1]!=7)px++;_k(px,py);break;}
            case 'w':case 'W':{int l=0;for(int i=0;i<5&&Map[py-1][px]!=7&&Map[py-1][px]!=4;i++){l++;cls_player();py--;_k(px,py);draw_player();_cin();_sleep(50);}for(int i=0;i             case 's':case 'S':{px=5;py=18;break;}
        }
        drawmap(px-5);draw_player();while(Map[py+1][px]!=7&&Map[py+1][px]!=4){cls_player();py++;_k(px,py);draw_player();_cin();_sleep(50);}    
    }
    return;
}
void _k(int x,int y){
    if(Map[y][x]==6){ps++;Map[y][x]=0;}
    return;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1022167.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号