Пример #1
0
        public static float NextMovement(this MovementFrequency freq)
        {
            switch (freq)
            {
            case MovementFrequency.Always:
                return(0);

            case MovementFrequency.Often:
                return(Randomizer.Next(100, 250));

            case MovementFrequency.Frequently:
                return(Randomizer.Next(250, 500));

            case MovementFrequency.Normally:                     //More realistic (sometime faster, sometime slower)
                return(Randomizer.Next(300, 650) - (Randomizer.NextBool() ? Randomizer.Next(75, 125) : 0));

            case MovementFrequency.Occasionally:
                return(Randomizer.Next(400, 800));

            case MovementFrequency.Hardly:
                return(Randomizer.Next(600, 1000));

            case MovementFrequency.Rarely:
                return(Randomizer.Next(1000, 1400));

            case MovementFrequency.Never:
                return(Single.MaxValue);
            }

            return(0f);
        }
Пример #2
0
        private void Initialize(string name, int dataID, int x, int y)
        {
            Name              = name;
            EventDataID       = dataID;
            MapX              = x;
            MapY              = y;
            RealX             = x * 32;
            RealY             = y * 32;
            EventDirection    = FacingDirection.Down;
            SpriteID          = -1;
            TriggerType       = EventTriggerType.None;
            Passable          = false;
            Priority          = RenderPriority.BelowPlayer;
            Speed             = MovementSpeed.Normal;
            Frequency         = MovementFrequency.Normal;
            ParticleEmitterID = -1;

            RandomMovement = false;
            Enabled        = true;
            Locked         = false;
            OnBridge       = false;

            PositionChanged       = false;
            DirectionChanged      = false;
            SpriteChanged         = false;
            RenderPriorityChanged = false;
            EnabledChanged        = false;
        }