bomb sound

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

bomb sound

Мнение от esc-Fiv3 » 04 Дек 2018, 00:23

Hi! I need a plugin that set a bomb sound when explode and when the bomb is defused. Only these 2 things. There are many on the internet but I don't need hud messages or another sounds when you plant the bomb and other things. I already have a plugin that change these messages and I don't want to be overwrite and to make a problem on the server. Thanks!

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

bomb sound

Мнение от OciXCrom » 04 Дек 2018, 15:05

Set your sounds in the beginning of the code.

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <csx>

new const EXPLODE_SOUND[] = "explode_sound.wav"
new const DEFUSE_SOUND[] = "defuse_sound.wav"

public plugin_init()
	register_plugin("Explode/Defuse Sound", "1.0", "OciXCrom")

public plugin_precache()
{
	precache_sound(EXPLODE_SOUND)
	precache_sound(DEFUSE_SOUND)
}

public bomb_explode(iPlanter, iDefuser)
	client_cmd(0, "spk ^"%s^"", EXPLODE_SOUND)

public bomb_defused(iDefuser)
	client_cmd(0, "spk ^"%s^"", DEFUSE_SOUND)

Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

bomb sound

Мнение от esc-Fiv3 » 04 Дек 2018, 15:55

defuse sound works but the other one no..
This is what it shows in console:
north/explode_sound.wav is a stereo sample (Solved: it was a problem with the sound)

Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!
Overflow 500 temporary ents!

And one more thing..I don't know why I get this message with overflow. I deleted all maps that had this message in console. It happend when bomb explode. Can be because of snowing on the map?

I found an interesting plugin. Can you make some changes for me? There is a problem with the led, it doesn't load the sprite. And the sound works when you plant the bomb and probably when you defuse it. Can you make it to be when it explode, not that one when you plant the bomb? Thanks!

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <engine>

#define PLUGIN "Snowman - Bomb"
#define VERSION "1.5.1"
#define AUTHOR "Alka / s0h"

#pragma tabsize 0

//Settings
#define SOUND // Если не хотите слышать звуки, закоментируйте эту строку
//#define SNOW //Если вам не нужен снег, закоментируйте эту строку
#define ANIMATION_DEFUSE //Если вам не нужна анимация во время разминирования бомбы, закоментируйте эту строку
#define BLINK_BOMB //Если хотите чтобы бомба внизу снеговика мигала, закоментируйте эту строку

new iEntity;

#if defined BLINK_BOMB
new g_iLedSprite;
#endif

new const gClassname_bomb[] = "bomb_snow"
 
new const g_szBombModels[][] = {
    "models/north/c4.mdl"
};
 
#if defined SOUND  
new const g_szBombSounds[][] = {
	
	"north/defuse_sound.wav",
	"north/explode_sound.wav"
};
#endif
 
public plugin_init() 
{
	register_event("HLTV", "eventHLTV", "a", "1=0", "2=0");

    register_plugin(PLUGIN, VERSION, AUTHOR);
     
	#if defined SNOW   
		register_clcmd("say /snowoff", "clcmd_snowoff")
		register_clcmd("say /snow", "clcmd_snowon")
	#endif
	
    register_forward(FM_SetModel, "fwd_SetModel", 1);
     
	register_logevent("logevent_BombDefused", 3, "2=Defused_The_Bomb"); 
	
	#if defined ANIMATION_DEFUSE
	register_event("BarTime", "_cansel", "b", "1=0") //Событие отмены минирования/разминирования бомбы
	#endif
	
	register_think(gClassname_bomb, "EntityThink")
	
	#if defined BLINK_BOMB
	register_message(SVC_TEMPENTITY, "message_TempEntity");
	#endif
}

public plugin_precache()
{
    engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_snow"));
     
	precache_model("models/hairt.mdl"); 
    new i;
    for(i = 0; i < sizeof g_szBombModels; i++)
        precache_model(g_szBombModels[i]);
		
	for(i = 0 ; i < sizeof g_szBombModels ; i++)
		precache_model(g_szBombModels[i]);
		
	#if defined SOUND  	
	for(i = 0 ; i < sizeof g_szBombSounds ; i++)
		precache_sound(g_szBombSounds[i]);
	#endif
	
	#if defined BLINK_BOMB
	g_iLedSprite = precache_model("sprites/ledglow.spr");
	#endif
}

