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

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

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

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

Снежки

Статус пользователя anasbry
сообщение 7.12.2014, 13:58
Сообщение #1


Стаж: 11 лет

Сообщений: 70
Благодарностей: 29
Полезность: 182

Всем привет=) Есть плагин "снежки вместо гранат", помогите пожалуйста его дополнить иконкой снежинки слева голубым цветом, когда берешь любую из гранат в руки.
(Чтобы понимали о чём я, на базе всегда зеленая иконка слева высвечивается)

Исходник:

Всем привет=) Есть плагин "снежки вместо гранат", помогите пожалуйста его дополнить иконкой снежинки слева голубым цветом, когда берешь любую из гранат в руки.
(Чтобы понимали о чём я, на базе всегда зеленая иконка слева высвечивается)

Исходник:

Скрытый текст
Код
#include <amxmodx>
#include <fakemeta>
  
new VERSION[] = "1.1"
  
new const model_nade_world[] = { "models/snowballs/w_snowball.mdl" }
new const model_nade_view[] = { "models/snowballs/v_snowball.mdl" }
new const model_trail[] = { "sprites/laserbeam.spr" }
  
//Cvars
new on
new rendering
new trail
  
//For snowball trail
new g_trail
  
public plugin_precache()
{
        engfunc(EngFunc_PrecacheModel,model_nade_world)
        engfunc(EngFunc_PrecacheModel,model_nade_view)
        engfunc(EngFunc_PrecacheModel,model_nade_view)
        g_trail = engfunc(EngFunc_PrecacheModel,model_trail)
}
  
public plugin_init()
{
        register_plugin("Snowballs", VERSION, "FragOwn")
        on = register_cvar("snowballs_on","1")
        if(get_pcvar_num(on))
        {
                rendering = register_cvar("snowballs_rendering","1")
                trail = register_cvar("snowballs_trail","1")
                
                register_forward(FM_SetModel,"forward_model")
                
                register_event("CurWeapon","func_modelchange_hook","be","1=1","2=4","2=9","2=25")
        }
        
}
  
public func_modelchange_hook(id)  
{
set_pev(id, pev_viewmodel2,model_nade_view)
}

public forward_model(entity,const model[])
{
    if(!pev_valid(entity))
        return FMRES_IGNORED
    
    new className[33]
    pev( entity, pev_classname, className, 32 )
    if( !equal( className, "grenade" ) || equal( model, "models/w_c4.mdl" ) )
        return FMRES_IGNORED
    
    new rend = get_pcvar_num(rendering)
    new tr = get_pcvar_num(trail)
    
    switch ( model[ 9 ] )
    {
        case 'f' :
        {
            engfunc ( EngFunc_SetModel, entity, model_nade_world )
            if(tr)
{
                fm_set_trail(entity,255,255,255,255)
}
            if(rend)
{
                fm_set_rendering ( entity, kRenderFxGlowShell, 255, 255, 255, kRenderNormal, 255 )
}
        }
        case 'h' :
        {
            engfunc ( EngFunc_SetModel, entity, model_nade_world )
            if(tr)
{
                fm_set_trail(entity,255,0,0,255)
}
            if(rend)
{
                fm_set_rendering ( entity, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 255 )
}
        }
        case 's' :
        {
            engfunc ( EngFunc_SetModel, entity, model_nade_world )
            if(tr)
{
                fm_set_trail(entity,0,255,0,255)
}
            if(rend)
{
                fm_set_rendering ( entity, kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 255 )
}
        }
    }
    
    return FMRES_IGNORED
}
  
stock fm_set_trail(id,red,green,blue,bright)
{
        message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
        write_byte(TE_BEAMFOLLOW)              
        write_short(id)        
        write_short(g_trail)        
        write_byte(25)              
        write_byte(5)              
        write_byte(red)            
        write_byte(green)              
        write_byte(blue)                
        write_byte(bright)                
        message_end()
}
  
