⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 C
📖 第 1 页 / 共 2 页
字号:
			printf("If you were to quit now, you would score");			printf(" %d out of a possible ",score());			printf("%d.",mxscor);			scorng=FALSE;			gaveup=yes(143,54,54);			if (gaveup) done(2);			goto l2012;		    case 25:                    /* foo: 8250            */			k=vocab(wd1,3);			spk=42;			if (foobar==1-k) goto l8252;			if (foobar!=0) spk=151;			goto l2011;		l8252:  foobar=k;			if (k!=4) goto l2009;			foobar=0;			if (place[eggs]==plac[eggs]				||(toting(eggs)&&loc==plac[eggs])) goto l2011;			if (place[eggs]==0&&place[troll]==0&&prop[troll]==0)				prop[troll]=1;			k=2;			if (here(eggs)) k=1;			if (loc==plac[eggs]) k=0;			move(eggs,plac[eggs]);			pspeak(eggs,k);			goto l2012;		    case 26:                    /* brief=8260           */			spk=156;			abbnum=10000;			detail=3;			goto l2011;		    case 27:                    /* read=8270            */			if (here(magzin)) obj=magzin;			if (here(tablet)) obj=obj*100+tablet;			if (here(messag)) obj=obj*100+messag;			if (closed&&toting(oyster)) obj=oyster;			if (obj>100||obj==0||dark(0)) goto l8000;			goto l9270;		    case 30:                    /* suspend=8300         */			spk=201;			if (demo) goto l2011;			printf("I can suspend your adventure for you so");			printf(" you can resume later, but\n");			printf("you will have to wait at least");			printf(" %d minutes before continuing.",latncy);			if (!yes(200,54,54)) goto l2012;			datime(&saved,&savet);			setup = -1;			ciao(argv[0]);			continue;		    case 31:                    /* hours=8310           */			printf("Colossal cave is closed 9am-5pm Mon ");			printf("through Fri except holidays.\n");			goto l2012;		    default: bug(23);		}	l4090:		switch(verb)		{   case 1:                     /* take = 9010          */	l9010:          switch(trtake())			{   case 2011: goto l2011;			    case 9220: goto l9220;			    case 2009: goto l2009;			    case 2012: goto l2012;			    default: bug(102);			}	l9020:      case 2:                     /* drop = 9020          */			switch(trdrop())			{   case 2011: goto l2011;			    case 19000: done(3);			    case 2012: goto l2012;			    default: bug(105);			}	l9030:      case 3:			switch(trsay())			{   case 2012: goto l2012;			    case 2630: goto l2630;			    default: bug(107);			}	l9040:      case 4:  case 6:            /* open, close          */			switch(tropen())			{   case 2011: goto l2011;			    case 2010: goto l2010;			    default: bug(106);			}		    case 5: goto l2009;         /* nothing              */		    case 7:                     /* on   9070            */	l9070:          if (!here(lamp))  goto l2011;			spk=184;			if (limit<0) goto l2011;			prop[lamp]=1;			rspeak(39);			if (wzdark) goto l2000;			goto l2012;		    case 8:                     /* off                  */	l9080:          if (!here(lamp)) goto l2011;			prop[lamp]=0;			rspeak(40);			if (dark(0)) rspeak(16);			goto l2012;		    case 9:                     /* wave                 */			if ((!toting(obj))&&(obj!=rod||!toting(rod2)))				spk=29;			if (obj!=rod||!at(fissur)||!toting(obj)||closng)				goto l2011;			prop[fissur]=1-prop[fissur];			pspeak(fissur,2-prop[fissur]);			goto l2012;		    case 10: case 11: case 18:  /* calm, walk, quit     */		    case 24: case 25: case 26:  /* score, foo, brief    */		    case 30: case 31:           /* suspend, hours       */			     goto l2011;	l9120:      case 12:                    /* kill                 */			switch(trkill())			{   case 8000: goto l8000;			    case 8: goto l8;			    case 2011: goto l2011;			    case 2608: goto l2608;			    case 19000: done(3);			    default: bug(112);			}	l9130:      case 13:                    /* pour                 */			if (obj==bottle||obj==0) obj=liq(0);			if (obj==0) goto l8000;			if (!toting(obj)) goto l2011;			spk=78;			if (obj!=oil&&obj!=water) goto l2011;			prop[bottle]=1;			place[obj]=0;			spk=77;			if (!(at(plant)||at(door))) goto l2011;			if (at(door))			{       prop[door]=0;   /* 9132                 */				if (obj==oil) prop[door]=1;				spk=113+prop[door];				goto l2011;			}			spk=112;			if (obj!=water) goto l2011;			pspeak(plant,prop[plant]+1);			prop[plant]=(prop[plant]+2)% 6;			prop[plant2]=prop[plant]/2;			k=null;			goto l8;		    case 14:                    /* 9140 - eat           */			if (obj==food) goto l8142;			if (obj==bird||obj==snake||obj==clam||obj==oyster			    ||obj==dwarf||obj==dragon||obj==troll			    ||obj==bear) spk=71;			goto l2011;	l9150:      case 15:                    /* 9150 - drink         */			if (obj==0&&liqloc(loc)!=water&&(liq(0)!=water				||!here(bottle))) goto l8000;			if (obj!=0&&obj!=water) spk=110;			if (spk==110||liq(0)!=water||!here(bottle))				goto l2011;			prop[bottle]=1;			place[water]=0;			spk=74;			goto l2011;		    case 16:                    /* 9160: rub            */			if (obj!=lamp) spk=76;			goto l2011;		    case 17:                    /* 9170: throw          */			switch(trtoss())			{   case 2011: goto l2011;			    case 9020: goto l9020;			    case 9120: goto l9120;			    case 8: goto l8;			    case 9210: goto l9210;			    default: bug(113);			}		    case 19: case 20:           /* 9190: find, invent   */			if (at(obj)||(liq(0)==obj&&at(bottle))				||k==liqloc(loc)) spk=94;			for (i=1; i<=5; i++)				if (dloc[i]==loc&&dflag>=2&&obj==dwarf)					spk=94;			if (closed) spk=138;			if (toting(obj)) spk=24;			goto l2011;	l9210:      case 21:                    /* feed                 */			switch(trfeed())			{   case 2011: goto l2011;			    default: bug(114);			}	l9220:      case 22:                    /* fill                 */			switch(trfill())			{   case 2011: goto l2011;			    case 8000: goto l8000;			    case 9020: goto l9020;			    default: bug(115);			}	l9230:      case 23:                    /* blast                */			if (prop[rod2]<0||!closed) goto l2011;			bonus=133;			if (loc==115) bonus=134;			if (here(rod2)) bonus=135;			rspeak(bonus);			done(2);	l9270:      case 27:                    /* read                 */			if (dark(0)) goto l5190;			if (obj==magzin) spk=190;			if (obj==tablet) spk=196;			if (obj==messag) spk=191;			if (obj==oyster&&hinted[2]&&toting(oyster)) spk=194;			if (obj!=oyster||hinted[2]||!toting(oyster)				||!closed) goto l2011;			hinted[2]=yes(192,193,54);			goto l2012;	l9280:      case 28:                    /* break                */			if (obj==mirror) spk=148;			if (obj==vase&&prop[vase]==0)			{       spk=198;				if (toting(vase)) drop(vase,loc);				prop[vase]=2;				fixed[vase]= -1;				goto l2011;			}			if (obj!=mirror||!closed) goto l2011;			rspeak(197);			done(3);	l9290:      case 29:                    /* wake                 */			if (obj!=dwarf||!closed) goto l2011;			rspeak(199);			done(3);		    default: bug(24);		}	l5000:		obj=k;		if (fixed[k]!=loc && !here(k)) goto l5100;	l5010:  if (*wd2!=0) goto l2800;		if (verb!=0) goto l4090;		printf("What do you want to do with the %s?\n",wd1);		goto l2600;	l5100:  if (k!=grate) goto l5110;		if (loc==1||loc==4||loc==7) k=dprssn;		if (loc>9&&loc<15) k=entrnc;		if (k!=grate) goto l8;	l5110:  if (k!=dwarf) goto l5120;		for (i=1; i<=5; i++)			if (dloc[i]==loc&&dflag>=2) goto l5010;	l5120:  if ((liq(0)==k&&here(bottle))||k==liqloc(loc)) goto l5010;		if (obj!=plant||!at(plant2)||prop[plant2]==0) goto l5130;		obj=plant2;		goto l5010;	l5130:  if (obj!=knife||knfloc!=loc) goto l5140;		knfloc = -1;		spk=116;		goto l2011;	l5140:  if (obj!=rod||!here(rod2)) goto l5190;		obj=rod2;		goto l5010;	l5190:  if ((verb==find||verb==invent)&&*wd2==0) goto l5010;		printf("I see no %s here\n",wd1);		goto l2012;	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -