OSDN Git Service

Kuwaさんより、タイルグラフィックを外部のリソースファイルとして分離。
authormogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Fri, 7 Jun 2002 09:18:48 +0000 (09:18 +0000)
committermogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Fri, 7 Jun 2002 09:18:48 +0000 (09:18 +0000)
src/main-mac.c

index f489a7b..708e888 100644 (file)
@@ -502,6 +502,7 @@ static int soundchoice[] = {
 
 static int                     soundmode[8];
 
+static int ext_graf = 0;
 
 
 
@@ -2722,6 +2723,70 @@ static void init_sound( void )
        }
 }
 
+static void init_graf( void )
+{
+       int err, i;
+       DirInfo pb;
+       SignedByte              permission = fsRdPerm;
+       pascal short    ret;
+       
+       Handle handle;
+       Str255 graf;
+
+       /* Descend into "lib" folder */
+       pb.ioCompletion = NULL;
+       pb.ioNamePtr = "\plib";
+       pb.ioVRefNum = app_vol;
+       pb.ioDrDirID = app_dir;
+       pb.ioFDirIndex = 0;
+
+       /* Check for errors */
+       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
+
+       /* Success */
+       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+       {
+               /* Descend into "lib/xtra" folder */
+               pb.ioCompletion = NULL;
+               pb.ioNamePtr = "\pxtra";
+               pb.ioVRefNum = app_vol;
+               pb.ioDrDirID = pb.ioDrDirID;
+               pb.ioFDirIndex = 0;
+
+               /* Check for errors */
+               err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
+                       
+               /* Success */
+               if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+               {
+                       /* Descend into "lib/xtra/graf" folder */
+                       pb.ioCompletion = NULL;
+                       pb.ioNamePtr = "\pgraf";
+                       pb.ioVRefNum = app_vol;
+                       pb.ioDrDirID = pb.ioDrDirID;
+                       pb.ioFDirIndex = 0;
+
+                       /* Check for errors */
+                       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
+
+                       /* Success */
+                       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+                       {
+                               ret = HOpenResFile( app_vol , pb.ioDrDirID , "\pgraf.rsrc" , permission );
+                               if (ret != -1)
+                               {
+                                       ext_graf = 1;
+                                       
+                                       /* Obtain resource XXX XXX XXX */
+                                       handle = Get1NamedResource('PICT', graf);
+                                       if ( handle == NULL || ext_graf )
+                                               handle = GetNamedResource('PICT', graf);
+                               }
+                       }
+               }
+       }
+}
+
 #ifdef CHUUKEI
 /*
 
@@ -5281,6 +5346,8 @@ BackColor(blackColor);
 
        init_sound();
 
+       init_graf();
+       
        /* Hack -- process all events */
        while (CheckEvents(TRUE)) /* loop */;