PDA

View Full Version : Changing/renewing your aircraft online.


Aussie Pilot
11-18-2012, 10:51 AM
I made a dogfight mission with a spawn area at hawkinge. It comprises of Spitfire's and hurricanes for test flight purposes as a few of us learn to fly this sim and sort out all the idiosyncracies of a new mision builder and online server. Nothing else in the mission, just that.

I start the server, join and fly around in a spit, when i land I then want to try the Hurri out but can't swap out of the spit. Same goes if i prang my prop before takeoff, doh !!!, i can't get a new plane either. It just keeps reloading me into the same plane, broken prop and all. I was able to change after dieing of course:grin:.

In the realism settings i have left all the plane swapping options etc unchecked.

How then do i go about swapping planes after landing or pranging?

FG28_Kodiak
11-18-2012, 03:12 PM
Click on your side flag ;)

Aussie Pilot
11-19-2012, 09:29 AM
Click on your side flag ;)

Thanks kodiak, that worked, however, when I respawned in a new aircraft my old one was still sitting there on it's nose. So then i left my second plane there without flying it and swapped to the hurricane. When I spawned it looked like ai had somehow taken over my second plane and was taxiing for takeoff, weird seen i have no ai in the mission.

After flying and building missions in IL-2 1946 for years, some things in this sim just don't add up.

FG28_Kodiak
11-19-2012, 02:30 PM
Add this script to your mission:

using System;
using System.Collections.Generic;
using maddox.game;
using maddox.game.world;


public class Mission : AMission
{


public override void OnBattleStarted()
{
base.OnBattleStarted();

MissionNumberListener = -1;
}



public override void OnPlaceLeave(Player player, AiActor actor, int placeIndex)
{
base.OnPlaceLeave(player, actor, placeIndex);

Destroy(actor);
}



private bool IsDestroyable(AiActor actor)
{
AiCart cart = actor as AiCart;

if (cart != null)
{
//check if a player is present in actor
for (int i = 0; i < cart.Places(); i++)
if (cart.Player(i) != null)
return false;
}
return true;
}


private void Destroy(AiActor actor)
{
AiCart cart = actor as AiCart;

if (cart != null && IsDestroyable(actor))
cart.Destroy();
}

}


Then the used plane will removed after leaving ;)

Aussie Pilot
11-19-2012, 10:03 PM
Thanks Kodiak. Being new to this FMB I haven't done any scripting before, so I have a few questions.

1) Is this script a fix someone made for the game or is it some of the scripting I'll need to learn as i get further into mission building?

2) Where do I need to copy and paste it to? I'm guessing my mission file somewhere, which i'll find, but where about's in the mission file? or should I do it in FMB ?

Thanks for your help.

FG28_Kodiak
11-20-2012, 04:45 AM
1) Is this script a fix someone made for the game or is it some of the scripting I'll need to learn as i get further into mission building?

This script is from me, i use it to remove player used planes from multiplayer missions. It's only nessesary for multiplayer missions, if a player leaves his plane the AI getting active and fly the plane for the player, but this is not always practible, for example if the plane is damaged. :rolleyes:


2) Where do I need to copy and paste it to? I'm guessing my mission file somewhere, which i'll find, but where about's in the mission file? or should I do it in FMB ?


Open the script window (edit menu) and paste the code above into it, then save it.
http://img12.imageshack.us/img12/6449/il2edi01.jpg

superbee15
11-20-2012, 06:14 AM
Kodiak

Is it just ok to add the script or is it necessary to add some flag or something to you config file for scripts to work?

I am working with AP in trying to understand mission building.

Thanks

FG28_Kodiak
11-20-2012, 06:34 AM
No it's not nessesary to add a flag. If there is a .cs file with the same name as the missionfile it will be loaded and executed (if there are no errors in the script). You can check errors by open the console window in game.
The .cs file with the correct name is automatically created if you press save in the script window.

Aussie Pilot
11-20-2012, 06:50 AM
Cheers mate, i'll add that to my mission.

Aussie Pilot
11-24-2012, 12:57 AM
Hi kodiak.
I put your script in as suggested and it worked, thanks. But the problem is it seems to affect other things.
I have a mission that spawns He 111's when a truck is destoyed. (I believe you know it, Salmo has been helping with it also). Anyway, even though i can't get my mission to work, i put your script in the mission i copied from Salmo (which does work) and it stopped the bombers from spawning. So i deleted the cs. file and they worked again.

I don't get it !!! When I open the script in FMB and put in the trigger info etc, it doesnt create a cs file, all triggering info is stored in the mis.file as you know. But anything in the script tab of the script box seems to create a cs.file ( i think i'm correct so far ?). So why then would your script file interfere with the bombers spawning?

There seems to be way to much unneccessary crap in this FMB.