Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 4
    Гостей: 2
    Пользователи: - отсутствуют
    Роботы: Yandex Bot, Google Bot

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 17-08-2011, 15:56 Просмотров: 54234

    The Ham Sandwich Module

    Модуль Ham Sandwich, невероятно нужный, а иногда и незаменимый модуль. Он значительно упрощает отлов различных событий связанных с игровым миром Counter-Strike, в некоторых же случаях он просто незаменим, так как имеет функционал, которого нет в других модулях. Но если и есть - то эти методы будут очень сильно нагружать сервер, что не принесет удовольствия от игры, на сервере где установлен плагин через мерно нагружающий сервер.

    У модуля есть 2 инклюда включающие в себя функции и константы:
    • hamsandwich.inc - Содержит native функции
    • ham_const.inc - Содержит константы, связанные с собственными функциями


    Функции Ham Sandwich

    HamHook:RegisterHam для сцепления виртуальных функций и объектов по классу
    HamHook:RegisterHamFromEntity для сцепления виртуальных функций и объектов по EntityId
    DisableHamForward прекращает работу зарегистрированного ham форварда
    EnableHamForward возобновляет работу ham форварда.
    ExecuteHam выполняет виртуальную функцию на игроке (объекте)
    ExecuteHamB выполняет виртуальную функцию на игроке
    GetHamReturnStatus получает статус возврата исполняемого форварда
    GetHamReturnInteger
    GetHamReturnFloat
    GetHamReturnVector
    GetHamReturnEntity
    GetHamReturnString
    GetOrigHamReturnInteger
    GetOrigHamReturnFloat
    GetOrigHamReturnVector
    GetOrigHamReturnEntity
    GetOrigHamReturnString
    SetHamReturnInteger
    SetHamReturnFloat
    SetHamReturnVector
    SetHamReturnEntity
    SetHamReturnString
    SetHamParamInteger изменяет параметры отловленных событий
    SetHamParamFloat изменяет параметры отловленных событий (дробные значения)
    SetHamParamVector
    SetHamParamEntity
    SetHamParamString
    SetHamParamTraceResult
    bool:IsHamValid
    get_pdata_cbase
    set_pdata_cbase
    get_pdata_cbase_safe
    __fatal_ham_error

    Константы виртуальных функций

    Ham_Spawn респаун игрока
    Ham_Precache
    Ham_Keyvalue
    Ham_ObjectCaps
    Ham_Activate
    Ham_SetObjectCollisionBox
    Ham_Classify
    Ham_DeathNotice
    Ham_TraceAttack
    Ham_TakeDamage при получении урона
    Ham_TakeHealth
    Ham_Killed отлов события убийства игрока (объекта)
    Ham_BloodColor
    Ham_TraceBleed
    Ham_IsTriggered
    Ham_MyMonsterPointer
    Ham_MySquadMonsterPointer
    Ham_GetToggleState
    Ham_AddPoints
    Ham_AddPointsToTeam
    Ham_AddPlayerItem
    Ham_RemovePlayerItem удаляет предмет из инвентаря игрока.
    Ham_GiveAmmo Ham_GiveAmmo Добавляет боеприпасы
    Ham_GetDelay
    Ham_IsMoving
    Ham_OverrideReset
    Ham_DamageDecal
    Ham_SetToggleState
    Ham_StartSneaking
    Ham_StopSneaking
    Ham_OnControls
    Ham_IsSneaking
    Ham_IsAlive
    Ham_IsBSPModel
    Ham_ReflectGauss
    Ham_HasTarget
    Ham_IsInWorld
    Ham_IsPlayer Проверка на "игрок ли?"
    Ham_IsNetClient
    Ham_TeamId
    Ham_GetNextTarget
    Ham_Think
    Ham_Touch вызывается когда объекты соприкасаются
    Ham_Use вызывается когда используется какой то объект (игрок нажал на кнопку)
    Ham_Blocked
    Ham_Respawn
    Ham_UpdateOwner
    Ham_FBecomeProne
    Ham_Center
    Ham_EyePosition
    Ham_EarPosition
    Ham_BodyTarget
    Ham_Illumination
    Ham_FVisible
    Ham_FVecVisible
    Ham_Player_Jump
    Ham_Player_Duck
    Ham_Player_PreThink
    Ham_Player_PostThink
    Ham_Player_GetGunPosition
    Ham_Player_ShouldFadeOnDeath
    Ham_Player_ImpulseCommands
    Ham_Player_UpdateClientData
    Ham_Item_AddToPlayer вызывается при получении оружия игроком
    Ham_Item_AddDuplicate
    Ham_Item_CanDeploy
    Ham_Item_Deploy
    Ham_Item_CanHolster
    Ham_Item_Holster
    Ham_Item_UpdateItemInfo
    Ham_Item_PreFrame
    Ham_Item_PostFrame
    Ham_Item_Drop
    Ham_Item_Kill
    Ham_Item_AttachToPlayer
    Ham_Item_PrimaryAmmoIndex
    Ham_Item_SecondaryAmmoIndex
    Ham_Item_UpdateClientData
    Ham_Item_GetWeaponPtr
    Ham_Item_ItemSlot
    Ham_Weapon_ExtractAmmo
    Ham_Weapon_ExtractClipAmmo
    Ham_Weapon_AddWeapon
    Ham_Weapon_PlayEmptySound
    Ham_Weapon_ResetEmptySound
    Ham_Weapon_SendWeaponAnim
    Ham_Weapon_IsUsable
    Ham_Weapon_PrimaryAttack вызывается при основной атаке определенным оружием
    Ham_Weapon_SecondaryAttack вызывается при альтернативной атаке определенным оружием
    Ham_Weapon_Reload вызывается каждый раз когда перезаряжается оружие.
    Ham_Weapon_WeaponIdle
    Ham_Weapon_RetireWeapon переключает на следующие оружие (следующее лучшее оружие)
    Ham_Weapon_ShouldWeaponIdle
    Ham_Weapon_UseDecrement
    Ham_CS_Restart
    Ham_CS_RoundRespawn
    Ham_CS_Item_CanDrop
    Ham_CS_Item_GetMaxSpeed

    Ham Return Types - Возвращаемые константы
    #define HAM_IGNORED        1    /**< Calls target function, returns normal value */
    #define HAM_HANDLED        2    /**< Tells the module you did something, still calls target function and returns normal value */
    #define HAM_OVERRIDE    3    /**< Still calls the target function, but returns whatever is set with SetHamReturn*() */
    #define HAM_SUPERCEDE    4    /**< Block the target call, and use your return value (if applicable) (Set with SetHamReturn*()) */


    Ham Errors Types
    enum HamError
    {
        HAM_OK = 0,
        
        HAM_INVALID_FUNC,            // The function is not valid
        HAM_FUNC_NOT_CONFIGURED,    // This function is not configured in hamdata.ini
        
        HAM_ERR_END
    };


    Список объектов:
    The Ham Sandwich Module
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    The Ham Sandwich Module
    KILLER7x7

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Модуль Ham Sandwich на ботов не действует???
    артист

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    С чего бы?
    артист

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Мда...Столкнулся с такой проблемой, Ham_Spawn не олавливает ботов(zbot), а с podbot нормально работает...
    Rhyme

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    артист,
    KILLER7x7,
    Есть такая функция RegisterHamBots только я с ней сам не знаком, но знаю что работает
    артист

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    #include <cs_ham_bots_api>

    Знаю про него ))

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама