Русское сообщество по скриптингу

Оружие за спиной (Back Weapons)

Утвержденные плагины для AMX Mod X администратором/модератором форума.

Модератор: Leonidddd

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только работоспособных плагинов для AMX Mod X. Новые плагины нужно выкладывать в разделе "Новые плагины".

Оружие за спиной (Back Weapons)

Сообщение DJ_WEST » 27 окт 2009, 11:40

Автор: Cheap_Suit
Версия: 1.87

Описание:
Данный плагин отображает первичное оружие за спиной, если вы его не используете (аналогично Counter-Strike: Source).



Поддерживаемое оружие:
  • Все винтовки
  • Автоматы (mp5, ump, p90)
  • Дробовики
  • Пулемет

Утверждено. //Leonidddd
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Оружие за спиной (Back Weapons)

Сообщение Valer4 » 04 май 2012, 23:55

Поделись ссылкой плиз)))
Аватара пользователя
Valer4
 
Сообщения: 52
Зарегистрирован: 07 окт 2010, 14:12
Откуда: Байконур
Благодарил (а): 5 раз.
Поблагодарили: 5 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение Valer4 » 04 май 2012, 23:56

Поделись ссылкой плиз)))
Аватара пользователя
Valer4
 
Сообщения: 52
Зарегистрирован: 07 окт 2010, 14:12
Откуда: Байконур
Благодарил (а): 5 раз.
Поблагодарили: 5 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение Valer4 » 05 май 2012, 00:00

zippel писал(а):
Ser_UFL писал(а):
что бы вы знали, лучше написать библиотеку для metamod чем для amxx скрипт + кучу моделей для скачки.. скриптеры епт...

:-|


на alliedmoders уже давно она есть... :-!


Поделись ссылкой плиз)))
Аватара пользователя
Valer4
 
Сообщения: 52
Зарегистрирован: 07 окт 2010, 14:12
Откуда: Байконур
Благодарил (а): 5 раз.
Поблагодарили: 5 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение DeniskaD » 07 май 2012, 09:45

[url=forums.alliedmods.net/showthread.php?p=359356]Здесь[/url]
- MultiMod [GunGame 2.13 (ru), Warcraft 3 Frozen Throne rc13 (ru), Zombie Plague 5.0.8 (ru)] (обновлено 27.10.2012г.)

Подключить Яндекс Диск
Аватара пользователя
DeniskaD
 
Сообщения: 114
Зарегистрирован: 08 янв 2011, 18:06
Благодарил (а): 5 раз.
Поблагодарили: 4 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение DeniskaD » 07 май 2012, 09:48

там в общем))
- MultiMod [GunGame 2.13 (ru), Warcraft 3 Frozen Throne rc13 (ru), Zombie Plague 5.0.8 (ru)] (обновлено 27.10.2012г.)

Подключить Яндекс Диск
Аватара пользователя
DeniskaD
 
Сообщения: 114
Зарегистрирован: 08 янв 2011, 18:06
Благодарил (а): 5 раз.
Поблагодарили: 4 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение Valer4 » 07 май 2012, 21:40

DeniskaD писал(а):[url=forums.alliedmods.net/showthread.php?p=359356]Здесь[/url]


zippel:
что бы вы знали, лучше написать библиотеку для metamod чем для amxx скрипт + кучу моделей для скачки.. скриптеры епт...

noo00oob:
Дабы ты такой не "епт", возьми да напиши.

zippel:
на alliedmoders уже давно она есть... :-!
Аватара пользователя
Valer4
 
Сообщения: 52
Зарегистрирован: 07 окт 2010, 14:12
Откуда: Байконур
Благодарил (а): 5 раз.
Поблагодарили: 5 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение hjhj » 24 сен 2012, 14:45

Привет всем. Помогите пожалуйста, хочу сделать, чтобы оружие за спиной было только у игроков с флагом "t", а у остальных как обычно. Где нужно дописать проверку?
Спасибо.
Аватара пользователя
hjhj
 
Сообщения: 10
Зарегистрирован: 16 сен 2010, 18:53
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение acelot » 20 янв 2013, 15:46

А можно оптимизировать плагин для war3 сервера?А то человек невидимый а на спине четкая модель оружия.Можно ли это как-то исправить?
Аватара пользователя
acelot
 
Сообщения: 26
Зарегистрирован: 19 дек 2012, 23:48
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Оружие за спиной (Back Weapons)

Сообщение Asim0 » 23 июл 2016, 18:55

фикс бага, когда у первого зм в biohazard на спине оружие, если до заражения он держал нож. компилить с biohazard.inc в папке include
Код: Выделить всё
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <biohazard>

#define PLUGIN    "Back Weapons"
#define AUTHOR    "hoboman313/cheap_suit"
#define VERSION    "1.87"

#define MAX_PLAYERS         32
#define OFFSET_PRIMARYWEAPON     116
#define OFFSET_WEAPONTYPE     43
#define EXTRAOFFSET_WEAPONS     4
#define OFFSET_AUTOSWITCH     509
#define OFFSET_SHIELD         510
#define HAS_SHIELD         (1<<24)

#define PRIMARY_WEAPONS (1<<CSW_SCOUT | 1<<CSW_XM1014 | 1<<CSW_MAC10 | 1<<CSW_AUG | 1<<CSW_UMP45 | 1<<CSW_SG550 | 1<<CSW_GALIL | 1<<CSW_FAMAS | 1<<CSW_AWP | 1<<CSW_MP5NAVY | 1<<CSW_M249 | 1<<CSW_M3 | 1<<CSW_M4A1 | 1<<CSW_TMP | 1<<CSW_G3SG1 | 1<<CSW_SG552 | 1<<CSW_AK47 | 1<<CSW_P90)

#define is_weapon_primary(%1)      (PRIMARY_WEAPONS & (1<<%1))
#define cs_get_weapon_type(%1)     get_pdata_int(%1, OFFSET_WEAPONTYPE, EXTRAOFFSET_WEAPONS)
#define cs_get_user_hasprim(%1)    get_pdata_int(%1, OFFSET_PRIMARYWEAPON)
#define cs_get_user_autoswitch(%1) get_pdata_int(%1, OFFSET_AUTOSWITCH)
#define cs_get_user_shield(%1)       (get_pdata_int(%1, OFFSET_SHIELD) & HAS_SHIELD) ? 1 : 0

enum
{
    
MODEL_NULL    0,
    
MODEL_AUG     1,
    
MODEL_AK47    2,
    
MODEL_AWP     3,
    
MODEL_MP5NAVY 4,
    
MODEL_P90     5,
    
MODEL_GALIL   6,
    
MODEL_M4A1    7,
    
MODEL_SG550   8,
    
MODEL_SG552   9,
    
MODEL_SCOUT   10,
    
MODEL_XM1014  11,
    
MODEL_M3      12,
    
MODEL_G3SG1   13,
    
MODEL_M249    14,
    
MODEL_FAMAS   15,
    
MODEL_UMP45   16
}

new 
g_weapons[][] =
{    
    
"weapon_p228",
    
"weapon_scout",
    
"weapon_hegrenade",
    
"weapon_xm1014",
    
"weapon_c4",
    
"weapon_mac10",
    
"weapon_aug",
    
"weapon_smokegrenade",
    
"weapon_elite",
    
"weapon_fiveseven",
    
"weapon_ump45",
    
"weapon_sg550",
    
"weapon_galil",
    
"weapon_famas",
    
"weapon_usp",
    
"weapon_glock18",
    
"weapon_awp",
    
"weapon_mp5navy",
    
"weapon_m249",
    
"weapon_m3",
    
"weapon_m4a1",
    
"weapon_tmp",
    
"weapon_g3sg1",
    
"weapon_flashbang",
    
"weapon_deagle",
    
"weapon_sg552",
    
"weapon_ak47",
    
"weapon_knife",
    
"weapon_p90"
}

new 
g_weaponclass[] = "backweapon"
new g_weaponmodel[] = "models/backweapons.mdl"

new g_weaponent[MAX_PLAYERS+1]

public 
plugin_init() 
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_cvar(PLUGINVERSIONFCVAR_SPONLY|FCVAR_SERVER)
    
    
RegisterHam(Ham_Killed,           "player""bacon_killed")
    
RegisterHam(Ham_Spawn,            "player""bacon_spawn_post"1)
    
RegisterHam(Ham_AddPlayerItem,    "player""bacon_addplayeritem")
    
RegisterHam(Ham_RemovePlayerItem"player""bacon_removeplayeritem")
    
    for(new 
0sizeof g_weaponsi++)
    {
        
RegisterHam(Ham_Item_AttachToPlayerg_weapons[i], "bacon_item_attachtoplayer_post"1)
        
RegisterHam(Ham_Item_Deploy,         g_weapons[i], "bacon_item_deploy_post",         1)
    }
}

public 
plugin_precache()
    
precache_model(g_weaponmodel)