// teame06's function
stock fm_set_rendering(index, fx=kRenderFxNone, red=0, green=0, blue=0, render=kRenderNormal, amount=16)
{
        set_pev(index, pev_renderfx, fx)
        new Float:RenderColor[3]
        RenderColor[0] = float(red)
        RenderColor[1] = float(green)
        RenderColor[2] = float(blue)
        set_pev(index, pev_rendercolor, RenderColor)
        set_pev(index, pev_rendermode, render)
        set_pev(index, pev_renderamt, float(amount))
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя anasbry
сообщение 7.12.2014, 21:12
Сообщение #2


Стаж: 11 лет

Сообщений: 70
Благодарностей: 29
Полезность: 182

АП! Ребят, что никто не может сделать?=(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 7.12.2014, 22:06
Сообщение #3
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

message_begin(MSG_ONE,iconstatus,{0,0,0},id);
write_byte(1); // status (0=hide, 1=show, 2=flash)
write_string("dmg_bio"); // sprite name
write_byte(0); // red
write_byte(255); // green
write_byte(0); // blue
message_end();

//"dmg_bio" замени на название спрайта снежинки, я не помню какое название


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 7.12.2014, 22:15
Сообщение #4


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

dmg_cold вроде как
это спрайт иконка снежинки (урон холодом)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 7.12.2014, 22:16
Сообщение #5
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

dmg_cold. Но ты ему мало кода дал smile.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя anasbry
сообщение 7.12.2014, 22:48
Сообщение #6


Стаж: 11 лет

Сообщений: 70
Благодарностей: 29
Полезность: 182

Цитата(csnet @ 7.12.2014, 22:02) *
message_begin(MSG_ONE,iconstatus,{0,0,0},id);
write_byte(1); // status (0=hide, 1=show, 2=flash)
write_string("dmg_bio"); // sprite name
write_byte(0); // red
write_byte(255); // green
write_byte(0); // blue
message_end();

//"dmg_bio" замени на название спрайта снежинки, я не помню какое название

Спасибо большое thank_you2.gif
P.S Safety1st
Не ему, а ей=)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 7.12.2014, 22:51
Сообщение #7
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

new iconstatus


iconstatus = get_user_msgid("StatusIcon")

в plugin_init


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя anasbry
сообщение 7.12.2014, 22:53
Сообщение #8


Стаж: 11 лет

Сообщений: 70
Благодарностей: 29
Полезность: 182

Цитата(csnet @ 7.12.2014, 21:47) *
new iconstatus


iconstatus = get_user_msgid("StatusIcon")

в plugin_init

Извини за тупизм в этой сфере, но можно готовый код пожалуйста blush2.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 7.12.2014, 23:03
Сообщение #9
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

лучше через csx . сек

Код:


#include <amxmodx>
#include <fakemeta>

new VERSION[] = "1.1"

new iconstatus

new const model_nade_world[] = { "models/snowballs/w_snowball.mdl" }
new const model_nade_view[] = { "models/snowballs/v_snowball.mdl" }
new const model_trail[] = { "sprites/laserbeam.spr" }

//Cvars
new on
new rendering
new trail

//For snowball trail
new g_trail

public plugin_precache()
{
engfunc(EngFunc_PrecacheModel,model_nade_world)
engfunc(EngFunc_PrecacheModel,model_nade_view)
engfunc(EngFunc_PrecacheModel,model_nade_view)
g_trail = engfunc(EngFunc_PrecacheModel,model_trail)
}

public plugin_init()
{
register_plugin("Snowballs", VERSION, "FragOwn")
on = register_cvar("snowballs_on","1")
iconstatus = get_user_msgid("StatusIcon")
if(get_pcvar_num(on))
{
rendering = register_cvar("snowballs_rendering","1")
trail = register_cvar("snowballs_trail","1")

register_forward(FM_SetModel,"forward_model")

register_event("CurWeapon","func_modelchange_hook","be","1=1","2=4","2=9","2=25")
}

}

public func_modelchange_hook(id)
{
set_pev(id, pev_viewmodel2,model_nade_view)
message_begin(MSG_ONE,iconstatus,{0,0,0},id);
write_byte(1); // status (0=hide, 1=show, 2=flash)
write_string("dmg_cold"); // sprite name
write_byte(0); // red
write_byte(255); // green
write_byte(0); // blue
message_end();
}

public forward_model(entity,const model[])
{
if(!pev_valid(entity))
return FMRES_IGNORED

new className[33]
pev( entity, pev_classname, className, 32 )
if( !equal( className, "grenade" ) || equal( model, "models/w_c4.mdl" ) )
return FMRES_IGNORED

new rend = get_pcvar_num(rendering)
new tr = get_pcvar_num(trail)

switch ( model[ 9 ] )
{
case 'f' :
{
engfunc ( EngFunc_SetModel, entity, model_nade_world )
if(tr)
{
fm_set_trail(entity,255,255,255,255)
}
if(rend)
{
fm_set_rendering ( entity, kRenderFxGlowShell, 255, 255, 255, kRenderNormal, 255 )
}
}
case 'h' :
{
engfunc ( EngFunc_SetModel, entity, model_nade_world )
if(tr)
{
fm_set_trail(entity,255,0,0,255)
}
if(rend)
{
fm_set_rendering ( entity, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 255 )
}
}
case 's' :
{
engfunc ( EngFunc_SetModel, entity, model_nade_world )
if(tr)
{
fm_set_trail(entity,0,255,0,255)
}
if(rend)
{
fm_set_rendering ( entity, kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 255 )
}
}
}

return FMRES_IGNORED
}

stock fm_set_trail(id,red,green,blue,bright)
{
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_BEAMFOLLOW)
write_short(id)
write_short(g_trail)
write_byte(25)
write_byte(5)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(bright)
message_end()
}

// teame06's function
stock fm_set_rendering(index, fx=kRenderFxNone, red=0, green=0, blue=0, render=kRenderNormal, amount=16)
{
set_pev(index, pev_renderfx, fx)
new Float:RenderColor[3]
RenderColor[0] = float(red)
RenderColor[1] = float(green)
RenderColor[2] = float(blue)
set_pev(index, pev_rendercolor, RenderColor)
set_pev(index, pev_rendermode, render)
set_pev(index, pev_renderamt, float(amount))
}



честно говоря аргументы эвентов я еще не нашел времени засесть и выучить

Отредактировал: csnet, - 7.12.2014, 23:02


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя anasbry
сообщение 7.12.2014, 23:05
Сообщение #10


Стаж: 11 лет

Сообщений: 70
Благодарностей: 29
Полезность: 182

Чтобы я без вас делала. Спасибо огромное)

Отредактировал: Bloo, - 8.12.2014, 0:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 7.12.2014, 23:09
Сообщение #11
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

если иконка не отрубается
добавь, при кидании любой гранаты оффнется

Код:

public grenade_throw(id, greindex, wId)
{

message_begin(MSG_ONE,iconstatus,{0,0,0},id);
write_byte(0); // status (0=hide, 1=show, 2=flash)
write_string("dmg_cold"); // sprite name
write_byte(0); // red
write_byte(255); // green
write_byte(0); // blue
message_end();

}



Отредактировал: csnet, - 7.12.2014, 23:09


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 8.12.2014, 0:14
Сообщение #12
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

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