Răsfoiți Sursa

Merge remote-tracking branch 'upstream/development' into STBImageLoading-PR

marauder2k7 1 an în urmă
părinte
comite
e6554e9abc

+ 6 - 9
Engine/source/T3D/player.cpp

@@ -5075,8 +5075,12 @@ F32 Player::_doCollisionImpact( const Collision *collision, bool fallingCollisio
    if ( ((bd > mDataBlock->minImpactSpeed && fallingCollision) || bd > mDataBlock->minLateralImpactSpeed) 
       && !mMountPending )
    {
-      if ( !isGhost() )
-         onImpact( collision->object, collision->normal * bd );
+      if (!isGhost())
+      {
+         onImpact(collision->object, collision->normal * bd);
+         mImpactSound = PlayerData::ImpactNormal;
+         setMaskBits(ImpactMask);
+      }
 
       if (mDamageState == Enabled && mState != RecoverState) 
       {
@@ -5101,13 +5105,6 @@ F32 Player::_doCollisionImpact( const Collision *collision, bool fallingCollisio
       }
    }
 
-   if ( isServerObject() && 
-      (bd > (mDataBlock->minImpactSpeed / 3.0f) || bd > (mDataBlock->minLateralImpactSpeed / 3.0f )) ) 
-   {
-      mImpactSound = PlayerData::ImpactNormal;
-      setMaskBits(ImpactMask);
-   }
-
    return bd;
 }
 

+ 11 - 1
Templates/BaseGame/game/core/clientServer/scripts/server/levelLoad.tscript

@@ -139,7 +139,7 @@ function loadMissionStage3()
    
    // Construct MOD paths
    pathOnMissionLoadDone();
-
+   getRootScene().callOnChildren("onCreateGame");
    // Mission loading done...
    echo("*** Mission loaded");
 
@@ -152,6 +152,16 @@ function loadMissionStage3()
    %hasGameMode = callGamemodeFunction("onMissionStart");
    
 }
+
+function GameBase::onCreateGame(%this)
+{
+    %db = %this.getDatablock();
+    if (%db.isMethod("onCreateGame"))
+    {
+        %db.onCreateGame(%this);
+    }
+}
+
 function endMission()
 {
    if (!isObject( getScene(0) ))