Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила раздела

Перед созданием новой темы убедитесь, не искал ли кто-нибудь подобный плагин до вас, для этого следует воспользоваться поиском.

Все вновь созданные темы, с названием типа "Помогите найти", "А что это за плагин", "Ищу плагин", "Нужен плагин", "Подскажите пожалуйста название плагина" - будут удалены.
При создании темы постарайтесь максимально понятно сформулировать её заголовок так, чтобы он соответствовал функциям плагина который Вы ищите. В том случае, если Вам не удается сформулировать мысль и правильно расписать всё в теме, воспользуйтесь графическим редактором, к примеру Paint, что бы примерно изобразить функции нужного Вам плагина.

ищу плагин

, что свои тиммейты прозрачные
Статус пользователя alldox
сообщение 19.12.2010, 19:58
Сообщение #1
Стаж: 16 лет

Сообщений: 85
Благодарностей: 4
Полезность: < 0

ищу плагин что свои тиммейты прозрачные у кого есть дайте плз
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Z[1].
сообщение 20.12.2010, 1:32
Сообщение #2


Стаж: 18 лет

Сообщений: 981
Благодарностей: 287
Полезность: 265

alldox,
игроки прозрачные или с возможностью проходить сквозь них?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 20.12.2010, 2:32
Сообщение #3


Стаж: 16 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

Цитата(alldox @ 19.12.2010, 19:58) *
ищу плагин что свои тиммейты прозрачные у кого есть дайте плз



semiclip.amxx
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Neo
сообщение 20.12.2010, 7:22
Сообщение #4
Стаж: 15 лет

Сообщений: 475
Благодарностей: 131
Полезность: 525

*.sma
Код
#include <amxmodx>
#include <fakemeta>

#pragma semicolon 1

#define DISTANCE 120
#define TIME   7.0

new g_iTeam[33];
new bool:g_bSolid[33];
new bool:g_bHasSemiclip[33];
new Float:g_fOrigin[33][3];

new bool:g_bSemiclipEnabled;

new g_iForwardId[3];
new g_iMaxPlayers;
new g_iCvar[3];
new g_Work;

public plugin_init( )
{
   register_plugin( "(Team-)Semiclip", "1.2", "SchlumPF*/Empower" );
  
   g_iCvar[0] = register_cvar( "semiclip_enabled", "1" );
   g_iCvar[1] = register_cvar( "semiclip_teamclip", "0" );
   g_iCvar[2] = register_cvar( "semiclip_transparancy", "1" );
  
   register_forward( FM_ClientCommand, "fwdClientCommand" );
  
   if( get_pcvar_num( g_iCvar[0] ) )
   {
      g_iForwardId[0] = register_forward( FM_PlayerPreThink, "fwdPlayerPreThink" );
      g_iForwardId[1] = register_forward( FM_PlayerPostThink, "fwdPlayerPostThink" );
      g_iForwardId[2] = register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 );
      
      g_bSemiclipEnabled = true;
   }
   else
      g_bSemiclipEnabled = false;
  
   g_iMaxPlayers = get_maxplayers( );
  
   register_event("HLTV", "event_round_start", "a", "1=0", "2=0");
}

public event_round_start()
{
   g_Work = true;
   set_task(TIME,"reset_state");
}

public reset_state()
   g_Work = false;

public fwdPlayerPreThink( plr )
{
   if(!g_Work)
      return FMRES_IGNORED;
  
   static id, last_think;

   if( last_think > plr)
   {
      for( id = 1; id <= g_iMaxPlayers; id++ )
      {
         if( is_user_alive( id ) )
         {
            if( get_pcvar_num( g_iCvar[1] ) )
               g_iTeam[id] = get_user_team( id );
            
            g_bSolid[id] = pev( id, pev_solid ) == SOLID_SLIDEBOX ? true : false;
            pev( id, pev_origin, g_fOrigin[id] );
         }
         else
            g_bSolid[id] = false;
      }
   }

   last_think = plr;

   if( g_bSolid[plr] )
   {
      for( id = 1; id <= g_iMaxPlayers; id++ )
      {
         if( g_bSolid[id] && get_distance_f( g_fOrigin[plr], g_fOrigin[id] ) <= DISTANCE && id != plr  && get_user_team(id) == get_user_team(plr))
         {
            if( get_pcvar_num( g_iCvar[1] ) && g_iTeam[plr] != g_iTeam[id] )
               return FMRES_IGNORED;
  
            set_pev( id, pev_solid, SOLID_NOT );
            g_bHasSemiclip[id] = true;
         }
      }
   }

   return FMRES_IGNORED;
}

