diff options
Diffstat (limited to 'src/simulation')
| -rw-r--r-- | src/simulation/Simulation.cpp | 2 | ||||
| -rw-r--r-- | src/simulation/elements/STKM.cpp | 5 |
2 files changed, 3 insertions, 4 deletions
diff --git a/src/simulation/Simulation.cpp b/src/simulation/Simulation.cpp index 1ab97fd..c1f56f7 100644 --- a/src/simulation/Simulation.cpp +++ b/src/simulation/Simulation.cpp @@ -2709,7 +2709,7 @@ int Simulation::create_part(int p, int x, int y, int tv) if (x<0 || y<0 || x>=XRES || y>=YRES || ((t<=0 || t>=PT_NUM)&&t!=SPC_HEAT&&t!=SPC_COOL&&t!=SPC_AIR&&t!=SPC_VACUUM&&t!=SPC_PGRV&&t!=SPC_NGRV)) return -1; - if (t>=0 && t<PT_NUM && !elements[t].Enabled) + if (t>=0 && t<PT_NUM && !elements[t].Enabled && t!=SPC_AIR) return -1; if(t==SPC_PROP) { return -1; //Prop tool works on a mouse click basic, make sure it doesn't do anything here diff --git a/src/simulation/elements/STKM.cpp b/src/simulation/elements/STKM.cpp index 2323be3..c7386f6 100644 --- a/src/simulation/elements/STKM.cpp +++ b/src/simulation/elements/STKM.cpp @@ -392,10 +392,9 @@ int Element_STKM::run_stickman(playerst* playerp, UPDATE_FUNC_ARGS) { sim->kill_part(r>>8); } if (sim->bmap[(ry+y)/CELL][(rx+x)/CELL]==WL_FAN) - { - playerp->rocketBoots = false; playerp->elem = SPC_AIR; - } + else if (sim->bmap[(ry+y)/CELL][(rx+x)/CELL]==WL_EHOLE) + playerp->rocketBoots = false; else if (sim->bmap[(ry+y)/CELL][(rx+x)/CELL]==WL_GRAV && parts[i].type!=PT_FIGH) playerp->rocketBoots = true; if ((r&0xFF)==PT_PRTI) |
