From d19706013714c4b1f5b833ce7377118047f31a7c Mon Sep 17 00:00:00 2001 From: rubidium Date: Fri, 9 Jan 2009 14:59:02 +0000 Subject: (svn r14933) -Codechange: check the whether a pool item can be constructed instead of trying to make it and check for NULL. --- src/effectvehicle.cpp | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) (limited to 'src/effectvehicle.cpp') diff --git a/src/effectvehicle.cpp b/src/effectvehicle.cpp index 62337993c..e4371cf45 100644 --- a/src/effectvehicle.cpp +++ b/src/effectvehicle.cpp @@ -609,22 +609,23 @@ static EffectTickProc * const _effect_tick_procs[] = { Vehicle *CreateEffectVehicle(int x, int y, int z, EffectVehicleType type) { + if (!Vehicle::CanAllocateItem()) return NULL; + Vehicle *v = new EffectVehicle(); - if (v != NULL) { - v->subtype = type; - v->x_pos = x; - v->y_pos = y; - v->z_pos = z; - v->tile = 0; - v->UpdateDeltaXY(INVALID_DIR); - v->vehstatus = VS_UNCLICKABLE; + v->subtype = type; + v->x_pos = x; + v->y_pos = y; + v->z_pos = z; + v->tile = 0; + v->UpdateDeltaXY(INVALID_DIR); + v->vehstatus = VS_UNCLICKABLE; - _effect_init_procs[type](v); + _effect_init_procs[type](v); + + VehiclePositionChanged(v); + BeginVehicleMove(v); + EndVehicleMove(v); - VehiclePositionChanged(v); - BeginVehicleMove(v); - EndVehicleMove(v); - } return v; } -- cgit v1.2.3-54-g00ecf