// --------------------------------------------------------------------------------------------------------------------
//
// Defines the Positions types that we need to track.
//
// --------------------------------------------------------------------------------------------------------------------
namespace ACE.Entity.Enum.Properties
{
///
/// The enumerations for the different positions we want to track. This code provided by Ripley via pastebin
///
public enum PositionType : ushort
{
// S_CONSTANT: Type: 0x108E, Value: 11, CRASH_AND_TURN_POSITION
// S_CONSTANT: Type: 0x108E, Value: 17, SAVE_1_POSITION
// S_CONSTANT: Type: 0x108E, Value: 14, LAST_OUTSIDE_DEATH_POSITION
// S_CONSTANT: Type: 0x108E, Value: 10, PORTAL_STORM_POSITION
// S_CONSTANT: Type: 0x108E, Value: 18, SAVE_2_POSITION
// S_CONSTANT: Type: 0x108E, Value: 19, SAVE_3_POSITION
// S_CONSTANT: Type: 0x108E, Value: 20, SAVE_4_POSITION
// S_CONSTANT: Type: 0x108E, Value: 1, LOCATION_POSITION
// S_CONSTANT: Type: 0x108E, Value: 13, HOUSE_BOOT_POSITION
// S_CONSTANT: Type: 0x108E, Value: 21, SAVE_5_POSITION
// S_CONSTANT: Type: 0x108E, Value: 3, INSTANTIATION_POSITION
// S_CONSTANT: Type: 0x108E, Value: 9, LAST_PORTAL_POSITION
// S_CONSTANT: Type: 0x108E, Value: 16, LINKED_PORTAL_TWO_POSITION
// S_CONSTANT: Type: 0x108E, Value: 2, DESTINATION_POSITION
// S_CONSTANT: Type: 0x108E, Value: 22, SAVE_6_POSITION
// S_CONSTANT: Type: 0x108E, Value: 7, TARGET_POSITION
// S_CONSTANT: Type: 0x108E, Value: 23, SAVE_7_POSITION
// S_CONSTANT: Type: 0x108E, Value: 26, RELATIVE_DESTINATION_POSITION
// S_CONSTANT: Type: 0x108E, Value: 24, SAVE_8_POSITION
// S_CONSTANT: Type: 0x108E, Value: 25, SAVE_9_POSITION
// S_CONSTANT: Type: 0x108E, Value: 0, UNDEF_POSITION
// S_CONSTANT: Type: 0x108E, Value: 15, LINKED_LIFESTONE_POSITION
// S_CONSTANT: Type: 0x108E, Value: 27, TELEPORTED_CHARACTER_POSITION
// S_CONSTANT: Type: 0x108E, Value: 12, PORTAL_SUMMON_LOC_POSITION
// S_CONSTANT: Type: 0x108E, Value: 6, ACTIVATION_MOVE_POSITION
// S_CONSTANT: Type: 0x108E, Value: 4, SANCTUARY_POSITION
// S_CONSTANT: Type: 0x108E, Value: 5, HOME_POSITION
// S_CONSTANT: Type: 0x108E, Value: 8, LINKED_PORTAL_ONE_POSITION
///
/// I got nothing for you.
///
Undef = 0,
///
/// Current Position
///
Location = 1,
///
/// May be used to store where we are headed when we teleport (?)
///
Destination = 2,
///
/// Where will we pop into the world (?)
///
Instantiation = 3,
///
/// Last Lifestone Used? (@ls)? | @home | @save | @recall
///
Sanctuary = 4,
///
/// This is the home, starting, or base position of an object.
/// It's usually the position the object first spawned in at.
///
[Ephemeral]
Home = 5,
///
/// The need to research
///
ActivationMove = 6,
///
/// The the position of target.
///
Target = 7,
///
/// Primary Portal Recall | Summon Primary Portal | Primary Portal Tie
///
LinkedPortalOne = 8,
///
/// Portal Recall (Last Used Portal that can be recalled to)
///
LastPortal = 9,
///
/// The portal storm - need research - maybe where you were portaled from or to - to does not seem likely to me.
///
PortalStorm = 10,
///
/// The crash and turn - I can't wait to find out.
///
CrashAndTurn = 11,
///
/// We are tracking what the portal ties are - could this be the physical location of the portal you summoned? More research needed.
///
PortalSummonLoc = 12,
///
/// That little spot you get sent to just outside the barrier when the slum lord evicts you (??)
///
HouseBoot = 13,
///
/// The last outside death. --- boy would I love to extend this to cover deaths in dungeons as well.
///
LastOutsideDeath = 14, // Location of Corpse
///
/// The linked lifestone - Lifestone Recall | Lifestone Tie
///
LinkedLifestone = 15,
///
/// Secondary Portal Recall | Summon Secondary Portal | Secondary Portal Tie
///
LinkedPortalTwo = 16,
///
/// Admin Quick Recall Positions
///
Save1 = 17, // @save 1 | @home 1 | @recall 1
///
/// Admin Quick Recall Positions
///
Save2 = 18, // @save 2 | @home 2 | @recall 2
///
/// Admin Quick Recall Positions
///
Save3 = 19, // @save 3 | @home 3 | @recall 3
///
/// Admin Quick Recall Positions
///
Save4 = 20, // @save 4 | @home 4 | @recall 4
///
/// Admin Quick Recall Positions
///
Save5 = 21, // @save 5 | @home 5 | @recall 5
///
/// Admin Quick Recall Positions
///
Save6 = 22, // @save 6 | @home 6 | @recall 6
///
/// Admin Quick Recall Positions
///
Save7 = 23, // @save 7 | @home 7 | @recall 7
///
/// Admin Quick Recall Positions
///
Save8 = 24, // @save 8 | @home 8 | @recall 8
///
/// Admin Quick Recall Positions
///
Save9 = 25, // @save 9 | @home 9 | @recall 9
///
/// Position data is relative to Location
///
RelativeDestination = 26,
///
/// Admin - Position to return player to when using @telereturn which is where a character was at time of admin using @teletome
///
TeleportedCharacter = 27,
PCAPRecordedLocation = 8040
}
}