[Scummvm-git-logs] scummvm master -> 2b806608a5ea1151dd8ec93b6ac45b5a09a0c8e3

mgerhardy noreply at scummvm.org
Tue Oct 15 11:19:54 UTC 2024


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
2b806608a5 TWINE: renamed struct members to match original sources


Commit: 2b806608a5ea1151dd8ec93b6ac45b5a09a0c8e3
    https://github.com/scummvm/scummvm/commit/2b806608a5ea1151dd8ec93b6ac45b5a09a0c8e3
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2024-10-15T13:19:37+02:00

Commit Message:
TWINE: renamed struct members to match original sources

Changed paths:
    engines/twine/debugger/debugtools.cpp
    engines/twine/renderer/redraw.cpp
    engines/twine/scene/actor.cpp
    engines/twine/scene/actor.h
    engines/twine/scene/animations.cpp
    engines/twine/scene/buggy.cpp
    engines/twine/scene/collision.cpp
    engines/twine/scene/dart.cpp
    engines/twine/scene/gamestate.cpp
    engines/twine/scene/grid.cpp
    engines/twine/scene/movements.cpp
    engines/twine/scene/scene.cpp
    engines/twine/script/script_life.cpp
    engines/twine/script/script_life_v2.cpp
    engines/twine/script/script_move.cpp
    engines/twine/script/script_move_v2.cpp
    engines/twine/twine.cpp


