summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/src/main.c b/src/main.c
index ba20752..96ecea3 100644
--- a/src/main.c
+++ b/src/main.c
@@ -487,6 +487,10 @@ int parse_save(void *save, int size, int replace, int x0, int y0)
memset(vx, 0, sizeof(vx));
memset(vy, 0, sizeof(vy));
memset(pv, 0, sizeof(pv));
+ memset(photons, 0, sizeof(photons));
+ memset(wireless, 0, sizeof(wireless));
+ memset(gol2, 0, sizeof(gol2));
+ memset(portal, 0, sizeof(portal));
}
// make a catalog of free parts
@@ -1535,6 +1539,16 @@ int main(int argc, char *argv[])
if(sdl_key=='=')
{
int nx, ny;
+ if(sdl_mod & (KMOD_CTRL))
+ {
+ for(i=0;i<NPART;i++)
+ if(parts[i].type==PT_SPRK)
+ {
+ parts[i].type = parts[i].ctype;
+ parts[i].life = 0;
+ }
+ }
+ else
for(nx = 0;nx<XRES/CELL;nx++)
for(ny = 0;ny<YRES/CELL;ny++)
{
@@ -2076,6 +2090,10 @@ int main(int argc, char *argv[])
memset(bmap, 0, sizeof(bmap));
memset(emap, 0, sizeof(emap));
memset(parts, 0, sizeof(particle)*NPART);
+ memset(photons, 0, sizeof(photons));
+ memset(wireless, 0, sizeof(wireless));
+ memset(gol2, 0, sizeof(gol2));
+ memset(portal, 0, sizeof(portal));
for(i=0; i<NPART-1; i++)
parts[i].life = i+1;
parts[NPART-1].life = -1;
@@ -2132,10 +2150,6 @@ int main(int argc, char *argv[])
if(x>=19 && x<=35 && svf_last && svf_open && !bq){
//int tpval = sys_pause;
parse_save(svf_last, svf_lsize, 1, 0, 0);
- for(j= 0;j<99;j++){ //reset wifi on reload
- wireless[j][0] = 0;
- wireless[j][1] = 0;
- }
//sys_pause = tpval;
}
if(x>=(XRES+BARSIZE-(510-476)) && x<=(XRES+BARSIZE-(510-491)) && !bq)