Fixed missing RepairTool HitStructure particles & missing ancient weapon beam (+ added hit particles to ancient weapon). Closes #285

This commit is contained in:
Joonas Rikkonen
2018-02-25 22:42:34 +02:00
parent cb25c0711f
commit 064750d99f
2 changed files with 16 additions and 1 deletions

View File

@@ -158,9 +158,16 @@
<Holdable slots="Any,RightHand+LeftHand" aimpos="100,0" handle1="0,11" handle2="2,11"/>
<RepairTool structurefixamount="-5.0" limbfixamount="-2.0" range="600" barrelpos="30,15" particles="largeplasma">
<RepairTool structurefixamount="-5.0" limbfixamount="-2.0" range="600" barrelpos="30,15">
<Fixable name="structure"/>
<ParticleEmitter particle="largeplasma" particlespersecond="50"/>
<ParticleEmitterHitStructure particle="plasmaspark" particlespersecond="100" anglemin="-40" anglemax="40" velocitymin="100" velocitymax="800"/>
<ParticleEmitterHitItem particle="plasmaspark" particlespersecond="100" anglemin="-40" anglemax="40" velocitymin="100" velocitymax="800"/>
<ParticleEmitterHitStructure particle="plasmasmoke" particlespersecond="3" anglemin="-5" anglemax="5" velocitymin="10" velocitymax="20"/>
<ParticleEmitterHitItem particle="plasmasmoke" particlespersecond="3" anglemin="-5" anglemax="5" velocitymin="10" velocitymax="100"/>
<ParticleEmitterHitCharacter particle="fleshsmoke" particlespersecond="3" anglemin="-5" anglemax="5" velocitymin="10" velocitymax="100"/>
<StatusEffect type="OnUse" target="This" Condition="-1.0"/>
<sound file="alienweapon.ogg" type="OnUse" range="800.0" loop="true"/>

View File

@@ -235,6 +235,14 @@ namespace Barotrauma.Items.Components
Color.Red, Color.Green);
if (progressBar != null) progressBar.Size = new Vector2(60.0f, 20.0f);
Vector2 particlePos = ConvertUnits.ToDisplayUnits(pickedPosition);
if (targetStructure.Submarine != null) particlePos += targetStructure.Submarine.DrawPosition;
foreach (var emitter in ParticleEmitterHitStructure)
{
float particleAngle = item.body.Rotation + ((item.body.Dir > 0.0f) ? 0.0f : MathHelper.Pi);
emitter.Emit(deltaTime, particlePos, item.CurrentHull, particleAngle + MathHelper.Pi, -particleAngle + MathHelper.Pi);
}
#endif
targetStructure.AddDamage(sectionIndex, -StructureFixAmount * degreeOfSuccess, user);