From 9eff54c217c707451d4154344316108d10a8a71c Mon Sep 17 00:00:00 2001 From: ScottNZ Date: Sat, 2 Nov 2013 17:17:19 +1300 Subject: [PATCH] Add MAD Tank and InvalidTargets field to WeaponInfo --- OpenRA.Game/GameRules/WeaponInfo.cs | 9 +- OpenRA.Mods.RA/Combat.cs | 33 ++-- OpenRA.Mods.RA/DemoTruck.cs | 10 +- OpenRA.Mods.RA/MadTank.cs | 160 +++++++++++++++++++ OpenRA.Mods.RA/OpenRA.Mods.RA.csproj | 1 + OpenRA.Mods.RA/Widgets/WorldCommandWidget.cs | 2 +- mods/ra/bits/madchrg2.aud | Bin 0 -> 19782 bytes mods/ra/bits/madexplo.aud | Bin 0 -> 26572 bytes mods/ra/bits/qtnk.shp | Bin 0 -> 30744 bytes mods/ra/bits/qtnkicon.shp | Bin 0 -> 2780 bytes mods/ra/rules/defaults.yaml | 6 +- mods/ra/rules/vehicles.yaml | 34 ++++ mods/ra/sequences/vehicles.yaml | 11 ++ mods/ra/weapons.yaml | 23 +++ 14 files changed, 265 insertions(+), 24 deletions(-) create mode 100644 OpenRA.Mods.RA/MadTank.cs create mode 100644 mods/ra/bits/madchrg2.aud create mode 100644 mods/ra/bits/madexplo.aud create mode 100644 mods/ra/bits/qtnk.shp create mode 100644 mods/ra/bits/qtnkicon.shp diff --git a/OpenRA.Game/GameRules/WeaponInfo.cs b/OpenRA.Game/GameRules/WeaponInfo.cs index 37962ee8f4..f6dff5861a 100644 --- a/OpenRA.Game/GameRules/WeaponInfo.cs +++ b/OpenRA.Game/GameRules/WeaponInfo.cs @@ -47,6 +47,8 @@ namespace OpenRA.GameRules public readonly DamageModel DamageModel = DamageModel.Normal; [Desc("Whether we should prevent prone response for infantry.")] public readonly bool PreventProne = false; + [Desc("Whether to use the provided Damage value as a maximum health percentage.")] + public readonly bool ScaleDamageByTargetHealth = false; public float EffectivenessAgainst(ActorInfo ai) { @@ -106,6 +108,7 @@ namespace OpenRA.GameRules public readonly bool Charges = false; public readonly bool Underwater = false; public readonly string[] ValidTargets = { "Ground", "Water" }; + public readonly string[] InvalidTargets = { }; public readonly int BurstDelay = 5; public readonly float MinRange = 0; @@ -140,7 +143,8 @@ namespace OpenRA.GameRules public bool IsValidAgainst(Actor a) { var targetable = a.TraitOrDefault(); - if (targetable == null || !ValidTargets.Intersect(targetable.TargetTypes).Any()) + if (targetable == null || !ValidTargets.Intersect(targetable.TargetTypes).Any() + || InvalidTargets.Intersect(targetable.TargetTypes).Any()) return false; if (Warheads.All(w => w.EffectivenessAgainst(a.Info) <= 0)) @@ -152,7 +156,8 @@ namespace OpenRA.GameRules public bool IsValidAgainst(FrozenActor a) { var targetable = a.Info.Traits.GetOrDefault(); - if (targetable == null || !ValidTargets.Intersect(targetable.GetTargetTypes()).Any()) + if (targetable == null || !ValidTargets.Intersect(targetable.GetTargetTypes()).Any() + || InvalidTargets.Intersect(targetable.GetTargetTypes()).Any()) return false; if (Warheads.All(w => w.EffectivenessAgainst(a.Info) <= 0)) diff --git a/OpenRA.Mods.RA/Combat.cs b/OpenRA.Mods.RA/Combat.cs index c50613a2a0..b327278fe5 100755 --- a/OpenRA.Mods.RA/Combat.cs +++ b/OpenRA.Mods.RA/Combat.cs @@ -108,7 +108,7 @@ namespace OpenRA.Mods.RA foreach (var victim in hitActors) { - var damage = (int)GetDamageToInflict(pos, victim, warhead, weapon, firepowerModifier); + var damage = (int)GetDamageToInflict(pos, victim, warhead, weapon, firepowerModifier, true); victim.InflictDamage(firedBy, damage, warhead); } } break; @@ -117,8 +117,10 @@ namespace OpenRA.Mods.RA { foreach (var t in world.FindTilesInCircle(targetTile, warhead.Size[0])) foreach (var unit in world.FindActorsInBox(t, t)) - unit.InflictDamage(firedBy, - (int)(warhead.Damage * warhead.EffectivenessAgainst(unit.Info)), warhead); + { + var damage = (int)GetDamageToInflict(pos, unit, warhead, weapon, firepowerModifier, false); + unit.InflictDamage(firedBy, damage, warhead); + } } break; } } @@ -161,21 +163,26 @@ namespace OpenRA.Mods.RA return (falloff[u] * (1 - t)) + (falloff[u + 1] * t); } - static float GetDamageToInflict(WPos pos, Actor target, WarheadInfo warhead, WeaponInfo weapon, float modifier) + static float GetDamageToInflict(WPos pos, Actor target, WarheadInfo warhead, WeaponInfo weapon, float modifier, bool withFalloff) { // don't hit air units with splash from ground explosions, etc if (!weapon.IsValidAgainst(target)) - return 0f; + return 0; - var health = target.Info.Traits.GetOrDefault(); - if( health == null ) return 0f; + var healthInfo = target.Info.Traits.GetOrDefault(); + if (healthInfo == null) + return 0; - var distance = (int)Math.Max(0, (target.CenterPosition - pos).Length * Game.CellSize / 1024 - health.Radius); - var falloff = (float)GetDamageFalloff(distance / warhead.Spread); - var rawDamage = (float)(warhead.Damage * modifier * falloff); - var multiplier = (float)warhead.EffectivenessAgainst(target.Info); - - return (float)(rawDamage * multiplier); + var rawDamage = (float)warhead.Damage; + if (warhead.ScaleDamageByTargetHealth) + rawDamage = (float)(rawDamage / 100 * healthInfo.HP); + if (withFalloff) + { + var distance = (int)Math.Max(0, (target.CenterPosition - pos).Length * Game.CellSize / 1024 - healthInfo.Radius); + var falloff = (float)GetDamageFalloff(distance / warhead.Spread); + rawDamage = (float)(falloff * rawDamage); + } + return (float)(rawDamage * modifier * (float)warhead.EffectivenessAgainst(target.Info)); } } } diff --git a/OpenRA.Mods.RA/DemoTruck.cs b/OpenRA.Mods.RA/DemoTruck.cs index 3ae88887dd..b0339b01bf 100644 --- a/OpenRA.Mods.RA/DemoTruck.cs +++ b/OpenRA.Mods.RA/DemoTruck.cs @@ -33,14 +33,14 @@ namespace OpenRA.Mods.RA { get { - yield return new TargetTypeOrderTargeter("DemoTruck", "DemoAttack", 5, "attack", true, false) { ForceAttack = false }; - yield return new DeployOrderTargeter("DemoDeploy", 5); + yield return new TargetTypeOrderTargeter("DetonateAttack", "DetonateAttack", 5, "attack", true, false) { ForceAttack = false }; + yield return new DeployOrderTargeter("Detonate", 5); } } public Order IssueOrder(Actor self, IOrderTargeter order, Target target, bool queued) { - if (order.OrderID != "DemoAttack" && order.OrderID != "DemoDeploy") + if (order.OrderID != "DetonateAttack" && order.OrderID != "Detonate") return null; if (target.Type == TargetType.FrozenActor) @@ -56,7 +56,7 @@ namespace OpenRA.Mods.RA public void ResolveOrder(Actor self, Order order) { - if (order.OrderString == "DemoAttack") + if (order.OrderString == "DetonateAttack") { var target = self.ResolveFrozenActorOrder(order, Color.Red); if (target.Type != TargetType.Actor) @@ -70,7 +70,7 @@ namespace OpenRA.Mods.RA self.QueueActivity(new CallFunc(() => Explode(self))); } - if (order.OrderString == "DemoDeploy") + else if (order.OrderString == "Detonate") Explode(self); } } diff --git a/OpenRA.Mods.RA/MadTank.cs b/OpenRA.Mods.RA/MadTank.cs new file mode 100644 index 0000000000..04e5c0c205 --- /dev/null +++ b/OpenRA.Mods.RA/MadTank.cs @@ -0,0 +1,160 @@ +#region Copyright & License Information +/* + * Copyright 2007-2013 The OpenRA Developers (see AUTHORS) + * This file is part of OpenRA, which is free software. It is made + * available to you under the terms of the GNU General Public License + * as published by the Free Software Foundation. For more information, + * see COPYING. + */ +#endregion + +using System.Collections.Generic; +using System.Drawing; +using OpenRA.FileFormats; +using OpenRA.Mods.RA.Activities; +using OpenRA.Mods.RA.Move; +using OpenRA.Mods.RA.Orders; +using OpenRA.Mods.RA.Render; +using OpenRA.Traits; + +namespace OpenRA.Mods.RA +{ + class MadTankInfo : ITraitInfo, Requires, Requires + { + public readonly string ThumpSequence = "piston"; + public readonly int ThumpInterval = 8; + [WeaponReference] + public readonly string ThumpDamageWeapon = "MADTankThump"; + public readonly int ThumpShakeIntensity = 3; + public readonly float2 ThumpShakeMultiplier = new float2(1, 0); + public readonly int ThumpShakeTime = 10; + + public readonly int ChargeDelay = 96; + public readonly string ChargeSound = "madchrg2.aud"; + + public readonly int DetonationDelay = 42; + public readonly string DetonationSound = "madexplo.aud"; + [WeaponReference] + public readonly string DetonationWeapon = "MADTankDetonate"; + + [ActorReference] + public readonly string DriverActor = "e1"; + + public object Create(ActorInitializer init) { return new MadTank(init.self, this); } + } + + class MadTank : IIssueOrder, IResolveOrder, IOrderVoice, ITick + { + readonly Actor self; + readonly MadTankInfo info; + readonly RenderUnit renderUnit; + readonly ScreenShaker screenShaker; + bool deployed; + int tick; + + public MadTank(Actor self, MadTankInfo info) + { + this.self = self; + this.info = info; + renderUnit = self.Trait(); + screenShaker = self.World.WorldActor.Trait(); + } + + public void Tick(Actor self) + { + if (!deployed) + return; + + if (++tick >= info.ThumpInterval) + { + if (info.ThumpDamageWeapon != null) + Combat.DoExplosion(self, info.ThumpDamageWeapon, self.CenterPosition); + screenShaker.AddEffect(info.ThumpShakeTime, self.CenterPosition, info.ThumpShakeIntensity, info.ThumpShakeMultiplier); + tick = 0; + } + } + + public IEnumerable Orders + { + get + { + yield return new TargetTypeOrderTargeter("DetonateAttack", "DetonateAttack", 5, "attack", true, false) { ForceAttack = false }; + yield return new DeployOrderTargeter("Detonate", 5); + } + } + + public Order IssueOrder(Actor self, IOrderTargeter order, Target target, bool queued) + { + if (order.OrderID != "DetonateAttack" && order.OrderID != "Detonate") + return null; + + if (target.Type == TargetType.FrozenActor) + return new Order(order.OrderID, self, queued) { ExtraData = target.FrozenActor.ID }; + + return new Order(order.OrderID, self, queued) { TargetActor = target.Actor }; + } + + public string VoicePhraseForOrder(Actor self, Order order) + { + return "Attack"; + } + + void Detonate() + { + self.World.AddFrameEndTask(w => + { + if (info.DetonationWeapon != null) + Combat.DoExplosion(self, info.DetonationWeapon, self.CenterPosition); + self.Kill(self); + }); + } + + void EjectDriver() + { + var driver = self.World.CreateActor(info.DriverActor.ToLowerInvariant(), new TypeDictionary + { + new LocationInit(self.Location), + new OwnerInit(self.Owner) + }); + var driverMobile = driver.TraitOrDefault(); + if (driverMobile != null) + driverMobile.Nudge(driver, driver, true); + } + + void StartDetonationSequence() + { + self.World.AddFrameEndTask(w => EjectDriver()); + if (info.ThumpSequence != null) + renderUnit.PlayCustomAnimRepeating(self, info.ThumpSequence); + deployed = true; + self.QueueActivity(new Wait(info.ChargeDelay, false)); + self.QueueActivity(new CallFunc(() => Sound.Play(info.ChargeSound, self.CenterPosition))); + self.QueueActivity(new Wait(info.DetonationDelay, false)); + self.QueueActivity(new CallFunc(() => Sound.Play(info.DetonationSound, self.CenterPosition))); + self.QueueActivity(new CallFunc(Detonate)); + } + + public void ResolveOrder(Actor self, Order order) + { + if (order.OrderString == "DetonateAttack") + { + var target = self.ResolveFrozenActorOrder(order, Color.Red); + if (target.Type != TargetType.Actor) + return; + + if (!order.Queued) + self.CancelActivity(); + + self.SetTargetLine(target, Color.Red); + self.QueueActivity(new MoveAdjacentTo(target)); + self.QueueActivity(new CallFunc(StartDetonationSequence)); + } + + else if (order.OrderString == "Detonate") + { + self.CancelActivity(); + self.QueueActivity(new CallFunc(StartDetonationSequence)); + } + } + } +} diff --git a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj index c627a2aef8..da1468c08b 100644 --- a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj +++ b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj @@ -251,6 +251,7 @@ + diff --git a/OpenRA.Mods.RA/Widgets/WorldCommandWidget.cs b/OpenRA.Mods.RA/Widgets/WorldCommandWidget.cs index d6ec34dd07..8243c153f1 100644 --- a/OpenRA.Mods.RA/Widgets/WorldCommandWidget.cs +++ b/OpenRA.Mods.RA/Widgets/WorldCommandWidget.cs @@ -129,7 +129,7 @@ namespace OpenRA.Mods.RA.Widgets PerformKeyboardOrderOnSelection(a => new Order("ReturnToBase", a, false)); PerformKeyboardOrderOnSelection(a => new Order("DeployTransform", a, false)); PerformKeyboardOrderOnSelection(a => new Order("Unload", a, false)); - PerformKeyboardOrderOnSelection(a => new Order("DemoDeploy", a, false)); + PerformKeyboardOrderOnSelection(a => new Order("Detonate", a, false)); return true; } diff --git a/mods/ra/bits/madchrg2.aud b/mods/ra/bits/madchrg2.aud new file mode 100644 index 0000000000000000000000000000000000000000..be920c169327320f3ede8ba8051e97d445fc39a1 GIT binary patch literal 19782 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�JZmD0pviJRIJ|*gE=qDd5Lam12Q#&!11n)?elZkflxHK zPhQ;PNl4G&J=gw24yX9ShLYqkRq=S>>+b8!+YiN{J3gNho``yXW#3&Vt+Y?Xcn|T1 zJV1nwb68MYpFFta63KeX2@+nl&1f0g)u;=8%E1Bf&W(5R_-fXy4|yHUBEgTGK>R{= zcz*{4GrwcN(R_PIWnNOU#Q}Uq~J$IsQH%82PQJ;9+r!F4J zk7=I{em5T}Tpb;q4=afNYY!^AjD0_wA+n7h(8vKt`nl@DPr5#HW8&xG;mBvB75<&s zzRnl;9>IxZc2}xzR;B6JeUL0mhe|g;k}?#&D>5^Ip|07F{qi-;$P*vvH`>zQwWsf) zqx#~Udg^2)kkwivSCDxAZuM4}XeqjX{4=J+6Z~q?56q!QWb`=rkMqddaB@MkywOcn z>HG4{OsyoPP#9moY(?>j-Y+dRa#V|~xsnUDZ2PZx$csZj)(0uebXH0mFle3ev zAeCprHwXUKmcKqbcrBeD*m6mITX@=m-1C3c`KYH`xRehUoWHI3#+;lTw7NccL_G1k z?u@1%IdYo!l1$)&;v8%V`40d09WfZ`Xf8@emfkg2GJ^B%f(IFRp#?7Ai{dx?w7}2h zYdwRXI_`|C--Q1dneA??AbS>w&Q;&ojec`i=fb<%RsZf4u2s6)d-%CDAUVfU|0E9I zAyDV!LQA%t;_#}xv|M-=5LdheD{rb#`^|R7k&-5xd!{zB_OwCmWLw zBbRL1$72lO@(YqIe&o~D;v`c6b|-->0Q~+-m~W;7Gbz8%`U2=EC6Jg`OXEKG zdH1f7??g1lEDfxGPTk<{_PwQ zo^BX3mz_(QOEkGs6gy66O6tPvKA@Ir(S@HTVcI6++Qo`KLVu433RNPem6CgVz4kiZDqnRDu zQyaN$tLQ=m!8F!;jN*2a9Kc7PqXCepj;KR&p4^0)G)vS&L15RwU*cDn+wq*PHc{YUr*VgrV;ko1`HG zVCUJm5lqmHCRD8w1UQ&b?LJ4wC`glG*?7Q%fPQ4&zi(S*P?KOdn3X|Qp_1`LjA4VM zkA<~Dy>1!yIwS^V6~xU+M)Bk0ki+HO!Ny51Unt2KXWOreS&`Saz7R!Gk!5H>A{tM| z;}pZjDVCyWngj&KdQhvc+dza{CCfAvEP5u9WT6dM8oG%LKxoGXq|iW^M%l7TMZ*B` z1FPAU{X)eP=^#2*b%wWT(?UlyJ#Dxs^CPNi80Wq z3`K!%^0Zd3+qP}Ozbt}}1`+^vim*D0rlb%7 literal 0 HcmV?d00001 diff --git a/mods/ra/bits/madexplo.aud b/mods/ra/bits/madexplo.aud new file mode 100644 index 0000000000000000000000000000000000000000..d9ade0660f63b5b8aecd343db6967b9d578c519a GIT binary patch literal 26572 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 YJNK)z_P%^9{$HMHHck7i=&KU@2Mp9$(*OVf literal 0 HcmV?d00001 diff --git a/mods/ra/bits/qtnk.shp b/mods/ra/bits/qtnk.shp new file mode 100644 index 0000000000000000000000000000000000000000..94853253b899d822b790f7de123ce60949daee6a GIT binary patch literal 30744 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 literal 0 HcmV?d00001 diff --git a/mods/ra/bits/qtnkicon.shp b/mods/ra/bits/qtnkicon.shp new file mode 100644 index 0000000000000000000000000000000000000000..10ab428a8a9e9a1fe415ca91bfe6f0463eaebd87 GIT binary patch literal 2780 zcmYjTZEO?w8ULRX+5(r{IS@BlI`U6bG8|%&V4K>99WJTuq)A)xmh-*))3ic;cGbj= z|L2M2?7Q=8k`Y1!rPazNumh+|V3Yv^@&OIv&7?2WrfHqFiGA6}N&8S~U*>+>BR$gd zNRRaU>3PS%cS3_f@RuC`^Z_vUo&Qb4{(sSk{{oP0C9Vx(+A6@{Hi&8W$Zh57&3n~* z)oS%trE&|rNMc$AzK~t5R>{hHoQJu86GB^L1?~$6E|+$xPJZm>a}avp@nWbdai+4eSe2` zA2fqGxSK3BSPug%bK^P~&t1EIl!u{%#%Du`HoLHl8R_|7C(e&{8)%A56EStBgboJgacoqB*p3YRO;N|>qr9ux6 z(-k;Njsig&1{P;~-!Z4BaUy5ta)CfD5XuKb!Bp1F<#XV2zSvUk zo}bW7fR$7^nJ~r+1LIe&Satwk-khA&Cq^c8%%bgCYHOcL{K&p5kWg1{k3xaPN`iBdFoLVw+ADCu7 zkRL2`mv7H^%=m+Sjr=|uDu%|!DDU*lse#lX|FT0_qNthTKw`)nzzJoUp`hv?v!@Ov z{l0fivyg9aZz=bd+n4Y4c@bRZ_eR1^Z7snV_ zPd$<@g)Buq81#BE@Tr&TwRv40uSbbeluI!KR|+G=QcJ0PyJtZa#787{QIrq^sCDgcG}w)8kf>d*|C1`EVGrb)M(zoWQenHXP;!;5GL> z6r@KF0ru%df#+>jiRY1x^Uf%aaq2a&;cE91D3>MqzjKcD9#JwCE;Ty}+^YeuR*qs%cRczz#hvr_*4g$k$O! z`QppBj@PWmbT-V?u%1k~hAp2*5pmChg;GnKaxRJ!HV4DR1Oda0v?Qbj@Ec76zdI{z zrFTUlGJ>_ux4wM38Lfdc85V*v7}X(^E|GMWImcjh!OpR6MvZK#ByETy+LFLyLlDxE zgjvDYpF~7afZ@YWPd}~I;&rYb4|9Sb9c$!ggU{JuM0ssa zlC?Ezcdm$#oEF9OmMno5@KsKhq_h<0!3+8J_F`(@wtvA2jAW99AA$F?>cV2<0^ycd zjYUJ|}1_Ra+yZ`-9x zA7P8u)=Z-c#}*|Xsj{>srMD#YnIKzV$)}_H7kX^-Tr=I&n{mgRnhn&2_y$0RhvdI4 zcQOKxHD%Fvy#sEM1roRXp!h5;Mo?^k<5GY=&oXY7VHnQM#8EdwjWObRvFWjHmvNc= zHuFrhu7ES(NYlIEtGo;)QAP}deQVh`%efV|llwk&vvG#u`3qdrXF2Wye*toB)>ccq z!Pf;|w6p@69L4@rM6$@9=NR@wrg@{uyr?WkqlYO#*T=PB&1MhXM5YC^*nZ0 z+p@G`*0z5%S~ks3f&b)~sDcx*=(f(Hb2;v${LaJ97{Hd;c+9IOVhZf)>Jqxu_V(S_ z*F_xPB?-@X#BYJkY+4PIM@)tZ=m6$0OD2Rq4qnY{?S2o8dm!5&DH zdz-3_w+u6Jf=41xw$fc1|GhsNxP6wu!4iCh^pm@3%itMJ?fq9{gy}5e#kK?F2Ki$U z*CBy-gPq!5(66IC;vO*8pwvbBG>Hz8_u-?AB!LZ01f$v>(wBkVgWcdD`EDboY~2m# dGB`=@w)VhQa7II**|4c9-fF${?c<$u{{!Wiw9Ehi literal 0 HcmV?d00001 diff --git a/mods/ra/rules/defaults.yaml b/mods/ra/rules/defaults.yaml index 5743e46b79..4cc6308dde 100644 --- a/mods/ra/rules/defaults.yaml +++ b/mods/ra/rules/defaults.yaml @@ -215,7 +215,7 @@ Selectable: Priority: 3 TargetableBuilding: - TargetTypes: Ground, C4, DemoTruck + TargetTypes: Ground, C4, DetonateAttack Building: Dimensions: 1,1 Footprint: x @@ -272,7 +272,7 @@ Selectable: Priority: 1 TargetableBuilding: - TargetTypes: Ground, C4, DemoTruck + TargetTypes: Ground, C4, DetonateAttack RenderBuildingWall: HasMakeAnimation: false Palette: terrain @@ -323,7 +323,7 @@ Armor: Type: Light TargetableBuilding: - TargetTypes: Ground, DemoTruck + TargetTypes: Ground, DetonateAttack ^CivInfantry: Inherits: ^Infantry diff --git a/mods/ra/rules/vehicles.yaml b/mods/ra/rules/vehicles.yaml index e0fea03a4e..94550af14f 100644 --- a/mods/ra/rules/vehicles.yaml +++ b/mods/ra/rules/vehicles.yaml @@ -766,3 +766,37 @@ CTNK: LocalYaw: -100 AttackFrontal: ChronoshiftDeploy: + +QTNK: + Inherits: ^Tank + Buildable: + Queue: Vehicle + BuildPaletteOrder: 150 + Prerequisites: fix,stek + Owner: soviet + Hotkey: q + Valued: + Cost: 2500 + Tooltip: + Name: MAD Tank + Description: Deals seismic damage to nearby vehicles\nand structures.\n Strong vs Vehicles, Buildings\n Weak vs Infantry + Health: + HP: 900 + Armor: + Type: Heavy + Mobile: + Speed: 4 + Crushes: wall, atmine, crate, infantry + RevealsShroud: + Range: 6 + Selectable: + Bounds: 44,38,0,-4 + RenderUnit: + AttackMove: + JustMove: True + Explodes: + Weapon: UnitExplodeSmall + MadTank: + -EjectOnDeath: + TargetableUnit: + TargetTypes: Ground, MADTank \ No newline at end of file diff --git a/mods/ra/sequences/vehicles.yaml b/mods/ra/sequences/vehicles.yaml index b1688f105d..a257dab998 100644 --- a/mods/ra/sequences/vehicles.yaml +++ b/mods/ra/sequences/vehicles.yaml @@ -253,4 +253,15 @@ ctnk: Start: 0 Length: 5 icon: ctnkicon + Start: 0 + +qtnk: + idle: + Start: 0 + Facings: 32 + piston: + Start: 32 + Facings: 8 + Length: 8 + icon: qtnkicon Start: 0 \ No newline at end of file diff --git a/mods/ra/weapons.yaml b/mods/ra/weapons.yaml index 219395caab..ef5f841e74 100644 --- a/mods/ra/weapons.yaml +++ b/mods/ra/weapons.yaml @@ -1327,3 +1327,26 @@ Mandible: Concrete: 10% InfDeath: 1 Damage: 60 + +MADTankThump: + InvalidTargets: MADTank + Warhead: + DamageModel: PerCell + Damage: 1 + ScaleDamageByTargetHealth: True + Versus: + None: 0% + Size: 7,6 + +MADTankDetonate: + InvalidTargets: MADTank + Warhead: + DamageModel: PerCell + Damage: 19 + ScaleDamageByTargetHealth: True + Versus: + None: 0% + Size: 7,6 + Explosion: med_explosion + ImpactSound: mineblo1.aud + SmudgeType: Crater