Raised This Month: $51 Target: $400
 12% 

Custom radio model bug


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Smoothy
Junior Member
Join Date: Jul 2023
Old 07-23-2023 , 08:10   Custom radio model bug
Reply With Quote #1

Guys, can anyone help please. when i tested this plugin it works fine in the game client against bots. but when i upload it to my hosting server. only "cover me" works. any help ?


PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <cstrike>
#include <fakemeta>

#define PLUGIN "Seperate Radios for Different Player Models "
#define VERSION "3.0"
#define AUTHOR "STealTHB90"


new model[32];
new const 
AUDIOTEXT[][] =
{
    
"COVERME",
    
"TAKEPOINT",
    
"POSITION",
    
"REGROUP",
    
"FOLLOWME",
    
"HITASSIST",
    
"GO",
    
"FALLBACK",
    
"STICKTOG",
    
"GETINPOS",
    
"STORMFRONT",
    
"REPORTIN",
    
"AFFIRM",
    
"ROGER",
    
"ENEMYSPOT",
    
"BACKUP",
    
"CLEAR",
    
"INPOS",
    
"REPRTINGIN",
    
"BLOW",
    
"NEGATIVE",
    
"ENEMYDOWN",
    
"FIREINHOLE"
}
new const 
AUDIOJudgeGsg[][] =
{
    
"radio/RJudgeGsg/ct_coverme.wav",
    
"radio/RJudgeGsg/takepoint.wav",
    
"radio/RJudgeGsg/position.wav",
    
"radio/RJudgeGsg/regroup.wav",
    
"radio/RJudgeGsg/followme.wav",
    
"radio/RJudgeGsg/fireassis.wav",
    
"radio/RJudgeGsg/com_go.wav",
    
"radio/RJudgeGsg/fallback.wav",
    
"radio/RJudgeGsg/sticktog.wav",
    
"radio/RJudgeGsg/com_getinpos.wav",
    
"radio/RJudgeGsg/stormfront.wav",
    
"radio/RJudgeGsg/com_reportin.wav",
    
"radio/RJudgeGsg/ct_affirm.wav",
    
"radio/RJudgeGsg/roger.wav",
    
"radio/RJudgeGsg/ct_enemys.wav",
    
"radio/RJudgeGsg/ct_backup.wav",
    
"radio/RJudgeGsg/clear.wav",
    
"radio/RJudgeGsg/ct_inpos.wav",
    
"radio/RJudgeGsg/ct_reportingin.wav",
    
"radio/RJudgeGsg/blow.wav",
    
"radio/RJudgeGsg/negative.wav",
    
"radio/RJudgeGsg/enemydown.wav",
    
"radio/RJudgeGsg/ct_fireinhole.wav"
}
new const 
AUDIObuffpurple[][] =
{
    
"radio/Rbuffpurple/ct_coverme.wav",
    
"radio/Rbuffpurple/takepoint.wav",
    
"radio/Rbuffpurple/position.wav",
    
"radio/Rbuffpurple/regroup.wav",
    
"radio/Rbuffpurple/followme.wav",
    
"radio/Rbuffpurple/fireassis.wav",
    
"radio/Rbuffpurple/com_go.wav",
    
"radio/Rbuffpurple/fallback.wav",
    
"radio/Rbuffpurple/sticktog.wav",
    
"radio/Rbuffpurple/com_getinpos.wav",
    
"radio/Rbuffpurple/stormfront.wav",
    
"radio/Rbuffpurple/com_reportin.wav",
    
"radio/Rbuffpurple/ct_affirm.wav",
    
"radio/Rbuffpurple/roger.wav",
    
"radio/Rbuffpurple/ct_enemys.wav",
    
"radio/Rbuffpurple/ct_backup.wav",
    
"radio/Rbuffpurple/clear.wav",
    
"radio/Rbuffpurple/ct_inpos.wav",
    
"radio/Rbuffpurple/ct_reportingin.wav",
    
"radio/Rbuffpurple/blow.wav",
    
"radio/Rbuffpurple/negative.wav",
    
"radio/Rbuffpurple/enemydown.wav",
    
"radio/Rbuffpurple/ct_fireinhole.wav"
}
new const 
AUDIOJudgeGirl5[][] =
{
    
"radio/RJudgeGirl5/ct_coverme.wav",
    
"radio/RJudgeGirl5/takepoint.wav",
    
"radio/RJudgeGirl5/position.wav",
    
"radio/RJudgeGirl5/regroup.wav",
    
"radio/RJudgeGirl5/followme.wav",
    
"radio/RJudgeGirl5/fireassis.wav",
    
"radio/RJudgeGirl5/com_go.wav",
    
"radio/RJudgeGirl5/fallback.wav",
    
"radio/RJudgeGirl5/sticktog.wav",
    
"radio/RJudgeGirl5/com_getinpos.wav",
    
"radio/RJudgeGirl5/stormfront.wav",
    
"radio/RJudgeGirl5/com_reportin.wav",
    
"radio/RJudgeGirl5/ct_affirm.wav",
    
"radio/RJudgeGirl5/roger.wav",
    
"radio/RJudgeGirl5/ct_enemys.wav",
    
"radio/RJudgeGirl5/ct_backup.wav",
    
"radio/RJudgeGirl5/clear.wav",
    
"radio/RJudgeGirl5/ct_inpos.wav",
    
"radio/RJudgeGirl5/ct_reportingin.wav",
    
"radio/RJudgeGirl5/blow.wav",
    
"radio/RJudgeGirl5/negative.wav",
    
"radio/RJudgeGirl5/enemydown.wav",
    
"radio/RJudgeGirl5/ct_fireinhole.wav"
}
new const 
AUDIOJudgeMask[][] =
{
    
"radio/RJudgeMask/ct_coverme.wav",
    
"radio/RJudgeMask/takepoint.wav",
    
"radio/RJudgeMask/position.wav",
    
"radio/RJudgeMask/regroup.wav",
    
"radio/RJudgeMask/followme.wav",
    
"radio/RJudgeMask/fireassis.wav",
    
"radio/RJudgeMask/com_go.wav",
    
"radio/RJudgeMask/fallback.wav",
    
"radio/RJudgeMask/sticktog.wav",
    
"radio/RJudgeMask/com_getinpos.wav",
    
"radio/RJudgeMask/stormfront.wav",
    
"radio/RJudgeMask/com_reportin.wav",
    
"radio/RJudgeMask/ct_affirm.wav",
    
"radio/RJudgeMask/roger.wav",
    
"radio/RJudgeMask/ct_enemys.wav",
    
"radio/RJudgeMask/ct_backup.wav",
    
"radio/RJudgeMask/clear.wav",
    
"radio/RJudgeMask/ct_inpos.wav",
    
"radio/RJudgeMask/ct_reportingin.wav",
    
"radio/RJudgeMask/blow.wav",
    
"radio/RJudgeMask/negative.wav",
    
"radio/RJudgeMask/enemydown.wav",
    
"radio/RJudgeMask/ct_fireinhole.wav"
}
new const 
AUDIOmao[][] =
{
    
"radio/Rmao/ct_coverme.wav",
    
"radio/Rmao/takepoint.wav",
    
"radio/Rmao/position.wav",
    
"radio/Rmao/regroup.wav",
    
"radio/Rmao/followme.wav",
    
"radio/Rmao/fireassis.wav",
    
"radio/Rmao/com_go.wav",
    
"radio/Rmao/fallback.wav",
    
"radio/Rmao/sticktog.wav",
    
"radio/Rmao/com_getinpos.wav",
    
"radio/Rmao/stormfront.wav",
    
"radio/Rmao/com_reportin.wav",
    
"radio/Rmao/ct_affirm.wav",
    
"radio/Rmao/roger.wav",
    
"radio/Rmao/ct_enemys.wav",
    
"radio/Rmao/ct_backup.wav",
    
"radio/Rmao/clear.wav",
    
"radio/Rmao/ct_inpos.wav",
    
"radio/Rmao/ct_reportingin.wav",
    
"radio/Rmao/blow.wav",
    
"radio/Rmao/negative.wav",
    
"radio/Rmao/enemydown.wav",
    
"radio/Rmao/ct_fireinhole.wav"
}
new const 
AUDIOJudgeOutLaw[][] =
{
    
"radio/RJudgeOutLaw/ct_coverme.wav",
    
"radio/RJudgeOutLaw/takepoint.wav",
    
"radio/RJudgeOutLaw/position.wav",
    
"radio/RJudgeOutLaw/regroup.wav",
    
"radio/RJudgeOutLaw/followme.wav",
    
"radio/RJudgeOutLaw/fireassis.wav",
    
"radio/RJudgeOutLaw/com_go.wav",
    
"radio/RJudgeOutLaw/fallback.wav",
    
"radio/RJudgeOutLaw/sticktog.wav",
    
"radio/RJudgeOutLaw/com_getinpos.wav",
    
"radio/RJudgeOutLaw/stormfront.wav",
    
"radio/RJudgeOutLaw/com_reportin.wav",
    
"radio/RJudgeOutLaw/ct_affirm.wav",
    
"radio/RJudgeOutLaw/roger.wav",
    
"radio/RJudgeOutLaw/ct_enemys.wav",
    
"radio/RJudgeOutLaw/ct_backup.wav",
    
"radio/RJudgeOutLaw/clear.wav",
    
"radio/RJudgeOutLaw/ct_inpos.wav",
    
"radio/RJudgeOutLaw/ct_reportingin.wav",
    
"radio/RJudgeOutLaw/blow.wav",
    
"radio/RJudgeOutLaw/negative.wav",
    
"radio/RJudgeOutLaw/enemydown.wav",
    
"radio/RJudgeOutLaw/ct_fireinhole.wav"
}
new const 
AUDIOwhitewolf[][] =
{
    
"radio/Rwhitewolf/ct_coverme.wav",
    
"radio/Rwhitewolf/takepoint.wav",
    
"radio/Rwhitewolf/position.wav",
    
"radio/Rwhitewolf/regroup.wav",
    
"radio/Rwhitewolf/followme.wav",
    
"radio/Rwhitewolf/fireassis.wav",
    
"radio/Rwhitewolf/com_go.wav",
    
"radio/Rwhitewolf/fallback.wav",
    
"radio/Rwhitewolf/sticktog.wav",
    
"radio/Rwhitewolf/com_getinpos.wav",
    
"radio/Rwhitewolf/stormfront.wav",
    
"radio/Rwhitewolf/com_reportin.wav",
    
"radio/Rwhitewolf/ct_affirm.wav",
    
"radio/Rwhitewolf/roger.wav",
    
"radio/Rwhitewolf/ct_enemys.wav",
    
"radio/Rwhitewolf/ct_backup.wav",
    
"radio/Rwhitewolf/clear.wav",
    
"radio/Rwhitewolf/ct_inpos.wav",
    
"radio/Rwhitewolf/ct_reportingin.wav",
    
"radio/Rwhitewolf/blow.wav",
    
"radio/Rwhitewolf/negative.wav",
    
"radio/Rwhitewolf/enemydown.wav",
    
"radio/Rwhitewolf/ct_fireinhole.wav"
}
new const 
AUDIOJudgeNeo[][] =
{
    
"radio/RJudgeNeo/ct_coverme.wav",
    
"radio/RJudgeNeo/takepoint.wav",
    
"radio/RJudgeNeo/position.wav",
    
"radio/RJudgeNeo/regroup.wav",
    
"radio/RJudgeNeo/followme.wav",
    
"radio/RJudgeNeo/fireassis.wav",
    
"radio/RJudgeNeo/com_go.wav",
    
"radio/RJudgeNeo/fallback.wav",
    
"radio/RJudgeNeo/sticktog.wav",
    
"radio/RJudgeNeo/com_getinpos.wav",
    
"radio/RJudgeNeo/stormfront.wav",
    
"radio/RJudgeNeo/com_reportin.wav",
    
"radio/RJudgeNeo/ct_affirm.wav",
    
"radio/RJudgeNeo/roger.wav",
    
"radio/RJudgeNeo/ct_enemys.wav",
    
"radio/RJudgeNeo/ct_backup.wav",
    
"radio/RJudgeNeo/clear.wav",
    
"radio/RJudgeNeo/ct_inpos.wav",
    
"radio/RJudgeNeo/ct_reportingin.wav",
    
"radio/RJudgeNeo/blow.wav",
    
"radio/RJudgeNeo/negative.wav",
    
"radio/RJudgeNeo/enemydown.wav",
    
"radio/RJudgeNeo/ct_fireinhole.wav"
}

