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

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

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

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

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

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

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

баг с рюкзаком

Vaqtincha
сообщение 31.12.2014, 14:03
Сообщение #1
Стаж: 11 лет

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

Всем привет в кс 1.6 есть не большой баг с бомбой когда в руках находится C4(выборе SLOT5) не скрывается backpack
(submodel)

нашел тему https://forums.alliedmods.net/showthread.php?t=104085 у вас есть более оптимизированный вариант? Вы можете написать не большой плагин и выложить его виде sma спасибо за ранее.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
voed
сообщение 31.12.2014, 16:34
Сообщение #2
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Более оптимизированный чем у разработчика AMXX? Не думаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 31.12.2014, 17:17
Сообщение #3
Стаж: 11 лет

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

Цитата(voed @ 31.12.2014, 16:34) *
Более оптимизированный чем у разработчика AMXX? Не думаю

откуда там cs_set_user_submodel ?(код который написал arkshine) Нигде нет инфы про submodel

даже сомневаюсь что исходник будет компилиться успешно!
Кто то сможет проверить код (пост arkshine) и если можно выложить готовый sma файл?
(дело в том что сейчас я с телефона нормально скопировать не могу)

Отредактировал: Vaqtincha, - 31.12.2014, 17:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 31.12.2014, 17:20
Сообщение #4
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

Vaqtincha, в cstrike.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 31.12.2014, 17:22
Сообщение #5
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Цитата(Vaqtincha @ 31.12.2014, 17:17) *
откуда там cs_set_user_submodel ?(код который написал arkshine) Нигде нет инфы про submodel

https://www.amxmodx.org/api/cstrike/cs_set_user_submodel
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 31.12.2014, 17:36
Сообщение #6
Стаж: 11 лет

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

Цитата(voed @ 31.12.2014, 17:22) *

упс я невнимательный ! А зачем использовали там много модулей? Разве там не хватает сначала проверка типа get_user_weapon и определить csw_c4 и скрывать submodel пару строк кода
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 31.12.2014, 18:08
Сообщение #7
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Цитата(Vaqtincha @ 31.12.2014, 17:36) *
упс я невнимательный ! А зачем использовали там много модулей? Разве там не хватает сначала проверка типа get_user_weapon и определить csw_c4 и скрывать submodel пару строк кода

Сначала надо отловить событие выбора бомбы игроком, показать сабмодель, отловить событие выбора любого другого оружия, спрятать сабмодель, отловить событие установки бомбы, спрятать сабмодель
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 31.12.2014, 18:12
Сообщение #8
Стаж: 11 лет

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

Цитата(voed @ 31.12.2014, 18:08) *
Сначала надо отловить событие выбора бомбы игроком, показать сабмодель, отловить событие выбора любого другого оружия, спрятать сабмодель, отловить событие установки бомбы, спрятать сабмодель

много гемороя за эту мелочь(не большой баг) :D
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 31.12.2014, 18:33
Сообщение #9
Стаж: 11 лет

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

раз уже использован так много модулей можно добавить еще одну мелочь? Надо сделать чтоб после дефуза модель бомбы не исчезла(убирался только мигающий спрайт)
модель оставался до окончание раунда конечно! Или это без engine не обойтись?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 31.12.2014, 23:24
Сообщение #10
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Цитата(Vaqtincha @ 31.12.2014, 18:33) *
раз уже использован так много модулей можно добавить еще одну мелочь? Надо сделать чтоб после дефуза модель бомбы не исчезла(убирался только мигающий спрайт)
модель оставался до окончание раунда конечно! Или это без engine не обойтись?


Fakemeta может выполнять все функции модуля engine.
"Оставить" бомбу скорее всего нельзя, т.к. после дефуза энтити удаляется, можно создать новую энтити
Код:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <fakemeta>


#define PLUGIN ""
#define VERSION "1.0"
#define AUTHOR "voed"

new Float:origin[3]
new bool:g_origin = false

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
// Bomb defusion (with kit) started event
register_logevent("e_bomb_defused", 3, "2=Defused_The_Bomb")
register_event("BarTime", "e_bomb_defusing", "be", "1=5", "1=10")
}

public e_bomb_defusing()
{
if(g_origin)//если кто-то балуется дефузом(например bind mwheelup +use)
return PLUGIN_CONTINUE

new bomb = engfunc( EngFunc_FindEntityByString, 0, "model", "models/w_c4.mdl" ); //ищем бомбу
if ( !pev_valid( bomb ) )
return PLUGIN_CONTINUE

pev(bomb, pev_origin, origin) // получаем координаты
g_origin = true

return PLUGIN_CONTINUE
}

public e_bomb_defused() //создаем энтити
{
new bomb = engfunc( EngFunc_CreateNamedEntity, engfunc( EngFunc_AllocString, "grenade" )) //создаем бомбу
if ( !pev_valid( bomb ) )
return PLUGIN_CONTINUE

set_pev( bomb, pev_origin, origin );
dllfunc(DLLFunc_Spawn, bomb)
engfunc( EngFunc_SetModel, bomb, "models/w_c4.mdl")
set_pev( bomb, pev_movetype, MOVETYPE_NONE)
set_pev( bomb ,pev_solid, SOLID_NOT )
set_pev( bomb, pev_spawnflags, pev( bomb, pev_spawnflags ) | SF_NORESPAWN );
//set_pev( bomb, pev_mins, { -3.0, -6.0, 0.0 } ) // размеры необязательно
//set_pev( bomb, pev_maxs, { 3.0, 6.0, 8.0 } )
g_origin = false

return PLUGIN_CONTINUE
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 31.12.2014, 23:33
Сообщение #11
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

Цитата(voed @ 1.1.2015, 0:24) *
Fakemeta может выполнять все функции модуля engine.

Но Engine может выполнять некоторые функции лучше и быстрее (тот же register_touch).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 1.1.2015, 1:22
Сообщение #12
Стаж: 11 лет

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

Цитата(voed @ 31.12.2014, 23:24) *
Fakemeta может выполнять все функции модуля engine.
"Оставить" бомбу скорее всего нельзя, т.к. после дефуза энтити удаляется, можно создать новую энтити
Код:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <fakemeta>


#define PLUGIN ""
#define VERSION "1.0"
#define AUTHOR "voed"

new Float:origin[3]
new bool:g_origin = false

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
// Bomb defusion (with kit) started event
register_logevent("e_bomb_defused", 3, "2=Defused_The_Bomb")
register_event("BarTime", "e_bomb_defusing", "be", "1=5", "1=10")
}

public e_bomb_defusing()
{
if(g_origin)//если кто-то балуется дефузом(например bind mwheelup +use)
return PLUGIN_CONTINUE

new bomb = engfunc( EngFunc_FindEntityByString, 0, "model", "models/w_c4.mdl" ); //ищем бомбу
if ( !pev_valid( bomb ) )
return PLUGIN_CONTINUE

pev(bomb, pev_origin, origin) // получаем координаты
g_origin = true

return PLUGIN_CONTINUE
}

public e_bomb_defused() //создаем энтити
{
new bomb = engfunc( EngFunc_CreateNamedEntity, engfunc( EngFunc_AllocString, "grenade" )) //создаем бомбу
if ( !pev_valid( bomb ) )
return PLUGIN_CONTINUE

set_pev( bomb, pev_origin, origin );
dllfunc(DLLFunc_Spawn, bomb)
engfunc( EngFunc_SetModel, bomb, "models/w_c4.mdl")
set_pev( bomb, pev_movetype, MOVETYPE_NONE)
set_pev( bomb ,pev_solid, SOLID_NOT )
set_pev( bomb, pev_spawnflags, pev( bomb, pev_spawnflags ) | SF_NORESPAWN );
//set_pev( bomb, pev_mins, { -3.0, -6.0, 0.0 } ) // размеры необязательно
//set_pev( bomb, pev_maxs, { 3.0, 6.0, 8.0 } )
g_origin = false

return PLUGIN_CONTINUE
}

Спасибо. Проверяю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: