Miguel21
Aug-05-2014, 15:43
Hi all
I fall, I do not understand why it does not work.
Even when I set the default engine damage: nothing happens.
I would like the damage apply to all aircraft (especially the players) and on a dedicated server.
Who can help me? ;)
Thanks
Miguel
// using System;
// using System.Collections;
// using maddox.game;
// using maddox.game.world;
using System.Text;
using System;
using System.Collections;
using maddox.game;
using maddox.game.world;
using part;
using System.Collections.Generic;
using System.ComponentModel;
using System.Threading;
using System.Runtime.InteropServices;
using System.Globalization;
using System.Reflection;
using maddox.GP;
using System.Text.RegularExpressions;
//GamePlay.gpHUDLogCenter("Pressed: " + menuItemIndex);
public class Mission : AMission
{
private void SetMainMenu(Player player)
{
GamePlay.gpSetOrderMissionMenu(player, false, 0, new string[] { "Damage" }, new bool[] { true });
}
private void setSubMenu(Player player)
{
GamePlay.gpSetOrderMissionMenu(player, true, 1, new string[] { "Destroy Engine", "Gfuite Réservoir 1","Gfuite Réservoir 2","Gfuite Réservoir 3","Gfuite Réservoir 4","Train Haut HS", "Sortie Train HS" },
new bool[] { false, false, false, false, false, false, false });
}
private bool action(string panne)
{
// GamePlay.gpLogServer(null, " panne " + panne, null);
for (int army = 1; army<=2; army++)
{
foreach (AiAirGroup ag in GamePlay.gpAirGroups(army))
{
foreach (AiAircraft aircraft in ag.GetItems())
{
aircraft.hitNamed(part.NamedDamageTypes.Eng1TotalF ailure); // test damage engine
aircraft.hitNamed((part.NamedDamageTypes)Enum.Pars e(typeof(part.NamedDamageTypes), panne));
// GamePlay.gpLogServer(null, " mesperso " + aircraft.Name(), null);
}
}
}
return true;
}
public override void OnOrderMissionMenuSelected(Player player, int ID, int menuItemIndex)
{
string panne = "";
if (ID == 0)
{ // main menu
if (menuItemIndex == 1)
{
setSubMenu(player);
}
}
else if (ID == 1)
{ // sub menu
if (menuItemIndex == 1)
{
panne = "Eng0TotalFailure";
action(panne);
}
else if (menuItemIndex == 2)
{
panne = "FuelTank0LargeLeak";
action(panne);
}
else if (menuItemIndex == 3)
{
panne = "FuelTank1LargeLeak";
action(panne);
}
else if (menuItemIndex == 4)
{
panne = "FuelTank2LargeLeak";
action(panne);
}
else if (menuItemIndex == 5)
{
panne = "FuelTank3LargeLeak";
action(panne);
}
if (menuItemIndex == 6)
{
panne = "UndercarriageUpLockFailureR";
action(panne);
}
if (menuItemIndex == 6)
{
panne = "UndercarriageKinematicFailureL";
action(panne);
}
SetMainMenu(player);
}
}
public override void OnPlaceEnter(Player player, AiActor actor, int placeIndex)
{
base.OnPlaceEnter(player, actor, placeIndex);
SetMainMenu(player);
}
}
I fall, I do not understand why it does not work.
Even when I set the default engine damage: nothing happens.
I would like the damage apply to all aircraft (especially the players) and on a dedicated server.
Who can help me? ;)
Thanks
Miguel
// using System;
// using System.Collections;
// using maddox.game;
// using maddox.game.world;
using System.Text;
using System;
using System.Collections;
using maddox.game;
using maddox.game.world;
using part;
using System.Collections.Generic;
using System.ComponentModel;
using System.Threading;
using System.Runtime.InteropServices;
using System.Globalization;
using System.Reflection;
using maddox.GP;
using System.Text.RegularExpressions;
//GamePlay.gpHUDLogCenter("Pressed: " + menuItemIndex);
public class Mission : AMission
{
private void SetMainMenu(Player player)
{
GamePlay.gpSetOrderMissionMenu(player, false, 0, new string[] { "Damage" }, new bool[] { true });
}
private void setSubMenu(Player player)
{
GamePlay.gpSetOrderMissionMenu(player, true, 1, new string[] { "Destroy Engine", "Gfuite Réservoir 1","Gfuite Réservoir 2","Gfuite Réservoir 3","Gfuite Réservoir 4","Train Haut HS", "Sortie Train HS" },
new bool[] { false, false, false, false, false, false, false });
}
private bool action(string panne)
{
// GamePlay.gpLogServer(null, " panne " + panne, null);
for (int army = 1; army<=2; army++)
{
foreach (AiAirGroup ag in GamePlay.gpAirGroups(army))
{
foreach (AiAircraft aircraft in ag.GetItems())
{
aircraft.hitNamed(part.NamedDamageTypes.Eng1TotalF ailure); // test damage engine
aircraft.hitNamed((part.NamedDamageTypes)Enum.Pars e(typeof(part.NamedDamageTypes), panne));
// GamePlay.gpLogServer(null, " mesperso " + aircraft.Name(), null);
}
}
}
return true;
}
public override void OnOrderMissionMenuSelected(Player player, int ID, int menuItemIndex)
{
string panne = "";
if (ID == 0)
{ // main menu
if (menuItemIndex == 1)
{
setSubMenu(player);
}
}
else if (ID == 1)
{ // sub menu
if (menuItemIndex == 1)
{
panne = "Eng0TotalFailure";
action(panne);
}
else if (menuItemIndex == 2)
{
panne = "FuelTank0LargeLeak";
action(panne);
}
else if (menuItemIndex == 3)
{
panne = "FuelTank1LargeLeak";
action(panne);
}
else if (menuItemIndex == 4)
{
panne = "FuelTank2LargeLeak";
action(panne);
}
else if (menuItemIndex == 5)
{
panne = "FuelTank3LargeLeak";
action(panne);
}
if (menuItemIndex == 6)
{
panne = "UndercarriageUpLockFailureR";
action(panne);
}
if (menuItemIndex == 6)
{
panne = "UndercarriageKinematicFailureL";
action(panne);
}
SetMainMenu(player);
}
}
public override void OnPlaceEnter(Player player, AiActor actor, int placeIndex)
{
base.OnPlaceEnter(player, actor, placeIndex);
SetMainMenu(player);
}
}