diff --git a/binaries/data/mods/official/entities/template_unit_cavalry_melee.xml b/binaries/data/mods/official/entities/template_unit_cavalry_melee.xml index 7d40a9460e..c3368000c0 100644 --- a/binaries/data/mods/official/entities/template_unit_cavalry_melee.xml +++ b/binaries/data/mods/official/entities/template_unit_cavalry_melee.xml @@ -39,7 +39,7 @@ 5.0 0.0 - 2.0 + 5.0 1500 @@ -48,7 +48,7 @@ 10.0 0.0 - 2.0 + 5.0 1500 diff --git a/binaries/data/mods/official/entities/template_unit_infantry_ranged_archer.xml b/binaries/data/mods/official/entities/template_unit_infantry_ranged_archer.xml index ce58907d69..e2c28e8a73 100644 --- a/binaries/data/mods/official/entities/template_unit_infantry_ranged_archer.xml +++ b/binaries/data/mods/official/entities/template_unit_infantry_ranged_archer.xml @@ -48,7 +48,7 @@ 8.0 - 36.0 + 30.0 diff --git a/source/simulation/Entity.cpp b/source/simulation/Entity.cpp index d29784d65f..e98daa1f49 100644 --- a/source/simulation/Entity.cpp +++ b/source/simulation/Entity.cpp @@ -269,7 +269,16 @@ void CEntity::kill(bool keepActor) m_position_previous = m_position; m_graphics_orientation = m_orientation; m_orientation_previous = m_orientation; + snapToGround(); + + // Conform to the ground + CVector2D targetXZ = g_Game->GetWorld()->GetTerrain()->getSlopeAngleFace(this); + m_orientation.X = clamp( targetXZ.x, -1.0f, 1.0f ); + m_orientation.Z = clamp( targetXZ.y, -1.0f, 1.0f ); + m_orientation_unclamped.x = targetXZ.x; + m_orientation_unclamped.y = targetXZ.y; + updateActorTransforms(); m_actor_transform_valid = true; diff --git a/source/simulation/Projectile.cpp b/source/simulation/Projectile.cpp index a1e090c13f..024a82abab 100644 --- a/source/simulation/Projectile.cpp +++ b/source/simulation/Projectile.cpp @@ -15,7 +15,7 @@ #include "simulation/Collision.h" #include "simulation/Entity.h" -const double GRAVITY = 0.00001; +const double GRAVITY = 0.00005; const double GRAVITY_2 = GRAVITY * 0.5; CProjectile::CProjectile( const CModel* Actor, const CVector3D& Position, const CVector3D& Target, float Speed, CEntity* Originator, const CScriptObject& ImpactScript, const CScriptObject& MissScript )