diff options
| -rw-r--r-- | engines/hdb/ai-player.cpp | 24 | 
1 files changed, 21 insertions, 3 deletions
| diff --git a/engines/hdb/ai-player.cpp b/engines/hdb/ai-player.cpp index e12831fc0e..da2ccd75af 100644 --- a/engines/hdb/ai-player.cpp +++ b/engines/hdb/ai-player.cpp @@ -630,15 +630,33 @@ void aiBarrelLightInit(AIEntity *e) {  }  void aiBarrelHeavyAction(AIEntity *e) { -	warning("STUB: AI: aiBarrelHeavyAction required"); +	if (!e->goalX) { +		if (e->state == STATE_FLOATING) +			g_hdb->_ai->animEntFrames(e); +		return; +	} + +	g_hdb->_ai->animateEntity(e);  }  void aiBarrelHeavyInit2(AIEntity *e) { -	warning("STUB: AI: aiBarrelHeavyInit2 required"); +	// point all heavy barrel move frames to the standing one +	e->movedownFrames = +		e->moveleftFrames = +		e->moverightFrames = +		e->moveupFrames = 1; + +	e->movedownGfx[0] = +		e->moveupGfx[0] = +		e->moveleftGfx[0] = +		e->moverightGfx[0] = e->standdownGfx[0]; + +	e->draw = e->standdownGfx[0];			// standing frame - doesn't move  }  void aiBarrelHeavyInit(AIEntity *e) { -	warning("STUB: AI: aiBarrelHeavyInit required"); +	e->moveSpeed = kPushMoveSpeed; +	e->aiAction = aiBarrelHeavyAction;  }  void aiBarrelExplosionEnd(AIEntity *e) { | 
