more accurate O2 fusion calculation, fixes #505

seemed to only be 3% slower in my tests with a full screen of heated pressurized O2
This commit is contained in:
jacob1 2018-03-03 21:15:28 -05:00
parent 2adae64041
commit d666559481

View File

@ -74,7 +74,11 @@ int Element_O2::update(UPDATE_FUNC_ARGS)
parts[i].tmp |= 2;
}
}
if (parts[i].temp > 9973.15 && sim->pv[y/CELL][x/CELL] > 250.0f && abs(sim->gravx[((y/CELL)*(XRES/CELL))+(x/CELL)]) + abs(sim->gravy[((y/CELL)*(XRES/CELL))+(x/CELL)]) > 20)
if (parts[i].temp > 9973.15 && sim->pv[y/CELL][x/CELL] > 250.0f)
{
float gravx = sim->gravx[((y/CELL)*(XRES/CELL))+(x/CELL)];
float gravy = sim->gravy[((y/CELL)*(XRES/CELL))+(x/CELL)];
if (gravx*gravx + gravy*gravy > 400)
{
if (!(rand()%5))
{
@ -107,6 +111,7 @@ int Element_O2::update(UPDATE_FUNC_ARGS)
sim->pv[y/CELL][x/CELL] = 256;
}
}
}
return 0;
}