2017/11/23, Чт, 18:49 Приветствую Вас ---- | RSS
Регистрация
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: Jack-Hang 
Форум » Основной раздел » Кодинг Статьи » [Кодинг] Trigger_PlayerFreeez (Остановка игрока.)
[Кодинг] Trigger_PlayerFreeez
Jack-HangДата: Вт, 2007/05/15, 22:45 | Сообщение # 1
Hang-Overed
Репутация: 5
Регистрация:2006/08/20
Сообщений: 84
Статус: Offline
[Кодинг] Trigger_PlayerFreeez

И так, код придумывал не Я скажу Вам сразу, это то-же триггер как и в Оп4, тоесть пользоваться им также как и там. НАЧНЁМ!!!

В конце файла triggers.cpp добавте :

Code

class CTriggerPlayerFreeze : public CBaseDelay
{
public:
     void Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value );
int ObjectCaps( void ) { return CBaseDelay::ObjectCaps() & ~FCAP_ACROSS_TRANSITION; }
};
LINK_ENTITY_TO_CLASS( trigger_playerfreeze, CTriggerPlayerFreeze );

void CTriggerPlayerFreeze::Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value )
{
     if ( !pActivator || !pActivator->IsPlayer() )
         pActivator = CBaseEntity::Instance(g_engfuncs.pfnPEntityOfEntIndex( 1 ));
      
     if (pActivator->pev->flags & FL_FROZEN)
         ((CBasePlayer *)((CBaseEntity *)pActivator))->EnableControl(TRUE);
     else    ((CBasePlayer *)((CBaseEntity *)pActivator))->EnableControl(FALSE);
}

Компилируем проект. Добавляем это в ФГД Вашего мода :
Code

@PointClass base(Targetx, Targetname) = trigger_playerfreeze : "Trigger Player Freeze" []

Вот и всё он готов к работе, отключение и включение происходит с помощью мультименеджера или как вам угодно.




 
Форум » Основной раздел » Кодинг Статьи » [Кодинг] Trigger_PlayerFreeez (Остановка игрока.)
Страница 1 из 11
Поиск:

Сайт управляется системой uCoz Copyright by kiexStudio © 2009