/////////////////////////////////
// prototypes
// check if pc is mounted; should be persisted
int GetIsMounted(object oPC);
// block mounted transition into interior areas unless so marked
int GetCanTransition(object oPC, object oArea);
// saddle up! can be called from convo or gui
void ActionMount(object oMount, int nType);
// ensure PC gets into the saddle
void DelayedEquipSaddle(object oPC, object oSaddle);
// trick to catch exceptions
void DelayedRecursiveDestroyMount(object oPC, object oMount);
// get off that unicorn! can be called from unequip or gui
void ActionDismount(object oPC, object oSaddle = OBJECT_INVALID);
// shift PC appearance
void SetMountedAppearance(object oPC);
// restore PC appearance
void RemoveMountedAppearance(object oPC);
// apply various effects while mounted (WIP)
void ApplyMountedEffects(object oPC);
// turn of any action modes like hellfire or combat expertise
void SetActionModesOff(object oPC);
// strip any unwanted spell effects
void RemoveSpecificSpellEffect(object oPC, int nSpellID);
// remove mounted effects on dismount
void RemoveMountedEffects(object oPC);
// ride skill bonus
void SetMountedMovementModifier(object oPC);
// conditionals for mounting actions
int CheckRide(object oPC, object oMount = OBJECT_INVALID);
// mounted spellcasting hook
int CheckMountedSpell(object oPC, int nSpellID);
// borrowed from ga_destroy_item
void DestroyItems(object oTarget,string sItem,int nNumItems);
// limit ui while riding
void ActivateRideUI(object oPC);
// restore to normal ui
void DeactivateRideUI(object oPC);
// get the purchase price of a mount
int GetMountPrice(int class);
// set convo tokens for mount prices
void SetMountPriceTokens();
// do I own any mount?
int CheckMount(object oPC);
// do I own a mount?
int CheckMount(object oPC);
// is this my mount?
int CheckMountOwner(object oPC, object oMount);
// buy mount
void BuyMount(object oPC, int class);
// sell mount
void SellMount(object oPC);
////////////////// TO DOs //////////////////
// Did I leave a mount in this area? If it's not already standing there, spawn it where I left it (encompasses server re-entry)
void Mount_AreaOE(object oPC);
// I am entering the stable in the city where I spawned after a reset, spawn my horse here
void Mount_StableOE(object oPC);
// Steal this horse
void Steal_Mount(object oPC, object oMount);
// Horse has died (delete from db)
void RemoveHorse(object oPC);
// Do already own a mount?
int GetHasMount(object oPC);
// paladin summon mount
void SummonMount();