[Scummvm-git-logs] scummvm master -> ab82cacf23154cb06255086da0a7edf8f11f6793
sev-
sev at scummvm.org
Sun Oct 2 21:26:31 CEST 2016
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
2d4ce853c8 FULLPIPE: Scene11: Preserve Dude's state during swing update
ab82cacf23 FULLPIPE: Restore original swing logic in scene11
Commit: 2d4ce853c81c6a1f78df9e3b55b00e8a06eded97
https://github.com/scummvm/scummvm/commit/2d4ce853c81c6a1f78df9e3b55b00e8a06eded97
Author: Retro-Junk (bambarbee at yandex.ru)
Date: 2016-10-02T20:53:48+02:00
Commit Message:
FULLPIPE: Scene11: Preserve Dude's state during swing update
Changed paths:
engines/fullpipe/scenes/scene11.cpp
diff --git a/engines/fullpipe/scenes/scene11.cpp b/engines/fullpipe/scenes/scene11.cpp
index 6866dcf..e0f8f99 100644
--- a/engines/fullpipe/scenes/scene11.cpp
+++ b/engines/fullpipe/scenes/scene11.cpp
@@ -334,11 +334,12 @@ void sceneHandler11_jumpFromSwing() {
}
void sceneHandler11_swing0() {
+ int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY);
g_vars->scene11_dudeOnSwing->_movement = 0;
g_vars->scene11_dudeOnSwing->show1(690, 215, MV_MAN11_SWING_0, 0);
g_vars->scene11_dudeOnSwing->startAnim(MV_MAN11_SWING_0, 0, -1);
- g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex);
+ g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(phase);
g_vars->scene11_swingDirection = 0;
g_vars->scene11_swingMaxAngle = 45;
@@ -346,11 +347,12 @@ void sceneHandler11_swing0() {
}
void sceneHandler11_swing1() {
+ int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY);
g_vars->scene11_dudeOnSwing->_movement = 0;
g_vars->scene11_dudeOnSwing->show1(690, 215, MV_MAN11_SWING_1, 0);
g_vars->scene11_dudeOnSwing->startAnim(MV_MAN11_SWING_1, 0, -1);
- g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex);
+ g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(phase);
g_vars->scene11_swingDirection = 1;
g_vars->scene11_swingMaxAngle = 42;
@@ -358,11 +360,12 @@ void sceneHandler11_swing1() {
}
void sceneHandler11_swing2() {
+ int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY);
g_vars->scene11_dudeOnSwing->_movement = 0;
g_vars->scene11_dudeOnSwing->show1(690, 215, MV_MAN11_SWING_2, 0);
g_vars->scene11_dudeOnSwing->startAnim(MV_MAN11_SWING_2, 0, -1);
- g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex);
+ g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(phase);
g_vars->scene11_swingDirection = 2;
g_vars->scene11_swingMaxAngle = 48;
@@ -370,6 +373,7 @@ void sceneHandler11_swing2() {
}
void sceneHandler11_emptySwing() {
+ int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
if (g_vars->scene11_swingDirection)
sceneHandler11_swing0();
@@ -379,7 +383,7 @@ void sceneHandler11_emptySwing() {
g_vars->scene11_dudeOnSwing->show1(-1, -1, -1, 0);
g_vars->scene11_dudeOnSwing->changeStatics2(ST_KCH_EMPTY);
g_vars->scene11_dudeOnSwing->startAnim(MV_KCH_MOVE2, 0, -1);
- g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex);
+ g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(phase);
g_vars->scene11_swingInertia = 0.03; //1.9881250;
}
Commit: ab82cacf23154cb06255086da0a7edf8f11f6793
https://github.com/scummvm/scummvm/commit/ab82cacf23154cb06255086da0a7edf8f11f6793
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2016-10-02T21:26:06+02:00
Commit Message:
FULLPIPE: Restore original swing logic in scene11
Changed paths:
engines/fullpipe/scenes/scene11.cpp
diff --git a/engines/fullpipe/scenes/scene11.cpp b/engines/fullpipe/scenes/scene11.cpp
index e0f8f99..0eab1e3 100644
--- a/engines/fullpipe/scenes/scene11.cpp
+++ b/engines/fullpipe/scenes/scene11.cpp
@@ -334,6 +334,8 @@ void sceneHandler11_jumpFromSwing() {
}
void sceneHandler11_swing0() {
+ debugC(1, kDebugSceneLogic, "sceneHandler11_swing0()");
+
int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY);
g_vars->scene11_dudeOnSwing->_movement = 0;
@@ -347,6 +349,8 @@ void sceneHandler11_swing0() {
}
void sceneHandler11_swing1() {
+ debugC(1, kDebugSceneLogic, "sceneHandler11_swing1()");
+
int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY);
g_vars->scene11_dudeOnSwing->_movement = 0;
@@ -360,6 +364,8 @@ void sceneHandler11_swing1() {
}
void sceneHandler11_swing2() {
+ debugC(1, kDebugSceneLogic, "sceneHandler11_swing2()");
+
int phase = g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex;
g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY);
g_vars->scene11_dudeOnSwing->_movement = 0;
@@ -535,7 +541,7 @@ void sceneHandler11_setSwingDirection() {
else if (g_vars->scene11_swingDirection == 1)
g_vars->scene11_swingDirectionPrevTurn = 2;
else
- g_vars->scene11_swingDirectionPrevTurn = (g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex <= 45) + 1;
+ g_vars->scene11_swingDirectionPrevTurn = (g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex <= 45 ? 1 : 0) + 1;
}
void sceneHandler11_swingieSit() {
@@ -669,9 +675,17 @@ int sceneHandler11(ExCommand *cmd) {
if (!g_vars->scene11_arcadeIsOn)
goto LABEL_50;
+ int dir1;
+ int dir2;
+
+ dir2 = g_vars->scene11_swingCounterPrevTurn;
+
if (g_vars->scene11_swingCounterPrevTurn <= 0 || g_vars->scene11_swingCounter - g_vars->scene11_swingCounterPrevTurn <= 72) {
+ dir1 = g_vars->scene11_swingDirectionPrevTurn;
} else {
sceneHandler11_swing0();
+ dir1 = 0;
+ dir2 = 0;
g_vars->scene11_swingDirectionPrevTurn = 0;
g_vars->scene11_swingCounterPrevTurn = 0;
}
@@ -679,7 +693,7 @@ int sceneHandler11(ExCommand *cmd) {
if (!g_vars->scene11_arcadeIsOn)
goto LABEL_50;
- if (g_vars->scene11_swingDirection == g_vars->scene11_swingDirectionPrevTurn || g_vars->scene11_swingCounterPrevTurn <= 0 || g_vars->scene11_swingCounter - g_vars->scene11_swingCounterPrevTurn <= 2) {
+ if (g_vars->scene11_swingDirection == dir1 || dir2 <= 0 || g_vars->scene11_swingCounter - dir2 <= 2) {
LABEL_49:
if (g_vars->scene11_arcadeIsOn) {
g_fp->_behaviorManager->updateBehaviors();
@@ -688,18 +702,19 @@ int sceneHandler11(ExCommand *cmd) {
}
LABEL_50:
if (g_vars->scene11_swingIsSwinging
- || (0.0 == g_vars->scene11_swingSpeed
- && g_vars->scene11_dudeOnSwing->_movement != 0
- && g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex == 45
- && (g_vars->scene11_dudeOnSwing->changeStatics2(ST_KCH_STATIC), !g_vars->scene11_arcadeIsOn)
- && g_vars->scene11_swingIsSwinging)) {
- if (!g_vars->scene11_swingie->_movement) {
- if ((g_vars->scene11_boots->_flags & 4) && g_vars->scene11_boots->_statics->_staticsId == ST_BTS11_2) {
- sceneHandler11_swingieJumpDown();
-
- g_fp->_behaviorManager->updateBehaviors();
- g_fp->startSceneTrack();
- return res;
+ || (0.0 == g_vars->scene11_swingSpeed
+ && g_vars->scene11_dudeOnSwing->_movement
+ && g_vars->scene11_dudeOnSwing->_movement->_currDynamicPhaseIndex == 45)) {
+ g_vars->scene11_dudeOnSwing->changeStatics2(ST_KCH_STATIC);
+ if (!g_vars->scene11_arcadeIsOn && g_vars->scene11_swingIsSwinging) {
+ if (!g_vars->scene11_swingie->_movement) {
+ if ((g_vars->scene11_boots->_flags & 4) && g_vars->scene11_boots->_statics->_staticsId == ST_BTS11_2) {
+ sceneHandler11_swingieJumpDown();
+
+ g_fp->_behaviorManager->updateBehaviors();
+ g_fp->startSceneTrack();
+ return res;
+ }
}
g_vars->scene11_swingie->startAnim(MV_SWR_SWING, 0, -1);
}
@@ -709,20 +724,25 @@ int sceneHandler11(ExCommand *cmd) {
return res;
}
- if (g_vars->scene11_swingDirectionPrevTurn == 1) {
- if (!g_vars->scene11_swingDirection)
+ if (dir1 == 1) {
+ if (!g_vars->scene11_swingDirection) {
sceneHandler11_swing1();
- else
- sceneHandler11_swing0();
- } else if (g_vars->scene11_swingDirectionPrevTurn == 2) {
- if (!g_vars->scene11_swingDirection)
+ LABEL_48:
+ g_vars->scene11_swingCounterPrevTurn = g_vars->scene11_swingCounter;
+ goto LABEL_49;
+ }
+ } else {
+ if (dir1 != 2)
+ goto LABEL_48;
+
+ if (!g_vars->scene11_swingDirection) {
sceneHandler11_swing2();
- else
- sceneHandler11_swing0();
+ goto LABEL_48;
+ }
}
- g_vars->scene11_swingCounterPrevTurn = g_vars->scene11_swingCounter;
- goto LABEL_49;
+ sceneHandler11_swing0();
+ goto LABEL_48;
}
if (x >= g_fp->_sceneRect.left + 200) {
if (x <= g_fp->_sceneRect.right - 200) {
More information about the Scummvm-git-logs
mailing list