From a3e97d51d13cd0aa4e484b374aabf52e08d70037 Mon Sep 17 00:00:00 2001 From: Simon Robertshaw Date: Tue, 17 Apr 2012 17:18:35 +0100 Subject: TPT: Change wifi so that it always takes one frame to transmit a722d7a396 diff --git a/src/elements/wifi.cpp b/src/elements/wifi.cpp index cb77dd9..9a25128 100644 --- a/src/elements/wifi.cpp +++ b/src/elements/wifi.cpp @@ -12,6 +12,8 @@ int update_WIFI(UPDATE_FUNC_ARGS) { r = pmap[y+ry][x+rx]; if (!r) continue; + // wireless[][0] - whether channel is active on this frame + // wireless[][1] - whether channel should be active on next frame if (sim->wireless[parts[i].tmp][0]) { if (((r&0xFF)==PT_NSCN||(r&0xFF)==PT_PSCN||(r&0xFF)==PT_INWR)&&parts[r>>8].life==0 && sim->wireless[parts[i].tmp][0]) @@ -25,9 +27,8 @@ int update_WIFI(UPDATE_FUNC_ARGS) { { if ((r&0xFF)==PT_SPRK && parts[r>>8].ctype!=PT_NSCN && parts[r>>8].life>=3) { - sim->wireless[parts[i].tmp][0] = 1; sim->wireless[parts[i].tmp][1] = 1; - //ISWIRE = 1; + sim->ISWIRE = 2; } } } diff --git a/src/simulation/Simulation.cpp b/src/simulation/Simulation.cpp index a1ddb68..9b23ae2 100644 --- a/src/simulation/Simulation.cpp +++ b/src/simulation/Simulation.cpp @@ -2401,15 +2401,14 @@ void Simulation::update_particles_i(int start, int inc) } //memset(gol2, 0, sizeof(gol2)); } - if (ISWIRE==1)//wifi channel reseting + if (ISWIRE>0)//wifi channel reseting { for ( q = 0; q<(int)(MAX_TEMP-73.15f)/100+2; q++) - if (!wireless[q][1]) - { - wireless[q][0] = 0; - } - else - wireless[q][1] = 0; + { + wireless[q][0] = wireless[q][1]; + wireless[q][1] = 0; + } + ISWIRE--; } for (i=0; i<=parts_lastActiveIndex; i++) if (parts[i].type) -- cgit v0.9.2-21-gd62e