home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1993 #2 / Image.iso / games1 / lunarmax.zip / LUNARMAX.C next >
C/C++ Source or Header  |  1993-05-28  |  2KB  |  63 lines

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #undef DEBUG
  5.  
  6. void main(int argc, char *argv[])
  7. {
  8.     FILE                *infile;
  9.     unsigned long int   money;
  10.     char                *filename;
  11.  
  12.     printf("\n");
  13.     printf("Save game money maxxer for Lunar Command -   May 28th, 1993\n");
  14.     printf("   by Patch (hamell@rigel.cs.pdx.edu)    - Coder for Avalanche\n");
  15.     printf("──────────────────────────────────────────────────────────────\n");
  16.  
  17.     if (argc < 3)
  18.     {
  19.     printf("Usage: lunarmax FILENAME.lun MONEY\n");
  20.     printf("where: FILENAME - the save game to alter (w/o extension)\n");
  21.     printf("       MONEY    - a number between 0 and 4294967295\n");
  22.     exit(-1);
  23.     }
  24.  
  25.     strcpy(filename,argv[1]);
  26.     strcat(filename,".lun");
  27.     infile = fopen(filename,"r+b");
  28.     if (infile == NULL)
  29.     {
  30.     printf("Could not find save game %s!\n",filename);
  31.     exit(-1);
  32.     }
  33.  
  34.     money = (unsigned long int) atol(argv[2]);
  35.     if (money == 0)
  36.     {
  37.     printf("Money amount is whacked!  Try a number between 0 and 4294967295\n");
  38.     exit(-1);
  39.     }
  40.  
  41.     fseek(infile,4100,0);
  42.     fprintf(infile,"%c%c%c%c",
  43.         (unsigned char) (money & 0x000000ff),
  44.         (unsigned char) ((money & 0x0000ff00) >> 8),
  45.         (unsigned char) ((money & 0x00ff0000) >> 16),
  46.         (unsigned char) ((money & 0xff000000) >> 24));
  47.     fclose(infile);
  48.  
  49.     #ifdef DEBUG
  50.     printf("%x\n",money);
  51.     printf("%x %x %x %x\n",
  52.            (unsigned char)  (money & 0x000000ff),
  53.            (unsigned char) ((money & 0x0000ff00) >> 8),
  54.            (unsigned char) ((money & 0x00ff0000) >> 16),
  55.            (unsigned char) ((money & 0xff000000) >> 24));
  56.     #endif
  57.  
  58.     printf("Money set to $%lu\n\n",money);
  59.     printf("Greets to: Zax, Leinad, Errand, Thaco, Fordpr, Robinn, Trug,\n");
  60.     printf("           Barfman, Guildmaster, Typhoon, DrinkIN, Rikoshae,\n");
  61.     printf("           and everyone else I forgot.\n");
  62. }
  63.