public 
client_putinserver(id)
{
    static 
infotarget 
    
if(!infotargetinfotarget engfunc(EngFunc_AllocString"info_target")
    
    
g_weaponent[id] = engfunc(EngFunc_CreateNamedEntityinfotarget)
    if(
pev_valid(g_weaponent[id]))
    {
        
engfunc(EngFunc_SetModelg_weaponent[id], g_weaponmodel)
        
set_pev(g_weaponent[id], pev_classnameg_weaponclass)
        
set_pev(g_weaponent[id], pev_movetypeMOVETYPE_FOLLOW)
        
set_pev(g_weaponent[id], pev_effectsEF_NODRAW)
        
set_pev(g_weaponent[id], pev_aimentid)
    }
}

public 
client_disconnect(id)
{
    if(
g_weaponent[id] > && pev_valid(g_weaponent[id]))
        
engfunc(EngFunc_RemoveEntityg_weaponent[id])
    
    
g_weaponent[id] = 0
}

public 
bacon_killed(ididattackershouldgib)
    
fm_set_entity_visibility(g_weaponent[id], 0)

public 
bacon_addplayeritem(ident)
{
    static 
weaponidweaponid cs_get_weapon_type(ent)
    if(
is_weapon_primary(weaponid) && pev_valid(g_weaponent[id]))
    {
        
fm_set_entity_visibility(g_weaponent[id], 0)
        
set_pev(g_weaponent[id], pev_bodyget_weapon_model(weaponid))
    }
}

public 
bacon_removeplayeritem(ident)
{
    if(
is_weapon_primary(cs_get_weapon_type(ent)) && pev_valid(g_weaponent[id]))
        
fm_set_entity_visibility(g_weaponent[id], 0)
}

public 
bacon_spawn_post(id) if(is_user_alive(id))
{
    if(!
cs_get_user_hasprim(id))
        
fm_set_entity_visibility(g_weaponent[id], 0)
}

public 
bacon_item_attachtoplayer_post(entid) if(is_user_alive(id) && !cs_get_user_autoswitch(id))
{
    if(
is_weapon_primary(cs_get_weapon_type(ent)) && pev_valid(g_weaponent[id]))
        
fm_set_entity_visibility(g_weaponent[id], 1)
}

public 
bacon_item_deploy_post(ent)
{
    static 
idid pev(entpev_owner)
    if(
is_user_alive(id)) 
    {
        static 
weaponweapon cs_get_weapon_type(ent)
        if(
is_weapon_primary(weapon) || cs_get_user_shield(id))
            
fm_set_entity_visibility(g_weaponent[id], 0)
        
        else if(
cs_get_user_hasprim(id))
            
fm_set_entity_visibility(g_weaponent[id], 1)
    }
}

stock get_weapon_model(weapon)
{
    switch(
weapon)
    {
        case 
CSW_SCOUT:   return MODEL_SCOUT
        
case CSW_XM1014:  return MODEL_XM1014
        
case CSW_AUG:      return MODEL_AUG
        
case CSW_UMP45:   return MODEL_UMP45
        
case CSW_SG550:   return MODEL_SG550
        
case CSW_GALIL:   return MODEL_GALIL
        
case CSW_FAMAS:   return MODEL_FAMAS
        
case CSW_AWP:     return MODEL_AWP
        
case CSW_MP5NAVY: return MODEL_MP5NAVY
        
case CSW_M249:    return MODEL_M249
        
case CSW_M3:      return MODEL_M3
        
case CSW_M4A1:    return MODEL_M4A1
        
case CSW_G3SG1:   return MODEL_G3SG1
        
case CSW_SG552:   return MODEL_SG552
        
case CSW_AK47:    return MODEL_AK47
        
case CSW_P90:     return MODEL_P90
    
}
    return 
0
}

public 
event_infect2(id)
{    
    
fm_set_entity_visibility(g_weaponent[id], 0)
}
stock fm_set_entity_visibility(indexvisible 1
    
set_pev(indexpev_effectsvisible == pev(indexpev_effects) & ~EF_NODRAW pev(indexpev_effects) | EF_NODRAW
Девелопмент зм сервака Freearena-style: нужен скриптер
Я учился у восточного мастера искусству гармоничного расположения иконок на рабочем столе.
Аватара пользователя
Asim0
 
Сообщения: 56
Зарегистрирован: 04 мар 2011, 08:30
Благодарил (а): 8 раз.
Поблагодарили: 2 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Counter-Strike 1.6

Пред.

Вернуться в Утвержденные плагины

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10