| Сквозь пропы | 
|  | 
| 
| polo7965 | Дата: Четверг, 24.03.2016, 18:14:01 | Сообщение # 1 |  |   
|  |  | Сообщений: 10 Репутация: 0 [ +/- ]
 |  | Всем привет. Подскажите пожалуйста, как сделать так, чтобы гранаты пролетали сквозь проп, то есть игнорировали его, но при этом игроки врезались в него? Заранее спасибо. |  |  |  |  | 
| 
| RunCrafting | Дата: Пятница, 25.03.2016, 12:35:32 | Сообщение # 2 |  |   
|  |  | Сообщений: 52 Репутация: 0 [ +/- ]
 |  | Хм... попробуй захукать SDKHook_StartTouch или SDKHook_Touch, сделать проверку на игрока, и если это игрок, продолжать действие, если проп, запрещать |  |  |  |  | 
| 
| polo7965 | Дата: Воскресенье, 27.03.2016, 00:29:51 | Сообщение # 3 |  |   
|  |  | Сообщений: 10 Репутация: 0 [ +/- ]
 |  | Цитата RunCrafting (  ) Хм... попробуй захукать SDKHook_StartTouch или SDKHook_Touch, сделать проверку на игрока, и если это игрок, продолжать действие, если проп, запрещатьА как его запретить? Вот я отследил что допустим хае в полёте соприкоснулась, а как дальше быть?
 |  |  |  |  | 
| 
| RunCrafting | Дата: Среда, 30.03.2016, 21:22:13 | Сообщение # 4 |  |   
|  |  | Сообщений: 52 Репутация: 0 [ +/- ]
 |  | Цитата polo7965 (  ) А как его запретить? Вот я отследил что допустим хае в полёте соприкоснулась, а как дальше быть?
 Долго отвечал, т.к. не видел поста (Лучше ко мне обращаться в ВК vk.com/id168628974)
 
 
 Код public Action OnStartTouch(int entity1, int entity2)
 {
 return Plugin_Handled
 }
 
 можно не только Plugin_Handled, есть и другие
 Plugin_Continue - продолжить действие, но завершить функцию
 Plugin_Handled - запретить функцию и действие
 Plugin_Changed - используется, когда есть переменные, которые можно изменить
 Plugin_Stop - как Plugin_Handled, разницы не вижу, но что-то точно есть :)
 
 И да, я пробывал такое делать, сквозь ентити -1 он не идет, а насчет норм.пропов я незнаю, но сквозь игрока он проходит
 
 Сообщение отредактировал RunCrafting - Среда, 30.03.2016, 21:23:47 |  |  |  |  | 
| 
| Scarface_slv | Дата: Четверг, 31.03.2016, 11:33:16 | Сообщение # 5 |  |   
|  |  | Сообщений: 737 Репутация: 61 [ +/- ]
 |  | polo7965, Посмотри плагин наподобие, например NoBlock там используют m_CollisionGroup что бы игрок проходил через другого игрока. А еще есть m_usSolidFlags и m_nSolidType у проп. Возможно что ни будь у тебя получитсяИ попробуй так
 
 Код #include <sdkhooks>
 
 public OnEntityCreated(entity, const String:classname[])
 {
 if (StrContains(classname, "_projectile", false) != -1)
 {
 SDKHook(entity, SDKHook_SpawnPost, OnProjectileSpawned);
 }
 }
 
 public OnProjectileSpawned(entity)
 {
 SetEntProp(entity, Prop_Send, "m_CollisionGroup", 13);
 }
 
И еще нужно добавить индексу пропа m_CollisionGroup при ее создание
 SetEntProp(prop_index, Prop_Send, "m_CollisionGroup", 13);
 должно сработать
 
 
 Сообщение отредактировал Scarface_slv - Четверг, 31.03.2016, 13:42:21 |  |  |  |  |