Aqui,
Um código de dano pro Wellington, mas dá pra ser adaptado pra qualquer avião!
Code:
using System.Collections.Generic;
using maddox.game;
using maddox.game.world;
using maddox.GP;
public class Mission : AMission
{
/// choose aircraft to be damaged
string targetAiAircraft = "WellingtonMkIc";
/// choose delay for damage
int delayInSeconds = 30;
public override void OnPlaceEnter(Player player, AiActor actor, int placeIndex)
{
base.OnPlaceEnter(player, actor, placeIndex);
if (player.Place() != null)
{
//Point3d playerPos3d = player.Place().Pos();
//DamageTargetAiAircraft(playerPos3d, delayInSeconds, targetAiAircraft);
DamageTargetAiAircraft(delayInSeconds, targetAiAircraft);
}
}
//public void DamageTargetAiAircraft(Point3d playerPos3d, int timeInSeconds, string targetType)
public void DamageTargetAiAircraft(int timeInSeconds, string targetType)
{
foreach (int army in GamePlay.gpArmies())
{
if (GamePlay.gpAirGroups(army) != null)
foreach (AiAirGroup group in GamePlay.gpAirGroups(army))
{
if (group.GetItems() != null)
foreach (AiActor actor in group.GetItems())
{
if ((actor as AiAircraft) != null
&& (actor as AiAircraft).InternalTypeName().Contains(targetType))
{
Timeout(timeInSeconds, () => {
AiAircraft aircraft = actor as AiAircraft;
aircraft.hitNamed(part.NamedDamageTypes.Eng1CylinderHeadFire);
aircraft.hitNamed(part.NamedDamageTypes.Eng1FuelSecondariesFire);
aircraft.hitNamed(part.NamedDamageTypes.Eng1OilSecondariesFire);
});
}
}
}
}
}
}
Bookmarks