private void TreatElement(ElementObserver elementObs)
{
elementObs.isTreated = true;
EffectTransformation eTransf = elementObs.ElementDetected.Effect(true);
if (isJumping || !eTransf.isChangingSomething)
return;
TreatmentIfObstacle(eTransf);//Evite Un cas de bug ou on passerait sur un obstacle
if (eTransf.isWinner)
{
OnPlayerWin ();
return;
}
if(eTransf.isStartingJump)
{
OnPlayerJump();
}
if (eTransf.isWater && playerAssociated!=null)
{
playerAssociated.FallInWater();
}
if (eTransf.newDirection != null)
{
transform.position = CurrentDirection.calculFavoritePos(transform.position);
CurrentDirection = eTransf.newDirection;
}
if (eTransf.newPosition != new Vector3())
{
transform.position = CurrentDirection.calculFavoritePos(eTransf.newPosition);
}
}