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

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

  • Страница 1 из 2
  • 1
  • 2
  • »
Сменить руку у модели оружия.
Akella0162 Дата: Четверг, 05.05.2016, 12:48:12 | Сообщение # 1
Сообщений: 27
Репутация: 0 [ +/- ]
Здравствуйте! Есть такая проблема, что модель оружия в левой руке, а нужно, чтобы была право-рукой. Чтобы исправить этот момент, надо, практически, саму модель оружия собирать с нуля, чего очень не хочется делать. Должен быть способ кодом сменить расположение модели в руках. Если кто знает, поделитесь пожалуйста. Очень буду благодарен!
 
Jon4ik Дата: Четверг, 05.05.2016, 13:55:34 | Сообщение # 2
Сообщений: 278
Репутация: 7 [ +/- ]
Akella0162, В custom_weapons посмотри
 
inklesspen Дата: Четверг, 05.05.2016, 16:34:02 | Сообщение # 3
Сообщений: 21
Репутация: 3 [ +/- ]
вроде бы через изменение пропа m_bFlipViewModel (SetEntProp)
 
BarD Дата: Четверг, 05.05.2016, 16:52:18 | Сообщение # 4
Сообщений: 943
Репутация: 137 [ +/- ]
Зачем модель собирать с нуля? Она же зеркально отражается, вроде.


Сообщение отредактировал BarD - Четверг, 05.05.2016, 16:52:35
 
Akella0162 Дата: Пятница, 06.05.2016, 00:25:45 | Сообщение # 5
Сообщений: 27
Репутация: 0 [ +/- ]
BarD, ну, да, согласен с вами) нужно уметь пользоваться MilkShape 3D. Пока еще не умею им пользоваться. Моделей много - леворуких. Проще сделать через код)

Добавлено (06.05.2016, 00:25:45)
---------------------------------------------
inklesspen, можете подробнее рассказать, если уж не затруднит?)


Сообщение отредактировал Akella0162 - Пятница, 06.05.2016, 00:30:50
 
barcelona58341 Дата: Пятница, 06.05.2016, 07:09:02 | Сообщение # 6
Сообщений: 18
Репутация: 0 [ +/- ]
В свое время я мучился над этим вопросам оказывается решение очень простое и m_bFlipViewModel не помог.
Код
f (b_flip_model)
      {
       new weapon = GetPlayerWeaponSlot(client, 2);
       if (weapon != -1)
       {
        CSViewModel_SetWeapon(ClientVM[client][1], weapon);
       }
      }
      else
      {
       CSViewModel_SetWeapon(ClientVM[client][1], WeaponIndex);
      }

Добавлено (06.05.2016, 07:09:02)
---------------------------------------------
SetEntProp -> m_hWeapon для CSViewModel_SetWeapon



Сообщение отредактировал barcelona58341 - Пятница, 06.05.2016, 07:01:23
 
BarD Дата: Пятница, 06.05.2016, 11:12:41 | Сообщение # 7
Сообщений: 943
Репутация: 137 [ +/- ]
Цитата barcelona58341 ()
очень простое

Сомневаюсь.

Цитата barcelona58341 ()
ClientVM[client][1]

Цитата barcelona58341 ()
WeaponIndex

Это что за переменные?

Цитата barcelona58341 ()
CSViewModel_SetWeapon

Такой функции нет в стандартном наборе. Я так понимаю, этот код из Custom Weapons? Там все далеко не так просто.

---------------------------------------------
Цитата BarD ()
Она же зеркально отражается, вроде.

Под этим я имею в виду, что модель при переносе на левую руку сама по себе зеркально отражается. Т.е. если у игрока стоит леворукий режим, то отображаться модель будет нормально (для левой руки, конечно). Опять же, я в этом не уверен. Нужно простестировать.


Сообщение отредактировал BarD - Пятница, 06.05.2016, 11:12:52
 
barcelona58341 Дата: Пятница, 06.05.2016, 12:17:44 | Сообщение # 8
Сообщений: 18
Репутация: 0 [ +/- ]
Ваще то там очень просто написано если знаешь соурсепавн ClientVM[client][1] это номер(index) второго predicted_viewmodel client-а
Weaponindex это номер (index ) active weapon
CSViewModel_SetWeapon установка weapon как SetEntProp -> m_hWeapon
 
BarD Дата: Пятница, 06.05.2016, 12:23:06 | Сообщение # 9
Сообщений: 943
Репутация: 137 [ +/- ]
barcelona58341, и как я должен был это понять по тому куску кода, который Вы дали выше?

Цитата barcelona58341 ()
CSViewModel_SetWeapon

Эта функция работать не будет, если не подключена нужная библиотека. Следовательно, будет ошибка.


Сообщение отредактировал BarD - Пятница, 06.05.2016, 12:23:14
 
barcelona58341 Дата: Пятница, 06.05.2016, 12:59:44 | Сообщение # 10
Сообщений: 18
Репутация: 0 [ +/- ]
А это функцию не надо использовать это в custom weapon, надо
Исползавать SetEntProp и параметр m_hWeapon

Добавлено (06.05.2016, 12:59:44)
---------------------------------------------
Просто надо прочитать плагин это не сложно

 
BarD Дата: Пятница, 06.05.2016, 13:34:20 | Сообщение # 11
Сообщений: 943
Репутация: 137 [ +/- ]
Не понимаю, как это должно изменить положение оружия в руке. И человеку, создавшему эту тему, это вряд ли поможет, т.к. плагин Custom Weapon сложен для понимания неопытными скриптерами.

Добавлено (06.05.2016, 13:34:20)
---------------------------------------------
В данном куске кода ставится ClientVM на индекс оружия в слоте. И как это повлияет на положение оружия?

 
Jon4ik Дата: Пятница, 06.05.2016, 14:26:04 | Сообщение # 12
Сообщений: 278
Репутация: 7 [ +/- ]
BarD, Код, который меняет положение руки с моделькой занимает 1 строчку
 
BarD Дата: Пятница, 06.05.2016, 14:28:03 | Сообщение # 13
Сообщений: 943
Репутация: 137 [ +/- ]
Jon4ik, Если ты про m_bFlipViewModel, то говорят, что он не работает.
 
Akella0162 Дата: Пятница, 06.05.2016, 15:55:08 | Сообщение # 14
Сообщений: 27
Репутация: 0 [ +/- ]
barcelona58341, я пробовал таким способом, как вы предложили. Не вижу изменений. Да и саму суть этого кода я понять не могу.

Добавлено (06.05.2016, 15:55:08)
---------------------------------------------
Jon4ik, извиняюсь, возможно многое прошу, но мне бы конкретный код. Ибо, что я пробовал - не помогло...

 
Jon4ik Дата: Пятница, 06.05.2016, 17:54:08 | Сообщение # 15
Сообщений: 278
Репутация: 7 [ +/- ]
Код


CSViewModelOffsets[iWeapon] = FindSendPropOffs("CPredictedViewModel", "m_hWeapon");

stock CSViewModel_SetWeapon(entity, weapon)
{
    SetEntDataEnt2(entity, CSViewModelOffsets[iWeapon], weapon, true);
}

new index = KvGetNum(hKv, "view_model_index");

if (b_flip_model)
      {
       new weapon = GetPlayerWeaponSlot(client, 2);
       if (weapon != -1)
       {
        CSViewModel_SetWeapon(ClientVM[client][1], weapon);
       }
      }
      else
      {
       CSViewModel_SetWeapon(ClientVM[client][1], WeaponIndex);
      }
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: