Заказать игровой сервер Контакты (заказать плагин/исправить ошибки/другое) Пожертвовать Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Отталкивание
Naykon Дата: Суббота, 06.10.2012, 13:17:32 | Сообщение # 1
Сообщений: 439
Репутация: -4 [ +/- ]
Добрые люди очень прошу срочно помогите как сделать чтоб при попадании в игрока его отталкивало назад... ну типа как в ZM
 
Beelzebub Дата: Суббота, 06.10.2012, 13:58:33 | Сообщение # 2
Сообщений: 202
Репутация: 13 [ +/- ]
Используй push.

Добавлено (06.10.2012, 13:52:30)
---------------------------------------------
Вот тут есть много чего можно по вытаскивать.
Плагин!

Попробую тебе накалякать то что ты хочешь.

Добавлено (06.10.2012, 13:58:33)
---------------------------------------------

Code
#include <sourcemod>
#include <sdktools>

#define PLUGIN_VERSION "1.0"

new Handle:g_Force = INVALID_HANDLE;
new Handle:g_Distance = INVALID_HANDLE;

public OnPluginStart()
{
  g_Force = CreateConVar("sm_push_force", "300.0");
  g_Distance = CreateConVar("sm_push_distance", "150.0");
}

public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon)
{
  if(buttons & IN_USE)
  {
   new ent = GetClientAimTarget(client, false);
   if(ent > MaxClients)
   {
    new String:classname[64];
    GetEdictClassname(ent, classname, sizeof(classname));
    if(StrContains(classname, "prop_physics")==0)
    {
     new Float:playerpos[3];
     GetClientAbsOrigin(client, playerpos);
      
     new Float:entpos[3];
     GetEntPropVector(ent, Prop_Send, "m_vecOrigin", entpos);
      
     if(GetVectorDistance(playerpos, entpos) < GetConVarFloat(g_Distance))
     {
      new Float:vangles[3];
      GetClientEyeAngles(client, vangles);
       
      new Float:velocity[3];
      GetAngleVectors(vangles, velocity, NULL_VECTOR, NULL_VECTOR);
       
      NormalizeVector(velocity, velocity);
       
      ScaleVector(velocity, (GetConVarFloat(g_Force)/(GetEntPropFloat(ent, Prop_Send, "m_fMass")/20)));
      if(buttons & IN_BACK)
      {
       ScaleVector(velocity, -1.0);
      }
       
      velocity[2] = 0.0;
       
      TeleportEntity(ent, NULL_VECTOR, NULL_VECTOR, velocity);
     }
    }
   }
  }
}


Это на сдвиг предметов с места , я думаю сам справишься в переделывание времени нет.
 
Naykon Дата: Суббота, 06.10.2012, 15:26:43 | Сообщение # 3
Сообщений: 439
Репутация: -4 [ +/- ]
Крутил-мутил уже и SM ZM разбирал (( не получается(( Ждем гуру... сам что рыба об лед(((
 
Beelzebub Дата: Суббота, 06.10.2012, 16:04:51 | Сообщение # 4
Сообщений: 202
Репутация: 13 [ +/- ]
Вот я что то нашел в инете. Чел давно задался вопросом ему вот помогли.
Вообщем прочтешь и сам все поймешь, я думаю это то что тебе нужно :)
ЧИТАТЬ!
 
Naykon Дата: Суббота, 06.10.2012, 16:45:16 | Сообщение # 5
Сообщений: 439
Репутация: -4 [ +/- ]
Googler блин)) спс =)

Добавлено (06.10.2012, 16:22:58)
---------------------------------------------
wS хочу тебя поблагодарить за ответ на hlmod очень помог и мне тоже.

Добавлено (06.10.2012, 16:45:16)
---------------------------------------------
Решил проблему сам .. Получил куда смотрит attacker и отправил client на +15... кароче справился

 
Beelzebub Дата: Суббота, 06.10.2012, 16:56:45 | Сообщение # 6
Сообщений: 202
Репутация: 13 [ +/- ]
Ну и славно.

Добавлено (06.10.2012, 16:56:45)
---------------------------------------------

Quote (Naykon)
Решил проблему сам


Подскажи код который вписывал может пригодиться :)
 
  • Страница 1 из 1
  • 1
Поиск: