Expand description
A crate providing advanced and general features for games. It can be used just as much for simple ascii games than for full distributed mmorpg games.
Structs§
- The definition of a stat effector. This modifies temporarily the value of a stat.
- Holds the definitions of the stat effectors.
- An active instance of an effector.
- A collection of currently active effectors.
- A team with the ability to claim ownership over terrain. WIP
- Fags that modify how a faction behaves and how the claimed terrain behaves.
- Settings of the faction module.
- Generics
- Builder for
Inventory
. - An
ItemDefinition
stores the different properties of a type of item. It is a schema that contains the data which isn’t changing between different item instances. - Builder for
ItemDefinition
. - A simple repository mapping the key K to the corresponding
ItemDefinition
. - An
ItemInstance
is a stack of item. It refers to theItemDefinition
’s key. The associatedItemDefinition
contains the data describing that object type. An item stack can be composed of one or many of the same item. It can also have a durability, which decreases when the item is used usingInventory::use_item
. - Builder for
ItemInstance
. - A transition in progress.
- A transition from one or more items into one or more different items. Can be used for all sorts of crafting.
- Builder for
ItemTransitionDefinition
. - The definitions of all known stats.
- The settings related to terrain claiming and how the world is divided into claimable chunks.
- A levelable element. It can be anything: an item, a player, a monster, a skill.
- A loot tree based on the lower partial function construct. Each loot tree node has a chance associated with it.
- A builder for the
LootTree
. - A weighted node of a loot tree with the corresponding result.
- The definition of an usable skill.
- Builder for
SkillDefinition
. - Holds the definitions of all known skills.
- An instance of a skill. There is one per skill per entity that can use it. Holds the cooldown for each skill.
- The set of skill that can be used by an entity.
- Condition based on a stat to activate something.
- The definition of a stat. A stat is a named float value optionally constrained between two other values and with a default value. It is used to create effects, conditions and in general to hold state for each entity. For example, it can be used to contain the health or mana of an entity just as well as it can be used to keep track of the number of enemies positioned around an entity.
- Builder for
StatDefinition
. - The definitions of all known stats.
- An instance of a stat. Contains a base value as well as a value after applying the stat effectors.
- Builder for
StatInstance
. - Holds the instances of all the stats an entity has.
- Tiered element. Simply adds a numerical value to any element.
- An unlockable element. It can be unlocked to access the inner value if all conditions are met:
- Builder for
Unlockable
. - A structure holding all unlockables.
- Base struct for the user of a game.
- A clan. This is a group of multiple users.
- The settings of user groups.
Enums§
- What happens when the transition is stopped or conditions aren’t met anymore for it to continue.
- The way this effector modifies the stat.
- Errors that can occur while using factions.
- The way the inventory size is handled.
- The different errors that can happen when interacting with the
Inventory
. - The way items are removed from the inventory. Indicates if empty spots are left, and if not, how to fill them.
- A condition based on a stat’s value.
- The way items are used in a transition.
Traits§
- A trait that can calculate the level for something that can accumulate experience. We suggest using
PartialFunction
when implementing this trait. - A trait defining which items can be inserted into each inventory slot type.
Type Aliases§
- Alias type. List of all known factions.
- Alias type. Result of faction methods that can fail.
- The list of all known users.