예제 #1
0
        void InitMovementInfoForBase()
        {
            VehicleFlags vehicleFlags = (VehicleFlags)GetVehicleInfo().Flags;

            if (vehicleFlags.HasAnyFlag(VehicleFlags.NoStrafe))
            {
                _me.AddUnitMovementFlag2(MovementFlag2.NoStrafe);
            }
            if (vehicleFlags.HasAnyFlag(VehicleFlags.NoJumping))
            {
                _me.AddUnitMovementFlag2(MovementFlag2.NoJumping);
            }
            if (vehicleFlags.HasAnyFlag(VehicleFlags.Fullspeedturning))
            {
                _me.AddUnitMovementFlag2(MovementFlag2.FullSpeedTurning);
            }
            if (vehicleFlags.HasAnyFlag(VehicleFlags.AllowPitching))
            {
                _me.AddUnitMovementFlag2(MovementFlag2.AlwaysAllowPitching);
            }
            if (vehicleFlags.HasAnyFlag(VehicleFlags.Fullspeedpitching))
            {
                _me.AddUnitMovementFlag2(MovementFlag2.FullSpeedPitching);
            }
        }
예제 #2
0
        private void SetupMoveFlags()
        {
            VehicleFlags flags = Entry.VehicleEntry.Flags;

            if (flags.HasAnyFlag(VehicleFlags.PreventJumping))
            {
                MovementFlags2 |= MovementFlags2.PreventJumping;
            }
            if (flags.HasAnyFlag(VehicleFlags.PreventStrafe))
            {
                MovementFlags2 |= MovementFlags2.PreventStrafe;
            }
            if (flags.HasAnyFlag(VehicleFlags.FullSpeedTurning))
            {
                MovementFlags2 |= MovementFlags2.FullSpeedTurning;
            }
            if (flags.HasAnyFlag(VehicleFlags.AlwaysAllowPitching))
            {
                MovementFlags2 |= MovementFlags2.AlwaysAllowPitching;
            }
            if (!flags.HasAnyFlag(VehicleFlags.FullSpeedPitching))
            {
                return;
            }
            MovementFlags2 |= MovementFlags2.FullSpeedPitching;
        }