Esempio n. 1
0
        void InitSelf(L2D_BattleInit initMsg)
        {
            Data.Player player = new Data.Player();
            player.isSelf = true;
            Data.Tank tank = new Data.Tank();
            tank.isPlayer                = true;
            tank.isCaption               = true;
            tank.tankType                = 1000;
            tank.moveData.detectionLen   = new F64(5);
            tank.moveData.detectionWidth = new F64(0.8);

            tank.SetPos(new F64Vec3(0, 0, -10));
            tank.SetDir(new F64Vec3(0, 0, 1));
            tank.SetSpeed(new F64(5));
            tank.SetTurnSpeed(new F64(15));
            tank.SetTurnType(UFrame.AI.TurnType.None);
            player.tanks.Add(tank);
            logicDataManager.AddTank(tank);

            UFrame.AI.SimpleMoveObjectCtr tankCtr = new UFrame.AI.SimpleMoveObjectCtr(this);
            tankCtr.moveObject = tank;
            logicDataManager.AddTankCtr(tankCtr);

            logicDataManager.AddPlayer(player);

            TankGroupInit tgi = new TankGroupInit();

            tgi.id        = tank.GetID();
            tgi.isSelf    = player.isSelf;
            tgi.isPlayer  = tank.isPlayer;
            tgi.isCaptain = tank.isCaption;

            tgi.tank_type      = tank.tankType;
            tgi.pos            = tank.GetPos().ToUnityVector3();
            tgi.dir            = tank.GetDir().ToUnityVector3();
            tgi.detectionLen   = tank.moveData.detectionLen.Float;
            tgi.detectionWidth = tank.moveData.detectionWidth.Float;
            initMsg.tankGroup.Add(tgi);
        }