forked from Mirrors/openclonk
clonks do not attempt to scale underwater (#1176)
parent
0843c29f42
commit
6d9cb0c411
|
@ -3089,7 +3089,7 @@ void C4Object::ContactAction()
|
|||
break;
|
||||
case DFA_SWIM:
|
||||
// Try corner scale out
|
||||
if (!GBackLiquid(GetX(),GetY()-1+Def->Float*Con/FullCon-1))
|
||||
if (!GBackSemiSolid(GetX(),GetY()-1+Def->Float*Con/FullCon-1))
|
||||
if (ObjectActionCornerScale(this)) return;
|
||||
break;
|
||||
}
|
||||
|
@ -3159,7 +3159,7 @@ void C4Object::ContactAction()
|
|||
return;
|
||||
case DFA_SWIM:
|
||||
// Only scale if swimming at the surface
|
||||
if (!GBackLiquid(GetX(),GetY()-1+Def->Float*Con/FullCon-1))
|
||||
if (!GBackSemiSolid(GetX(),GetY()-1+Def->Float*Con/FullCon-1))
|
||||
{
|
||||
// Try scale, only if swimming at the surface.
|
||||
if (ComDirLike(Action.ComDir, COMD_Left))
|
||||
|
@ -3213,7 +3213,7 @@ void C4Object::ContactAction()
|
|||
return;
|
||||
case DFA_SWIM:
|
||||
// Only scale if swimming at the surface
|
||||
if (!GBackLiquid(GetX(),GetY()-1+Def->Float*Con/FullCon-1))
|
||||
if (!GBackSemiSolid(GetX(),GetY()-1+Def->Float*Con/FullCon-1))
|
||||
{
|
||||
// Try scale
|
||||
if (ComDirLike(Action.ComDir, COMD_Right))
|
||||
|
|
Loading…
Reference in New Issue