
com.wandrell.tabletop.interval.table.package-info Maven / Gradle / Ivy
Show all versions of intervals Show documentation
/**
* Copyright 2015 the original author or authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
/**
* Provides an API and default implementations for the intervals tables.
*
* An intervals table is basically an interval divided into several smaller
* intervals, each of them with a value assigned to it.
*
* Commonly, all the intervals, are integer intervals and, obviously, they
* create a bigger interval when joined. Still, it is also possible that the
* contained intervals would overlap, or leave gaps, but this is not common.
*
* It should be noted that these intervals are meant to be used for assigning
* values to roll results, and this will affect their use and shape.
*
* An example of these tables is Bloodbowl's weather table:
*
*
* Interval
* Result
*
*
* 2
* Sweltering Heat
*
*
* 3
* Very Sunny
*
*
* 4-10
* Nice
*
*
* 11
* Pouring Rain
*
*
* 12
* Blizzard
*
*
*
* To use this table two dice of six sides are rolled, and the result is
* compared to the first column. Then the weather event on the second column is
* applied to the game.
*
* This is all represented by the
* {@link com.wandrell.tabletop.interval.table.IntervalsTable IntervalsTable}
* interface, and it's default implementation
* {@link com.wandrell.tabletop.interval.table.DefaultIntervalsTable
* DefaultIntervalsTable}.
*/
package com.wandrell.tabletop.interval.table;