# File: `Tradeskills.h` ## Classes - `Player` - `Spawn` - `Recipe` - `Client` - `TradeskillEvent` - `Tradeskill` - `TradeskillMgr` - `MasterTradeskillEventsList` ## Functions - `void Process();` - `void BeginCrafting(Client* client, vector> components);` - `void StopCrafting(Client* client, bool lock = true);` - `bool IsClientCrafting(Client* client);` - `void CheckTradeskillEvent(Client* client, int16 icon);` - `void ReadLock(const char* function = (const char*)0, int32 line = 0) { m_tradeskills.readlock(function, line); }` - `void ReleaseReadLock(const char* function = (const char*)0, int32 line = 0) { m_tradeskills.releasereadlock(function, line); }` - `int32 GetTechniqueSuccessAnim(int16 version, int32 technique);` - `int32 GetTechniqueFailureAnim(int16 version, int32 technique);` - `int32 GetTechniqueIdleAnim(int16 version, int32 technique);` - `int32 GetMissTargetAnim(int16 version);` - `int32 GetKillMissTargetAnim(int16 version);` - `void SetClientIdleVisualState(Client* client, Tradeskill* ts);` - `void SendItemCreationUI(Client* client, Recipe* recipe);` - `void AddEvent(TradeskillEvent* tradeskillEvent);` - `int32 Size();` ## Notable Comments - /* - */ - /// Determines if an update is needed if so send one and stop crafting if finished - /// Starts the actual crafting process - /// Client that is crafting - /// List of items the player is using to craft - /// Stops the crafting process - /// Client that stopped crafting - /// Does the list need a mutex lock? default = true - /// Checks to see if the given client is crafting