///////////////////////////////// // prototypes // get creature size from type int GetMountSize(int nMountType); // 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, int bParty = FALSE); // 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); // the purpose of this is to avoid destroying creature // before the PC has gotten close enough to it // 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); // do some sanity checking when a PC re-enters the mod after reset void MountedPCCleanUp(object oPC); // forward and backward checking of appearance & subrace int GetRaceApp(object oPC, int nRace, int bTrueApp = FALSE); // shift PC appearance void SetMountedAppearance(object oPC, int nReverse = FALSE); // 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); // get creature max speed float GetMountMaxModifier(int nMountType); // ride skill bonus void SetMountedMovementModifier(object oPC); // get required ranks to mount creature int GetRequiredRanks(int nMountType); // conditionals for mounting an object 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? returns mount type or zero int GetMountType(object oPC); // is this my mount? int CheckMountOwner(object oPC, object oMount); // buy mount void BuyMount(object oPC, int class); // calculate resale value and populate tokens void GetMountResaleValue(object oPC); // sell mount void SellMount(object oPC); // spawn mount at location object SpawnMount(object oPC, int nMountType, location lLoc); // if i leave the area, limbo my mount void SendMountToLimbo(object oPC, object oArea); // when i return to an area where i left my mount, restore it void FetchMountFromLimbo(object oPC); // pc has died while mounted void OnMountedPCDeath(object oPC); // remove references to mount on death void OnMountDeath(object oMount); // delete horse from db void RemoveMount(object oPC); // entering a stable, spawn my mount void SpawnMountIfNeeded(object oPC); // used in horse theft void XferMountOwner(object oNewOwner, int nMountType, object oOldOwner); // Steal this horse void ActionStealMount(object oPC, object oMount); void ActionMountedCombatStop(object oCreature); void DetermineMountedCombatRound(object oIntruder, object oCreature);