new 
g_msgSendAudio

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
g_msgSendAudio get_user_msgid("SendAudio")
    
register_message(g_msgSendAudio"sound_radio")
}

public 
plugin_precache()
for(new 
0<1i++)

engfunc(EngFunc_PrecacheSoundAUDIOJudgeGsg[i])
engfunc(EngFunc_PrecacheSoundAUDIObuffpurple[i])
engfunc(EngFunc_PrecacheSoundAUDIOJudgeGirl5[i])
engfunc(EngFunc_PrecacheSoundAUDIOJudgeMask[i])
engfunc(EngFunc_PrecacheSoundAUDIOmao[i])
engfunc(EngFunc_PrecacheSoundAUDIOJudgeOutLaw[i])
engfunc(EngFunc_PrecacheSoundAUDIOwhitewolf[i])
engfunc(EngFunc_PrecacheSoundAUDIOJudgeNeo[i])
}


public 
sound_radio(msg_idmsg_destid)
{
    for (new 
0<1i++)
    {
        static 
idsenderrcmd[32], i

        idsender 
get_msg_arg_int(1)

        
get_msg_arg_string(2rcmd31)
        
        if(!
equal(rcmd"%!MRAD_"7))
        return 
PLUGIN_CONTINUE
        
        
    
for(i=0i<sizeof AUDIOTEXTi++)
    {
        if(
equal(rcmd[7], AUDIOTEXT[i]))
            break
    }
    
    if(
== sizeof AUDIOTEXT)
        return 
PLUGIN_CONTINUE
        
    
new players[32],totalteam_name[10]
    
get_user_team(id,team_name9
    
get_players(playerstotal ,"e"team_name)
    
cs_get_user_model(idmodelcharsmax(model))
    for(new 
a=0total; ++a) {
    if(
idsender == id){
    if (
equal(model"JudgeGsg")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOJudgeGsg[i])
    }
    
    else if (
equal(model"buffpurple")) 
    {
        
client_cmd(players[a], "spk %s"AUDIObuffpurple[i])
    }
    
    else if (
equal(model"JudgeGirl5")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOJudgeGirl5[i])
    }
    
    else if (
equal(model"JudgeMask")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOJudgeMask[i])
    }
    
    else if (
equal(model"mao")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOmao[i])
    }
    
    else if (
equal(model"JudgeOutLaw")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOJudgeOutLaw[i])
    }
    
    else if (
equal(model"whitewolf")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOwhitewolf[i])
    }
    
    else if (
equal(model"JudgeNeo")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOJudgeNeo[i])
    }
    }
    }
}
return 
PLUGIN_HANDLED

Smoothy is offline
Napoleon_be
Veteran Member
Join Date: Jul 2011
Location: Belgium
Old 07-25-2023 , 19:38   Re: Custom radio model bug
Reply With Quote #2

Do some debugging and first of all make sure your players are downloading the files. You might even want to delete your own local files to see if it downloads to your own sounds folder so you can put this possible problem off the table.

If the plugin is actually running, add some log messages to see which checks it passes and which it doesn't. Report back when you've done that.
__________________

Last edited by Napoleon_be; 07-25-2023 at 19:40.
Napoleon_be is offline
Send a message via Skype™ to Napoleon_be
Smoothy
Junior Member
Join Date: Jul 2023
Old 07-26-2023 , 04:06   Re: Custom radio model bug
Reply With Quote #3

Quote:
Originally Posted by Napoleon_be View Post
Do some debugging and first of all make sure your players are downloading the files. You might even want to delete your own local files to see if it downloads to your own sounds folder so you can put this possible problem off the table.

If the plugin is actually running, add some log messages to see which checks it passes and which it doesn't. Report back when you've done that.
thanks a lot for the response. I have added debug but it's not giving me any error. I forgot to mention that the files don't download. even to me, only "cover_me" downloads. and this is why it's working. I don't know why others are not downloading that's the main issue. sorry that I forgot to mention this.
Smoothy is offline
Napoleon_be
Veteran Member
Join Date: Jul 2011
Location: Belgium
Old 07-26-2023 , 09:01   Re: Custom radio model bug
Reply With Quote #4

