mirror of
https://github.com/The-Powder-Toy/The-Powder-Toy.git
synced 2025-08-13 03:44:05 +02:00
fix gravity
This commit is contained in:
83
powder.c
83
powder.c
@@ -1531,47 +1531,48 @@ void update_particles_i(pixel *vid, int start, int inc)
|
|||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL];
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL];
|
||||||
} else {
|
} else {
|
||||||
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL];
|
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL];
|
||||||
if(gravityd == 1)
|
if(gravityd == 1) //gravity control stuff
|
||||||
{
|
{
|
||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
||||||
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] - ptypes[t].gravity;
|
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] - ptypes[t].gravity;
|
||||||
}
|
}
|
||||||
if(gravityd == 2)
|
if(gravityd == 2)
|
||||||
{
|
{
|
||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
||||||
}
|
}
|
||||||
if(gravityd == 3)
|
if(gravityd == 3)
|
||||||
{
|
{
|
||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
||||||
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] + ptypes[t].gravity;
|
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] + ptypes[t].gravity;
|
||||||
}
|
}
|
||||||
if(gravityd == 4)
|
if(gravityd == 4)
|
||||||
{
|
{
|
||||||
parts[i].vx += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
parts[i].vx += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
||||||
}
|
}
|
||||||
if(gravityd == 5)
|
if(gravityd == 5)
|
||||||
{
|
{
|
||||||
parts[i].vx += ptypes[t].advection*vy[y/CELL][x/CELL];
|
parts[i].vx += ptypes[t].advection*vy[y/CELL][x/CELL];
|
||||||
}
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL];
|
||||||
if(gravityd == 6)
|
}
|
||||||
{
|
if(gravityd == 6)
|
||||||
parts[i].vx += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
{
|
||||||
}
|
parts[i].vx += ptypes[t].advection*vy[y/CELL][x/CELL] + ptypes[t].gravity;
|
||||||
if(gravityd == 7)
|
}
|
||||||
{
|
if(gravityd == 7)
|
||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
{
|
||||||
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] - ptypes[t].gravity;
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
||||||
}
|
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] - ptypes[t].gravity;
|
||||||
if(gravityd == 8)
|
}
|
||||||
{
|
if(gravityd == 8)
|
||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
{
|
||||||
}
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
||||||
if(gravityd == 9)
|
}
|
||||||
{
|
if(gravityd == 9)
|
||||||
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
{
|
||||||
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] + ptypes[t].gravity;
|
parts[i].vy += ptypes[t].advection*vy[y/CELL][x/CELL] - ptypes[t].gravity;
|
||||||
}
|
parts[i].vx += ptypes[t].advection*vx[y/CELL][x/CELL] + ptypes[t].gravity;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(ptypes[t].diffusion)
|
if(ptypes[t].diffusion)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user