亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? d_main.c

?? 游戲類程序源代碼---WinDoom 3D源程序.zip
?? C
?? 第 1 頁 / 共 4 頁
字號:
	
	if (p<myargc-1)
	    scale = atoi (myargv[p+1]);
	if (scale < 10)
	    scale = 10;
	if (scale > 400)
	    scale = 400;
	//printf ("turbo scale: %i%%\n",scale);
	forwardmove[0] = forwardmove[0]*scale/100;
	forwardmove[1] = forwardmove[1]*scale/100;
	sidemove[0] = sidemove[0]*scale/100;
	sidemove[1] = sidemove[1]*scale/100;
    }
    
    // add any files specified on the command line with -file wadfile
    // to the wad list
    //
    // convenience hack to allow -wart e m to add a wad file
    // prepend a tilde to the filename so wadfile will be reloadable
    p = M_CheckParm ("-wart");
    if (p)
    {
	myargv[p][4] = 'p';     // big hack, change to -warp

	// Map name handling.
	switch (gamemode )
	{
	  case shareware:
	  case retail:
	  case registered:
	    sprintf (file,"~"DEVMAPS"E%cM%c.wad",
		     myargv[p+1][0], myargv[p+2][0]);
//	    printf("Warping to Episode %s, Map %s.\n",
//		   myargv[p+1],myargv[p+2]);
	    sprintf(MsgText, "Warping to Episode %s, Map %s.\n",
		   myargv[p+1],myargv[p+2]);
    WriteDebug(MsgText);
	    break;
	    
	  case commercial:
	  default:
	    p = atoi (myargv[p+1]);
	    if (p<10)
	      sprintf (file,"~"DEVMAPS"cdata/map0%i.wad", p);
	    else
	      sprintf (file,"~"DEVMAPS"cdata/map%i.wad", p);
	    break;
	}
	D_AddFile (file);
    }
	
    p = M_CheckParm ("-file");
    if (p)
    {
	// the parms after p are wadfile/lump names,
	// until end of parms or another - preceded parm
	modifiedgame = true;            // homebrew levels
	while (++p != myargc && myargv[p][0] != '-')
	    D_AddFile (myargv[p]);
    }

    p = M_CheckParm ("-playdemo");
    if (!p)
       {
         p = M_CheckParm ("-playdemo2");
         demotype = DEMO_II;
       }
    else
       {
        demotype = DEMO_I;
       }

    if (!p)
       {
	    p = M_CheckParm ("-timedemo");
        demotype = DEMO_I;
       }

    if (!p)
       {
	    p = M_CheckParm ("-timedemo2");
        demotype = DEMO_II;
       }

    if (p && p < myargc-1)
       {
        if (demotype == DEMO_I)
           {
	        sprintf (file,"%s.lmp", myargv[p+1]);
	        D_AddFile (file);

	        //printf("Playing demo %s.lmp.\n",myargv[p+1]);
	        sprintf(MsgText, "Playing demo %s.lmp.\n",myargv[p+1]);
            WriteDebug(MsgText);
           }
        else
           {
	        sprintf(MsgText, "Playing demo II %s.dem.\n",myargv[p+1]);
            WriteDebug(MsgText);
           }
       }
    
    // get skill / episode / map from parms
    startskill = sk_medium;
    startepisode = 1;
    startmap = 1;
    autostart = false;

		
    p = M_CheckParm ("-skill");
    if (p && p < myargc-1)
    {
	startskill = myargv[p+1][0]-'1';
	autostart = true;
    }

    p = M_CheckParm ("-episode");
    if (p && p < myargc-1)
    {
	startepisode = myargv[p+1][0]-'0';
	startmap = 1;
	autostart = true;
    }
	
    p = M_CheckParm ("-timer");
    if (p && p < myargc-1 && deathmatch)
    {
	int     time;
	time = atoi(myargv[p+1]);
// Change over to buffered output...
	//printf("Levels will end after %d minute",time);
	sprintf(MsgText, "Levels will end after %d minute",time);
	if (time>1)
	    strcat(MsgText, "s");
	    //printf("s");
	strcat(MsgText, ".\n");
	//printf(".\n");
    WriteDebug(MsgText);
    }

    p = M_CheckParm ("-avg");
    if (p && p < myargc-1 && deathmatch)
	WriteDebug("Austin Virtual Gaming: Levels will end after 20 minutes\n");

    p = M_CheckParm ("-warp");
    if (p && p < myargc-1)
    {
	if (gamemode == commercial)
	    startmap = atoi (myargv[p+1]);
	else
	{
	    startepisode = myargv[p+1][0]-'0';
	    startmap = myargv[p+2][0]-'0';
	}
	autostart = true;
    }

    
    // init subsystems
    //printf ("V_Init: allocate screens.\n");
    WriteDebug("V_Init: allocate screens.\n");
    V_Init ();

    //printf ("M_LoadDefaults: Load system defaults.\n");
    WriteDebug("M_LoadDefaults: Load system defaults.\n");
    M_LoadDefaults ();              // load before initing other systems

    //printf ("Z_Init: Init zone memory allocation daemon. \n");
    WriteDebug("Z_Init: Init zone memory allocation daemon. \n");
    Z_Init ();

    //printf ("W_Init: Init WADfiles.\n");
    WriteDebug("W_Init: Init WADfiles.\n");
    W_InitMultipleFiles (wadfiles);
    
    if ((gamemode == retail) || (gamemode == registered))
       {
        char name[10][8] = { "e4m1","e4m2","e4m3","e4m4","e4m5","e4m6","e4m7","e4m8","e4m9", "m_epi4" };
        int i;
        WriteDebug("Checking for Ultimate Doom...\n");
        gamemode = retail;
        for (i = 0;i < 10; i++)
          {
            if (W_CheckNumForName(name[i]) < 0)
               {
                gamemode = registered;
                break;
               }
           }
        if (gamemode == registered)
            WriteDebug("Normal Doom WAD file...\n");
        else
            WriteDebug("Ultimate Doom WAD - fourth episode enabled...\n");
       }

    switch ( gamemode )
    {
      case retail:
	sprintf (title,
		 "                         "
		 "The Ultimate DOOM Startup v%i.%i"
		 "                           ",
		 VERSION/100,VERSION%100);
	break;
      case shareware:
	sprintf (title,
		 "                            "
		 "DOOM Shareware Startup v%i.%i"
		 "                           ",
		 VERSION/100,VERSION%100);
	break;
      case registered:
	sprintf (title,
		 "                            "
		 "DOOM Registered Startup v%i.%i"
		 "                           ",
		 VERSION/100,VERSION%100);
	break;
      case commercial:
       if (plutonia == TRUE)
           sprintf (title, "                   DOOM 2: Plutonia Experiment v%i.%i                        ", VERSION/100,VERSION%100);
       else
       if (tnt == TRUE)
           sprintf (title, "                     DOOM 2: TNT - Evilution v%i.%i                          ", VERSION/100,VERSION%100);
       else
           sprintf (title, "                      DOOM 2: Hell on Earth v%i.%i                           ", VERSION/100,VERSION%100);
	break;
      default:
	sprintf (title,
		 "                     "
		 "Public DOOM - v%i.%i"
		 "                           ",
		 VERSION/100,VERSION%100);
	break;
    }
    
    //printf ("%s\n",title);
    WriteDebug(title);
    WriteDebug("\n");

    // Check for -file in shareware
    if (modifiedgame)
    {
	// These are the lumps that will be checked in IWAD,
	// if any one is not present, execution will be aborted.
	char name[23][8]=
	{
	    "e2m1","e2m2","e2m3","e2m4","e2m5","e2m6","e2m7","e2m8","e2m9",
	    "e3m1","e3m3","e3m3","e3m4","e3m5","e3m6","e3m7","e3m8","e3m9",
	    "dphoof","bfgga0","heada1","cybra1","spida1d1"
	};
	int i;
	
	if ( gamemode == shareware)
	    I_Error("\nYou cannot -file with the shareware "
		    "version. Register!");

	// Check for fake IWAD with right name,
	// but w/o all the lumps of the registered version. 
	if (gamemode == registered)
	    for (i = 0;i < 23; i++)
		if (W_CheckNumForName(name[i])<0)
		    I_Error("\nThis is not the registered version.");
    }
    
    // If additonal PWAD files are used, print modified banner
    if (modifiedgame)
    {
	 //printf (
	    WriteDebug("===========================================================================\n");
	    WriteDebug("ATTENTION:  This version of DOOM has been modified.  If you would like to\n");
	    WriteDebug("get a copy of the original game, call 1-800-IDGAMES or see the readme file.\n");
	    WriteDebug("        You will not receive technical support for modified games.\n");
	    //WriteDebug("                      press enter to continue\n");
	    WriteDebug("===========================================================================\n");
	//    );
	//getchar ();
    }
	

    // Check and print which version is executed.
    switch ( gamemode )
    {
      case shareware:
      case indetermined:
	//printf (
	    WriteDebug("===========================================================================\n");
	    WriteDebug("                                Shareware!\n");
	    WriteDebug("===========================================================================\n");
	//);
	break;
      case registered:
      case retail:
      case commercial:
	//printf (
	    WriteDebug("===========================================================================\n");
	    WriteDebug("                 Commercial product - do not distribute!\n");
	    WriteDebug("         Please report software piracy to the SPA: 1-800-388-PIR8\n");
	    WriteDebug("===========================================================================\n");
	//);
	break;
	
      default:
	// Ouch.
	break;
    }

    //printf ("M_Init: Init miscellaneous info.\n");
    WriteDebug("M_Init: Init miscellaneous info.\n");
    M_Init ();

    //printf ("R_Init: Init DOOM refresh daemon - ");
    WriteDebug("R_Init: Init DOOM refresh daemon - ");
    R_Init ();

    //printf ("\nP_Init: Init Playloop state.\n");
    WriteDebug("\nP_Init: Init Playloop state.\n");
    P_Init ();

    //printf ("I_Init: Setting up machine state.\n");
    WriteDebug("I_Init: Setting up machine state.\n");
    I_Init ();

    //printf ("D_CheckNetGame: Checking network game status.\n");
    WriteDebug("D_CheckNetGame: Checking network game status.\n");
    D_CheckNetGame ();

    //printf ("S_Init: Setting up sound.\n");
    WriteDebug("S_Init: Setting up sound.\n");
    //S_Init (snd_SfxVolume*8, snd_MusicVolume*8 );
    S_Init (snd_SfxVolume, snd_MusicVolume );

    //printf ("HU_Init: Setting up heads up display.\n");
    WriteDebug("HU_Init: Setting up heads up display.\n");
    HU_Init ();

    //printf ("ST_Init: Init status bar.\n");
    WriteDebug("ST_Init: Init status bar.\n");
    ST_Init ();

    //printf ("ST_Init: Init status bar.\n");
    WriteDebug("CO_Init: Init console.\n");
    CO_Init ();
    // check for a driver that wants intermission stats
    p = M_CheckParm ("-statcopy");
    if (p && p<myargc-1)
    {
	// for statistics driver
	extern  void*	statcopy;                            

	statcopy = (void*)atoi(myargv[p+1]);
	//printf ("External statistics registered.\n");
	WriteDebug("External statistics registered.\n");
    }
    
    // start the apropriate game based on parms
    p = M_CheckParm ("-record");
    if (p && p < myargc-1)
    {
	G_RecordDemo (myargv[p+1]);
	autostart = true;
    }
	
    p = M_CheckParm ("-playdemo");
    if (p && p < myargc-1)
    {
	singledemo = true;              // quit after one demo
	G_DeferedPlayDemo (myargv[p+1]);
    return;
//    D_DoomLoop ();  // never returns
    }
	
    p = M_CheckParm ("-playdemo2");
    if (p && p < myargc-1)
    {
	singledemo = true;              // quit after one demo
	if (G_DeferedPlayDemo_II(myargv[p+1]) == true)
    return;
    else
       {
        sprintf(MsgText, "DEMO II [%s.dem] - BAD FILE.\n", myargv[p+1]);
        WriteDebug(MsgText);
       }
//    D_DoomLoop ();  // never returns
    }
	
    p = M_CheckParm ("-timedemo");
    if (p && p < myargc-1)
    {
     WriteDebug("-timedemo\n");
	G_TimeDemo (myargv[p+1]);
    return;
//    D_DoomLoop ();  // never returns
    }
	
    p = M_CheckParm ("-timedemo2");
    if (p && p < myargc-1)
    {
     WriteDebug("-timedemo2\n");
	if (G_TimeDemo_II(myargv[p+1]) == true)
    return;
    else
       {
        sprintf(MsgText, "DEMO II [%s.dem] - BAD FILE.\n", myargv[p+1]);
        WriteDebug(MsgText);
       }
//    D_DoomLoop ();  // never returns
    }
	
    p = M_CheckParm ("-loadgame");
    if (p && p < myargc-1)
    {
	if (M_CheckParm("-cdrom"))
	    sprintf(file, "c:\\doomdata\\"SAVEGAMENAME"%c.dsg",myargv[p+1][0]);
	else
	    sprintf(file, SAVEGAMENAME"%c.dsg",myargv[p+1][0]);
	G_LoadGame (file);
    }
	
    if ( gameaction != ga_loadgame )
    {
	if (autostart || netgame)
	    G_InitNew (startskill, startepisode, startmap);
	else
	    D_StartTitle ();                // start up intro loop

    }