PHP Code:
for(new 0<1i++) 
This is most likely going to be your problem, this will only loop once.

There's also no reason to put the same sound in different folders and then all precache them. This is only going to take up more space on your local server drive, as well as the players their drives.

Put the sounds in one folder, precache them once and play them when required. Easy as that.
__________________

Last edited by Napoleon_be; 07-26-2023 at 09:04.
Napoleon_be is offline
Send a message via Skype™ to Napoleon_be
Smoothy
Junior Member
Join Date: Jul 2023
Old 07-26-2023 , 10:17   Re: Custom radio model bug
Reply With Quote #5

Quote:
Originally Posted by Napoleon_be View Post
PHP Code:
for(new 0<1i++) 
This is most likely going to be your problem, this will only loop once.

There's also no reason to put the same sound in different folders and then all precache them. This is only going to take up more space on your local server drive, as well as the players their drives.

Put the sounds in one folder, precache them once and play them when required. Easy as that.
May you please help me in this, I don't really know coding. I only know editing. I'm not the author. the author is mentioned in the Code. The original code had 8 models. I think it's not precaching the files. but I don't know how to do the things you said. I know it's bad for limit precaching (512) but I have no idea how to make it less space consuming.
Smoothy is offline
metal_upa
Senior Member
Join Date: Jun 2016
Old 07-27-2023 , 02:34   Re: Custom radio model bug
Reply With Quote #6

