Thread: Speedbar
View Single Post
  #1  
Old 07-22-2011, 06:10 AM
fearlessfrog fearlessfrog is offline
Approved Member
 
Join Date: Jul 2010
Posts: 64
Default Speedbar

I wrote a small c# script to display an IL2-style 'speed bar' in CoD. It's not great, but was fun to do. It's in this thread here:

http://simhq.com/forum/ubbthreads.ph...e_airspee.html

Since a few google searches led me to the people helping to explore scripting here, it seems proper to post back in-case it helps others.

Code:
using System;
using maddox.game;
using maddox.game.world;
using maddox.GP;
using System.Collections.Generic;


public class Mission : AMission
{
    private double nextMsgTime = 0;
                        
    public override void OnTickGame()
    {
        {
            base.OnTickGame();
            
            if (Time.current() > nextMsgTime)
            {
                nextMsgTime = Time.current() + 3.0; // 3 ish seconds to next message
                
                // Leave this in if you want to test a timer
                //GamePlay.gpHUDLogCenter("Time elapsed (in seconds) = " + Time.current() + 
                //    ", next message will be at " + nextMsgTime);
                
                if (GamePlay.gpPlayer() != null) // check if we have a player.
                {
                    if (GamePlay.gpPlayer().Place() != null)
                    {
                        Player me = GamePlay.gpPlayer();
                        Player[] all = { me };

                        AiActor where = me.Place();
                        Point3d pos = me.Place().Pos();
                        
                        double height = ((pos.z + 62.5) / 306.5) * 1000;

                        AiAircraft aircraft = (GamePlay.gpPlayer().Place() as AiAircraft);
                        double ias = aircraft.getParameter(part.ParameterTypes.I_VelocityIAS, 0);                        
                        double altitude = aircraft.getParameter(part.ParameterTypes.I_Altitude, 0);
                        double mag_compass = aircraft.getParameter(part.ParameterTypes.I_MagneticCompass, 0);
                        double rep_compass = aircraft.getParameter(part.ParameterTypes.I_RepeaterCompass, 0);

                        double z_altitude = aircraft.getParameter(part.ParameterTypes.Z_AltitudeMSL, 0);
                        double z_ias = aircraft.getParameter(part.ParameterTypes.Z_VelocityTAS, 0);
                        double z_orientation = aircraft.getParameter(part.ParameterTypes.Z_Coordinates, 0);

                        GamePlay.gpLogServer(all, 
                                    "Frogbar v0.1:           HDG: " +
                                    mag_compass.ToString("0") +
                                    "           ALT: " +
                                    height.ToString("0") +
                                    "           SPD: " +
                                    ias.ToString("0"), null);
                    }
                }
            }                       
        }     
    }
}
Cheers!

Last edited by fearlessfrog; 07-22-2011 at 06:28 AM.
Reply With Quote