❶ 走迷宮游戲演算法
程序目的:
輸入一個任意大小的迷宮,用棧求出一條走出迷宮的路徑,並
顯示在屏幕上。
程序實現:
可以實現載入迷宮和保存迷宮,附帶文件中有4個測試迷宮路徑的
文件test1~4.dd。請將這些文件拷貝到TC當前目錄下,或者在載
入時寫明完全路徑。由於屏幕大小的限制,當用戶自己輸入迷宮
時一定要注意:迷宮大小是有限制的,不小於4*3,不大於30*20。
否則會出現錯誤信息。輸入開始時全是牆,用上下左右鍵移動,
用Del鍵刪除牆,形成通路,用Enter鍵添加牆。輸入結束時可以
將迷宮保存下來,以dd為擴展名。輸入完畢時用F9鍵來得到結果,
找到路徑時,屏幕下方會出現Path found,否則出現Path not found。
程序經Turbo C 2.0編譯調試成功。運行時不用添加任何運行庫。
不可以在VC上編譯。
下載DOS版和windows版的迷宮游戲全部代碼
用戶名:migong
----------------------------------------------------------------------------------
/*
MazePath Demo BY Turbo C 2.0
Copyright(c) RoverUnion. All right reserved.
Filename: Maze.c
Author Dongchengyu.
Ver 1.10
*/
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#include <dos.h>
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
#define F9 0x43
#define Esc 0x1b
#define Del 0x53
#define Home 0x47
#define End 0x4f
#define Space 0x20
#define Up 0x48
#define Down 0x50
#define Left 0x4b
#define Right 0x4d
#define Enter 0x0d
#define F2 0x3c
#define F3 0x3d
#define STACK_INIT_SIZE 200
#define STACKINCREMENT 10
typedef int Boolean;
typedef int Status;
typedef struct {
int x;
int y;
} PosType;
typedef struct {
int ord;
PosType seat;
int di;
} SElemType;
typedef struct {
int td;
int foot;
int mark;
} MazeType;
typedef struct {
SElemType *base;
SElemType *top;
int stacksize;
} Stack;
int Maze[20][30];
MazeType maze[20][30];
PosType StartPlace;
PosType EndPlace;
int count;
int m,n;
Boolean b_start=FALSE,b_end=FALSE;
void CreatMaze(void);
Status SaveMaze(char *filename);
Status LoadMaze(char *filename);
void Error(char *message);
Status InitStack(Stack *s);
Status DestroyStack(Stack *s);
Status ClearStack(Stack *s);
Boolean StackEmpty(Stack *s);
int StackLength(Stack *s);
Status Push(Stack *s,SElemType e);
SElemType Pop(Stack *s,SElemType e);
Status GetTop(Stack *s,SElemType *e);
Status StackTraverse(Stack *s,Status (* visit)(SElemType *se));
Boolean Pass(PosType curpos);
void MarkPrint(PosType seat);
void FootPrint(PosType curpos);
PosType NextPos(PosType seat,int di);
Status MazePath(PosType start,PosType end);
void CreatMaze(void)
/* Form the maze. */
{
void Error(char *message);
Status SaveMaze(char *filename);
Status LoadMaze(char *filename);
int i,j;
int x,y;
char c;
char savename[12],loadname[12];
Boolean flag=FALSE,load=FALSE;
clrscr();
printf("Menu:\n\n");
printf("1.Load Mazefile:(*.dd)\n\n");
printf("2.Input Maze:\n\n");
printf("Input your choice: ");
do
{
c=getch();
switch(c)
{
case ''''''''''''''''''''''''''''''''1'''''''''''''''''''''''''''''''': putch(''''''''''''''''''''''''''''''''1''''''''''''''''''''''''''''''''); break;
case ''''''''''''''''''''''''''''''''2'''''''''''''''''''''''''''''''': putch(''''''''''''''''''''''''''''''''2''''''''''''''''''''''''''''''''); break;
case Esc: sleep(1); exit(1);
default: break;
}
}
while(c!=''''''''''''''''''''''''''''''''1''''''''''''''''''''''''''''''''&&c!=''''''''''''''''''''''''''''''''2'''''''''''''''''''''''''''''''') ;
if(c==''''''''''''''''''''''''''''''''1'''''''''''''''''''''''''''''''')
{
printf("\n\nLoadName: ");
scanf("%s",loadname);
if(LoadMaze(loadname))
{
sleep(1); load=TRUE;
}
else { gotoxy(1,9); printf("Load fail! "); }
}
if(!load)
{
printf("\nInput the maze''''''''''''''''''''''''''''''''s size:\n");
printf("\nInput Length :\n");
scanf("%d",&m);
printf("\nInput Width :\n");
scanf("%d",&n);
if(m<4||n<4) Error("Input");
if(m>30||n>20) Error("Maze too large");
for(i=0;i<30;i++)
for(j=0;j<20;j++)
Maze[j][i]=2;
StartPlace.x=0;
StartPlace.y=0;
EndPlace.x=0;
EndPlace.y=0;
clrscr();
printf("\n");
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
printf(" #");
Maze[i-1][j-1]=0;
}
printf("\n");
}
}
gotoxy(65,5);
printf("''''''''''''''''''''''''''''''''#'''''''''''''''''''''''''''''''':Wall");
gotoxy(65,7);
printf("Start:Home");
gotoxy(65,9);
printf("End:End");
gotoxy(65,11);
printf("Delete Wall:Del");
gotoxy(65,13);
printf("Enter Wall:Enter");
gotoxy(65,15);
printf("Save Maze:F2");
gotoxy(65,17);
printf("Complete:F9");
gotoxy(65,19);
printf("Exit:Esc");
gotoxy(4,3);
x=4;y=3;
do
{
c=getch();
switch(c)
{
case Up: if(y>3) { y--; gotoxy(x,y); }
break;
case Down: if(y<n) { y++; gotoxy(x,y); }
break;
case Left: if(x>4) { x-=2; gotoxy(x,y); }
break;
case Right: if(x<2*m-2) { x+=2; gotoxy(x,y); }
break;
case Del: if(y-2==StartPlace.y&&x/2-1==StartPlace.x) b_start=FALSE;
if(y-2==EndPlace.y&&x/2-1==EndPlace.x) b_end=FALSE;
putch('''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''); Maze[y-2][x/2-1]=1; gotoxy(x,y);
break;
case Enter: if(y-2==StartPlace.y&&x/2-1==StartPlace.x) break;
if(y-2==EndPlace.y&&x/2-1==EndPlace.x) break;
putch(''''''''''''''''''''''''''''''''#''''''''''''''''''''''''''''''''); Maze[y-2][x/2-1]=0; gotoxy(x,y);
break;
case Home: if(Maze[y-2][x/2-1]&&!b_start)
{
StartPlace.x=x/2-1;
StartPlace.y=y-2;
putch(''''''''''''''''''''''''''''''''S'''''''''''''''''''''''''''''''');
gotoxy(x,y);
b_start=TRUE;
}
break;
case End: if(Maze[y-2][x/2-1]&&!b_end)
{
EndPlace.x=x/2-1;
EndPlace.y=y-2;
putch(''''''''''''''''''''''''''''''''E'''''''''''''''''''''''''''''''');
gotoxy(x,y);
b_end=TRUE;
}
break;
case Esc: gotoxy(2,22); printf("exit"); sleep(1); exit(1);
case F9: if(b_start&&b_end) flag=TRUE; break;
case F2: gotoxy(2,22);
printf("Savename:");
scanf("%s",savename);
gotoxy(2,22);
if(SaveMaze(savename)) printf("Save OK! ");
else printf("Save fail! ");
sleep(1);
gotoxy(2,22);
printf(" ");
gotoxy(x,y);
break;
default: break;
}
}
while(!flag);
for(i=0;i<30;i++)
for(j=0;j<20;j++)
{
maze[j][i].td=Maze[j][i];
maze[j][i].mark=0;
maze[j][i].foot=0;
}
}
Status LoadMaze(char *file)
/* The maze has been loaded. */
{
FILE *fp;
char *buffer;
char ch;
int i=0,j,k;
Boolean len=FALSE,wid=FALSE;
if((fp=fopen(file,"r"))==NULL)
return ERROR;
buffer=(char *)malloc(600*sizeof(char));
ch=fgetc(fp);
while(ch!=EOF)
{
buffer[i]=ch;
i++;
ch=fgetc(fp);
}
m=30;n=20;
for(i=0;i<600;i++)
{
j=i/30; k=i%30;
if(buffer[i]==''''''''''''''''''''''''''''''''2''''''''''''''''''''''''''''''''&&!len){ m=i; len=TRUE; }
if(k==0&&buffer[i]==''''''''''''''''''''''''''''''''2''''''''''''''''''''''''''''''''&&!wid){ n=j; wid=TRUE; }
switch(buffer[i])
{
case ''''''''''''''''''''''''''''''''0'''''''''''''''''''''''''''''''': Maze[j][k]=0; break;
case ''''''''''''''''''''''''''''''''1'''''''''''''''''''''''''''''''': Maze[j][k]=1; break;
case ''''''''''''''''''''''''''''''''2'''''''''''''''''''''''''''''''': Maze[j][k]=2; break;
case ''''''''''''''''''''''''''''''''3'''''''''''''''''''''''''''''''': Maze[j][k]=1;
StartPlace.x=k;
StartPlace.y=j;
b_start=TRUE;
break;
case ''''''''''''''''''''''''''''''''4'''''''''''''''''''''''''''''''': Maze[j][k]=1;
EndPlace.x=k;
EndPlace.y=j;
b_end=TRUE;
break;
default : break;
}
}
fclose(fp);
clrscr();
for(i=0;i<30;i++)
for(j=0;j<20;j++)
{
maze[j][i].td=Maze[j][i];
maze[j][i].foot=0;
maze[j][i].mark=0;
if(Maze[j][i]==0)
{
gotoxy(2*i+2,j+2);
putch(''''''''''''''''''''''''''''''''#'''''''''''''''''''''''''''''''');
}
}
gotoxy(2*StartPlace.x+2,StartPlace.y+2);
putch(''''''''''''''''''''''''''''''''S'''''''''''''''''''''''''''''''');
gotoxy(2*EndPlace.x+2,EndPlace.y+2);
putch(''''''''''''''''''''''''''''''''E'''''''''''''''''''''''''''''''');
return OK;
}
Status SaveMaze(char *filename)
/* The maze has been saved. */
{
FILE *fp;
char *buffer;
int i,j,k;
fp=fopen(filename,"wb");
buffer=(char *)malloc(600*sizeof(char));
for(i=0;i<600;i++)
{
j=i/30; k=i%30;
switch(Maze[j][k])
{
case 0: buffer[i]=''''''''''''''''''''''''''''''''0''''''''''''''''''''''''''''''''; break;
case 1: buffer[i]=''''''''''''''''''''''''''''''''1''''''''''''''''''''''''''''''''; break;
case 2: buffer[i]=''''''''''''''''''''''''''''''''2''''''''''''''''''''''''''''''''; break;
default : Error("Write"); break;
}
if(k==StartPlace.x&&j==StartPlace.y) buffer[i]=''''''''''''''''''''''''''''''''3'''''''''''''''''''''''''''''''';
if(k==EndPlace.x&&j==EndPlace.y) buffer[i]=''''''''''''''''''''''''''''''''4'''''''''''''''''''''''''''''''';
}
fwrite(buffer,600,1,fp);
free(buffer);
fclose(fp);
return OK;
}
void Error(char *message)
{
clrscr();
fprintf(stderr,"Error:%s\n",message);
exit(1);
} /* Error */
Status InitStack(Stack *s)
/* The stack s has been created and is initialized to be empty. */
{
s->base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType));
if(!s->base) Error("Overflow");
s->top=s->base;
s->stacksize=STACK_INIT_SIZE;
return OK;
} /* InitStack */
Status DestroyStack(Stack *s)
/* The stack s has been destroyed. */
{
s->top=NULL;
s->stacksize=0;
free(s->base);
s->base=NULL;
return OK;
} /* DestroyStack */
Status ClearStack(Stack *s)
/* The stack has been clear to be maximum. */
{
s->top=s->base;
s->stacksize=STACK_INIT_SIZE;
return OK;
} /* ClearStack */
Boolean StackEmpty(Stack *s)
/* Check if the stack s is empty. */
{
if(s->top==s->base) return TRUE;
else return FALSE;
} /* StackEmpty */
int StackLength(Stack *s)
/* Gain the length of the stack s. */
{
if(s->top>s->base) return (int)(s->top-s->base);
else return 0;
} /* StackLength */
Status Push(Stack *s,SElemType e)
/* The element e has been pushed into the stack s. */
{
if(s->top-s->base>=s->stacksize)
{
s->base=(SElemType *)realloc(s->base,
(s->stacksize+STACKINCREMENT)*sizeof(SElemType));
if(!s->base) Error("Overflow");
s->top=s->base+s->stacksize;
s->stacksize+=STACKINCREMENT;
}
*s->top++=e;
return OK;
} /* Push */
SElemType Pop(Stack *s,SElemType e)
/* The element e has been removed from the stack s. */
{
if(s->top==s->base) Error("Pop");
e=*--s->top;
return e;
} /* Pop */
Status GetTop(Stack *s,SElemType *e)
/* The element e has got to the top of the stack s.*/
{
if(s->top==s->base) Error("GetTop");
*e=*(s->top-1);
return OK;
} /* GetTop */
/* Traverse the stack s using ''''''''''''''''''''''''''''''''visiting'''''''''''''''''''''''''''''''' function. */
/* Status StackTraverse(Stack *s,Status (* visit)(SElemType *se))
{
SElemType p;
int result;
if(s->top==s->base) return ERROR;
p=s->base;
while(!(p==s->top))
{
result=(*visit)(p);
p++;
}
return OK;
} */
Boolean Pass(PosType curpos)
/* Check if the current position can be passed. */
{
if(maze[curpos.x][curpos.y].td==1&&
maze[curpos.x][curpos.y].foot==0&&maze[curpos.x][curpos.y].mark==0)
return TRUE;
else return FALSE;
} /* Pass */
void MarkPrint(PosType seat)
/* Mark the position seat. */
{
maze[seat.x][seat.y].mark=-1;
/* Marking ''''''''''''''''''''''''''''''''-1'''''''''''''''''''''''''''''''' symbolize the current position cannot be put. */
} /* MarkPrint */
void FootPrint(PosType curpos)
/* The foot of the curpos of the maze has been set ''''''''''''''''''''''''''''''''true''''''''''''''''''''''''''''''''. */
{
maze[curpos.x][curpos.y].foot=1;
} /* FootPrint */
PosType NextPos(PosType seat,int di)
{
switch(di)
{
case 1: seat.y++; return seat; /* Eastward */
case 2: seat.x++; return seat; /* Southward */
case 3: seat.y--; return seat; /* Westward */
case 4: seat.x--; return seat; /* Northward */
default: seat.x=0; seat.y=0; return seat;
}
} /* NextPos */
/* The key to the program. */
/* Pre: The maze array & the startplace & the endplace.
Post: Find the one traverse of the maze and perform the mazepath.
Uses: The ADT stack class.
*/
Status MazePath(PosType start,PosType end)
{
PosType curpos;
int curstep;
SElemType e;
Stack *s,stack;
stack.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType));
if(!stack.base) Error("Overflow");
stack.top=stack.base;
stack.stacksize=STACK_INIT_SIZE;
s=&stack;
curpos=start;
curstep=1;
do
{
if(Pass(curpos))
{
FootPrint(curpos);
e.ord=curstep; e.seat=curpos; e.di=1;
gotoxy((curpos.y+1)*2,curpos.x+2);
putch(''''''''''''''''''''''''''''''''@'''''''''''''''''''''''''''''''');
delay(8000); /* pospone time. */
Push(s,e);
if(curpos.x==end.x&&curpos.y==end.y) /* Proceed recursively. */
{
DestroyStack(s);
return TRUE;
}
curpos=NextPos(curpos,1); /* Try next position. */
curstep++;
}
else
{
if(!StackEmpty(s))
{
e=Pop(s,e); /* Removed e from s. */
while(e.di==4&&!StackEmpty(s)) /* Four directions have been checked
and s is not empty. */
{
MarkPrint(e.seat);
gotoxy((e.seat.y+1)*2,e.seat.x+2);
putch(''''''''''''''''''''''''''''''''@'''''''''''''''''''''''''''''''');
delay(8000); /* Pospone time. */
gotoxy((e.seat.y+1)*2,e.seat.x+2);
putch('''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''');
e=Pop(s,e); /* Remove e from s. */
curstep--;
}
if(e.di<4) /* The current position hasnot been checked. */
{
e.di++;
Push(s,e); /* Insert e into s. */
curpos=NextPos(e.seat,e.di); /* Try next position. */
}
}
}
}
while(!StackEmpty(s));
DestroyStack(s);
return FALSE;
} /* MazePath */
void main()
{
PosType start,end;
CreatMaze();
start.x=StartPlace.y;
start.y=StartPlace.x;
end.x=EndPlace.y;
end.y=EndPlace.x;
if(MazePath(start,end))
{
gotoxy(2,22);
printf("Path found\n");
}
else
{
gotoxy(2,22);
printf("Path not found\n");
}
getch();
clrscr();
}
❷ 幼兒園室外迷宮牆怎麼設計游記游戲玩法
幼兒園室內區角游戲方案——中班:小球走迷宮
游戲目標
1.通過玩走迷宮游戲,專培養觀察力和分析判斷能力。屬
2.發展合作能力和交流能力,增進集體榮譽感。
游戲准備
迷宮盒、玻璃球各1個。
游戲玩法
1.幼兒雙手拿著迷宮盒,前後左右地控制玻璃球在迷宮中行走,到達終點者為勝。
2.兩個幼兒一組,比比誰的小球最快走到終點,並給予勝利者獎勵。
游戲建議
起初,教師可以給出線路提示;幼兒熟悉後,則鼓勵幼兒克服困難,大膽嘗試。
希望能幫到你,求採納。
❸ 求一個游戲,益智類的 幾年前玩的。。。用各種道具讓一個小東西走到迷宮的終點。。。
益智類點擊Top420
寵物連連看2.5版
寵物連連看
黃金礦工中文版
寵物連連看2.6
果蔬連連看
紅孩兒連連看
寵物連連看3.0版
新淘金者
石頭連連看
紫楓淘金者2.1
新上海麻將
廚房連連看
寵物連連看特別版
新麻雀連連看
花花連連看
超級方塊
五子連珠
大話西遊2
寵物連連看3.1
三國麻將風雲修正版
全新連連看
喜羊羊與灰太狼消消看
青蛙祖瑪
智取冰淇淋
阿sue家做客
喜羊羊與灰太狼翻翻看
布置你的家
喜羊羊灰太郎找茬
魔力連連看
怪怪水族館
·小嬰兒逃出系列2 ·瘋狂過山車 ·為阿Sue買衣服 ·寵物消消樂 ·走迷宮 ·四川麻將2
·罪案現場十一:粉色房 ·超級連連看 ·小可愛消消樂 ·藍貓超級泡泡 ·找別扭 ·逃離房間.黃色版
·長城連連看 ·萬聖節連連看 ·麻將塔 ·天使之戀連連看 ·生命方舟1 ·可愛寵物消消看
·食物搭配 ·捉弄上司 ·搞笑叮當找茬 ·古文明鏈球 ·美羊羊回家 ·運輸大富翁
·新上海麻將 ·我要上廁所 ·水果泡泡 ·喜羊羊連連看 ·4399大富翁 ·偷襲武士3(下)
·火影對決 ·智力渡河 ·無敵連連看 ·新版消消看 ·罪案現場十二:人間大 ·幫阿Sue整理書房
·嘔吐小怪 ·韓國麻將連連看 ·3D麻將連連看 ·貪吃蛇 ·夢幻寵物連連看 ·豬之旅
·喜羊羊甜點連連看 ·拯救沸羊羊 ·超級寵物大戰 ·堆方塊 ·寒箏連連看 ·同色相煎
·百萬富翁(廣州ver1. ·停車入位 ·投蛋游戲 ·小猴子戳氣球加強版 ·星際寶貝 ·虹貓藍兔連連看
·高樓爆破 ·小雞吃米 ·罪案現場九:水彩房間 ·花園的樂趣 ·超級圈圈看 ·火柴人故事4
·阿Sue來找茬 ·寵物連連看3.1無敵版 ·超高難度來找茬 ·屎殼郎回家 ·胡偵探傳說之富豪別墅 ·中國龍之遺失的寶藏
·木偶戰記5 ·開心做漢堡 ·兒童畫畫 ·迷宮車旅 ·冰封的海盜 ·竹林麻將連連看
·猴子過河 ·勇闖BBC ·巴比拼圖 ·吃蘋果 ·水果派對2 ·果蔬連連看2
·魔術師水箱逃脫 ·球入迷宮 ·智慧之門 ·經典吃豆子游戲 ·隱藏的戒指 ·考眼力找字母
·逃離辦公室 ·全職大盜 ·勇士之日 ·為阿Sue買衣服2 ·精裝麻將連連看 ·迷宮救美
·QQ連連看 ·黑暗凶靈 ·貓咪舞蹈 ·寵物連連看跳關版 ·阿Sue買首飾 ·火柴棍小人之旅1
·小豬快跑 ·可愛方塊大作戰 ·進入老屋 ·QQ連連看 ·超女連連看 ·偷懶員工
·火柴棍小人之旅 ·逃離WC ·胡偵探傳說之夏日酒吧 ·小熊熊回家 ·傷腦筋十二塊2 ·TWINS連連看
·家庭小精靈 ·恐怖之屋 ·筆筆雞蛋廚 ·水管工 ·游游連連看 ·點燈救美
·青蛙過河 ·逃離房間2 ·三隻小雞 ·環保大冒險 ·狗狗找茬游戲 ·BB找奶瓶
·松鼠推箱子 ·韓國版找不同 ·超眩高空彈跳 ·胡偵探傳說之孔雀山莊 ·木乃伊尋寶 ·吃掉我的派
·心之旅 ·大廚連連看 ·貓和老鼠 ·鑽地小子 ·武林外傳連連看 ·特別探險版
·男人60秒之踩單輪 ·阿sue魔術時裝 ·小猴子戳氣球4 ·汽車人闖關 ·幻想連連看 ·小白兔逃出房間
·逃離監獄 ·叫男友起床 ·你能走出這個房間嗎 ·大餅工廠 ·送小羊回家 ·胡偵探傳說之雪地別墅
·機場大廳 ·魔鬼城堡 ·卡通魔方 ·溫泉煮蛋蛋 ·新勢力QQ連連看 ·鬼教堂
·是男人就來雙人決斗! ·胡偵探傳說之新興公司 ·探險找妹妹1 ·逃離黃色倉庫 ·罪案現場十四:電腦傳 ·寵物寶貝連連看
·十二扇門 ·無頭男屍 ·貓和老鼠 ·玩具男孩III ·8關考眼力 ·大家來找茬
·怪物實驗室第二部 ·卡哇伊小恐龍 ·金碟神偷 ·棉球方塊 ·罪案現場23另一次逃脫 ·逃離家門
·夢游先生9特別探險 ·標志麻將連連看 ·把跑車開回家 ·布拉吉卡方塊 ·抗日大戰斗 ·怪物實驗室第一部
·旺旺礦場 ·迷宮吃冰 ·夢游先生8之實驗鬧劇 ·鼴鼠挖掘工 ·三國麻將風雲再次修改 ·神盜基德
·接球 ·胡偵探之穿紅襯衫的女 ·凶宅疑案 ·秘室逃脫游戲-奇趣房 ·奪寶奇兵 ·羅馬發源地
·雙人抓怪物 ·迪斯尼連連看 ·趣味加加加 ·列車員的工作 ·幻想對對碰 ·走進神秘的房間
·怪物實驗室第三部 ·鐵路大亨 ·20分鍾拆除炸彈 ·罪案現場19:致命城堡 ·小仙女對對碰 ·罪案現場十:螃蟹命案
·平台 ·瓊斯盜寶記 ·水果的樂趣 ·罪案現場21血濺廚房 ·來作曲吧 ·魔鬼豬之翻臉豬
·吃豆豆新傳 ·翻小布 ·秦時明月連連看 ·絕望之塔 ·動腦子種發財樹 ·福爾摩斯來找碴
·大熊貓去竹島 ·中國傳統麻將 ·罪案現場十三:神秘之 ·雲中漫步 ·拼圖小游戲 ·走出奔妹房間
·氣球救生 ·真假三國 ·神勇特警 ·貪吃海盜 ·小貓找主人 ·Q寵連連看
·史酷比救女主人 ·孫子兵法 ·送男孩回家 ·為阿Sue買秋裝 ·汽車標志連連看 ·逃離倉庫
·木偶戰記3之骷髏王 ·小破孩連連看 ·接東西 ·牙科診所 ·夢游先生7之海底冒險 ·變形迷宮
·逃離密室.水篇 ·古老的密碼 ·阿比逃亡記 ·另類找茬 ·馬戲團消消樂 ·旋轉寶石對對碰
·愛心行動 ·組裝變形金剛 ·舔動-夏季 ·雞蛋飛人 ·胡偵探傳說之孤島城堡 ·夢游先生4之驚險樂園
·靈動奇兵 ·捉龜記 ·探險找妹妹2 ·牛郎織女 ·天使惡魔走雲端 ·危險地帶
·KFC美味對對碰 ·罪案現場22電梯的故事 ·連連碰換裝 ·小航海家 ·死亡之城 ·小冰熊闖關
·庫爾斯克核潛艇 ·找鑰匙開門7 ·消地雷 ·尋找隱藏的米奇 ·快跑~機器人 ·麻將連連看
·火柴棍游戲 ·偷襲武士3(上) ·炮火 ·連連看之搞笑動物篇 ·新版寵物連連看 ·僵屍反射鏡
·壽司連連看 ·MM找茬 ·女友惡作劇 ·迷之大陸 ·撲克連珠 ·急速對對碰
·VeryQ-只有十一關(大 ·上班女生 ·原始修水管 ·逃離房間.日本篇 ·邊兒連連看 ·崎嶇對對碰
·唐老鴨找碴 ·動物連連看2 ·小老鼠貓爪出逃 ·夢游先生5之冰天雪地 ·阿Sue開商店 ·奶牛連連看
·麻將連連看3 ·夢游先生1之瘋狂都市 ·拆除炸彈 ·姐弟互助走迷宮 ·找茬難度版 ·犯罪現場15:槍械追蹤
·狗狗找茬游戲 ·夢魘迷境 ·拼圖游戲 ·中文版逃離房間 ·逃出密艙 ·火影大找茬
·小偷逃出房間 ·停車場停車 ·對對碰 ·夢游先生6之神秘旅行 ·炸彈包裹 ·大家找茬3
·密碼箱與gameboy ·真景逃生 ·機器貓練打字 ·罪案現場17:斯坦利博 ·海洋連連看 ·小和尚拼圖游戲
·七彩魔法筆2 ·鬼谷連連看 ·中控室逃脫 ·上海麻將連連看 ·火影忍者連連看 ·寵物公園
·童年時的跳房子 ·男女配合闖關 ·奇妙的反射鏡二代 ·紫楓連連看2.13精簡版 ·玩具男孩四 ·貓和老鼠
·瓶蓋對對碰 ·大富翁8來找茬 ·鬼屋兄妹 ·掘金勇士 ·狗狗探寶記 ·城堡小妹
·江湖找茬 ·eddie小超人 ·怪物飛濺水珠 ·小豬吃奶 ·公路建設 ·人猿星球
·終極逃亡!CrimsonRo ·進入房間 ·超級難度拼圖 ·曾軼可連連看 ·火炬手 ·老鼠走迷宮
·魔法城-占卜前世 ·終極雷區 ·招財童子連連看經典版 ·熊貓公園 ·探險找妹妹3 ·小猴子戳氣球
·高難度滾球 ·車標連連看 ·明偵探柯楠 ·喜羊羊記憶力大挑戰 ·融生綠島 ·滑雪小屋
·考試作弊3 ·大家來找茬2 ·特急速遞 ·魔獸連連看2 ·守護石 ·可愛毛毛球祖瑪
·迷你城堡 ·逃出女友家 ·寵物連連看3 ·智力消方格 ·瘋狂歌迷 ·麻將連連看2
·小豬冒險記 ·逃出牢籠 ·水果翻翻看 ·精彩找茬二 ·約翰和瑪麗的回憶 ·海綿寶寶滾雪球
·決斗外星人 ·一個RGB~demo游戲 ·經典掃雷 ·阿SUE找東西 ·瑪雅對對碰 ·蓋高樓
·逃出摩托車庫 ·小櫻桃之考驗記憶力 ·爬格子 ·英鉤釣魚 ·飛行棋 ·卧室救貓咪
·芭比海綿寶寶翻翻看 ·神奇葯丸 ·大家來找碴2004 ·方塊男孩 ·新上海麻將 ·小怪物一鍵闖關2
望採納。
❹ 幼兒迷宮游戲設計案例
你看看這個吧!!!直接可以找你需要的東西!!!
❺ VC++課程設計,迷宮游戲,高手進
想要復制粘抄貼根本不可能,哥們你也太不厚道了,至少留個郵箱也成啊,弄得發都不知道往哪裡去發。
你直接去網站上看即可,大體的設計程序就是那樣的,對赫夫曼編碼稍作修改即可,我們做過相關的程序,也是根據上面的和教材的提示改編而成的。
http://wenku..com/view/c6d33cd276a20029bd642d57.html
希望對你有幫助,給分~ ~
❻ 絕對迷宮格林童話七把鑰匙與樂園的少女的游戲介紹
據日本游戲發行商Views Corporation公司日前發布的新聞稿中表示,將預定於2010年夏季在PSP掌機上推出一款由日本知名女性向游戲開發公司Karin Entertainment(花梨互動娛樂)所開發製作的女性向(游戲中登場的角色都是長得清新帥氣的帥哥!)戀愛AVG新作:《絕對迷宮格林童話:七把鑰匙與樂園的少女》(Zettai Meikyuu Grimm: Nanatsu no Kagi to Rakuen no Otome)。目前本作的官方網站也已正式開通,並且放了游戲的相關信息與最新畫面,供各位玩家參考。 PSP版《絕對迷宮格林童話:七把鑰匙與樂園的少女》(Zettai Meikyuu Grimm: Nanatsu no Kagi to Rakuen no Otome)以大家所熟知的《格林童話》故事為背景,改編成的一款女性向戀愛冒險游戲。其世界觀比較獨特,有點類似於《王國之心》(Kingdom Hearts)的童話世界。
而在游戲模式方面,採取讓玩家們閱讀文章來進行故事的傳統章節的形式來進行。而為了增加游戲緊張感,在系統中還特別針對選擇項目加入時間限制等設定,玩家必須在限定時間內快速做出選擇,藉此選擇故事之後的走向與發展路線。此外在游戲里,還追加了100張以上的戀愛事件CG畫面,加上豐富的角色配音語音演出,帶領玩家們一起進入這個奇幻的童話世界之旅。 新作《絕對迷宮格林童話:七把鑰匙與樂園的少女》的故事設定方面,描述在很久以前,有一個非常喜歡聽童話故事,又有點迷糊女孩子海麗艾塔·格林與她的三位格林表兄弟們一起居住在村子裡,過著和平寧靜的生活。
但是在某天,當夢見自己在森林中迷路的她醒來的時候,發現世界變得空盪盪的,不管是家裡還是村子裡,竟然全都沒半個人在!唯一還留在村子裡的,只有自己跟格林的弟弟路德維希兩人而已。兩人在地下室里找到哥哥所留下的研究日記,並從中得知世界已發生變異,而最重要得關鍵,就是路德維希身上所帶的鑰匙而已。
就這樣,兩人一起出發展開旅程,希望能找回其他的兄弟們,並在旅行途中與小紅帽(男的)、長發公主、青蛙王子等童話出現的人物們相遇,而且這些角色身上也都有著同樣的鑰匙,只有集齊七把鑰匙,才能夠拯救希望樂園。而這些神秘的鑰匙也將引導她們一起揭開事件的真相,究竟海麗艾塔她們能否真能解開這一切呢?而最終等待著她們的又會是什麼呢?這些都有待玩家們在游戲中一一探索…… 1.海麗艾塔·格林(Henrietta Grimm):又名:亨利艾塔·格林;
配音:伊瀨茉莉也;
簡介:本作女主角,年齡為15歲,目前和格林兄弟的老三路德維希一起旅行中,雖然可以叫出召喚獸,不過因為她等級很低又很迷糊,因此幾乎叫不出召喚獸來,也幫不上什麼忙,只能用格林家老大送的魔法書來戰斗。被女神布倫希德選為【樂園的少女】,是七把金鑰匙的【鎖】。 2.路德維希·艾米爾·格林(Ludwig Emil Grimm):
配音:水島大宙;
簡介:海麗艾塔青梅竹馬的好朋友,年齡16歲,經常跟海麗艾塔吵架。擁有將所繪畫的圖畫現實化的能力,能夠讓繪畫像生物一樣活動,甚至就連他繪畫的金錢也會變成幾乎跟真貨沒兩樣的「假貨」,不過這些圖畫經過一段時間之後都會重新回到紙上。集傲嬌毒舌於一身的俊美小正太。在二哥威廉線末和荊棘王子線末會出現被魔女海勒追求的部分。初次游戲不能玩出end,但可以有sad end。 3.哈默林(Hamelin)
又名:哈梅林;(撲家漢化組的翻譯為:哈梅爾)
配音:寺島拓篤;
簡介:海麗艾塔在旅途中遇到的吹笛手,年齡21歲。雖然是個俊美青年,不過性格卻很愛說謊,而且又馬虎隨便。初次見面時因為女主無意間聽到了他的笛聲而強制女主付演奏費。是個非常厲害的情報販子。擁有能夠通過演奏迷惑他人的能力,能讓聽到他笛音的人順從他的意思。初次可以攻略出end,不過要true end 就得打完魔王線以後了。 4.小紅帽(卡羅茨·夏倫):
配音:柿原徹也;
簡介:雖然乍看之下是個可愛的少年,但氣質卻很粗暴,而且很不會看場合氣氛。有著他人所無法比擬的嗅覺與腕力,不但能夠使用鐵拳打碎岩石,就連好幾公里外燒肉的香味都可以聞得出來,目前正在追尋殺害祖母的「大灰狼」。真實身份是狼男,結尾處會長出耳朵和尾巴,並且有點向狗狗的方向轉化。 5.長發公主(Rapunzel)(拉芬賽爾):
配音:阿澄佳奈;
簡介:海麗艾塔在旅途中所遇到,被魔女關在塔上的少女。有著比身高還長好幾倍的美麗金發,對魔女的世界非常熟悉,雖然也有著不知世事的一面,不過跟海麗艾塔關系很好。 是個嚴重的宅女,對漫畫游戲DVD還有Drama之類的有嚴重的興趣。最初很討厭魔法修行,但實際上對魔法非常有天賦。後來因為要保護女主的關系而變得非常強大,冒著生命危險把只看過一遍的禁術使用出來。 6.茨姬:
配音:水原薫;
簡介:就是格林童話里的【玫瑰公主(即格林版睡美人)】因為魔女的詛咒而陷入一百年的永久沉睡當中的公主,雖然因為王子的親吻而醒來,不過卻不想承認自己跟青蛙接吻的事實。F cup,抖S,兄控。在路德維希的結局中出現了【和拉芬賽爾一起強制召集了全大陸的王子進行選親】的情況。可見其女王本質。第一次玩不出場。 7.青蛙王子:
配音:岸尾大輔(岸尾だいすけ);
簡介:因為詛咒而被變成青蛙模樣的王子。其實他本人是個非常有風度的紳士,總是以女性優先的浪漫主義者,雖然說只要接吻就可以變回人類,不過卻一直遇不到那個正確的接吻對象……美麗,溫文爾雅,知書達理,文武雙全。為了拯救國家而主動將自己獻給魔王,結果被魔王詛咒變成了青蛙。他的親吻具有一次的喚醒功效。與女性接吻後可以變回人類模樣,維持時間和吻的真愛度有關。(如果不是荊棘公主線或青蛙王子線)被荊棘公主纏著,結尾處持續逃難中…… 8.茨之王子:
配音:諏訪部順一
簡介:茨姬的哥哥,由於承接了妹妹所受到詛咒,因此雖然個城堡的人都蘇醒,他還是依然一個人繼續沉睡著,是個只有當妹妹遇到危機的時候,才會借過荊棘具現化的最強王子。據說在其沉睡五百年中持續隨意在冥界和人間來往還持續擾亂冥界治安,數次被趕出來。 9.威廉·卡爾·格林(Wilhelm Carl Grimm):
配音:平川大輔;
簡介:在格林兄弟中排行老二,雖然對身為長男的雅各布非常尊敬,但偶爾也在想著如何改善雅各布內心的黑暗暴力。由於本身的博士氣質加上又很聰明,因此經常在各方面幫助兄長解決問題。被魔女海勒深深追逐著。是指派魔女海勒給女主搗亂的元兇。不過貌似也是為了欺騙奧丁才出此下策。 10.雅各布·格林(Jacob Grimm):
配音:成田劍;
簡介:格林兄弟的老大,從小就守護著海麗艾塔,有著比任何人都還要更加強烈的研究心與強大的力量,常為了研究的關系把威廉跟家裡都掏空,但在他的內心深處彷佛隱藏著些什麼似的,目前失蹤中。最後被魔王奧丁俯身,與魔王一起被毀掉。掌握著最後一把金鑰匙。 11.魔女:
配音:吉岡麻耶(白雪公主也是這人);
簡介:將毒蘋果交給白雪公主,也對茨姬下詛咒等等的萬惡根源,其恐怖的魔法常對海麗艾塔一行人造成很大災難。非常喜歡帥哥、甜點、惡作劇。是魔女秋瑪的好朋友。 12.狐狸/夢魘:
配音:藤原佑規;
狐狸簡介:非常狡猾又聰明的狐狸,海麗艾塔一行人常因為它而遇到倒霉麻煩的事情。
夢魔簡介:遊走在女孩子夢中,幻化成女孩子思慕之人的樣子為女孩子提供夢中的服務。以吞噬女孩子的夢為生,很喜歡女主。小的時候曾經以小貓阿爾的姿態和女主生活過,後來因為堅持不吃女主的夢導致快要餓死而變回原形,最後被大哥趕出家門。在ed線最終為了保護女主而與魔王在夢中搏鬥,給女主製造了攻擊機會。最後變成了女主魔法書中的一幅畫,畫中對夢魔的解釋是:又稱【月之王子】,具有抵禦噩夢的力量。sad ed和ed都有cg收,而且個人覺得兩個結局都挺不錯,都很感人。 13.大灰狼:
配音:橫田宏一;
簡介:粗暴又凶惡,總是狙擊著獵物的壞蛋,跟狡猾狐狸一樣都是海麗艾塔一行人災禍的根源。 另外,在PSP版《絕對迷宮格林童話:七把鑰匙與樂園的少女》中將會追加原創新事件CG動畫等,這些動畫都將以全語音方式演出,相信語音部分也不會讓玩家們失望的。
PSP新作《絕對迷宮格林童話:七把鑰匙與樂園的少女》的原畫請來了著名插畫家,使得游戲的登場人物表情豐富,個性鮮明,喜歡這類型游戲的玩家不妨嘗試一下,一定會帶給你美好的回憶。游戲目前預定2010年4月28日發售,普通版售價為6,090日元(含稅價),豪華版售價為8,190日元(含稅價)。有喜歡類戀愛冒險類的女性玩家朋友們不可錯過本作。
❼ 有一種游戲是練平衡的一個珠子在迷宮里走來走去的
一些泡泡水的蓋子上有,或者尺子上也有
❽ 幼兒園立體迷宮通道怎麼設計小班游戲
走迷宮,本來走迷宮是指結構復雜、道路難辨,進去後不容易找到出路的建築物。走迷宮據說世界上最古老的迷宮是古希臘神話中的米諾斯王官。走迷宮的另一種含義是指一種鍛煉人類智慧的游戲。走迷宮本課題的出發點是引導學生大膽想像與創造,運用描繪、設計、製作等多種造型活動,表現出自己獨特的平面的或者立體的迷宮,藉以釋放學生對奧秘領域的好奇之心、探索之願。 屬於設計·應用領域,有兩個學習活動。一是平面作業,設計一幅有趣的迷宮圖。二是立體作業,嘗試用多種材料,運用切挖、塗繪、插接、粘合等多種方法製作一個獨具個性的迷宮,並和同學一起玩一玩,看看誰的製作更巧妙。 活動一:平面的迷宮圖主要有兩種。一種是由各種長長短短、曲直不同的線條圍隔而成的格局圖;一種是畫面不僅有曲折的路線,而且還配有相應的背景。它既是一個迷宮,也是一幅漂亮的風景畫或者場景畫。這種迷宮圖的設計不僅培養學生的畫面造型能力、色彩搭配能力,還能引導學生注意設計與功用的關系。教材上提供了兩個迷宮的格局圖,它可用於輔助教學,作為導入的范圖,激發學生學習的興趣。 活動二:課業形式是製作一個立體迷宮,培養學生的動手能力,引導學生進行有序的設計和製作,豐富學生的視覺和觸覺經驗。立體迷宮的路徑可以在同一平面上,也可以在不同的平面上,即路徑有高低起伏。在製作手法上,同一平面的立體迷宮主要是把有關的障礙物、背景變成立體的。要考慮好迷宮的規劃與布局,讓所有的立體形都協調地穿插在路徑的刷邊。 立體迷宮是一種玩具,將路徑設計成可以變換的形式,使得玩的價值更大。這是一個教學的難點。教材上提供了兩個不同形式的迷宮。一個是紙板城堡迷宮,一個是泡沫塑料板迷宮。不管是哪種形式的迷宮,顏色處理都很關鍵。要注意背景與路徑的色彩對比要鮮明。泡沫塑料板很吸顏色,顏料要上得厚重,少加水。 學習屋的設置是訓練學生觀察力的,這一點與玩迷宮游戲有異曲同工之妙,可以作為課後的練習。 二、教學目標 ◆能大膽想像與創造,注意設計與功用的關系,運用多種造型方法表現出一個平面的或立體的迷宮。 ◆收集有關迷宮的資料,了解它的文化和歷史以及造型特點。 ◆收集多種材料,掌握不同材料和工具的使用方法。 ◆養成有序地製作的習慣,培養學生的合作精神。 三、教學思路 走迷宮是一個新的教學題材,學生對其有著濃厚的興趣,但學生在創作時會面臨一些困難,如:如何處理好通路、岔路和死路的關系,障礙物如何設置,背景如何添畫,總之就是如何處理設計與功用的關系。因此在設計教學程序時,教師應對學生進行從認識迷宮過渡到分析迷宮,再到自己設計迷宮的指導。設計時可以這樣考慮:體驗迷宮一了解知識一分析方法一設計創作一評析作品。 教師的指導作用將在分析方法環節中得到重要發揮。這幾點是教師和學生必須討論到的: 一、迷宮圖的構成,可以通過識辨幾張圖片進行啟發。 二、迷宮圖的設計步驟。大約有七步:1.構思主題。2.勾畫一條路徑單線,暫定為通道。3.添畫單線岔路。4.單線變雙線。5.在岔道上定障礙物位置,使之成為死路,並檢查路線是否合理。6.添畫景物。7.上色。在這個指導過程中,談話法、演示法佔主導地位。 在設計創作時,教師的個別指導與點撥對學生的幫助很大,可以採用單人創作或幾人合作的形式。評析作品的形式可多樣。教師要放手讓學生介紹自己的創作理念,注重學生自我經驗的建構。 活動二是做立體的迷宮。教學重點是引導學生將多種材料合理地綜合運用。這是一個富有研究價值的學習內容,學生將通過研究與討論了解立體迷宮的構造、可以使用的材料、製作的步驟以及需要注意的事項,並且,這也是一個很好的合作學習的內容。教學程序可以設計成:呈現目標一提出問題一解決問題一合作表現一欣賞評價。呈現目標階段採用的導入方法有:欣賞法、游戲法、談話法等。當學生有了間接的或直觀的感受後,教師拋出問題,你認為製作一個立體迷宮需要考慮哪些問題。問題出現後,讓學生在相互的討論中找出問題所在,即:一、構造。二、材料。三、技術。教師再和學生一起分析討論解決問題的方案。 對於這樣一個步驟頗多、方法多樣、涉及的工具材料又比較雜的情況,採用小組合作的方法比較適宜,但是怎樣讓合作更具實效性、不流於形式,這就需要教師給予學法的指導,向學生介紹好的合作方法。在欣賞評價階段里,教師應鼓勵學生自我推薦,介紹創作過程中的設計想法和一些特別的處理方法,使評價階段同時成為學生新的學習機會。 四、教學選擇 活動一主要是採用繪畫的方法來表現,凡是可以用於平面繪畫的材料都可以運用。活動二是製作立體迷宮,製作時可以自己選擇工具材料。教材上紙板城堡迷宮的工具材料有:包裝箱、彩色筆、鉛筆、工具刀、乳白膠、滾珠等。泡沫塑料板迷宮的工具材料有:泡沫塑料板、水粉畫具、牙簽、小木片(做橋梁)、線繩(扎吊橋用)、彩紙、工具刀等。如果要製作高低起伏的迷宮路徑,可以採用陶泥、橡皮泥、紙泥等可塑性比較強的材料,在平的底板上堆砌出來。如果要採用大型作業的表現形式,城市和農村學校都可選擇在操場上繪制或製作。如果有沙坑,這也是一個不錯的作業場所。活動二最好安排兩個課時,讓學生的活動時間更為充分,作品的完整性更強。 五、教學建議 1.課前要安排學生准備一些製作的工具與材料,查找迷宮的有關資料。 2.在繪制平面的迷宮時,勾畫的單線不可過分追求復雜,否則無法加為雙線。勾畫雙線後,道路分岔口的界線要清晰,不可模糊。如果是上下交叉的路線,就一定注意運用遮擋法,清楚地呈現上下兩層。路徑兩邊要添畫形象的景物,使景物與路徑呈現繁與簡的對比之美。
❾ 寶寶的玩迷宮小游戲有哪些目的
玩迷宮:游戲目的:調動幼兒的積極性,養成良好的注意力。所需道具:迷宮圖。
跟我專一起這屬樣做:1.取出迷宮圖,放到桌子上。
2.讓幼兒想辦法走出迷宮。
游戲延伸:可以和媽媽一起玩,看看誰最先走出迷宮。游戲提示:開始的時候,可以找些簡單的迷宮圖,隨著幼兒年齡的增長,迷宮的難度可以逐漸加大。