PHP Code:
new szText[64];
public 
plugin_precache()
for(new 
0sizeof AUDIOTEXTi++)
{
formatex(szText63"sound/%s"AUDIOJudgeGsg[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIObuffpurple[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeGirl5[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeMask[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOmao[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeOutLaw[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOwhitewolf[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeNeo[i]);
precache_generic(szText);

Also use precache_generic to avoid 512 limit, when using precache_generic use fullpath.
Example: precache_generic("sound/radio/RJudgeGirl5/ct_coverme.wav")

This should work.

Last edited by metal_upa; 07-27-2023 at 02:43. Reason: Code changed.
metal_upa is offline
Napoleon_be
Veteran Member
Join Date: Jul 2011
Location: Belgium
Old 07-27-2023 , 08:48   Re: Custom radio model bug
Reply With Quote #7

Share the original code please.
__________________
Napoleon_be is offline
Send a message via Skype™ to Napoleon_be
Smoothy
Junior Member
Join Date: Jul 2023
Old 07-27-2023 , 12:33   Re: Custom radio model bug
Reply With Quote #8

Quote:
Originally Posted by metal_upa View Post
PHP Code:
new szText[64];
public 
plugin_precache()
for(new 
0sizeof AUDIOTEXTi++)
{
formatex(szText63"sound/%s"AUDIOJudgeGsg[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIObuffpurple[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeGirl5[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeMask[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOmao[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeOutLaw[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOwhitewolf[i]);
precache_generic(szText);

formatex(szText63"sound/%s"AUDIOJudgeNeo[i]);
precache_generic(szText);

Also use precache_generic to avoid 512 limit, when using precache_generic use fullpath.
Example: precache_generic("sound/radio/RJudgeGirl5/ct_coverme.wav")

This should work.
Thank you so much, this one worked perfectly. and it avoided the precaching limit. thanks again.

Quote:
Originally Posted by Napoleon_be View Post
Share the original code please.
This is the original code.


PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <cstrike>
#include <fakemeta>

#define PLUGIN "Seperate Radios for Different Player Models "
#define VERSION "3.0"
#define AUTHOR "STealTHB90"


new model[32];
new const 
AUDIOTEXT[][] =
{
    
"COVERME",
    
"TAKEPOINT",
    
"POSITION",
    
"REGROUP",
    
"FOLLOWME",
    
"HITASSIST",
    
"GO",
    
"FALLBACK",
    
"STICKTOG",
    
"GETINPOS",
    
"STORMFRONT",
    
"REPORTIN",
    
"AFFIRM",
    
"ROGER",
    
"ENEMYSPOT",
    
"BACKUP",
    
"CLEAR",
    
"INPOS",
    
"REPRTINGIN",
    
"BLOW",
    
"NEGATIVE",
    
"ENEMYDOWN",
    
"FIREINHOLE"
}
new const 
AUDIOarctic[][] =
{
    
"radio/Rarctic/ct_coverme.wav",
    
"radio/Rarctic/takepoint.wav",
    
"radio/Rarctic/position.wav",
    
"radio/Rarctic/regroup.wav",
    
"radio/Rarctic/followme.wav",
    
"radio/Rarctic/fireassis.wav",
    
"radio/Rarctic/com_go.wav",
    
"radio/Rarctic/fallback.wav",
    
"radio/Rarctic/sticktog.wav",
    
"radio/Rarctic/com_getinpos.wav",
    
"radio/Rarctic/stormfront.wav",
    
"radio/Rarctic/com_reportin.wav",
    
"radio/Rarctic/ct_affirm.wav",
    
"radio/Rarctic/roger.wav",
    
"radio/Rarctic/ct_enemys.wav",
    
"radio/Rarctic/ct_backup.wav",
    
"radio/Rarctic/clear.wav",
    
"radio/Rarctic/ct_inpos.wav",
    
"radio/Rarctic/ct_reportingin.wav",
    
"radio/Rarctic/blow.wav",
    
"radio/Rarctic/negative.wav",
    
"radio/Rarctic/enemydown.wav",
    
"radio/Rarctic/ct_fireinhole.wav"
}
new const 
AUDIOgign[][] =
{
    
"radio/Rgign/ct_coverme.wav",
    
"radio/Rgign/takepoint.wav",
    
"radio/Rgign/position.wav",
    
"radio/Rgign/regroup.wav",
    
"radio/Rgign/followme.wav",
    
"radio/Rgign/fireassis.wav",
    
"radio/Rgign/com_go.wav",
    
"radio/Rgign/fallback.wav",
    
"radio/Rgign/sticktog.wav",
    
"radio/Rgign/com_getinpos.wav",
    
"radio/Rgign/stormfront.wav",
    
"radio/Rgign/com_reportin.wav",
    
"radio/Rgign/ct_affirm.wav",
    
"radio/Rgign/roger.wav",
    
"radio/Rgign/ct_enemys.wav",
    
"radio/Rgign/ct_backup.wav",
    
"radio/Rgign/clear.wav",
    
"radio/Rgign/ct_inpos.wav",
    
"radio/Rgign/ct_reportingin.wav",
    
"radio/Rgign/blow.wav",
    
"radio/Rgign/negative.wav",
    
"radio/Rgign/enemydown.wav",
    
"radio/Rgign/ct_fireinhole.wav"
}
new const 
AUDIOgsg9[][] =
{
    
"radio/Rgsg9/ct_coverme.wav",
    
"radio/Rgsg9/takepoint.wav",
    
"radio/Rgsg9/position.wav",
    
"radio/Rgsg9/regroup.wav",
    
"radio/Rgsg9/followme.wav",
    
"radio/Rgsg9/fireassis.wav",
    
"radio/Rgsg9/com_go.wav",
    
"radio/Rgsg9/fallback.wav",
    
"radio/Rgsg9/sticktog.wav",
    
"radio/Rgsg9/com_getinpos.wav",
    
"radio/Rgsg9/stormfront.wav",
    
"radio/Rgsg9/com_reportin.wav",
    
"radio/Rgsg9/ct_affirm.wav",
    
"radio/Rgsg9/roger.wav",
    
"radio/Rgsg9/ct_enemys.wav",
    
"radio/Rgsg9/ct_backup.wav",
    
"radio/Rgsg9/clear.wav",
    
"radio/Rgsg9/ct_inpos.wav",
    
"radio/Rgsg9/ct_reportingin.wav",
    
"radio/Rgsg9/blow.wav",
    
"radio/Rgsg9/negative.wav",
    
"radio/Rgsg9/enemydown.wav",
    
"radio/Rgsg9/ct_fireinhole.wav"
}
new const 
AUDIOguerilla[][] =
{
    
"radio/Rguerilla/ct_coverme.wav",
    
"radio/Rguerilla/takepoint.wav",
    
"radio/Rguerilla/position.wav",
    
"radio/Rguerilla/regroup.wav",
    
"radio/Rguerilla/followme.wav",
    
"radio/Rguerilla/fireassis.wav",
    
"radio/Rguerilla/com_go.wav",
    
"radio/Rguerilla/fallback.wav",
    
"radio/Rguerilla/sticktog.wav",
    
"radio/Rguerilla/com_getinpos.wav",
    
"radio/Rguerilla/stormfront.wav",
    
"radio/Rguerilla/com_reportin.wav",
    
"radio/Rguerilla/ct_affirm.wav",
    
"radio/Rguerilla/roger.wav",
    
"radio/Rguerilla/ct_enemys.wav",
    
"radio/Rguerilla/ct_backup.wav",
    
"radio/Rguerilla/clear.wav",
    
"radio/Rguerilla/ct_inpos.wav",
    
"radio/Rguerilla/ct_reportingin.wav",
    
"radio/Rguerilla/blow.wav",
    
"radio/Rguerilla/negative.wav",
    
"radio/Rguerilla/enemydown.wav",
    
"radio/Rguerilla/ct_fireinhole.wav"
}
new const 
AUDIOleet[][] =
{
    
"radio/Rleet/ct_coverme.wav",
    
"radio/Rleet/takepoint.wav",
    
"radio/Rleet/position.wav",
    
"radio/Rleet/regroup.wav",
    
"radio/Rleet/followme.wav",
    
"radio/Rleet/fireassis.wav",
    
"radio/Rleet/com_go.wav",
    
"radio/Rleet/fallback.wav",
    
"radio/Rleet/sticktog.wav",
    
"radio/Rleet/com_getinpos.wav",
    
"radio/Rleet/stormfront.wav",
    
"radio/Rleet/com_reportin.wav",
    
"radio/Rleet/ct_affirm.wav",
    
"radio/Rleet/roger.wav",
    
"radio/Rleet/ct_enemys.wav",
    
"radio/Rleet/ct_backup.wav",
    
"radio/Rleet/clear.wav",
    
"radio/Rleet/ct_inpos.wav",
    
"radio/Rleet/ct_reportingin.wav",
    
"radio/Rleet/blow.wav",
    
"radio/Rleet/negative.wav",
    
"radio/Rleet/enemydown.wav",
    
"radio/Rleet/ct_fireinhole.wav"
}
new const 
AUDIOsas[][] =
{
    
"radio/Rsas/ct_coverme.wav",
    
"radio/Rsas/takepoint.wav",
    
"radio/Rsas/position.wav",
    
"radio/Rsas/regroup.wav",
    
"radio/Rsas/followme.wav",
    
"radio/Rsas/fireassis.wav",
    
"radio/Rsas/com_go.wav",
    
"radio/Rsas/fallback.wav",
    
"radio/Rsas/sticktog.wav",
    
"radio/Rsas/com_getinpos.wav",
    
"radio/Rsas/stormfront.wav",
    
"radio/Rsas/com_reportin.wav",
    
"radio/Rsas/ct_affirm.wav",
    
"radio/Rsas/roger.wav",
    
"radio/Rsas/ct_enemys.wav",
    
"radio/Rsas/ct_backup.wav",
    
"radio/Rsas/clear.wav",
    
"radio/Rsas/ct_inpos.wav",
    
"radio/Rsas/ct_reportingin.wav",
    
"radio/Rsas/blow.wav",
    
"radio/Rsas/negative.wav",
    
"radio/Rsas/enemydown.wav",
    
"radio/Rsas/ct_fireinhole.wav"
}
new const 
AUDIOterror[][] =
{
    
"radio/Rterror/ct_coverme.wav",
    
"radio/Rterror/takepoint.wav",
    
"radio/Rterror/position.wav",
    
"radio/Rterror/regroup.wav",
    
"radio/Rterror/followme.wav",
    
"radio/Rterror/fireassis.wav",
    
"radio/Rterror/com_go.wav",
    
"radio/Rterror/fallback.wav",
    
"radio/Rterror/sticktog.wav",
    
"radio/Rterror/com_getinpos.wav",
    
"radio/Rterror/stormfront.wav",
    
"radio/Rterror/com_reportin.wav",
    
"radio/Rterror/ct_affirm.wav",
    
"radio/Rterror/roger.wav",
    
"radio/Rterror/ct_enemys.wav",
    
"radio/Rterror/ct_backup.wav",
    
"radio/Rterror/clear.wav",
    
"radio/Rterror/ct_inpos.wav",
    
"radio/Rterror/ct_reportingin.wav",
    
"radio/Rterror/blow.wav",
    
"radio/Rterror/negative.wav",
    
"radio/Rterror/enemydown.wav",
    
"radio/Rterror/ct_fireinhole.wav"
}
new const 
AUDIOurban[][] =
{
    
"radio/Rurban/ct_coverme.wav",
    
"radio/Rurban/takepoint.wav",
    
"radio/Rurban/position.wav",
    
"radio/Rurban/regroup.wav",
    
"radio/Rurban/followme.wav",
    
"radio/Rurban/fireassis.wav",
    
"radio/Rurban/com_go.wav",
    
"radio/Rurban/fallback.wav",
    
"radio/Rurban/sticktog.wav",
    
"radio/Rurban/com_getinpos.wav",
    
"radio/Rurban/stormfront.wav",
    
"radio/Rurban/com_reportin.wav",
    
"radio/Rurban/ct_affirm.wav",
    
"radio/Rurban/roger.wav",
    
"radio/Rurban/ct_enemys.wav",
    
"radio/Rurban/ct_backup.wav",
    
"radio/Rurban/clear.wav",
    
"radio/Rurban/ct_inpos.wav",
    
"radio/Rurban/ct_reportingin.wav",
    
"radio/Rurban/blow.wav",
    
"radio/Rurban/negative.wav",
    
"radio/Rurban/enemydown.wav",
    
"radio/Rurban/ct_fireinhole.wav"
}
new const 
AUDIOmilitia[][] =
{
    
"radio/Rmilitia/ct_coverme.wav",
    
"radio/Rmilitia/takepoint.wav",
    
"radio/Rmilitia/position.wav",
    
"radio/Rmilitia/regroup.wav",
    
"radio/Rmilitia/followme.wav",
    
"radio/Rmilitia/fireassis.wav",
    
"radio/Rmilitia/com_go.wav",
    
"radio/Rmilitia/fallback.wav",
    
"radio/Rmilitia/sticktog.wav",
    
"radio/Rmilitia/com_getinpos.wav",
    
"radio/Rmilitia/stormfront.wav",
    
"radio/Rmilitia/com_reportin.wav",
    
"radio/Rmilitia/ct_affirm.wav",
    
"radio/Rmilitia/roger.wav",
    
"radio/Rmilitia/ct_enemys.wav",
    
"radio/Rmilitia/ct_backup.wav",
    
"radio/Rmilitia/clear.wav",
    
"radio/Rmilitia/ct_inpos.wav",
    
"radio/Rmilitia/ct_reportingin.wav",
    
"radio/Rmilitia/blow.wav",
    
"radio/Rmilitia/negative.wav",
    
"radio/Rmilitia/enemydown.wav",
    
"radio/Rmilitia/ct_fireinhole.wav"
}
new const 
AUDIOspetsnaz[][] =
{
    
"radio/Rspetsnaz/ct_coverme.wav",
    
"radio/Rspetsnaz/takepoint.wav",
    
"radio/Rspetsnaz/position.wav",
    
"radio/Rspetsnaz/regroup.wav",
    
"radio/Rspetsnaz/followme.wav",
    
"radio/Rspetsnaz/fireassis.wav",
    
"radio/Rspetsnaz/com_go.wav",
    
"radio/Rspetsnaz/fallback.wav",
    
"radio/Rspetsnaz/sticktog.wav",
    
"radio/Rspetsnaz/com_getinpos.wav",
    
"radio/Rspetsnaz/stormfront.wav",
    
"radio/Rspetsnaz/com_reportin.wav",
    
"radio/Rspetsnaz/ct_affirm.wav",
    
"radio/Rspetsnaz/roger.wav",
    
"radio/Rspetsnaz/ct_enemys.wav",
    
"radio/Rspetsnaz/ct_backup.wav",
    
"radio/Rspetsnaz/clear.wav",
    
"radio/Rspetsnaz/ct_inpos.wav",
    
"radio/Rspetsnaz/ct_reportingin.wav",
    
"radio/Rspetsnaz/blow.wav",
    
"radio/Rspetsnaz/negative.wav",
    
"radio/Rspetsnaz/enemydown.wav",
    
"radio/Rspetsnaz/ct_fireinhole.wav"
}
new const 
AUDIOvip[][] =
{
    
"radio/Rvip/ct_coverme.wav",
    
"radio/Rvip/takepoint.wav",
    
"radio/Rvip/position.wav",
    
"radio/Rvip/regroup.wav",
    
"radio/Rvip/followme.wav",
    
"radio/Rvip/fireassis.wav",
    
"radio/Rvip/com_go.wav",
    
"radio/Rvip/fallback.wav",
    
"radio/Rvip/sticktog.wav",
    
"radio/Rvip/com_getinpos.wav",
    
"radio/Rvip/stormfront.wav",
    
"radio/Rvip/com_reportin.wav",
    
"radio/Rvip/ct_affirm.wav",
    
"radio/Rvip/roger.wav",
    
"radio/Rvip/ct_enemys.wav",
    
"radio/Rvip/ct_backup.wav",
    
"radio/Rvip/clear.wav",
    
"radio/Rvip/ct_inpos.wav",
    
"radio/Rvip/ct_reportingin.wav",
    
"radio/Rvip/blow.wav",
    
"radio/Rvip/negative.wav",
    
"radio/Rvip/enemydown.wav",
    
"radio/Rvip/ct_fireinhole.wav"
}

new 
g_msgSendAudio

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
g_msgSendAudio get_user_msgid("SendAudio")
    
register_message(g_msgSendAudio"sound_radio")
}

public 
plugin_precache()
for(new 
0<1i++)

engfunc(EngFunc_PrecacheSoundAUDIOarctic[i])
engfunc(EngFunc_PrecacheSoundAUDIOgign[i])
engfunc(EngFunc_PrecacheSoundAUDIOgsg9[i])
engfunc(EngFunc_PrecacheSoundAUDIOguerilla[i])
engfunc(EngFunc_PrecacheSoundAUDIOleet[i])
engfunc(EngFunc_PrecacheSoundAUDIOsas[i])
engfunc(EngFunc_PrecacheSoundAUDIOterror[i])
engfunc(EngFunc_PrecacheSoundAUDIOurban[i])
engfunc(EngFunc_PrecacheSoundAUDIOmilitia[i])
engfunc(EngFunc_PrecacheSoundAUDIOspetsnaz[i])
engfunc(EngFunc_PrecacheSoundAUDIOvip[i])
}


public 
sound_radio(msg_idmsg_destid)
{
    for (new 
0<1i++)
    {
        static 
idsenderrcmd[32], i

        idsender 
get_msg_arg_int(1)

        
get_msg_arg_string(2rcmd31)
        
        if(!
equal(rcmd"%!MRAD_"7))
        return 
PLUGIN_CONTINUE
        
        
    
for(i=0i<sizeof AUDIOTEXTi++)
    {
        if(
equal(rcmd[7], AUDIOTEXT[i]))
            break
    }
    
    if(
== sizeof AUDIOTEXT)
        return 
PLUGIN_CONTINUE
        
    
new players[32],totalteam_name[10]
    
get_user_team(id,team_name9
    
get_players(playerstotal ,"e"team_name)
    
cs_get_user_model(idmodelcharsmax(model))
    for(new 
a=0total; ++a) {
    if(
idsender == id){
    if (
equal(model"arctic")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOarctic[i])
    }
    
    else if (
equal(model"gign")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOgign[i])
    }
    
    else if (
equal(model"gsg9")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOgsg9[i])
    }
    
    else if (
equal(model"guerilla")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOguerilla[i])
    }
    
    else if (
equal(model"leet")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOleet[i])
    }
    
    else if (
equal(model"sas")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOsas[i])
    }
    
    else if (
equal(model"terror")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOterror[i])
    }
    
    else if (
equal(model"urban")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOurban[i])
    }
    
    else if (
equal(model"militia")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOmilitia[i])
    }
    
    else if (
equal(model"spetsnaz")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOspetsnaz[i])
    }
    
    else if (
equal(model"vip")) 
    {
        
client_cmd(players[a], "spk %s"AUDIOvip[i])
    }
    }
    }
}
return 
PLUGIN_HANDLED

Smoothy is offline
Napoleon_be
Veteran Member
Join Date: Jul 2011
Location: Belgium
Old 07-28-2023 , 14:31   Re: Custom radio model bug
Reply With Quote #9

Oh boi... I took a little time to prepare the start, if anyone would like to finish it cause i won't be able to find the time to finish this up.

PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <cstrike>
#include <fakemeta>

#define PLUGIN "Seperate Radios for Different Player Models "
#define VERSION "3.0"
#define AUTHOR "STealTHB90"


new model[32];

enum _eSoundData {
    
AUDIOTEXT[50],
    
AUDIOFILE[512]
}

new const 
szSounds[][eSoundData] = {
    {
"COVERME""ct_coverme.wav"},
    {
"TAKEPOINT""takepoint.wav"},
    {
"POSITION""position.wav"},
    {
"REGROUP""regroup.wav"},
    {
"FOLLOWME""followme.wav"},
    {
"HITASSIST""fireassis.wav"},
    {
"GO""com_go.wav"},
    {
"FALLBACK""fallback.wav"},
    {
"STICKTOG""sticktog.wav"},
    {
"GETINPOS""com_getinpos.wav"},
    {
"STORMFRONT""stormfront.wav"},
    {
"REPORTIN""com_reportin.wav"},
    {
"AFFIRM""ct_affirm.wav"},
    {
"ROGER""roger.wav"},
    {
"ENEMYSPOT""ct_enemys.wav"},
    {
"BACKUP""ct_backup.wav"},
    {
"CLEAR""clear.wav"},
    {
"INPOS""ct_inpos.wav"},
    {
"REPORTINGIN""ct_reportingin.wav"},
    {
"BLOW""blow.wav"},
    {
"NEGATIVE""negative.wav"},
    {
"ENEMYDOWN""enemydown.wav"},
    {
"FIREINHOLE""ct_fireinhole.wav"}
}

new const 
szParents[][] = {
    
"RJudgeGsg",
    
"Rbuffpurple",
    
"RJudgeGirl5",
    
"RJudgeMask",
    
"Rmao",
    
"RJudgeOutLaw",
    
"Rwhitewolf",
    
"RJudgeNeo"
}

new 
msgSendAudio
new szPath[256]

public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
msgSendAudio get_user_msgid("SendAudio")
    
register_message(msgSendAudio"sound_radio")
}

public 
plugin_precache() {
    for(new 
isizeof(szSounds); i++)
    {
        for(new 
jsizeof(szParents); j++) 
        {
            
formatex(szPathcharsmax(szPath), "sound/radio/%s/%s"szParents[j], szSounds[i][AUDIOFILE])
            
precache_sound(szSounds[i][AUDIOFILE])
        }
    }
}


/*public sound_radio(msg_id, msg_dest, id)
{
    for (new i; i < 1; i++)
    {
        static idsender, rcmd[32], i

        idsender = get_msg_arg_int(1)

        get_msg_arg_string(2, rcmd, 31)
        
        if(!equal(rcmd, "%!MRAD_", 7))
            return PLUGIN_CONTINUE
        
        
        for(new i; i < sizeof(szSounds); i++)
        {
            if(equal(rcmd[7], szSounds[i][AUDIOTEXT]))
                break
        }

        new players[32],total, team_name[10]
        get_user_team(id,team_name, 9) 
        get_players(players, total ,"e", team_name)
        cs_get_user_model(id, model, charsmax(model))

        for(new a; a < total; ++a) 
        {
            if(idsender == id)
            {
                if (equal(model, "JudgeGsg")) 
                {
                    //client_cmd(players[a], "spk %s", AUDIOJudgeGsg[i])
                }
            }
        }
    }
    return PLUGIN_HANDLED
}*/ 
__________________
Napoleon_be is offline
Send a message via Skype™ to Napoleon_be
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 16:34.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode