瀏覽代碼

Merge pull request #1438 from Azaezel/rektRadius

explosion cover miscalc
Areloch 9 年之前
父節點
當前提交
498ed63f0b
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      Templates/Full/game/scripts/server/radiusDamage.cs

+ 3 - 2
Templates/Full/game/scripts/server/radiusDamage.cs

@@ -29,7 +29,7 @@ function radiusDamage(%sourceObject, %position, %radius, %damage, %damageType, %
    // Use the container system to iterate through all the objects
    // within our explosion radius.  We'll apply damage to all ShapeBase
    // objects.
-   InitContainerRadiusSearch(%position, %radius, $TypeMasks::ShapeBaseObjectType);
+   InitContainerRadiusSearch(%position, %radius, $TypeMasks::ShapeBaseObjectType | $TypeMasks::DynamicShapeObjectType);
 
    %halfRadius = %radius / 2;
    while ((%targetObject = containerSearchNext()) != 0)
@@ -56,7 +56,8 @@ function radiusDamage(%sourceObject, %position, %radius, %damage, %damageType, %
       // Full damage is applied to anything less than half the radius away,
       // linear scale from there.
       %distScale = (%dist < %halfRadius)? 1.0 : 1.0 - ((%dist - %halfRadius) / %halfRadius);
-
+      %distScale = mClamp(%distScale,0.0,1.0);
+      
       // Apply the damage
       %targetObject.damage(%sourceObject, %position, %damage * %coverage * %distScale, %damageType);