//    D_DoomLoop ();  // never returns
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕av一区二区三区免费看| 日韩一区二区免费视频| 美女网站视频久久| 午夜精品在线视频一区| 五月婷婷久久综合| 蜜臀精品久久久久久蜜臀 | 国产精品高清亚洲| 国产精品毛片高清在线完整版| 国产日韩欧美精品综合| 国产精品毛片无遮挡高清| 中文字幕一区三区| 亚洲国产精品人人做人人爽| 亚洲国产成人精品视频| 日韩av不卡在线观看| 久久不见久久见中文字幕免费| 紧缚奴在线一区二区三区| 国产iv一区二区三区| 色系网站成人免费| 9191成人精品久久| 久久日韩精品一区二区五区| 国产精品久久三| 日韩精品一级二级| 丰满亚洲少妇av| 色老头久久综合| 日韩精品中午字幕| 中文字幕在线不卡国产视频| 五月天亚洲精品| 国产精品综合二区| 欧美日本一区二区三区四区| 日韩欧美在线观看一区二区三区| 久久久久久久精| 五月婷婷欧美视频| 99国产精品99久久久久久| 日韩欧美黄色影院| 一区二区三区丝袜| 国产精品一区二区免费不卡| 欧美天天综合网| 国产精品网曝门| 六月丁香婷婷久久| 欧美午夜在线一二页| 国产欧美一区二区在线观看| 婷婷开心久久网| 91免费国产在线观看| 2024国产精品| 青青草原综合久久大伊人精品优势 | 久久久噜噜噜久久中文字幕色伊伊 | 国产精品一区二区三区四区| 色婷婷av一区二区三区大白胸| 精品日韩欧美在线| 水野朝阳av一区二区三区| 97精品国产露脸对白| 欧美大片在线观看| 无吗不卡中文字幕| 欧美色大人视频| 成人欧美一区二区三区在线播放| 精品一区二区综合| 日韩一区二区三区免费看| 一区二区三区欧美亚洲| 成人黄色在线看| 国产欧美一区二区三区在线老狼| 日本一区中文字幕| 欧美久久久一区| 午夜视频一区在线观看| 在线观看国产一区二区| 综合网在线视频| 91麻豆国产精品久久| 亚洲欧洲精品一区二区三区| 岛国精品在线观看| 国产精品嫩草久久久久| 国产成人午夜精品5599| 久久综合久久99| 国产精品亚洲专一区二区三区| 日韩精品一区二区三区在线| 九九精品视频在线看| 日韩一区二区三区视频在线 | 欧美成人三级电影在线| 精品一区二区在线观看| 精品久久久久久亚洲综合网| 麻豆极品一区二区三区| 精品国产一区二区三区久久影院 | 国产精品免费视频网站| 成人h动漫精品一区二| 亚洲日本在线看| 欧洲一区二区av| 亚洲成av人片在www色猫咪| 欧美系列日韩一区| 麻豆久久久久久| 国产日韩精品一区| 91黄色小视频| 石原莉奈在线亚洲二区| 日韩精品一区二区三区中文不卡| 国产精品 欧美精品| 亚洲人精品午夜| 欧美高清视频一二三区| 激情文学综合插| 亚洲天堂福利av| 欧美日韩aaaaa| 国产美女av一区二区三区| 国产精品国产三级国产aⅴ中文| 懂色中文一区二区在线播放| 一区二区三区四区五区视频在线观看| 欧美色网站导航| 精品亚洲国产成人av制服丝袜| 中文字幕一区二区不卡| 制服丝袜中文字幕一区| 国产精品99久久不卡二区| 一区二区三区在线播| 欧美大片拔萝卜| 97精品国产97久久久久久久久久久久| 亚洲va欧美va天堂v国产综合| 26uuu色噜噜精品一区| 欧美在线不卡视频| 国产一区二区三区蝌蚪| 亚洲一二三区在线观看| 国产日本亚洲高清| 7777精品伊人久久久大香线蕉经典版下载 | 91亚洲资源网| 黑人巨大精品欧美一区| 亚洲免费电影在线| 久久久久久久久久看片| 欧美女孩性生活视频| 高清国产一区二区| 日韩国产精品久久久久久亚洲| 国产欧美一区二区精品性色超碰| 欧美日韩中文字幕一区| 丁香激情综合五月| 久久成人久久爱| 日韩av一区二| 亚洲国产综合视频在线观看| 国产精品每日更新在线播放网址| 日韩欧美国产一二三区| 精品视频一区二区三区免费| 99久久久久久99| 成人免费视频免费观看| 激情文学综合网| 久久精品国产精品亚洲精品| 亚洲国产成人va在线观看天堂| 中文字幕一区二区不卡 | 欧美日韩精品一区视频| 99久久99久久久精品齐齐| 成人做爰69片免费看网站| 精品在线观看视频| 蜜臀av一级做a爰片久久| 亚洲一区二区三区四区在线观看| 成人免费在线视频| 中文字幕在线观看一区二区| 中文成人综合网| 国产精品久久久久久妇女6080| 精品国产乱码久久久久久老虎| 日韩亚洲欧美在线| 日韩欧美一区在线| 337p亚洲精品色噜噜噜| 欧美一区二区视频观看视频| 日韩一级大片在线观看| 91精品国产综合久久蜜臀| 制服丝袜亚洲播放| 欧美丰满一区二区免费视频| 4438x亚洲最大成人网| 91精品国产日韩91久久久久久| 欧美日韩性生活| 欧美一区二区在线免费观看| 欧美一级夜夜爽| 欧美精品一区二区三区蜜臀| 欧美激情一区二区三区| 亚洲乱码精品一二三四区日韩在线| 国产精品久久毛片av大全日韩| 亚洲欧洲国产日韩| 亚洲一区二区三区自拍| 天天操天天色综合| 国产在线麻豆精品观看| 成人久久久精品乱码一区二区三区| 99国产精品久| 欧美高清视频一二三区| 精品99久久久久久| 亚洲天堂中文字幕| 日韩国产成人精品| 国产精品一品二品| 在线观看av不卡| 精品久久久久久综合日本欧美 | 欧美日韩午夜在线视频| 精品少妇一区二区三区在线视频| 国产午夜精品久久久久久免费视| 国产精品欧美极品| 日本欧美肥老太交大片| 国产黄色精品网站| 欧美亚洲精品一区| 久久久国际精品| 亚洲在线视频网站| 国产精品99久久久久久久女警| 色哟哟在线观看一区二区三区| 欧美一区二区三区视频在线 | 久久成人av少妇免费| 不卡av电影在线播放| 欧美一区二区视频免费观看| 中文字幕视频一区| 国产一区二区在线观看视频| 欧美三级日韩在线| 综合欧美亚洲日本| 国产99久久久国产精品潘金| 欧美日韩中文国产|