#if defined BLINK_BOMB
public message_TempEntity(msg_id, msg_dest, msg_ent)
{
    if(get_msg_arg_int(1) == TE_GLOWSPRITE)
    {
        if(get_msg_arg_int(5) == g_iLedSprite)
            return PLUGIN_HANDLED;
    }
    return PLUGIN_CONTINUE;
}
#endif

public eventHLTV()
{
	clean()
}

public EntityThink(iEntity)
{
    if(!pev_valid(iEntity))
        return PLUGIN_CONTINUE
	
	set_pev(iEntity, pev_nextthink, get_gametime() + 0.1)
			
    return PLUGIN_CONTINUE
}


 
#if defined SNOW   
public client_putinserver(id)
{
    client_cmd(id, "cl_weather 3")
}
 
public clcmd_snowoff(id)
{
    client_cmd(id, "cl_weather 0")
}
 
public clcmd_snowon(id)
{
    client_cmd(id, "cl_weather 3")
}
#endif

public fwd_SetModel(ent, const szModel[])
{
    if(!pev_valid(ent))
        return FMRES_IGNORED;
     
    if(equal(szModel, "models/w_c4.mdl"))
    {
        engfunc(EngFunc_SetModel, ent, "models/hairt.mdl");
		
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED;
}

public clean()
{
	new entity = -1;
	
	while((entity = find_ent_by_class(entity, gClassname_bomb)))
	{
		remove_entity(entity);
	}
}

public bomb_planted(id)
{
	#if defined SOUND   
	emit_sound(0, CHAN_AUTO, g_szBombSounds[1], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
	#endif
	
	new iOrigin[3] //Создаем массив для хранение координат
    get_user_origin(id, iOrigin, 0) //Получаем координаты куда смотрит игрок

	new Float:fOrigin[3] //Создаем массив для float коодинат
    IVecFVec(iOrigin, fOrigin) //Конвертируем координаты в дробные
	
	if( (pev(id, pev_flags) & FL_ONGROUND) && (pev(id, pev_button) & IN_DUCK ) )
		fOrigin[2] += 18.0;

	iEntity = create_entity("info_target") //Создаем объект info_target
   
	if(!pev_valid(iEntity)) //Проверяем сущетсвует ли, если нет
        return PLUGIN_HANDLED //Заканчиваем. Дальше нам делать нечего
		
    set_pev(iEntity, pev_origin, fOrigin) //Присваиваем координаты

    set_pev(iEntity, pev_classname, gClassname_bomb) //Присваиваем Classname
	set_pev(iEntity, pev_solid, SOLID_NOT) //Делаем его непроходимым
    set_pev(iEntity, pev_movetype, MOVETYPE_NONE) //Не задаем тип движения, во всяком случаи пока
	set_pev(iEntity, pev_sequence, 1) //Выставляем № анимации при создании
    set_pev(iEntity, pev_framerate, 1.0) //Выставляем скорость анимации
	set_pev(iEntity, pev_nextthink, get_gametime() + 1.0) //Создаем запуск think
		
	engfunc(EngFunc_SetModel, iEntity, g_szBombModels[0]) //Присваиваем модель

    return PLUGIN_HANDLED //Заканчиваем. Дальше нам делать нечего
}

public bomb_explode()
{
	clean()
}

public bomb_defusing() // Момент когда бомбу начали разминировать
{
	#if defined ANIMATION_DEFUSE
	if(pev_valid(iEntity)) __Anim(iEntity, 3, 1.0); //run
	#endif
}

#if defined ANIMATION_DEFUSE
public _cansel()
{
	if(pev_valid(iEntity)) __Anim(iEntity, 1, 1.0); //not run
}
#endif

public logevent_BombDefused()
{
	#if defined SOUND   
	emit_sound(0, CHAN_AUTO, g_szBombSounds[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
	#endif
	
	if(pev_valid(iEntity)) __Anim(iEntity, 104, 1.0); //dead
}

stock __Anim(index, sequence, Float: framerate = 1.0) 
{ 
	static className[32]; 
	entity_get_string(iEntity, EV_SZ_classname, className, charsmax(className)) 
	if(equali(className, gClassname_bomb) && pev_valid(index))
	{
		entity_set_float(index, EV_FL_animtime, get_gametime()); 
		entity_set_float(index, EV_FL_framerate, framerate); 
		entity_set_float(index, EV_FL_frame, 0.0); 
		entity_set_int(index, EV_INT_sequence, sequence); 
	}
	
	if(sequence == 104)
	{
		set_task(2.5, "clean")
	}
} 

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

bomb sound

Мнение от OciXCrom » 05 Дек 2018, 13:52

Not all sounds can play in CS. They need to be converted in a proper format. The easiest method (for me at least) to convert a sound for CS is using this website with the following attributes:
  • Bit resolution: 16 Bit
  • Sampling rate: 22050 Hz
  • Audio channels: mono
The "overflow" errors are probably because of the map or some plugin that is creating entities. They are not related to the plugin I made.

Here's the other plugin with the sound change to play on explode rather than on plant.

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <engine>

#define PLUGIN "Snowman - Bomb"
#define VERSION "1.5.1"
#define AUTHOR "Alka / s0h"

#pragma tabsize 0

//Settings
#define SOUND // Если не хотите слышать звуки, закоментируйте эту строку
//#define SNOW //Если вам не нужен снег, закоментируйте эту строку
#define ANIMATION_DEFUSE //Если вам не нужна анимация во время разминирования бомбы, закоментируйте эту строку
#define BLINK_BOMB //Если хотите чтобы бомба внизу снеговика мигала, закоментируйте эту строку

new iEntity;

#if defined BLINK_BOMB
new g_iLedSprite;
#endif

new const gClassname_bomb[] = "bomb_snow"
 
new const g_szBombModels[][] = {
    "models/north/c4.mdl"
};
 
#if defined SOUND  
new const g_szBombSounds[][] = {
    
    "north/defuse_sound.wav",
    "north/explode_sound.wav"
};
#endif
 
public plugin_init() 
{
    register_event("HLTV", "eventHLTV", "a", "1=0", "2=0");

    register_plugin(PLUGIN, VERSION, AUTHOR);
     
    #if defined SNOW   
        register_clcmd("say /snowoff", "clcmd_snowoff")
        register_clcmd("say /snow", "clcmd_snowon")
    #endif
    
    register_forward(FM_SetModel, "fwd_SetModel", 1);
     
    register_logevent("logevent_BombDefused", 3, "2=Defused_The_Bomb"); 
    
    #if defined ANIMATION_DEFUSE
    register_event("BarTime", "_cansel", "b", "1=0") //Событие отмены минирования/разминирования бомбы
    #endif
    
    register_think(gClassname_bomb, "EntityThink")
    
    #if defined BLINK_BOMB
    register_message(SVC_TEMPENTITY, "message_TempEntity");
    #endif
}

public plugin_precache()
{
    engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_snow"));
     
    precache_model("models/hairt.mdl"); 
    new i;
    for(i = 0; i < sizeof g_szBombModels; i++)
        precache_model(g_szBombModels[i]);
        
    for(i = 0 ; i < sizeof g_szBombModels ; i++)
        precache_model(g_szBombModels[i]);
        
    #if defined SOUND   
    for(i = 0 ; i < sizeof g_szBombSounds ; i++)
        precache_sound(g_szBombSounds[i]);
    #endif
    
    #if defined BLINK_BOMB
    g_iLedSprite = precache_model("sprites/ledglow.spr");
    #endif
}

#if defined BLINK_BOMB
public message_TempEntity(msg_id, msg_dest, msg_ent)
{
    if(get_msg_arg_int(1) == TE_GLOWSPRITE)
    {
        if(get_msg_arg_int(5) == g_iLedSprite)
            return PLUGIN_HANDLED;
    }
    return PLUGIN_CONTINUE;
}
#endif

public eventHLTV()
{
    clean()
}

public EntityThink(iEntity)
{
    if(!pev_valid(iEntity))
        return PLUGIN_CONTINUE
    
    set_pev(iEntity, pev_nextthink, get_gametime() + 0.1)
            
    return PLUGIN_CONTINUE
}


 
#if defined SNOW   
public client_putinserver(id)
{
    client_cmd(id, "cl_weather 3")
}
 
public clcmd_snowoff(id)
{
    client_cmd(id, "cl_weather 0")
}
 
public clcmd_snowon(id)
{
    client_cmd(id, "cl_weather 3")
}
#endif

public fwd_SetModel(ent, const szModel[])
{
    if(!pev_valid(ent))
        return FMRES_IGNORED;
     
    if(equal(szModel, "models/w_c4.mdl"))
    {
        engfunc(EngFunc_SetModel, ent, "models/hairt.mdl");
        
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED;
}

public clean()
{
    new entity = -1;
    
    while((entity = find_ent_by_class(entity, gClassname_bomb)))
    {
        remove_entity(entity);
    }
}

public bomb_planted(id)
{    
    new iOrigin[3] //Создаем массив для хранение координат
    get_user_origin(id, iOrigin, 0) //Получаем координаты куда смотрит игрок

    new Float:fOrigin[3] //Создаем массив для float коодинат
    IVecFVec(iOrigin, fOrigin) //Конвертируем координаты в дробные
    
    if( (pev(id, pev_flags) & FL_ONGROUND) && (pev(id, pev_button) & IN_DUCK ) )
        fOrigin[2] += 18.0;

    iEntity = create_entity("info_target") //Создаем объект info_target
   
    if(!pev_valid(iEntity)) //Проверяем сущетсвует ли, если нет
        return PLUGIN_HANDLED //Заканчиваем. Дальше нам делать нечего
        
    set_pev(iEntity, pev_origin, fOrigin) //Присваиваем координаты

    set_pev(iEntity, pev_classname, gClassname_bomb) //Присваиваем Classname
    set_pev(iEntity, pev_solid, SOLID_NOT) //Делаем его непроходимым
    set_pev(iEntity, pev_movetype, MOVETYPE_NONE) //Не задаем тип движения, во всяком случаи пока
    set_pev(iEntity, pev_sequence, 1) //Выставляем № анимации при создании
    set_pev(iEntity, pev_framerate, 1.0) //Выставляем скорость анимации
    set_pev(iEntity, pev_nextthink, get_gametime() + 1.0) //Создаем запуск think
        
    engfunc(EngFunc_SetModel, iEntity, g_szBombModels[0]) //Присваиваем модель

    return PLUGIN_HANDLED //Заканчиваем. Дальше нам делать нечего
}

public bomb_explode()
{
    #if defined SOUND   
    emit_sound(0, CHAN_AUTO, g_szBombSounds[1], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
    #endif
    
    clean()
}

public bomb_defusing() // Момент когда бомбу начали разминировать
{
    #if defined ANIMATION_DEFUSE
    if(pev_valid(iEntity)) __Anim(iEntity, 3, 1.0); //run
    #endif
}

#if defined ANIMATION_DEFUSE
public _cansel()
{
    if(pev_valid(iEntity)) __Anim(iEntity, 1, 1.0); //not run
}
#endif

public logevent_BombDefused()
{
    #if defined SOUND   
    emit_sound(0, CHAN_AUTO, g_szBombSounds[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
    #endif
    
    if(pev_valid(iEntity)) __Anim(iEntity, 104, 1.0); //dead
}

stock __Anim(index, sequence, Float: framerate = 1.0) 
{ 
    static className[32]; 
    entity_get_string(iEntity, EV_SZ_classname, className, charsmax(className)) 
    if(equali(className, gClassname_bomb) && pev_valid(index))
    {
        entity_set_float(index, EV_FL_animtime, get_gametime()); 
        entity_set_float(index, EV_FL_framerate, framerate); 
        entity_set_float(index, EV_FL_frame, 0.0); 
        entity_set_int(index, EV_INT_sequence, sequence); 
    }
    
    if(sequence == 104)
    {
        set_task(2.5, "clean")
    }
} 
What do you mean by "the sprite doesn't load"? Have you tried using a different sprite?

Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

bomb sound

Мнение от esc-Fiv3 » 05 Дек 2018, 16:18

You solved the problem with the sprite too? I want one more thing if you can do for me. I want that "models/north/c4.mdl" to have a glow and to be stable. I mean not to go through the model when you move around it. And thanks for everything!

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

bomb sound

Мнение от OciXCrom » 05 Дек 2018, 20:45

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <engine>

#define PLUGIN "Snowman - Bomb"
#define VERSION "1.5.1"
#define AUTHOR "Alka / s0h"

#pragma tabsize 0

//Settings
#define SOUND // Если не хотите слышать звуки, закоментируйте эту строку
//#define SNOW //Если вам не нужен снег, закоментируйте эту строку
#define ANIMATION_DEFUSE //Если вам не нужна анимация во время разминирования бомбы, закоментируйте эту строку
#define BLINK_BOMB //Если хотите чтобы бомба внизу снеговика мигала, закоментируйте эту строку
#define BOMB_GLOW_COLOR 255.0, 0.0, 0.0
#define BOMB_GLOW_BRIGHTNESS 40

new iEntity;

#if defined BLINK_BOMB
new g_iLedSprite;
#endif

new const gClassname_bomb[] = "bomb_snow"
 
new const g_szBombModels[][] = {
    "models/north/c4.mdl"
};
 
#if defined SOUND  
new const g_szBombSounds[][] = {
    
    "north/defuse_sound.wav",
    "north/explode_sound.wav"
};
#endif
 
public plugin_init() 
{
    register_event("HLTV", "eventHLTV", "a", "1=0", "2=0");

    register_plugin(PLUGIN, VERSION, AUTHOR);
     
    #if defined SNOW   
        register_clcmd("say /snowoff", "clcmd_snowoff")
        register_clcmd("say /snow", "clcmd_snowon")
    #endif
    
    register_forward(FM_SetModel, "fwd_SetModel", 1);
     
    register_logevent("logevent_BombDefused", 3, "2=Defused_The_Bomb"); 
    
    #if defined ANIMATION_DEFUSE
    register_event("BarTime", "_cansel", "b", "1=0") //Событие отмены минирования/разминирования бомбы
    #endif
    
    register_think(gClassname_bomb, "EntityThink")
    
    #if defined BLINK_BOMB
    register_message(SVC_TEMPENTITY, "message_TempEntity");
    #endif
}

public plugin_precache()
{
    engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_snow"));
     
    precache_model("models/hairt.mdl"); 
    new i;
    for(i = 0; i < sizeof g_szBombModels; i++)
        precache_model(g_szBombModels[i]);
        
    for(i = 0 ; i < sizeof g_szBombModels ; i++)
        precache_model(g_szBombModels[i]);
        
    #if defined SOUND   
    for(i = 0 ; i < sizeof g_szBombSounds ; i++)
        precache_sound(g_szBombSounds[i]);
    #endif
    
    #if defined BLINK_BOMB
    g_iLedSprite = precache_model("sprites/ledglow.spr");
    #endif
}

#if defined BLINK_BOMB
public message_TempEntity(msg_id, msg_dest, msg_ent)
{
    if(get_msg_arg_int(1) == TE_GLOWSPRITE)
    {
        if(get_msg_arg_int(5) == g_iLedSprite)
            return PLUGIN_HANDLED;
    }
    return PLUGIN_CONTINUE;
}
#endif

public eventHLTV()
{
    clean()
}

public EntityThink(iEntity)
{
    if(!pev_valid(iEntity))
        return PLUGIN_CONTINUE
    
    set_pev(iEntity, pev_nextthink, get_gametime() + 0.1)
            
    return PLUGIN_CONTINUE
}


 
#if defined SNOW   
public client_putinserver(id)
{
    client_cmd(id, "cl_weather 3")
}
 
public clcmd_snowoff(id)
{
    client_cmd(id, "cl_weather 0")
}
 
public clcmd_snowon(id)
{
    client_cmd(id, "cl_weather 3")
}
#endif

public fwd_SetModel(ent, const szModel[])
{
    if(!pev_valid(ent))
        return FMRES_IGNORED;
     
    if(equal(szModel, "models/w_c4.mdl"))
    {
        engfunc(EngFunc_SetModel, ent, "models/hairt.mdl");
        
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED;
}

public clean()
{
    new entity = -1;
    
    while((entity = find_ent_by_class(entity, gClassname_bomb)))
    {
        remove_entity(entity);
    }
}

public bomb_planted(id)
{    
    new iOrigin[3] //Создаем массив для хранение координат
    get_user_origin(id, iOrigin, 0) //Получаем координаты куда смотрит игрок

    new Float:fOrigin[3] //Создаем массив для float коодинат
    IVecFVec(iOrigin, fOrigin) //Конвертируем координаты в дробные
    
    if( (pev(id, pev_flags) & FL_ONGROUND) && (pev(id, pev_button) & IN_DUCK ) )
        fOrigin[2] += 18.0;

    iEntity = create_entity("info_target") //Создаем объект info_target
   
    if(!pev_valid(iEntity)) //Проверяем сущетсвует ли, если нет
        return PLUGIN_HANDLED //Заканчиваем. Дальше нам делать нечего
        
    set_pev(iEntity, pev_origin, fOrigin) //Присваиваем координаты

    set_pev(iEntity, pev_classname, gClassname_bomb) //Присваиваем Classname
    set_pev(iEntity, pev_solid, SOLID_BBOX) //Делаем его непроходимым
    set_pev(iEntity, pev_movetype, MOVETYPE_NONE) //Не задаем тип движения, во всяком случаи пока
    set_pev(iEntity, pev_sequence, 1) //Выставляем № анимации при создании
    set_pev(iEntity, pev_framerate, 1.0) //Выставляем скорость анимации
    set_pev(iEntity, pev_nextthink, get_gametime() + 1.0) //Создаем запуск think
    set_pev(iEntity, pev_rendermode, kRenderNormal)
    set_pev(iEntity, pev_renderfx, kRenderFxGlowShell)
    set_pev(iEntity, pev_renderamt, BOMB_GLOW_BRIGHTNESS)
    set_pev(iEntity, pev_rendercolor, Float:{BOMB_GLOW_COLOR})
        
    engfunc(EngFunc_SetModel, iEntity, g_szBombModels[0]) //Присваиваем модель

    return PLUGIN_HANDLED //Заканчиваем. Дальше нам делать нечего
}

public bomb_explode()
{
    #if defined SOUND   
    emit_sound(0, CHAN_AUTO, g_szBombSounds[1], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
    #endif
    
    clean()
}

public bomb_defusing() // Момент когда бомбу начали разминировать
{
    #if defined ANIMATION_DEFUSE
    if(pev_valid(iEntity)) __Anim(iEntity, 3, 1.0); //run
    #endif
}

#if defined ANIMATION_DEFUSE
public _cansel()
{
    if(pev_valid(iEntity)) __Anim(iEntity, 1, 1.0); //not run
}
#endif

public logevent_BombDefused()
{
    #if defined SOUND   
    emit_sound(0, CHAN_AUTO, g_szBombSounds[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
    #endif
    
    if(pev_valid(iEntity)) __Anim(iEntity, 104, 1.0); //dead
}

stock __Anim(index, sequence, Float: framerate = 1.0) 
{ 
    static className[32]; 
    entity_get_string(iEntity, EV_SZ_classname, className, charsmax(className)) 
    if(equali(className, gClassname_bomb) && pev_valid(index))
    {
        entity_set_float(index, EV_FL_animtime, get_gametime()); 
        entity_set_float(index, EV_FL_framerate, framerate); 
        entity_set_float(index, EV_FL_frame, 0.0); 
        entity_set_int(index, EV_INT_sequence, sequence); 
    }
    
    if(sequence == 104)
    {
        set_task(2.5, "clean")
    }
} 
You can change the color here:

Код за потвърждение: Избери целия код

#define BOMB_GLOW_COLOR 255.0, 0.0, 0.0
#define BOMB_GLOW_BRIGHTNESS 40

Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

bomb sound

Мнение от esc-Fiv3 » 05 Дек 2018, 21:49

Изображение

Аватар
1fRaNkkK
Извън линия
Потребител
Потребител
Мнения: 776
Регистриран на: 09 Окт 2016, 15:21
Се отблагодари: 8 пъти
Получена благодарност: 55 пъти

bomb sound

Мнение от 1fRaNkkK » 05 Дек 2018, 22:42

esc-Fiv3 написа: 05 Дек 2018, 21:49 Изображение
Make sure you use UTF-8 without BOM Encoding or only UTF-8 in Notepad++.

Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

bomb sound

Мнение от esc-Fiv3 » 05 Дек 2018, 22:50

It works now! Thanks! Shoud I use UTF-8 from now? I have automatically UTF-8 BOM

The plugin works good but the led sprite still doesn't work. I don't need it anyway if I have this glow. One more thing I still can go through the model. Could you make it do not go through it anymore? Or could be a problem? This model have an animation and I'm not sure if can make a problem in the future if the model is stable.

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

bomb sound

Мнение от OciXCrom » 06 Дек 2018, 16:02

No, UTF8 BOM doesn't work in AMXX. Make sure it doesn't have BOM.

About going through the model - I changed that, not sure why it isn't working. It's this line:

Код за потвърждение: Избери целия код

set_pev(iEntity, pev_solid, SOLID_BBOX) //Делаем его непроходимым
It was previously set on SOLID_NOT which means you can go through it. SOLID_BBOX means that it will be a solid object, so you can touch it. I''m not sure if the animation affects it.

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 12 госта