Some fixes for H2
This commit is contained in:
parent
a2edfa11b8
commit
1bdf72be1a
@ -2,10 +2,10 @@
|
|||||||
|
|
||||||
int update_O2(UPDATE_FUNC_ARGS)
|
int update_O2(UPDATE_FUNC_ARGS)
|
||||||
{
|
{
|
||||||
int r,rx,ry,n,nx,ny;
|
int r,rx,ry;
|
||||||
for(rx=-2; rx<3; rx++)
|
for(rx=-2; rx<3; rx++)
|
||||||
for(ry=-2; ry<3; ry++)
|
for(ry=-2; ry<3; ry++)
|
||||||
if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
|
if (x+rx>=0 && y+ry>=0 && x+rx<XRES && y+ry<YRES && (rx || ry))
|
||||||
{
|
{
|
||||||
r = pmap[y+ry][x+rx];
|
r = pmap[y+ry][x+rx];
|
||||||
if ((r>>8)>=NPART || !r)
|
if ((r>>8)>=NPART || !r)
|
||||||
@ -24,7 +24,7 @@ int update_O2(UPDATE_FUNC_ARGS)
|
|||||||
{
|
{
|
||||||
for(rx=-2; rx<3; rx++)
|
for(rx=-2; rx<3; rx++)
|
||||||
for(ry=-2; ry<3; ry++)
|
for(ry=-2; ry<3; ry++)
|
||||||
if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
|
if (x+rx>=0 && y+ry>=0 && x+rx<XRES && y+ry<YRES && (rx || ry))
|
||||||
{
|
{
|
||||||
r = pmap[y+ry][x+rx];
|
r = pmap[y+ry][x+rx];
|
||||||
if ((r>>8)>=NPART || !r)
|
if ((r>>8)>=NPART || !r)
|
||||||
@ -32,7 +32,7 @@ int update_O2(UPDATE_FUNC_ARGS)
|
|||||||
if((r&0xFF)==PT_H2)
|
if((r&0xFF)==PT_H2)
|
||||||
if(50<(rand()/(RAND_MAX/100))){
|
if(50<(rand()/(RAND_MAX/100))){
|
||||||
part_change_type(i,x,y,PT_WATR);
|
part_change_type(i,x,y,PT_WATR);
|
||||||
part_change_type(r,rx,rx,PT_WATR);
|
part_change_type(r>>8,x+rx,y+ry,PT_WATR);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,19 +2,20 @@
|
|||||||
|
|
||||||
int update_H2(UPDATE_FUNC_ARGS)
|
int update_H2(UPDATE_FUNC_ARGS)
|
||||||
{
|
{
|
||||||
int r,rx,ry,rt,nx,ny;
|
int r,rx,ry,rt;
|
||||||
for(rx=-2; rx<3; rx++)
|
for(rx=-2; rx<3; rx++)
|
||||||
for(ry=-2; ry<3; ry++)
|
for(ry=-2; ry<3; ry++)
|
||||||
if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
|
if (x+rx>=0 && y+ry>=0 && x+rx<XRES && y+ry<YRES && (rx || ry))
|
||||||
{
|
{
|
||||||
r = pmap[y+ry][x+rx];
|
r = pmap[y+ry][x+rx];
|
||||||
rt = (r&0xFF);
|
rt = (r&0xFF);
|
||||||
if ((r>>8)>=NPART || !r)
|
if ((r>>8)>=NPART || !r)
|
||||||
continue;
|
continue;
|
||||||
if(pv[y/CELL][x/CELL] > 8.0f && rt == PT_DESL)
|
if(pv[y/CELL][x/CELL] > 8.0f && rt == PT_DESL) // This will not work. DESL turns to fire above 5.0 pressure
|
||||||
{
|
{
|
||||||
part_change_type(r,nx,ny,PT_WATR);
|
part_change_type(r>>8,x+rx,y+ry,PT_WATR);
|
||||||
part_change_type(i,x,y,PT_OIL);
|
part_change_type(i,x,y,PT_OIL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user