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

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

  • Страница 1 из 1
  • 1
Props
Scarface_slv Дата: Воскресенье, 03.11.2013, 13:54:54 | Сообщение # 1
Сообщений: 737
Репутация: 61 [ +/- ]
Как двигать созданный предмет?
 
Sunday Дата: Суббота, 30.11.2013, 14:31:26 | Сообщение # 2
Сообщений: 186
Репутация: 24 [ +/- ]
давно еще писал для себя инклюд. Лови:

/**
* @param client Индекс клиента.(кто двигает).
* @param vec 0 = vector[0], 1 = vector[1], 2 = vector[2].
* @param minmax false = Приводит к увеличению значения. true = к уменьшению.
* @param power С какой силой.
* @param roration true = активирует возможность поворота предмета вокруг своей оси. false = перемещение предмета по x,y,z оси.
* @param
* RotateProp(client, 0, false, 10.0, false);
*/
Код
stock RotateProp(client, vec, bool:minmax=true, Float:power, bool:rotation=false)
{
  decl String:classname[64];
  decl Float:vector[3];

  new index = GetClientAimTarget(client, false);
  if (index != -1)
   GetEdictClassname (index, classname, sizeof(classname));
  if ((index != -1) && (StrEqual (classname, "prop_physics") || StrEqual (classname, "prop_physics_override") || StrEqual (classname, "prop_dynamic") || StrEqual (classname, "prop_dynamic_override") || StrEqual (classname, "prop_physics_multiplayer") || StrEqual (classname, "prop_dynamic_ornament") || StrEqual (classname, "prop_static")))
  {
   if (rotation == true)
   {
    GetEntPropVector (index, Prop_Send, "m_angRotation", vector);

    if (minmax == true)
    {
     if (vec == 0)
      vector[0] = vector[0] + power;
     else if (vec == 1)
      vector[1] = vector[1] + power;
     else if (vec == 2)
      vector[2] = vector[2] + power;
    }
    else
    {
     if (vec == 0)
      vector[0] = vector[0] - power;
     else if( vec == 1)
      vector[1] = vector[1] - power;
     else if (vec == 2)
      vector[2] = vector[2] - power;
    }

    TeleportEntity(index, NULL_VECTOR, vector, NULL_VECTOR);
   }
   else
   {
    GetEntPropVector (index, Prop_Send, "m_vecOrigin", vector);

    if (minmax == true)
    {
     if (vec == 0)
      vector[0] = vector[0] + power;
     else if (vec == 1)
      vector[1] = vector[1] + power;
     else if (vec == 2)
      vector[2] = vector[2] + power;
    }
    else
    {
     if (vec == 0)
      vector[0] = vector[0] - power;
     else if (vec == 1)
      vector[1] = vector[1] - power;
     else if (vec == 2)
      vector[2] = vector[2] - power;
    }

    TeleportEntity (index, vector, NULL_VECTOR, NULL_VECTOR);
   }

   AcceptEntityInput (index, "EnableCollision");
   AcceptEntityInput (index, "TurnOn", index, index, 0);
  }
}
 
«SeReGa»☆ Дата: Вторник, 03.12.2013, 01:02:45 | Сообщение # 3
Сообщений: 395
Репутация: 37 [ +/- ]
как сделать звук при создании и удалении определенного Prop и чтобы звук был слышен в определённом радиусе????


Сообщение отредактировал «SeReGa»☆ - Вторник, 03.12.2013, 01:04:03
 
Sunday Дата: Среда, 04.12.2013, 15:24:05 | Сообщение # 4
Сообщений: 186
Репутация: 24 [ +/- ]
EmitSoundToAll(звук, кому, SNDCHAN_AUTO, SNDLEVEL_NORMAL, SND_NOFLAGS, SNDVOL_NORMAL, SNDPITCH_NORMAL, -1, координаты флоат, NULL_VECTOR, true, 0.0);

Добавлено (04.12.2013, 15:24:05)
---------------------------------------------
Еще небольшой оффтоп, обновил павнпад PawnPad++

 
  • Страница 1 из 1
  • 1
Поиск: