64 lines
1.9 KiB
C#
64 lines
1.9 KiB
C#
using PkmnLib.Dynamic.Models;
|
|
using PkmnLib.Dynamic.Models.Choices;
|
|
|
|
namespace PkmnLib.Dynamic.ScriptHandling;
|
|
|
|
/// <summary>
|
|
/// A script category defines a sub-group of scripts. This can be used to have multiple scripts with
|
|
/// the same name, but a different script. It should be completely valid for a move to have the same
|
|
/// name as an ability, or more commonly: for a script attached to a Pokemon to have the same name as
|
|
/// a move that placed it there.
|
|
/// </summary>
|
|
public enum ScriptCategory
|
|
{
|
|
/// <summary>
|
|
/// A script that belongs to a move. This generally is only the script that is attached to a
|
|
/// <see cref="IMoveChoice"/> and <see cref="IExecutingMove"/>
|
|
/// </summary>
|
|
Move = 0,
|
|
|
|
/// <summary>
|
|
/// A volatile script effect that is attached to a move choice.
|
|
/// </summary>
|
|
MoveVolatile = 1,
|
|
|
|
/// <summary>
|
|
/// An ability script. Scripts in this category are always abilities, and therefore always
|
|
/// attached to a Pokemon.
|
|
/// </summary>
|
|
Ability = 2,
|
|
|
|
/// <summary>
|
|
/// A non volatile status script. Scripts in this category are always non volatile statuses, and
|
|
/// therefore always attached to a Pokemon.
|
|
/// </summary>
|
|
Status = 3,
|
|
|
|
/// <summary>
|
|
/// A volatile status script. Scripts in this category are always volatile status effects, and
|
|
/// therefore always attached to a Pokemon.
|
|
/// </summary>
|
|
Pokemon = 4,
|
|
|
|
/// <summary>
|
|
/// A script that can be attached to an entire side.
|
|
/// </summary>
|
|
Side = 5,
|
|
|
|
/// <summary>
|
|
/// A script that can be attached to the entire battle.
|
|
/// </summary>
|
|
Battle = 6,
|
|
|
|
/// <summary>
|
|
/// A special script for weather, for use on battles.
|
|
/// </summary>
|
|
Weather = 7,
|
|
|
|
Terrain = 8,
|
|
|
|
/// <summary>
|
|
/// A special script for held items. As they're part of a held item, they're attached to a Pokemon.
|
|
/// </summary>
|
|
ItemBattleTrigger = 9,
|
|
} |