Digital的Unix操作系统VAX 4.2源码

源代码在线查看: done.c

软件大小: 51179 K
上传用户: zhuying0000
关键词: Digital Unix 4.2 VAX
下载地址: 免注册下载 普通下载 VIP

相关代码

				#				/*      Re-coding of advent in C: termination routines                  */								static char sccsid[] = "	done.c	4.1	82/05/11	";												# include "hdr.h"								score()                                         /* sort of like 20000   */				{       register int scor,i;					mxscor=scor=0;					for (i=50; i					{	if (ptext[i].txtlen==0) continue;						k=12;						if (i==chest) k=14;						if (i>chest) k=16;						if (prop[i]>=0) scor += 2;						if (place[i]==3&&prop[i]==0) scor += k-2;						mxscor += k;					}					scor += (maxdie-numdie)*10;					mxscor += maxdie*10;					if (!(scorng||gaveup)) scor += 4;					mxscor += 4;					if (dflag!=0) scor += 25;					mxscor += 25;					if (closng) scor += 25;					mxscor += 25;					if (closed)					{       if (bonus==0) scor += 10;						if (bonus==135) scor += 25;						if (bonus==134) scor += 30;						if (bonus==133) scor += 45;					}					mxscor += 45;					if (place[magzin]==108) scor++;					mxscor++;					scor += 2;					mxscor += 2;					for (i=1; i						if (hinted[i]) scor -= hints[i][2];					return(scor);				}								done(entry)     /* entry=1 means goto 13000 */  /* game is over         */				int entry;      /* entry=2 means goto 20000 */ /* 3=19000 */				{       register int i,sc;					if (entry==1) mspeak(1);					if (entry==3) rspeak(136);					printf("\n\n\nYou scored %d out of a ",(sc=score()));					printf("possible %d using %d turns.\n",mxscor,turns);					for (i=1; i						if (cval[i]>=sc)						{       speak(&ctext[i]);							if (i==clsses-1)							{       printf("To achieve the next higher rating");								printf(" would be a neat trick!\n\n");								printf("Congratulations!!\n");								exit(0);							}							k=cval[i]+1-sc;							printf("To achieve the next higher rating, you need");							printf(" %d more point",k);							if (k==1) printf(".\n");							else printf("s.\n");							exit(0);						}					printf("You just went off my scale!!!\n");					exit(0);				}												die(entry)                                      /* label 90             */				int entry;				{       register int i;					if (entry != 99)					{       rspeak(23);						oldlc2=loc;					}					if (closng)                             /* 99                   */					{       rspeak(131);						numdie++;						done(2);					}					yea=yes(81+numdie*2,82+numdie*2,54);					numdie++;					if (numdie==maxdie || !yea) done(2);					place[water]=0;					place[oil]=0;					if (toting(lamp)) prop[lamp]=0;					for (i=100; i>=1; i--)					{       if (!toting(i)) continue;						k=oldlc2;						if (i==lamp) k=1;						drop(i,k);					}					loc=3;					oldloc=loc;					return(2000);				}											

相关资源