/**
 * @defgroup ItemEvents Item events
 * @ingroup Events
 *
 * \~russian   .
 *
 * @remarks        ,
 *             .
 *
 * \~english Event list for class Item
 *
 * \~ @see Item
 *         Item::SetEvent
 *
 */
/*@{*/

/** \~russian    .
 *
 * @par  :
 * @code
 * bool _FuncName(Item& item, bool deleted)
 * @endcode
 *
 * @param   deleted  @c true -     , @c false -    .
 *
 * @remarks      ,  -  .
 * \~ @see  Item::EventFinish
 */
#define ITEM_EVENT_FINISH             (0)

/** \~russian      .
 *
 * @par  :
 * @code
 * bool _FuncName(Item& item, Critter& crit, Critter& target)
 * @endcode
 *
 * @param   crit     .
 * @param   target   .
 *
 * @return    @c true,     .
 *           @c false   .
 *
 * \~ @see  Item::EventAttack
 *          #CRITTER_EVENT_ATTACK
 */
#define ITEM_EVENT_ATTACK           (1)

/** \~russian      -.
 *
 * @par  :
 * @code
 * bool _FuncName(Item& item, Critter& crit, Critter@ onCritter, Item@ onItem, Scenery@ onScenery)
 * @endcode
 *
 * @param   crit       ,  .
 * @param   onCritter      ,       .
 * @param   onItem          ,
 *                              () .
 * @param   onScenery      ,       .
 *
 * @return   @c false   ,   #critter_use_item.
 *           @c true  .
 *
 * \~ @see  Item::EventUse
 *          #CRITTER_EVENT_USE_ITEM
 *          #critter_use_item
 */
#define ITEM_EVENT_USE              (2)

/** \~russian       .
 *
 * @par  :
 * @code
 * bool _FuncName(Item& item, Critter& crit, Item@ usedItem)
 * @endcode
 *
 * @param   crit      ,  .
 * @param   usedItem   .
 *
 * @return   @c false   ,   #critter_use_item.
 *           @c true  .
 *
 * \~ @see  Item::EventUseOnMe
 */
#define ITEM_EVENT_USE_ON_ME        (3)

/** \~russian      .
 *
 * @par  :
 * @code
 * bool _FuncName(Item& item, Critter& crit, int skill)
 * @endcode
 *
 * @param   crit   ,  .
 * @param   skill   .
 *                 (. @link Skills @endlink  @link SpecialSkillValues Special Skill Values@endlink).
 *
 * @return   @c false   ,   #critter_use_skill.
 *           @c true  .
 *
 * \~ @see  Item::EventSkill
 *          #CRITTER_EVENT_USE_SKILL
 *          #critter_use_skill
 */
#define ITEM_EVENT_SKILL            (4)

/** \~russian      .
 *
 * @par  :
 * @code
 * void _FuncName(Item& item, Critter& crit)
 * @endcode
 *
 * @param  crit  ,  .
 *
 * \~ @see Item::EventDrop
 *         #CRITTER_EVENT_DROP_ITEM
 */
#define ITEM_EVENT_DROP             (5)

/** \~russian      .
 *
 * @par  :
 * @code
 * void _FuncName(Item& item, Critter& crit, uint8 fromSlot)
 * @endcode
 *
 * @param  crit      ,  .
 * @param  fromSlot  ,      
 *                   (. @link Slots  @endlink).
 *
 * \~ @see Item::EventMove
 *         #CRITTER_EVENT_MOVE_ITEM
 *
 */
#define ITEM_EVENT_MOVE             (6)

/** \~russian       .
 *
 *      :   , .
 *
 * @par  :
 * @code
 * void _FuncName(Item& item, Critter& crit, bool entered, uint8 dir)
 * @endcode
 *
 * @param  crit     ,   .
 * @param  entered    @c true   ,     ;
 *                  @c false      .
 * @param  dir       .
 *
 * \~ @see Item::EventWalk
 *
 */
#define ITEM_EVENT_WALK             (7)

/*@}*/