public fwdPlayerPostThink( plr )
{
   if(!g_Work)
      return;
      
   static id;

   for( id = 1; id <= g_iMaxPlayers; id++ )
   {
      if( g_bHasSemiclip[id] )
      {
         set_pev( id, pev_solid, SOLID_SLIDEBOX );
         g_bHasSemiclip[id] = false;
      }
   }
}

public fwdAddToFullPack_Post( es_handle, e, ent, host, hostflags, player, pset )
{
   if( player && g_Work)
   {
      if( g_bSolid[host] && g_bSolid[ent] && get_distance_f( g_fOrigin[host], g_fOrigin[ent] ) <= DISTANCE )
      {
         if( get_pcvar_num( g_iCvar[1] ) && g_iTeam[host] != g_iTeam[ent] )
            return FMRES_IGNORED;
            
         set_es( es_handle, ES_Solid, SOLID_NOT ); // makes semiclip flawless
        
         if( get_pcvar_num( g_iCvar[2] ) == 1 )
         {
            set_es( es_handle, ES_RenderMode, kRenderTransAlpha );
            set_es( es_handle, ES_RenderAmt, 85 );
         }
         else if( get_pcvar_num( g_iCvar[2] ) == 2 )
         {
            set_es( es_handle, ES_Effects, EF_NODRAW );
            set_es( es_handle, ES_Solid, SOLID_NOT );
         }
      }
   }
  
   return FMRES_IGNORED;
}

// is there a better way to detect changings of g_iCvar[0]?
public fwdClientCommand( plr )
{
   // use the forwards just when needed, for good performance
   if( !get_pcvar_num( g_iCvar[0] ) && g_bSemiclipEnabled )
   {
      unregister_forward( FM_PlayerPreThink, g_iForwardId[0] );
      unregister_forward( FM_PlayerPostThink, g_iForwardId[1] );
      unregister_forward( FM_AddToFullPack, g_iForwardId[2], 1 );
      
      g_bSemiclipEnabled = false;
   }
   else if( get_pcvar_num( g_iCvar[0] ) && !g_bSemiclipEnabled )
   {
      g_iForwardId[0] = register_forward( FM_PlayerPreThink, "fwdPlayerPreThink" );
      g_iForwardId[1] = register_forward( FM_PlayerPostThink, "fwdPlayerPostThink" );
      g_iForwardId[2] = register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 );
      
      g_bSemiclipEnabled = true;
   }
}

Сразу скажу, что использовать его лучше с этим плагином http://forums.alliedmods.net/showthread.php?p=441576, ибо игроки по застревают друг в друге и будут ныть :biggrin:
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 20.12.2010, 7:27
Сообщение #5


Стаж: 16 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

даную проблему решает прыжок
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Neo
сообщение 20.12.2010, 18:50
Сообщение #6
Стаж: 15 лет

Сообщений: 475
Благодарностей: 131
Полезность: 525

vkontakte,
Если бы он всегда решал её, я бы не писал бы об этом ;)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Teemz
сообщение 22.1.2011, 17:11
Сообщение #7


Стаж: 15 лет

Сообщений: 163
Благодарностей: 27
Полезность: 137

Цитата(frosty123 @ 20.12.2010, 8:22) *
Сразу скажу, что использовать его лучше с этим плагином http://forums.alliedmods.net/showthread.php?p=441576, ибо игроки по застревают друг в друге и будут ныть :biggrin:


Ссылка не работает. Как этот плагин называеться?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя CSNeoGame
сообщение 24.1.2011, 0:35
Сообщение #8


Стаж: 16 лет

Сообщений: 131
Благодарностей: 10
Полезность: < 0

Цитата(vkontakte @ 20.12.2010, 8:27) *
даную проблему решает прыжок

да ты прав, но он не решает когда с верху потолок при котором игрок не может выпригнуть...
frosty123
Залей пожалуйста ссылку на тот плагин что решит эту проблему


!
Аккаунт пользователя заблокирован до: 9.2.2739919, 23:53
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Neo
сообщение 28.1.2011, 19:27
Сообщение #9
Стаж: 15 лет

Сообщений: 475
Благодарностей: 131
Полезность: 525

Лови
Прикрепленные файлы:
Прикрепленный файл  stuck.rar ( 1,3 килобайт ) Кол-во скачиваний: 9
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: