Example #1
0
        public virtual Point3D GetWeatherStartPoint(Point3D loc, PvPBattleWeatherDirection direction)
        {
            if (!Options.Weather.Enabled || Options.Locations.Map == null || Options.Locations.Map == Map.Internal ||
                loc == Point3D.Zero)
            {
                return(loc);
            }

            switch (direction)
            {
            case PvPBattleWeatherDirection.None:
                return(loc.Clone3D(0, 0, 80));

            case PvPBattleWeatherDirection.Random:
                direction = _WeatherDirections.GetRandom(PvPBattleWeatherDirection.None);
                break;
            }

            int x = 0, y = 0;

            Movement.Offset((Direction)direction, ref x, ref y);

            var rand = Utility.RandomMinMax(4, 8);

            return(loc.Clone3D(x * rand, y * rand, 80));
        }
Example #2
0
        public virtual Point3D GetWeatherStartPoint(Point3D loc, PvPBattleWeatherDirection direction)
        {
            if (!Options.Weather.Enabled || Options.Locations.Map == Map.Internal || loc == Point3D.Zero)
            {
                return(loc);
            }

            switch (direction)
            {
            case PvPBattleWeatherDirection.Random:
                return(GetWeatherStartPoint(loc, _WeatherDirections.GetRandom()));

            case PvPBattleWeatherDirection.North:
                return(loc.Clone3D(0, Utility.RandomMinMax(4, 8), 80));

            case PvPBattleWeatherDirection.East:
                return(loc.Clone3D(-Utility.RandomMinMax(4, 8), 0, 80));

            case PvPBattleWeatherDirection.South:
                return(loc.Clone3D(0, -Utility.RandomMinMax(4, 8), 80));

            case PvPBattleWeatherDirection.West:
                return(loc.Clone3D(Utility.RandomMinMax(4, 8), 0, 80));

            default:
                return(loc.Clone3D(0, 0, 80));
            }
        }
Example #3
0
		public virtual Point3D GetWeatherStartPoint(Point3D loc, PvPBattleWeatherDirection direction)
		{
			if (!Options.Weather.Enabled || Options.Locations.Map == null || Options.Locations.Map == Map.Internal ||
				loc == Point3D.Zero)
			{
				return loc;
			}

			switch (direction)
			{
				case PvPBattleWeatherDirection.None:
					return loc.Clone3D(0, 0, 80);
				case PvPBattleWeatherDirection.Random:
					direction = _WeatherDirections.GetRandom(PvPBattleWeatherDirection.None);
					break;
			}

			int x = 0, y = 0;

			Movement.Offset((Direction)direction, ref x, ref y);

			var rand = Utility.RandomMinMax(4, 8);

			return loc.Clone3D(x * rand, y * rand, 80);
		}
Example #4
0
		public virtual Point3D GetWeatherStartPoint(Point3D loc, PvPBattleWeatherDirection direction)
		{
			if (!Options.Weather.Enabled || Options.Locations.Map == Map.Internal || loc == Point3D.Zero)
			{
				return loc;
			}

			switch (direction)
			{
				case PvPBattleWeatherDirection.Random:
					return GetWeatherStartPoint(loc, _WeatherDirections.GetRandom());
				case PvPBattleWeatherDirection.North:
					return loc.Clone3D(0, Utility.RandomMinMax(4, 8), 80);
				case PvPBattleWeatherDirection.East:
					return loc.Clone3D(-Utility.RandomMinMax(4, 8), 0, 80);
				case PvPBattleWeatherDirection.South:
					return loc.Clone3D(0, -Utility.RandomMinMax(4, 8), 80);
				case PvPBattleWeatherDirection.West:
					return loc.Clone3D(Utility.RandomMinMax(4, 8), 0, 80);
				default:
					return loc.Clone3D(0, 0, 80);
			}
		}