???
Математика на уровне МГУ

Показано с 1 по 25 из 789

Тема: Вопросы.

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    просто вирпил Аватар для Kros
    Регистрация
    18.03.2005
    Адрес
    Санкт-Петербург
    Сообщений
    1,007

    Re: Вопросы.

    Спасибо

    Попробовал втиснуть в код. В итоге вылазит ошибка в игре и ничего не считается.
    System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    Server stack trace:
    в Mission.OnBattleStarted() в c:\...\race.cs:строка 22

    Понимаю что надо как-то связать переменную Stat с моим объектом в игре через его имя (Static0)
    Сделал так: Stat = GamePlay.gpActorByName("Static0") as AiActor;
    Результат нулевой.

    Код:
    //$debug
    using maddox.game;
    using maddox.game.world;
    using maddox.GP;
    using System.Collections.Generic;
    using Math = System.Math;
    
    public class Mission : AMission
    {
        bool raseStart = false;
        AiAircraft playerPlane;
        AiActor Stat;
         
        double dis2;
     
    
        public override void OnBattleStarted()
        {
            base.OnBattleStarted();
            MissionNumberListener = -1;
    
            Stat = GamePlay.gpActorByName("Static0") as AiActor;   // это уже от себя дописал
    
            Point3d pos = Stat.Pos();   // вот на эту строку ругается
     
            if (GamePlay.gpPlayer().Place() is AiAircraft)             
                playerPlane = GamePlay.gpPlayer().Place() as AiAircraft;
            double distance = playerPlane.Pos().distance(ref pos);
            dis2 = distance;
        }
    
    
        public override void OnTickGame()
        {
            base.OnTickGame();
    
            
            GamePlay.gpHUDLogCenter(null, "расстояние равно{0}", new object[] {(dis2).ToString("f2")});
    
            if (raseStart)
            {
                double Scorost = playerPlane.getParameter(part.ParameterTypes.Z_VelocityTAS, -1);
                GamePlay.gpHUDLogCenter(null, "Скорость равна: {0}", new object[] { (Scorost * 3.6).ToString("f2") });
    
            }
    
        }
    Крайний раз редактировалось Kros; 18.10.2012 в 22:40.
    (=E95=; FW)
    i7 940, 2,93 => 3,8 ГГц, MB Gigabyte GA-EX58-DS4, 6х2Gb-DDR3-1333Mhz-Kingston, NVIDIA GeForce GTX 680 (2048 Мб), БП OCZ 550W Fatal1ty, Win7U, CH, Saitek, TrackIR, SSD Plextor-128.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •