- registered=0;
-
- /*char tempstring[256];
- sprintf (tempstring, "%s", registrationname);
- long num1;
- long num2;
- long num3;
- long num4;
- long long longnum;
- longnum = MD5_string ( tempstring);
- //longnum = 1111111111111111;
- num1 = longnum/100000000;
- num2 = longnum%100000000;
- sprintf (tempstring, "%d-%d-%d-%d", num1/10000, num1%10000, num2/10000, num2%10000);
- */
-
- FILE *tfile;
- tfile=fopen( ":Data:Sounds:flame.ogg", "rb" );
- if(tfile)
- {
- long num1;
- long num2;
- long long longnum;
- long long longnuma;
- long num1a;
- long num2a;
-
- int numchars;
- funpackf(tfile, "Bb", ®istered);
- if(registered)
- {
- funpackf(tfile, "Bi", &numchars);
- if(numchars>0)
- {
- for(j=0;j<numchars;j++)
- {
- funpackf(tfile, "Bb", ®istrationname[j]);
- }
- registrationname[numchars]='\0';
- funpackf(tfile, "Bi", &num1);
- funpackf(tfile, "Bi", &num2);
- longnum=num2+num1*100000000;
-
- char tempstring[256];
- #if defined(__APPLE__)
- sprintf (tempstring, "%s", registrationname);
- #elif defined(_WIN32) || defined(__linux__)
- sprintf (tempstring, "%s-windows", registrationname);
- #else
- #error Please make sure you have the right registration key stuff here!
- #endif
- longnuma = MD5_string ( tempstring);
- num1a = longnuma/100000000;
- num2a = longnuma%100000000;
- //if(num1a==num1&&num2a==num2)registered=1;
- if(numchars>2)registered=1;
- else registered=0;
- }
- }
- fclose(tfile);
- }
- else registered=0;
-
- accountactive=-1;
-
- sprintf (mapname, ":Data:Users");
- tfile=fopen( mapname, "rb" );
- if(tfile)
- {
- funpackf(tfile, "Bi", &numaccounts);
- funpackf(tfile, "Bi", &accountactive);
- if(numaccounts>0)
- {
- for(i=0;i<numaccounts;i++)
- {
- funpackf(tfile, "Bf", &accountcampaigntime[i]);
- funpackf(tfile, "Bf", &accountcampaignscore[i]);
- funpackf(tfile, "Bf", &accountcampaignfasttime[i]);
- funpackf(tfile, "Bf", &accountcampaignhighscore[i]);
- funpackf(tfile, "Bi", &accountdifficulty[i]);
- funpackf(tfile, "Bi", &accountprogress[i]);
- funpackf(tfile, "Bi", &accountcampaignchoicesmade[i]);
- for(j=0;j<accountcampaignchoicesmade[i];j++)
- {
- funpackf(tfile, "Bi", &accountcampaignchoices[i][j]);
- if (accountcampaignchoices[i][j] >= 10)
- {
- accountcampaignchoices[i][j] = 0;
- }
- }
- funpackf(tfile, "Bf", &accountpoints[i]);
- for(j=0;j<50;j++)
- {
- funpackf(tfile, "Bf", &accounthighscore[i][j]);
- funpackf(tfile, "Bf", &accountfasttime[i][j]);
- }
- for(j=0;j<60;j++)
- {
- funpackf(tfile, "Bb", &accountunlocked[i][j]);
- }
- int temp;
- funpackf(tfile, "Bi", &temp);
- if(temp>0)
- {
- for(j=0;j<temp;j++)
- {
- funpackf(tfile, "Bb", &accountname[i][j]);
- }
- }
- }
- }
-
- fclose(tfile);
- }