diff --git a/engines/twine/debugger/debugtools.cpp b/engines/twine/debugger/debugtools.cpp
index aedb3402a42..450f26863a0 100644
--- a/engines/twine/debugger/debugtools.cpp
+++ b/engines/twine/debugger/debugtools.cpp
@@ -651,7 +651,7 @@ static void actorDetailsWindow(int &actorIdx, TwinEEngine *engine) {
 			if (ImGui::BeginTable("##staticflags", 6)) {
 				for (int i = 0; i < ARRAYSIZE(Names); ++i) {
 					ImGui::TableNextColumn();
-					ImGui::CheckboxFlags(Names[i], (uint32_t *)&actor->_staticFlags, (1 << i));
+					ImGui::CheckboxFlags(Names[i], (uint32_t *)&actor->_flags, (1 << i));
 				}
 				ImGui::EndTable();
 			}
diff --git a/engines/twine/renderer/redraw.cpp b/engines/twine/renderer/redraw.cpp
index 378ffdc9aca..8f30a541093 100644
--- a/engines/twine/renderer/redraw.cpp
+++ b/engines/twine/renderer/redraw.cpp
@@ -252,7 +252,7 @@ int32 Redraw::fillActorDrawingList(DrawListStruct *drawList, bool flagflip) {
 			continue;
 		}
 		// no redraw required
-		if (actor->_staticFlags.bIsBackgrounded && !flagflip) {
+		if (actor->_flags.bIsBackgrounded && !flagflip) {
 			// get actor position on screen
 			const IVec3 &projPos = _engine->_renderer->projectPoint(actor->posObj() - _engine->_grid->_worldCube);
 			// check if actor is visible on screen, otherwise don't display it
@@ -262,14 +262,14 @@ int32 Redraw::fillActorDrawingList(DrawListStruct *drawList, bool flagflip) {
 			continue;
 		}
 		// if the actor isn't set as hidden
-		if (actor->_body == -1 || actor->_staticFlags.bIsInvisible) {
+		if (actor->_body == -1 || actor->_flags.bIsInvisible) {
 			continue;
 		}
 		// get actor position on screen
 		const IVec3 &projPos = _engine->_renderer->projectPoint(actor->posObj() - _engine->_grid->_worldCube);
 
-		if ((actor->_staticFlags.bSpriteClip && projPos.x > -112 && projPos.x < _engine->width() + 112 && projPos.y > VIEW_X0 && projPos.y < _engine->height() + 171) ||
-		    ((!actor->_staticFlags.bSpriteClip) && projPos.x > VIEW_X0 && projPos.x < VIEW_X1(_engine) && projPos.y > VIEW_Y0 && projPos.y < VIEW_Y1(_engine))) {
+		if ((actor->_flags.bSpriteClip && projPos.x > -112 && projPos.x < _engine->width() + 112 && projPos.y > VIEW_X0 && projPos.y < _engine->height() + 171) ||
+		    ((!actor->_flags.bSpriteClip) && projPos.x > VIEW_X0 && projPos.x < VIEW_X1(_engine) && projPos.y > VIEW_Y0 && projPos.y < VIEW_Y1(_engine))) {
 
 			int32 ztri = actor->_posObj.x - _engine->_grid->_worldCube.x + actor->_posObj.z - _engine->_grid->_worldCube.z;
 
@@ -279,10 +279,10 @@ int32 Redraw::fillActorDrawingList(DrawListStruct *drawList, bool flagflip) {
 				ztri = standOnActor->_posObj.x - _engine->_grid->_worldCube.x + standOnActor->_posObj.z - _engine->_grid->_worldCube.z + 2;
 			}
 
-			if (actor->_staticFlags.bSprite3D) {
+			if (actor->_flags.bSprite3D) {
 				drawList[drawListPos].type = DrawListType::DrawActorSprites;
 				drawList[drawListPos].numObj = n;
-				if (actor->_staticFlags.bSpriteClip) {
+				if (actor->_flags.bSpriteClip) {
 					ztri = actor->_animStep.x - _engine->_grid->_worldCube.x + actor->_animStep.z - _engine->_grid->_worldCube.z;
 				}
 			} else {
@@ -295,7 +295,7 @@ int32 Redraw::fillActorDrawingList(DrawListStruct *drawList, bool flagflip) {
 			drawListPos++;
 
 			// if use shadows
-			if (_engine->_cfgfile.ShadowMode != 0 && !(actor->_staticFlags.bNoShadow)) {
+			if (_engine->_cfgfile.ShadowMode != 0 && !(actor->_flags.bNoShadow)) {
 				if (actor->_carryBy != -1) {
 					drawList[drawListPos].xw = actor->_posObj.x;
 					drawList[drawListPos].yw = actor->_posObj.y - 1;
@@ -434,7 +434,7 @@ void Redraw::processDrawListActors(const DrawListStruct &drawCmd, bool bgRedraw)
 
 		addRedrawArea(_engine->_interface->_clip);
 
-		if (actor->_staticFlags.bIsBackgrounded && bgRedraw) {
+		if (actor->_flags.bIsBackgrounded && bgRedraw) {
 			_engine->blitFrontToWork(_engine->_interface->_clip);
 		}
 
@@ -465,7 +465,7 @@ void Redraw::processDrawListActorSprites(const DrawListStruct &drawCmd, bool bgR
 	renderRect.bottom = renderRect.top + dy;
 
 	bool validClip;
-	if (actor->_staticFlags.bSpriteClip) {
+	if (actor->_flags.bSpriteClip) {
 		const Common::Rect rect(_projPosScreen.x + actor->_cropLeft, _projPosScreen.y + actor->_cropTop, _projPosScreen.x + actor->_cropRight, _projPosScreen.y + actor->_cropBottom);
 		validClip = _engine->_interface->setClip(rect);
 	} else {
@@ -477,7 +477,7 @@ void Redraw::processDrawListActorSprites(const DrawListStruct &drawCmd, bool bgR
 
 		actor->_workFlags.bWasDrawn = 1;
 
-		if (actor->_staticFlags.bSpriteClip) {
+		if (actor->_flags.bSpriteClip) {
 			const int32 xm = (actor->_animStep.x + DEMI_BRICK_XZ) / SIZE_BRICK_XZ;
 			const int32 ym = actor->_animStep.y / SIZE_BRICK_Y;
 			const int32 zm = (actor->_animStep.z + DEMI_BRICK_XZ) / SIZE_BRICK_XZ;
@@ -495,7 +495,7 @@ void Redraw::processDrawListActorSprites(const DrawListStruct &drawCmd, bool bgR
 
 		addRedrawArea(_engine->_interface->_clip);
 
-		if (actor->_staticFlags.bIsBackgrounded && bgRedraw) {
+		if (actor->_flags.bIsBackgrounded && bgRedraw) {
 			_engine->blitFrontToWork(_engine->_interface->_clip);
 		}
 
@@ -544,7 +544,7 @@ void Redraw::processDrawListExtras(const DrawListStruct &drawCmd) {
 
 void Redraw::correctZLevels(DrawListStruct *listTri, int32 drawListPos) {
 	ActorStruct *ptrobj = _engine->_scene->getActor(OWN_ACTOR_SCENE_INDEX);
-	if (ptrobj->_staticFlags.bIsInvisible || ptrobj->_body == -1) {
+	if (ptrobj->_flags.bIsInvisible || ptrobj->_body == -1) {
 		return;
 	}
 
@@ -574,7 +574,7 @@ void Redraw::correctZLevels(DrawListStruct *listTri, int32 drawListPos) {
 		default:
 			break;
 		case DrawListType::DrawActorSprites:
-			if (ptrobj->_staticFlags.bSpriteClip) {
+			if (ptrobj->_flags.bSpriteClip) {
 				IVec3 pmin = ptrobj->_animStep + ptrobj->_boundingBox.mins;
 				IVec3 pmax = ptrobj->_animStep + ptrobj->_boundingBox.maxs;
 
diff --git a/engines/twine/scene/actor.cpp b/engines/twine/scene/actor.cpp
index 5c3a1d500af..08d978cc9d9 100644
--- a/engines/twine/scene/actor.cpp
+++ b/engines/twine/scene/actor.cpp
@@ -46,13 +46,13 @@ void Actor::restartHeroScene() {
 	ActorStruct *sceneHero = _engine->_scene->_sceneHero;
 	sceneHero->_controlMode = ControlMode::kManual;
 	memset(&sceneHero->_workFlags, 0, sizeof(sceneHero->_workFlags));
-	memset(&sceneHero->_staticFlags, 0, sizeof(sceneHero->_staticFlags));
+	memset(&sceneHero->_flags, 0, sizeof(sceneHero->_flags));
 
-	sceneHero->_staticFlags.bComputeCollisionWithObj = 1;
-	sceneHero->_staticFlags.bComputeCollisionWithBricks = 1;
-	sceneHero->_staticFlags.bCheckZone = 1;
-	sceneHero->_staticFlags.bCanDrown = 1;
-	sceneHero->_staticFlags.bObjFallable = 1;
+	sceneHero->_flags.bComputeCollisionWithObj = 1;
+	sceneHero->_flags.bComputeCollisionWithBricks = 1;
+	sceneHero->_flags.bCheckZone = 1;
+	sceneHero->_flags.bCanDrown = 1;
+	sceneHero->_flags.bObjFallable = 1;
 
 	sceneHero->_armor = 1;
 	sceneHero->_offsetTrack = -1;
@@ -208,7 +208,7 @@ void Actor::initSprite(int32 spriteNum, int32 actorIdx) {
 	ActorStruct *localActor = _engine->_scene->getActor(actorIdx);
 
 	localActor->_sprite = spriteNum;
-	if (!localActor->_staticFlags.bSprite3D) {
+	if (!localActor->_flags.bSprite3D) {
 		return;
 	}
 	if (spriteNum != -1 && localActor->_body != spriteNum) {
@@ -242,7 +242,7 @@ int32 Actor::searchBody(BodyType bodyIdx, int32 actorIdx, ActorBoundingBox &acto
 
 void Actor::initBody(BodyType bodyIdx, int16 actorIdx) {
 	ActorStruct *localActor = _engine->_scene->getActor(actorIdx);
-	if (localActor->_staticFlags.bSprite3D) {
+	if (localActor->_flags.bSprite3D) {
 		return;
 	}
 
@@ -279,7 +279,7 @@ void Actor::initBody(BodyType bodyIdx, int16 actorIdx) {
 		int32 size = 0;
 		const int32 distX = bd.bbox.maxs.x - bd.bbox.mins.x;
 		const int32 distZ = bd.bbox.maxs.z - bd.bbox.mins.z;
-		if (localActor->_staticFlags.bUseMiniZv) {
+		if (localActor->_flags.bUseMiniZv) {
 			// take smaller for bound
 			if (distX < distZ)
 				size = distX / 2;
@@ -316,7 +316,7 @@ void Actor::copyInterAnim(const BodyData &src, BodyData &dest) {
 void Actor::startInitObj(int16 actorIdx) {
 	ActorStruct *actor = _engine->_scene->getActor(actorIdx);
 
-	if (actor->_staticFlags.bSprite3D) {
+	if (actor->_flags.bSprite3D) {
 		if (actor->_strengthOfHit != 0) {
 			actor->_workFlags.bIsHitting = 1;
 		}
@@ -327,7 +327,7 @@ void Actor::startInitObj(int16 actorIdx) {
 
 		_engine->_movements->initRealAngle(LBAAngles::ANGLE_0, LBAAngles::ANGLE_0, LBAAngles::ANGLE_0, &actor->realAngle);
 
-		if (actor->_staticFlags.bSpriteClip) {
+		if (actor->_flags.bSpriteClip) {
 			actor->_animStep = actor->posObj();
 		}
 	} else {
@@ -358,7 +358,7 @@ void Actor::initObject(int16 actorIdx) {
 	actor->_actorIdx = actorIdx;
 	actor->_posObj = IVec3(0, SIZE_BRICK_Y, 0);
 
-	memset(&actor->_staticFlags, 0, sizeof(StaticFlagsStruct));
+	memset(&actor->_flags, 0, sizeof(StaticFlagsStruct));
 	memset(&actor->_workFlags, 0, sizeof(DynamicFlagsStruct));
 	memset(&actor->_bonusParameter, 0, sizeof(BonusParameter));
 
@@ -415,7 +415,7 @@ void Actor::hitObj(int32 actorIdx, int32 actorIdxAttacked, int32 hitforce, int32
 
 void Actor::checkCarrier(int32 actorIdx) {
 	ActorStruct *actor = _engine->_scene->getActor(actorIdx);
-	if (!actor->_staticFlags.bIsCarrierActor) {
+	if (!actor->_flags.bIsCarrierActor) {
 		return;
 	}
 	for (int32 a = 0; a < _engine->_scene->_nbObjets; a++) {
diff --git a/engines/twine/scene/actor.h b/engines/twine/scene/actor.h
index 2ed1e66088e..db621e689b9 100644
--- a/engines/twine/scene/actor.h
+++ b/engines/twine/scene/actor.h
@@ -148,8 +148,8 @@ private:
 
 public:
 	ActorStruct(int maxLife = 0) : _lifePoint(maxLife), _maxLife(maxLife) {}
-	StaticFlagsStruct _staticFlags; // Flags
-	DynamicFlagsStruct _workFlags;  // WorkFlags
+	StaticFlagsStruct _flags;
+	DynamicFlagsStruct _workFlags;
 
 	EntityData _entityData;
 	inline ShapeType brickShape() const { return _col; }
@@ -195,12 +195,12 @@ public:
 	int32 _beta = 0; // facing angle of actor. Minumum is 0 (SW). Going counter clock wise
 	int32 _srot = 40; // speed of rotation
 	ControlMode _controlMode = ControlMode::kNoMove; // Move
-	int32 _delayInMillis = 0;
+	int32 _delayInMillis = 0; // Info
 	int32 _cropLeft = 0;      // Info
 	int32 _cropTop = 0;       // Info1
 	int32 _cropRight = 0;     // Info2
 	int32 _cropBottom = 0;    // Info3
-	int32 _followedActor = 0; // same as info3
+	int32 _followedActor = 0; // same as Info3
 	int32 _bonusAmount = 0;
 	int32 _talkColor = COLOR_BLACK;
 	int32 _armor = 1;
@@ -226,7 +226,7 @@ public:
 	/**
 	 * colliding actor id
 	 */
-	int32 _objCol = -1; // ObjCol
+	int32 _objCol = -1;
 	/**
 	 * actor id we are standing on
 	 */
diff --git a/engines/twine/scene/animations.cpp b/engines/twine/scene/animations.cpp
index e0253f6b7a0..1d2bcdb3eb6 100644
--- a/engines/twine/scene/animations.cpp
+++ b/engines/twine/scene/animations.cpp
@@ -389,7 +389,7 @@ bool Animations::initAnim(AnimationTypes newAnim, AnimType flag, AnimationTypes
 		return false;
 	}
 
-	if (actor->_staticFlags.bSprite3D) {
+	if (actor->_flags.bSprite3D) {
 		return false;
 	}
 
@@ -467,7 +467,7 @@ void Animations::doAnim(int32 actorIdx) {
 	const IVec3 &oldPos = actor->_oldPos;
 
 	IVec3 &processActor = actor->_processActor;
-	if (actor->_staticFlags.bSprite3D) {
+	if (actor->_flags.bSprite3D) {
 		if (actor->_strengthOfHit) {
 			actor->_workFlags.bIsHitting = 1;
 		}
@@ -543,10 +543,10 @@ void Animations::doAnim(int32 actorIdx) {
 				}
 			}
 
-			if (actor->_staticFlags.bCanBePushed) {
+			if (actor->_flags.bCanBePushed) {
 				processActor += actor->_animStep;
 
-				if (actor->_staticFlags.bUseMiniZv) {
+				if (actor->_flags.bUseMiniZv) {
 					processActor.x = ((processActor.x / (SIZE_BRICK_XZ / 4)) * (SIZE_BRICK_XZ / 4));
 					processActor.z = ((processActor.z / (SIZE_BRICK_XZ / 4)) * (SIZE_BRICK_XZ / 4));
 				}
@@ -645,7 +645,7 @@ void Animations::doAnim(int32 actorIdx) {
 
 	// actor collisions with bricks
 	uint32 col1 = 0; 	/** Cause damage in current processed actor */
-	if (actor->_staticFlags.bComputeCollisionWithBricks) {
+	if (actor->_flags.bComputeCollisionWithBricks) {
 		ShapeType col = _engine->_grid->worldColBrick(oldPos);
 
 		if (col != ShapeType::kNone) {
@@ -657,7 +657,7 @@ void Animations::doAnim(int32 actorIdx) {
 			}
 		}
 
-		if (actor->_staticFlags.bComputeCollisionWithObj) {
+		if (actor->_flags.bComputeCollisionWithObj) {
 			collision->checkObjCol(actorIdx);
 		}
 
@@ -667,7 +667,7 @@ void Animations::doAnim(int32 actorIdx) {
 
 		collision->setCollisionPos(processActor);
 
-		if (IS_HERO(actorIdx) && !actor->_staticFlags.bComputeLowCollision) {
+		if (IS_HERO(actorIdx) && !actor->_flags.bComputeLowCollision) {
 			// check hero collisions with bricks
 			col1 |= collision->doCornerReajustTwinkel(actor, actor->_boundingBox.mins.x, actor->_boundingBox.mins.y, actor->_boundingBox.mins.z, 1);
 			col1 |= collision->doCornerReajustTwinkel(actor, actor->_boundingBox.maxs.x, actor->_boundingBox.mins.y, actor->_boundingBox.mins.z, 2);
@@ -742,7 +742,7 @@ void Animations::doAnim(int32 actorIdx) {
 			}
 			actor->_workFlags.bIsFalling = 0;
 		} else {
-			if (actor->_staticFlags.bObjFallable && actor->_carryBy == -1) {
+			if (actor->_flags.bObjFallable && actor->_carryBy == -1) {
 				col = _engine->_grid->worldColBrick(processActor.x, processActor.y - 1, processActor.z);
 
 				if (col != ShapeType::kNone) {
@@ -784,7 +784,7 @@ void Animations::doAnim(int32 actorIdx) {
 			actor->setLife(0);
 		}
 	} else {
-		if (actor->_staticFlags.bComputeCollisionWithObj) {
+		if (actor->_flags.bComputeCollisionWithObj) {
 			collision->checkObjCol(actorIdx);
 		}
 	}
diff --git a/engines/twine/scene/buggy.cpp b/engines/twine/scene/buggy.cpp
index 7bf7fb105f3..be73ddcc3ea 100644
--- a/engines/twine/scene/buggy.cpp
+++ b/engines/twine/scene/buggy.cpp
@@ -44,8 +44,8 @@ void Buggy::initBuggy(uint8 numobj, uint32 flaginit) {
 
 	// So that the objects follow their tracks without being interrupted
 	// by the buggy (too bad, it will be pushed)
-	ptrobj->_staticFlags.bCanBePushed = true;
-	ptrobj->_staticFlags.bCanDrown = true;
+	ptrobj->_flags.bCanBePushed = true;
+	ptrobj->_flags.bCanDrown = true;
 
 	if (flaginit == 2               // we force the repositioning of the buggy
 		|| (flaginit && !NumBuggy)) // first initialization
@@ -84,10 +84,10 @@ void Buggy::initBuggy(uint8 numobj, uint32 flaginit) {
 
 				ptrobj->_beta = ptb->Beta;
 
-				ptrobj->_staticFlags.bNoShadow = 1;
-				ptrobj->_staticFlags.bIsBackgrounded = 1;
-				ptrobj->_staticFlags.bNoElectricShock = 1;
-				ptrobj->_staticFlags.bHasZBuffer = 1;
+				ptrobj->_flags.bNoShadow = 1;
+				ptrobj->_flags.bIsBackgrounded = 1;
+				ptrobj->_flags.bNoElectricShock = 1;
+				ptrobj->_flags.bHasZBuffer = 1;
 
 				_engine->_actor->initBody(BodyType::btNormal, numobj);
 			} else {
@@ -135,7 +135,7 @@ void Buggy::takeBuggy() {
 	_engine->_movements->clearRealAngle(ptrobj); // To avoid crushing the beta.
 
 	ptrobj->_workFlags.bMANUAL_INTER_FRAME = true;
-	ptrobj->_staticFlags.bHasZBuffer = true;
+	ptrobj->_flags.bHasZBuffer = true;
 
 	_engine->_actor->setBehaviour(HeroBehaviourType::kBUGGY);
 
@@ -197,7 +197,7 @@ void Buggy::leaveBuggy(HeroBehaviourType behaviour) {
 	// TODO: ObjectClear(ptrobj);
 
 	ptrobj->_workFlags.bMANUAL_INTER_FRAME = 0;
-	ptrobj->_staticFlags.bHasZBuffer = 0;
+	ptrobj->_flags.bHasZBuffer = 0;
 
 	_engine->_actor->initBody(BodyType::btTunic, OWN_ACTOR_SCENE_INDEX);
 
diff --git a/engines/twine/scene/collision.cpp b/engines/twine/scene/collision.cpp
index 284bdd72632..c798dc4ea59 100644
--- a/engines/twine/scene/collision.cpp
+++ b/engines/twine/scene/collision.cpp
@@ -173,10 +173,10 @@ void Collision::handlePushing(IVec3 &processActor, const IVec3 &minsTest, const
 	const int32 newAngle = _engine->_movements->getAngle(processActor, ptrobjt->posObj());
 
 	// protect against chain reactions
-	if (ptrobjt->_staticFlags.bCanBePushed && !ptrobj->_staticFlags.bCanBePushed) {
+	if (ptrobjt->_flags.bCanBePushed && !ptrobj->_flags.bCanBePushed) {
 		ptrobjt->_animStep.y = 0;
 
-		if (ptrobjt->_staticFlags.bUseMiniZv) {
+		if (ptrobjt->_flags.bUseMiniZv) {
 			if (newAngle >= LBAAngles::ANGLE_45 && newAngle < LBAAngles::ANGLE_135 && ptrobj->_beta >= LBAAngles::ANGLE_45 && ptrobj->_beta < LBAAngles::ANGLE_135) {
 				ptrobjt->_animStep.x = SIZE_BRICK_XZ / 4 + SIZE_BRICK_XZ / 8;
 			}
@@ -252,7 +252,7 @@ bool Collision::checkValidObjPos(int32 actorIdx) {
 
 	for (int32 n = 0; n < _engine->_scene->_nbObjets; ++n) {
 		const ActorStruct *ptrobjt = _engine->_scene->getActor(n);
-		if (n != actorIdx && ptrobjt->_body != -1 && !ptrobj->_staticFlags.bIsInvisible && ptrobjt->_carryBy != actorIdx) {
+		if (n != actorIdx && ptrobjt->_body != -1 && !ptrobj->_flags.bIsInvisible && ptrobjt->_carryBy != actorIdx) {
 			const IVec3 &t0 = ptrobjt->posObj() + ptrobjt->_boundingBox.mins;
 			const IVec3 &t1 = ptrobjt->posObj() + ptrobjt->_boundingBox.maxs;
 			if (m0.x < t1.x && m1.x > t0.x && m0.y < t1.y && m1.y > t0.y && m0.z < t1.z && m1.z > t0.z) {
@@ -276,14 +276,14 @@ int32 Collision::checkObjCol(int32 actorIdx) {
 		ActorStruct *ptrobjt = _engine->_scene->getActor(a);
 
 		// avoid current processed actor
-		if (a != actorIdx && ptrobjt->_body != -1 && !ptrobj->_staticFlags.bIsInvisible && ptrobjt->_carryBy != actorIdx) {
+		if (a != actorIdx && ptrobjt->_body != -1 && !ptrobj->_flags.bIsInvisible && ptrobjt->_carryBy != actorIdx) {
 			const IVec3 &minsTest = ptrobjt->posObj() + ptrobjt->_boundingBox.mins;
 			const IVec3 &maxsTest = ptrobjt->posObj() + ptrobjt->_boundingBox.maxs;
 
 			if (mins.x < maxsTest.x && maxs.x > minsTest.x && mins.y < maxsTest.y && maxs.y > minsTest.y && mins.z < maxsTest.z && maxs.z > minsTest.z) {
 				ptrobj->_objCol = a; // mark as collision with actor a
 
-				if (ptrobjt->_staticFlags.bIsCarrierActor) {
+				if (ptrobjt->_flags.bIsCarrierActor) {
 					if (ptrobj->_workFlags.bIsFalling) {
 						// I touch a carrier
 						processActor.y = maxsTest.y - ptrobj->_boundingBox.mins.y + 1;
@@ -321,7 +321,7 @@ int32 Collision::checkObjCol(int32 actorIdx) {
 			const ActorStruct *actorTest = _engine->_scene->getActor(a);
 
 			// avoid current processed actor
-			if (a != actorIdx && actorTest->_body != -1 && !actorTest->_staticFlags.bIsInvisible && actorTest->_carryBy != actorIdx) {
+			if (a != actorIdx && actorTest->_body != -1 && !actorTest->_flags.bIsInvisible && actorTest->_carryBy != actorIdx) {
 				const IVec3 minsTest = actorTest->posObj() + actorTest->_boundingBox.mins;
 				const IVec3 maxsTest = actorTest->posObj() + actorTest->_boundingBox.maxs;
 				if (mins.x < maxsTest.x && maxs.x > minsTest.x && mins.y < maxsTest.y && maxs.y > minsTest.y && mins.z < maxsTest.z && maxs.z > minsTest.z) {
diff --git a/engines/twine/scene/dart.cpp b/engines/twine/scene/dart.cpp
index 7c71c638952..eb4866bc51a 100644
--- a/engines/twine/scene/dart.cpp
+++ b/engines/twine/scene/dart.cpp
@@ -107,7 +107,7 @@ void Dart::CheckDartCol(ActorStruct *ptrobj) {
 	int32 x0, y0, z0, x1, y1, z1;
 	int32 xt0, yt0, zt0, xt1, yt1, zt1;
 
-	if (ptrobj->_staticFlags.bIsInvisible)
+	if (ptrobj->_flags.bIsInvisible)
 		return;
 
 	x0 = ptrobj->_posObj.x + ptrobj->_boundingBox.mins.x;
diff --git a/engines/twine/scene/gamestate.cpp b/engines/twine/scene/gamestate.cpp
index db702a5c4e6..7900a7cce8d 100644
--- a/engines/twine/scene/gamestate.cpp
+++ b/engines/twine/scene/gamestate.cpp
@@ -332,9 +332,9 @@ void GameState::doFoundObj(InventoryItems item) {
 	_engine->_grid->centerOnActor(_engine->_scene->_sceneHero);
 
 	// Hide hero in scene
-	_engine->_scene->_sceneHero->_staticFlags.bIsInvisible = 1;
+	_engine->_scene->_sceneHero->_flags.bIsInvisible = 1;
 	_engine->_redraw->drawScene(true);
-	_engine->_scene->_sceneHero->_staticFlags.bIsInvisible = 0;
+	_engine->_scene->_sceneHero->_flags.bIsInvisible = 0;
 
 	_engine->saveFrontBuffer();
 
@@ -508,9 +508,9 @@ void GameState::processGameoverAnimation() {
 
 	_engine->testRestoreModeSVGA(false);
 	// workaround to fix hero redraw after drowning
-	_engine->_scene->_sceneHero->_staticFlags.bIsInvisible = 1;
+	_engine->_scene->_sceneHero->_flags.bIsInvisible = 1;
 	_engine->_redraw->drawScene(true);
-	_engine->_scene->_sceneHero->_staticFlags.bIsInvisible = 0;
+	_engine->_scene->_sceneHero->_flags.bIsInvisible = 0;
 
 	// TODO: inSceneryView
 	_engine->setPalette(_engine->_screens->_ptrPal);
diff --git a/engines/twine/scene/grid.cpp b/engines/twine/scene/grid.cpp
index 897e944e5ac..6f06385b272 100644
--- a/engines/twine/scene/grid.cpp
+++ b/engines/twine/scene/grid.cpp
@@ -742,8 +742,8 @@ bool Grid::shouldCheckWaterCol(int32 actorIdx) const {
 	if (actorIdx == OWN_ACTOR_SCENE_INDEX) {
 		ActorStruct *ptrobj = _engine->_scene->getActor(actorIdx);
 		if (_engine->_actor->_heroBehaviour != HeroBehaviourType::kProtoPack
-		 && ptrobj->_staticFlags.bComputeCollisionWithFloor
-		 && !ptrobj->_staticFlags.bIsInvisible
+		 && ptrobj->_flags.bComputeCollisionWithFloor
+		 && !ptrobj->_flags.bIsInvisible
 		 && !ptrobj->_workFlags.bIsFalling
 		 && ptrobj->_carryBy == -1) {
 			return true;
diff --git a/engines/twine/scene/movements.cpp b/engines/twine/scene/movements.cpp
index 6ed20af3cfc..30759ea27eb 100644
--- a/engines/twine/scene/movements.cpp
+++ b/engines/twine/scene/movements.cpp
@@ -419,7 +419,7 @@ void Movements::processFollowAction(int actorIdx) {
 	ActorStruct *actor = _engine->_scene->getActor(actorIdx);
 	const ActorStruct *followedActor = _engine->_scene->getActor(actor->_followedActor);
 	int32 newAngle = getAngle(actor->posObj(), followedActor->posObj());
-	if (actor->_staticFlags.bSprite3D) {
+	if (actor->_flags.bSprite3D) {
 		actor->_beta = newAngle;
 	} else {
 		initRealAngleConst(actor->_beta, newAngle, actor->_srot, &actor->realAngle);
@@ -487,7 +487,7 @@ void Movements::doDir(int32 actorIdx) {
 		}
 		return;
 	}
-	if (!actor->_staticFlags.bSprite3D && actor->_controlMode != ControlMode::kManual) {
+	if (!actor->_flags.bSprite3D && actor->_controlMode != ControlMode::kManual) {
 		actor->_beta = actor->realAngle.getRealAngle(_engine->timerRef);
 	}
 
diff --git a/engines/twine/scene/scene.cpp b/engines/twine/scene/scene.cpp
index 938ea21a521..7b9d18813e1 100644
--- a/engines/twine/scene/scene.cpp
+++ b/engines/twine/scene/scene.cpp
@@ -49,71 +49,71 @@ Scene::~Scene() {
 
 void Scene::setActorStaticFlags(ActorStruct *act, uint32 staticFlags) {
 	if (staticFlags & 0x1) {
-		act->_staticFlags.bComputeCollisionWithObj = 1;
+		act->_flags.bComputeCollisionWithObj = 1;
 	}
 	if (staticFlags & 0x2) {
-		act->_staticFlags.bComputeCollisionWithBricks = 1;
+		act->_flags.bComputeCollisionWithBricks = 1;
 	}
 	if (staticFlags & 0x4) {
-		act->_staticFlags.bCheckZone = 1;
+		act->_flags.bCheckZone = 1;
 	}
 	if (staticFlags & 0x8) {
-		act->_staticFlags.bSpriteClip = 1;
+		act->_flags.bSpriteClip = 1;
 	}
 	if (staticFlags & 0x10) {
-		act->_staticFlags.bCanBePushed = 1;
+		act->_flags.bCanBePushed = 1;
 	}
 	if (staticFlags & 0x20) {
-		act->_staticFlags.bComputeLowCollision = 1;
+		act->_flags.bComputeLowCollision = 1;
 	}
 	if (staticFlags & 0x40) {
-		act->_staticFlags.bCanDrown = 1;
+		act->_flags.bCanDrown = 1;
 	}
 	if (staticFlags & 0x80) {
-		act->_staticFlags.bComputeCollisionWithFloor = 1;
+		act->_flags.bComputeCollisionWithFloor = 1;
 	}
 
 	if (staticFlags & 0x100) {
-		act->_staticFlags.bUnk0100 = 1;
+		act->_flags.bUnk0100 = 1;
 	}
 	if (staticFlags & 0x200) {
-		act->_staticFlags.bIsInvisible = 1;
+		act->_flags.bIsInvisible = 1;
 	}
 	if (staticFlags & 0x400) {
-		act->_staticFlags.bSprite3D = 1;
+		act->_flags.bSprite3D = 1;
 	}
 	if (staticFlags & 0x800) {
-		act->_staticFlags.bObjFallable = 1;
+		act->_flags.bObjFallable = 1;
 	}
 	if (staticFlags & 0x1000) {
-		act->_staticFlags.bNoShadow = 1;
+		act->_flags.bNoShadow = 1;
 	}
 	if (staticFlags & 0x2000) {
-		act->_staticFlags.bIsBackgrounded = 1;
+		act->_flags.bIsBackgrounded = 1;
 	}
 	if (staticFlags & 0x4000) {
-		act->_staticFlags.bIsCarrierActor = 1;
+		act->_flags.bIsCarrierActor = 1;
 	}
 	if (staticFlags & 0x8000) {
-		act->_staticFlags.bUseMiniZv = 1;
+		act->_flags.bUseMiniZv = 1;
 	}
 	if (staticFlags & 0x10000) {
-		act->_staticFlags.bHasInvalidPosition = 1;
+		act->_flags.bHasInvalidPosition = 1;
 	}
 	if (staticFlags & 0x20000) {
-		act->_staticFlags.bNoElectricShock = 1;
+		act->_flags.bNoElectricShock = 1;
 	}
 	if (staticFlags & 0x40000) {
-		act->_staticFlags.bHasSpriteAnim3D = 1;
+		act->_flags.bHasSpriteAnim3D = 1;
 	}
 	if (staticFlags & 0x80000) {
-		act->_staticFlags.bNoPreClipping = 1;
+		act->_flags.bNoPreClipping = 1;
 	}
 	if (staticFlags & 0x100000) {
-		act->_staticFlags.bHasZBuffer = 1;
+		act->_flags.bHasZBuffer = 1;
 	}
 	if (staticFlags & 0x200000) {
-		act->_staticFlags.bHasZBufferInWater = 1;
+		act->_flags.bHasZBufferInWater = 1;
 	}
 }
 
@@ -180,7 +180,7 @@ bool Scene::loadSceneCubeXY(int numcube, int32 *cubex, int32 *cubey) {
 
 void Scene::loadModel(ActorStruct &actor, int32 modelIndex, bool lba1) {
 	actor._body = modelIndex;
-	if (!actor._staticFlags.bSprite3D) {
+	if (!actor._flags.bSprite3D) {
 		debug(1, "Init actor with model %i", modelIndex);
 		_engine->_resources->loadEntityData(actor._entityData, modelIndex);
 		actor._entityDataPtr = &actor._entityData;
@@ -260,7 +260,7 @@ bool Scene::loadSceneLBA2() {
 		act->_followedActor = act->_cropBottom; // TODO: is this needed? and valid?
 		act->_bonusAmount = stream.readSint16LE();
 		act->_talkColor = stream.readByte();
-		if (act->_staticFlags.bHasSpriteAnim3D) {
+		if (act->_flags.bHasSpriteAnim3D) {
 			/*act->spriteAnim3DNumber = */stream.readSint32LE();
 			/*act->spriteSizeHit = */stream.readSint16LE();
 			/*act->cropBottom = act->spriteSizeHit;*/
diff --git a/engines/twine/script/script_life.cpp b/engines/twine/script/script_life.cpp
index 9238d98f54f..a2b56725669 100644
--- a/engines/twine/script/script_life.cpp
+++ b/engines/twine/script/script_life.cpp
@@ -946,7 +946,7 @@ int32 ScriptLife::lMESSAGE(TwinEEngine *engine, LifeScriptContext &ctx) {
  */
 int32 ScriptLife::lFALLABLE(TwinEEngine *engine, LifeScriptContext &ctx) {
 	const int32 flag = ctx.stream.readByte();
-	ctx.actor->_staticFlags.bObjFallable = flag & 1;
+	ctx.actor->_flags.bObjFallable = flag & 1;
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::FALLABLE(%i)", (int)flag);
 	return 0;
 }
@@ -1338,9 +1338,9 @@ int32 ScriptLife::lOBJ_COL(TwinEEngine *engine, LifeScriptContext &ctx) {
 	const int32 collision = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::OBJ_COL(%i)", (int)collision);
 	if (collision != 0) {
-		ctx.actor->_staticFlags.bComputeCollisionWithObj = 1;
+		ctx.actor->_flags.bComputeCollisionWithObj = 1;
 	} else {
-		ctx.actor->_staticFlags.bComputeCollisionWithObj = 0;
+		ctx.actor->_flags.bComputeCollisionWithObj = 0;
 	}
 	return 0;
 }
@@ -1353,14 +1353,14 @@ int32 ScriptLife::lBRICK_COL(TwinEEngine *engine, LifeScriptContext &ctx) {
 	const int32 collision = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::BRICK_COL(%i)", (int)collision);
 
-	ctx.actor->_staticFlags.bComputeCollisionWithBricks = 0;
-	ctx.actor->_staticFlags.bComputeLowCollision = 0;
+	ctx.actor->_flags.bComputeCollisionWithBricks = 0;
+	ctx.actor->_flags.bComputeLowCollision = 0;
 
 	if (collision == 1) {
-		ctx.actor->_staticFlags.bComputeCollisionWithBricks = 1;
+		ctx.actor->_flags.bComputeCollisionWithBricks = 1;
 	} else if (collision == 2) {
-		ctx.actor->_staticFlags.bComputeCollisionWithBricks = 1;
-		ctx.actor->_staticFlags.bComputeLowCollision = 1;
+		ctx.actor->_flags.bComputeCollisionWithBricks = 1;
+		ctx.actor->_flags.bComputeLowCollision = 1;
 	}
 	return 0;
 }
@@ -1389,8 +1389,8 @@ int32 ScriptLife::lOR_IF(TwinEEngine *engine, LifeScriptContext &ctx) {
  * @note Opcode @c 0x38
  */
 int32 ScriptLife::lINVISIBLE(TwinEEngine *engine, LifeScriptContext &ctx) {
-	ctx.actor->_staticFlags.bIsInvisible = ctx.stream.readByte();
-	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::INVISIBLE(%i)", (int)ctx.actor->_staticFlags.bIsInvisible);
+	ctx.actor->_flags.bIsInvisible = ctx.stream.readByte();
+	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::INVISIBLE(%i)", (int)ctx.actor->_flags.bIsInvisible);
 	return 0;
 }
 
diff --git a/engines/twine/script/script_life_v2.cpp b/engines/twine/script/script_life_v2.cpp
index 37c79f4135a..363faaa2640 100644
--- a/engines/twine/script/script_life_v2.cpp
+++ b/engines/twine/script/script_life_v2.cpp
@@ -477,7 +477,7 @@ int32 ScriptLifeV2::lBUBBLE(TwinEEngine *engine, LifeScriptContext &ctx) {
 int32 ScriptLifeV2::lNO_CHOC(TwinEEngine *engine, LifeScriptContext &ctx) {
 	const uint8 val = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::lNO_CHOC(%i)", (int)val);
-	ctx.actor->_staticFlags.bNoElectricShock = val;
+	ctx.actor->_flags.bNoElectricShock = val;
 	return 0;
 }
 
@@ -580,7 +580,7 @@ int32 ScriptLifeV2::lSHADOW_OBJ(TwinEEngine *engine, LifeScriptContext &ctx) {
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::SHADOW_OBJ(%i, %s)", actorIdx, castShadow ? "true" : "false");
 	ActorStruct *actor = engine->_scene->getActor(actorIdx);
 	if (actor->_lifePoint > 0) {
-		actor->_staticFlags.bNoShadow = !castShadow;
+		actor->_flags.bNoShadow = !castShadow;
 	}
 	return 0;
 }
@@ -647,7 +647,7 @@ int32 ScriptLifeV2::lACTION(TwinEEngine *engine, LifeScriptContext &ctx) {
 int32 ScriptLifeV2::lSET_FRAME(TwinEEngine *engine, LifeScriptContext &ctx) {
 	const int frame = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::lSET_FRAME(%i)", (int)frame);
-	if (!ctx.actor->_staticFlags.bSprite3D) {
+	if (!ctx.actor->_flags.bSprite3D) {
 		// TODO: ObjectSetFrame(ctx.actorIdx, frame);
 	}
 	return -1;
@@ -656,7 +656,7 @@ int32 ScriptLifeV2::lSET_FRAME(TwinEEngine *engine, LifeScriptContext &ctx) {
 int32 ScriptLifeV2::lSET_SPRITE(TwinEEngine *engine, LifeScriptContext &ctx) {
 	const int16 num = ctx.stream.readSint16LE();
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::lSET_SPRITE(%i)", (int)num);
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		engine->_actor->initSprite(num, ctx.actorIdx);
 	}
 	return 0;
@@ -665,7 +665,7 @@ int32 ScriptLifeV2::lSET_SPRITE(TwinEEngine *engine, LifeScriptContext &ctx) {
 int32 ScriptLifeV2::lSET_FRAME_3DS(TwinEEngine *engine, LifeScriptContext &ctx) {
 	int sprite = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsLife, "LIFE::lSET_FRAME_3DS(%i)", (int)sprite);
-	if (ctx.actor->_staticFlags.bHasSpriteAnim3D) {
+	if (ctx.actor->_flags.bHasSpriteAnim3D) {
 		const T_ANIM_3DS *anim = engine->_resources->getAnim(ctx.actor->A3DS.Num);
 		if (sprite >= anim->Fin - anim->Deb) {
 			sprite = anim->Fin - anim->Deb;
diff --git a/engines/twine/script/script_move.cpp b/engines/twine/script/script_move.cpp
index 9b8512faaf7..1021b905bfa 100644
--- a/engines/twine/script/script_move.cpp
+++ b/engines/twine/script/script_move.cpp
@@ -98,7 +98,7 @@ int32 ScriptMove::mGOTO_POINT(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const IVec3 &sp = engine->_scene->_sceneTracks[engine->_scene->_currentScriptValue];
 	const int32 newAngle = engine->_movements->getAngle(ctx.actor->_posObj.x, ctx.actor->_posObj.z, sp.x, sp.z);
 
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		ctx.actor->_beta = newAngle;
 	} else {
 		engine->_movements->initRealAngleConst(ctx.actor->_beta, newAngle, ctx.actor->_srot, &ctx.actor->realAngle);
@@ -144,7 +144,7 @@ int32 ScriptMove::mLOOP(TwinEEngine *engine, MoveScriptContext &ctx) {
 int32 ScriptMove::mANGLE(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const int16 angle = ToAngle(ctx.stream.readSint16LE());
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::ANGLE(%i)", (int)angle);
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		return 0;
 	}
 	engine->_scene->_currentScriptValue = angle;
@@ -168,7 +168,7 @@ int32 ScriptMove::mPOS_POINT(TwinEEngine *engine, MoveScriptContext &ctx) {
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::POS_POINT(%i)", (int)engine->_scene->_currentScriptValue);
 
 	const IVec3 &sp = engine->_scene->_sceneTracks[engine->_scene->_currentScriptValue];
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		ctx.actor->_srot = 0;
 	}
 
@@ -228,7 +228,7 @@ int32 ScriptMove::mGOTO_SYM_POINT(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const IVec3 &sp = engine->_scene->_sceneTracks[engine->_scene->_currentScriptValue];
 	const int32 newAngle = LBAAngles::ANGLE_180 + engine->_movements->getAngle(ctx.actor->_posObj, sp);
 
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		ctx.actor->_beta = newAngle;
 	} else {
 		engine->_movements->initRealAngleConst(ctx.actor->_beta, newAngle, ctx.actor->_srot, &ctx.actor->realAngle);
@@ -291,7 +291,7 @@ int32 ScriptMove::mSAMPLE(TwinEEngine *engine, MoveScriptContext &ctx) {
 int32 ScriptMove::mGOTO_POINT_3D(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const int32 trackId = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::GOTO_POINT_3D(%i)", (int)trackId);
-	if (!ctx.actor->_staticFlags.bSprite3D) {
+	if (!ctx.actor->_flags.bSprite3D) {
 		return 0;
 	}
 
@@ -318,7 +318,7 @@ int32 ScriptMove::mSPEED(TwinEEngine *engine, MoveScriptContext &ctx) {
 	ctx.actor->_srot = ctx.stream.readSint16LE();
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::SPEED(%i)", (int)ctx.actor->_srot);
 
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		engine->_movements->initRealValue(LBAAngles::ANGLE_0, ctx.actor->_srot, LBAAngles::ANGLE_17, &ctx.actor->realAngle);
 	}
 
@@ -333,15 +333,15 @@ int32 ScriptMove::mBACKGROUND(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const uint8 val = ctx.stream.readByte();
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::BACKGROUND(%i)", (int)val);
 	if (val != 0) {
-		if (!ctx.actor->_staticFlags.bIsBackgrounded) {
-			ctx.actor->_staticFlags.bIsBackgrounded = 1;
+		if (!ctx.actor->_flags.bIsBackgrounded) {
+			ctx.actor->_flags.bIsBackgrounded = 1;
 			if (ctx.actor->_workFlags.bWasDrawn) {
 				engine->_redraw->_firstTime = true;
 			}
 		}
 	} else {
-		if (ctx.actor->_staticFlags.bIsBackgrounded) {
-			ctx.actor->_staticFlags.bIsBackgrounded = 0;
+		if (ctx.actor->_flags.bIsBackgrounded) {
+			ctx.actor->_flags.bIsBackgrounded = 0;
 			if (ctx.actor->_workFlags.bWasDrawn) {
 				engine->_redraw->_firstTime = true;
 			}
@@ -397,7 +397,7 @@ int32 ScriptMove::mBETA(TwinEEngine *engine, MoveScriptContext &ctx) {
 
 	ctx.actor->_beta = beta;
 
-	if (!ctx.actor->_staticFlags.bSprite3D) {
+	if (!ctx.actor->_flags.bSprite3D) {
 		engine->_movements->clearRealAngle(ctx.actor);
 	}
 
@@ -407,7 +407,7 @@ int32 ScriptMove::mBETA(TwinEEngine *engine, MoveScriptContext &ctx) {
 int32 ScriptMove::mOPEN_GENERIC(TwinEEngine *engine, MoveScriptContext &ctx, int32 angle) {
 	const int16 doorStatus = ctx.stream.readSint16LE();
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::OPEN(%i, %i)", (int)doorStatus, angle);
-	if (ctx.actor->_staticFlags.bSprite3D && ctx.actor->_staticFlags.bSpriteClip) {
+	if (ctx.actor->_flags.bSprite3D && ctx.actor->_flags.bSpriteClip) {
 		ctx.actor->_beta = angle;
 		ctx.actor->_doorWidth = doorStatus;
 		ctx.actor->_workFlags.bIsSpriteMoving = 1;
@@ -460,7 +460,7 @@ int32 ScriptMove::mOPEN_DOWN(TwinEEngine *engine, MoveScriptContext &ctx) {
  */
 int32 ScriptMove::mCLOSE(TwinEEngine *engine, MoveScriptContext &ctx) {
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::CLOSE()");
-	if (ctx.actor->_staticFlags.bSprite3D && ctx.actor->_staticFlags.bSpriteClip) {
+	if (ctx.actor->_flags.bSprite3D && ctx.actor->_flags.bSpriteClip) {
 		ctx.actor->_doorWidth = 0;
 		ctx.actor->_workFlags.bIsSpriteMoving = 1;
 		ctx.actor->_srot = -1000;
@@ -475,7 +475,7 @@ int32 ScriptMove::mCLOSE(TwinEEngine *engine, MoveScriptContext &ctx) {
  */
 int32 ScriptMove::mWAIT_DOOR(TwinEEngine *engine, MoveScriptContext &ctx) {
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::WAIT_DOOR()");
-	if (ctx.actor->_staticFlags.bSprite3D && ctx.actor->_staticFlags.bSpriteClip) {
+	if (ctx.actor->_flags.bSprite3D && ctx.actor->_flags.bSpriteClip) {
 		if (ctx.actor->_srot) {
 			ctx.undo(0);
 			return 1;
@@ -576,7 +576,7 @@ int32 ScriptMove::mSIMPLE_SAMPLE(TwinEEngine *engine, MoveScriptContext &ctx) {
 int32 ScriptMove::mFACE_HERO(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const int16 angle = ToAngle(ctx.stream.readSint16LE());
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::FACE_HERO(%i)", (int)angle);
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		return 0;
 	}
 	engine->_scene->_currentScriptValue = angle;
@@ -605,7 +605,7 @@ int32 ScriptMove::mANGLE_RND(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const int16 val1 = ctx.stream.readSint16LE();
 	const int16 val2 = ctx.stream.readSint16LE();
 	debugC(3, kDebugLevels::kDebugScriptsMove, "MOVE::LBAAngles::ANGLE_RND(%i, %i)", (int)val1, (int)val2);
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		return 0;
 	}
 
diff --git a/engines/twine/script/script_move_v2.cpp b/engines/twine/script/script_move_v2.cpp
index b1cdabe6e42..ea6f5221eab 100644
--- a/engines/twine/script/script_move_v2.cpp
+++ b/engines/twine/script/script_move_v2.cpp
@@ -149,7 +149,7 @@ int32 ScriptMoveV2::mWAIT_NB_SECOND_RND(TwinEEngine *engine, MoveScriptContext &
 
 int32 ScriptMoveV2::mSPRITE(TwinEEngine *engine, MoveScriptContext &ctx) {
 	int16 num = ctx.stream.readSint16LE();
-	if (ctx.actor->_staticFlags.bSprite3D) {
+	if (ctx.actor->_flags.bSprite3D) {
 		engine->_actor->initSprite(num, ctx.actorIdx);
 	}
 	return 0;
@@ -157,7 +157,7 @@ int32 ScriptMoveV2::mSPRITE(TwinEEngine *engine, MoveScriptContext &ctx) {
 
 int32 ScriptMoveV2::mSET_FRAME(TwinEEngine *engine, MoveScriptContext &ctx) {
 	const uint8 num = ctx.stream.readByte();
-	if (!ctx.actor->_staticFlags.bSprite3D) {
+	if (!ctx.actor->_flags.bSprite3D) {
 		engine->_actor->setFrame(ctx.actorIdx, num);
 	}
 	return 0;
@@ -165,7 +165,7 @@ int32 ScriptMoveV2::mSET_FRAME(TwinEEngine *engine, MoveScriptContext &ctx) {
 
 int32 ScriptMoveV2::mSET_FRAME_3DS(TwinEEngine *engine, MoveScriptContext &ctx) {
 	int32 num = ctx.stream.readByte();
-	if (ctx.actor->_staticFlags.bHasSpriteAnim3D) {
+	if (ctx.actor->_flags.bHasSpriteAnim3D) {
 		const T_ANIM_3DS *anim = engine->_resources->getAnim(ctx.actor->A3DS.Num);
 		if (num > (anim->Fin - anim->Deb)) {
 			num = anim->Fin - anim->Deb;
diff --git a/engines/twine/twine.cpp b/engines/twine/twine.cpp
index 778a9fa43a4..1153110efad 100644
--- a/engines/twine/twine.cpp
+++ b/engines/twine/twine.cpp
@@ -919,7 +919,7 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
 		}
 	} else if (!_screens->_flagFade) {
 		// Process give up menu - Press ESC
-		if (_input->toggleAbortAction() && _scene->_sceneHero->_lifePoint > 0 && _scene->_sceneHero->_body != -1 && !_scene->_sceneHero->_staticFlags.bIsInvisible) {
+		if (_input->toggleAbortAction() && _scene->_sceneHero->_lifePoint > 0 && _scene->_sceneHero->_body != -1 && !_scene->_sceneHero->_flags.bIsInvisible) {
 			saveTimer(false);
 			testRestoreModeSVGA(true) ;
 			const int giveUp = _menu->quitMenu();
@@ -1079,11 +1079,11 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
 #if 0 // TODO: enable me - found in the lba1 community release source code
 				// Disable collisions on Twinsen to allow other objects to continue their tracks
 				// while the death animation is playing
-				actor->_staticFlags.bObjFallable = 1;
-				actor->_staticFlags.bCheckZone = 0;
-				actor->_staticFlags.bComputeCollisionWithObj = 0;
-				actor->_staticFlags.bComputeCollisionWithBricks = 0;
-				actor->_staticFlags.bCanDrown = 1;
+				actor->_flags.bObjFallable = 1;
+				actor->_flags.bCheckZone = 0;
+				actor->_flags.bComputeCollisionWithObj = 0;
+				actor->_flags.bComputeCollisionWithBricks = 0;
+				actor->_flags.bCanDrown = 1;
 				actor->_workFlags.bIsHitting = 0;
 #endif
 			} else {
@@ -1109,7 +1109,7 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
 
 		_animations->doAnim(a);
 
-		if (actor->_staticFlags.bCheckZone) {
+		if (actor->_flags.bCheckZone) {
 			_scene->checkZoneSce(a);
 		}
 
@@ -1123,7 +1123,7 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
 			return _sceneLoopState == SceneLoopState::Finished;
 		}
 
-		if (actor->_staticFlags.bCanDrown) {
+		if (actor->_flags.bCanDrown) {
 			const uint8 brickSound = _grid->worldCodeBrick(actor->_posObj.x, actor->_posObj.y - 1, actor->_posObj.z);
 			actor->_brickSound = brickSound;
 
@@ -1138,7 +1138,7 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
 						actor->_controlMode = ControlMode::kNoMove;
 						actor->setLife(-1);
 						_actor->_cropBottomScreen = projPos.y;
-						actor->_staticFlags.bNoShadow = 1;
+						actor->_flags.bNoShadow = 1;
 					}
 				} else {
 					_sound->playSample(Samples::Explode, 1, actor->posObj(), a);
@@ -1211,9 +1211,9 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
 
 	// workaround to fix hero redraw after drowning
 	if (_actor->_cropBottomScreen && _redraw->_firstTime) {
-		_scene->_sceneHero->_staticFlags.bIsInvisible = 1;
+		_scene->_sceneHero->_flags.bIsInvisible = 1;
 		_redraw->drawScene(true);
-		_scene->_sceneHero->_staticFlags.bIsInvisible = 0;
+		_scene->_sceneHero->_flags.bIsInvisible = 0;
 	}
 
 	_scene->_newCube = SCENE_CEILING_GRID_FADE_1;




More information about the Scummvm-git-logs mailing list