Advertisement
jacksonmj

me4502 parse_save

Jul 17th, 2011
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.96 KB | None | 0 0
  1. diff --git a/src/main.c b/src/main.c
  2. index b5c93f6..f18aff5 100644
  3. --- a/src/main.c
  4. +++ b/src/main.c
  5. @@ -486,7 +466,7 @@ void *build_save(int *size, int x0, int y0, int w, int h, unsigned char bmap[YRE
  6.      for (j=0; j<w*h; j++)
  7.      {
  8.          i = m[j];
  9. -        if (i && (parts[i-1].type==PT_CLNE || parts[i-1].type==PT_PCLN || parts[i-1].type==PT_BCLN || parts[i-1].type==PT_SPRK || parts[i-1].type==PT_LAVA || parts[i-1].type==PT_PIPE || parts[i-1].type==PT_LIFE))
  10. +       if (i && (parts[i-1].type==PT_CLNE || parts[i-1].type==PT_PCLN || parts[i-1].type==PT_BCLN || parts[i-1].type==PT_SPRK || parts[i-1].type==PT_LAVA || parts[i-1].type==PT_PIPE || parts[i-1].type==PT_LIFE || parts[i-1].type==PT_PBCN))
  11.              d[p++] = parts[i-1].ctype;
  12.      }
  13. @@ -728,23 +697,22 @@ int parse_save(void *save, int size, int replace, int x0, int y0, unsigned char
  14.                      if (j == PT_PHOT)
  15.                          parts[k].ctype = 0x3fffffff;
  16.                      if (j == PT_SOAP)
  17. -                        parts[fp[i]].ctype = 0;
  18. +                       parts[k].ctype = 0;
  19.                      parts[k].x = (float)x;
  20.                      parts[k].y = (float)y;
  21.                      m[(x-x0)+(y-y0)*w] = k+1;
  22. @@ -760,7 +728,7 @@ int parse_save(void *save, int size, int replace, int x0, int y0, unsigned char
  23.                      if (j == PT_PHOT)
  24.                          parts[fp[i]].ctype = 0x3fffffff;
  25.                      if (j == PT_SOAP)
  26. -                        parts[k].ctype = 0;
  27. +                       parts[fp[i]].ctype = 0;
  28.                      parts[fp[i]].x = (float)x;
  29.                      parts[fp[i]].y = (float)y;
  30.                      m[(x-x0)+(y-y0)*w] = fp[i]+1;
  31. @@ -774,9 +742,8 @@ int parse_save(void *save, int size, int replace, int x0, int y0, unsigned char
  32.      // load particle properties
  33.      for (j=0; j<w*h; j++)
  34.      {
  35.          i = m[j];
  36. -        if (i && (ty==PT_CLNE || (ty==PT_PCLN && ver>=43) || (ty==PT_BCLN && ver>=44) || (ty==PT_SPRK && ver>=21) || (ty==PT_LAVA && ver>=34) || (ty==PT_PIPE && ver>=43) || (ty==PT_LIFE && ver>=51)))
  37. +       if (i)
  38.          {
  39.              i--;
  40.              if (p+1 >= size)
  41. @@ -1054,7 +978,7 @@ int parse_save(void *save, int size, int replace, int x0, int y0, unsigned char
  42.          int gnum = 0;
  43.          i = m[j];
  44.          ty = d[pty+j];
  45. -        if (i && (ty==PT_CLNE || (ty==PT_PCLN && ver>=43) || (ty==PT_BCLN && ver>=44) || (ty==PT_SPRK && ver>=21) || (ty==PT_LAVA && ver>=34) || (ty==PT_PIPE && ver>=43)))
  46. +       if (i && (ty==PT_CLNE || (ty==PT_PCLN && ver>=43) || (ty==PT_BCLN && ver>=44) || (ty==PT_SPRK && ver>=21) || (ty==PT_LAVA && ver>=34) || (ty==PT_PIPE && ver>=43) || (ty==PT_LIFE && ver>=51) || (ty==PT_PBCN && ver>=52)))
  47.          {
  48.              if (p >= size)
  49.                  goto corrupt;
  50. @@ -1097,7 +1019,7 @@ int parse_save(void *save, int size, int replace, int x0, int y0, unsigned char
  51.              stop_grav_async();
  52.      }
  53.  
  54. -    //gravity_mask();
  55. +   gravity_mask();
  56.  
  57.      if (p >= size)
  58.          goto version1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement