force a stacking check when undoing (id:1997880)

This commit is contained in:
jacob1 2016-06-11 10:20:25 -04:00
parent fbd75c6293
commit d63c6012c6
2 changed files with 6 additions and 5 deletions

View File

@ -167,7 +167,7 @@ int Simulation::Load(int fullX, int fullY, GameSave * save)
} }
} }
parts_lastActiveIndex = NPART-1; parts_lastActiveIndex = NPART-1;
force_stacking_check = 1; force_stacking_check = true;
Element_PPIP::ppip_changed = 1; Element_PPIP::ppip_changed = 1;
for (size_t i = 0; i < save->signs.size() && signs.size() < MAXSIGNS; i++) for (size_t i = 0; i < save->signs.size() && signs.size() < MAXSIGNS; i++)
{ {
@ -332,8 +332,9 @@ Snapshot * Simulation::CreateSnapshot()
void Simulation::Restore(const Snapshot & snap) void Simulation::Restore(const Snapshot & snap)
{ {
parts_lastActiveIndex = NPART-1; parts_lastActiveIndex = NPART-1;
elementRecount = true; elementRecount = true;
force_stacking_check = true;
std::copy(snap.AirPressure.begin(), snap.AirPressure.end(), &pv[0][0]); std::copy(snap.AirPressure.begin(), snap.AirPressure.end(), &pv[0][0]);
std::copy(snap.AirVelocityX.begin(), snap.AirVelocityX.end(), &vx[0][0]); std::copy(snap.AirVelocityX.begin(), snap.AirVelocityX.end(), &vx[0][0]);
@ -4717,7 +4718,7 @@ void Simulation::SimulateGoL()
void Simulation::CheckStacking() void Simulation::CheckStacking()
{ {
bool excessive_stacking_found = false; bool excessive_stacking_found = false;
force_stacking_check = 0; force_stacking_check = false;
for (int y = 0; y < YRES; y++) for (int y = 0; y < YRES; y++)
{ {
for (int x = 0; x < XRES; x++) for (int x = 0; x < XRES; x++)
@ -5074,7 +5075,7 @@ Simulation::Simulation():
replaceModeFlags(0), replaceModeFlags(0),
debug_currentParticle(0), debug_currentParticle(0),
ISWIRE(0), ISWIRE(0),
force_stacking_check(0), force_stacking_check(false),
emp_decor(0), emp_decor(0),
emp_trigger_count(0), emp_trigger_count(0),
etrd_count_valid(false), etrd_count_valid(false),

View File

@ -60,7 +60,7 @@ public:
bool elementRecount; bool elementRecount;
int elementCount[PT_NUM]; int elementCount[PT_NUM];
int ISWIRE; int ISWIRE;
int force_stacking_check; bool force_stacking_check;
int emp_decor; int emp_decor;
int emp_trigger_count; int emp_trigger_count;
bool etrd_count_valid; bool etrd_count_valid;