![]() |
#31
|
||||
|
||||
![]()
Thanks for the answer ZaltysZ,
the first part of my post was just wishful thinking, pointed at players which abandon a working plane so they dont have to fly home and land. And for your second point, i think i saw part of the problems in form of fata-morgana-bomber-raids, which disappear as you come closer to them, on the syn-server.
__________________
Win 7/64 Ult.; Phenom II X6 1100T; ASUS Crosshair IV; 16 GB DDR3/1600 Corsair; ASUS EAH6950/2GB; Logitech G940 & the usual suspects ![]() |
#32
|
|||
|
|||
![]()
Can a script apply say full aileron before disabling controls or set engine on fire?
|
#33
|
|||
|
|||
![]()
In my opinion this is what we need:
Quote:
Last edited by Ataros; 04-27-2011 at 07:56 AM. |
#34
|
||||
|
||||
![]()
About bombers. Doesn't the problem dissappear if their last waypoint is "landing"?
|
#35
|
|||
|
|||
![]()
I would think so... But landing takes time ...
I just want them to disappear once they get back over 'friendly' areas |
#36
|
||||
|
||||
![]()
Destroy() method of AiAircraft inside OnTaskCompleted().
|
#37
|
|||
|
|||
![]()
Yes, we need someone to make this script to allow just copy-and-paste for those who does not know C# or any other language at all but makes missions in FMB like myself. Please...
![]() This is an example of my mission that runs on Repka server atm. http://forum.1cpublishing.eu/showpos...8&postcount=24 I have no idea what I should put in the .cs file to make "Destroy() method of AiAircraft inside OnTaskCompleted(). " work. Another thing is that aircraft should fall to ground before it is destroyed with some timeout ideally as described here http://forum.1cpublishing.eu/showpos...1&postcount=33. Last edited by Ataros; 04-27-2011 at 09:15 AM. |
#38
|
|||
|
|||
![]()
So have modified ZaltysZ script, with some damage
![]() Code:
using System; using maddox.game; using maddox.game.world; using System.Collections.Generic; public class Mission : AMission { public void _DespawnEmptyPlane(AiActor actor) { if (actor == null) { return;} Player[] Players = GamePlay.gpRemotePlayers(); bool PlaneIsEmpty = true; foreach (Player i in Players) { if ((i.Place() as AiAircraft) == (actor as AiAircraft)) { PlaneIsEmpty = false; break; } } if (PlaneIsEmpty) { (actor as AiAircraft).hitNamed(part.NamedDamageTypes.ControlsElevatorDisabled); (actor as AiAircraft).hitNamed(part.NamedDamageTypes.ControlsAileronsDisabled); (actor as AiAircraft).hitNamed(part.NamedDamageTypes.ControlsRudderDisabled); (actor as AiAircraft).hitNamed(part.NamedDamageTypes.Eng0TotalFailure); //for 2mots (actor as AiAircraft).hitNamed(part.NamedDamageTypes.Eng1TotalFailure); //wait 10min Timeout(600.0, () => { (actor as AiAircraft).Destroy(); }); } } public override void OnPlaceLeave(Player player, AiActor actor, int placeIndex) { base.OnPlaceLeave(player, actor, placeIndex); _DespawnEmptyPlane(actor); } } |
#39
|
|||
|
|||
![]()
FG28_Kodiak, thank you so much! i will try it tonight.
|
#40
|
||||
|
||||
![]()
Guys, don't bother with engines, kill fuel pump instead (all engines should stop).
![]() By the way, what will happen if player presses "Create" multiple time? There will probably be lots of planes on ground without working controls and engines. There is handy method IsAirborne(). If it returns false, plane should be destroyed immediately; if it returns true, only then disabling of controls should commence. Last edited by ZaltysZ; 04-27-2011 at 02:09 PM. |
![]() |
Thread Tools | |
Display Modes | |
|
|