1C Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official 1C Company forum > 1C Publishing > IL-2 Sturmovik: Cliffs of Dover > FMB, Mission & Campaign builder Discussions

Reply
 
Thread Tools Display Modes
  #11  
Old 01-24-2012, 08:16 PM
FG28_Kodiak FG28_Kodiak is offline
Senior Member
 
Join Date: Dec 2009
Location: Swabia->Bavaria->Germany
Posts: 884
Default

Have delete my post.
Reply With Quote
  #12  
Old 11-02-2013, 11:05 PM
Riksen Riksen is offline
Approved Member
 
Join Date: Apr 2011
Posts: 41
Default

How can I get this to work with the ontrigger feature? I want to set the message display only when the aircrafts enter the trigger zone and not by time ... Is it possible?
Reply With Quote
  #13  
Old 11-03-2013, 07:40 AM
Riksen Riksen is offline
Approved Member
 
Join Date: Apr 2011
Posts: 41
Default Never mind I got it ....

Wow ... I made it work with triggers as well. Sorry if I sound overly exited ... It's just all new to me. Well thxs for the tutorial guys.

Im posting the code here with both examples in one file, that is, messages on the timer and messages with a pass through trigger.

Code:
using System;
using maddox.game;
using maddox.game.world;


public class Mission : AMission {

    AiActor a1;
    AiAircraft airc1;

    public override void OnBattleStarted() {
        base.OnBattleStarted();
        a1 = GamePlay.gpActorByName("0:BoB_LW_JG54_Stab.000");


        if (a1 == null) {
            GamePlay.gpLogServer(null, "SCRIPT ERROR: Aircraft not found\n", new object[] { });
        }

        airc1 = (AiAircraft)a1;
    }


    public override void OnTickGame() {
        if (Time.tickCounter() == 300) {
            double initTime = 0.0;
            airc1.SayToGroup(airc1.AirGroup(), "1_mile");
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "1_mile");
                });
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "Cargo_Ships");
                });
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "Destroy_targets_left_to_right");
                });
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "Attack");
                });
        }	
    }


    public override void OnTrigger(int missionNumber, string shortName, bool active) {
        if ("trigger01".Equals(shortName) && active) {
            double initTime = 0.0;
			    Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "K");
			    });
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "Loitering_here");    
                });
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "Pay_attention");       
                });
                Timeout(initTime += 5.0, () => {
                    airc1.SayToGroup(airc1.AirGroup(), "Please_climb_now");        
                });                       
        }
    }
}
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:18 AM.

Based on a design by: Miner Skinz.com

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Copyright © 2007 1C Company. All rights reserved.