AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Need Some Scripting Help (https://forums.alliedmods.net/showthread.php?t=99865)

DoviuX 08-10-2009 07:51

Need Some Scripting Help
 
How To make In This Plugin That when round ends and plays roundend music this music will stop playing ?

Code:

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Music Plugin"
#define VERSION "1.0"
#define AUTHOR "DoviuX"

new listening[33]

new const music[][] = {
    "sound/Left4Dead/Songs/amb4.mp3",
    "sound/Left4Dead/Songs/amb5.mp3",
    "sound/Left4Dead/Songs/amb10.mp3",
    "sound/Left4Dead/Songs/amb6.mp3",
    "sound/Left4Dead/Songs/amb12.mp3",
    "sound/Left4Dead/Songs/amb7.mp3",
    "sound/Left4Dead/Songs/amb11.mp3",
    "sound/Left4Dead/Songs/amb8.mp3"
}

new const Float:music_lenght[] = {
    139.0,
    304.0,
    200.0,
    125.0,
    200.0,
    255.0,
    200.0,
    118.0
}

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("HLTV", "eFreezeTime", "a", "1=0", "2=0")
   
    register_clcmd("say /stop","stop")
    register_clcmd("say_team /stop","stop")
   
    register_clcmd("say /play","play")
    register_clcmd("say_team /play","play")
}

public stop(id)
{
    if(listening[id])   
    {
        client_cmd(id,"mp3 stop") 
        listening[id] = 0
       
        if(task_exists(id))
            remove_task(id)
    }
    else
    {
        client_print(id,print_chat,"You are not listening!")
    }
}

public play(id)
{   
    if(!listening[id])
    {
        new abc = random_num(0,sizeof music - 1)
       
        client_cmd(id, "mp3 play %s", music[abc]) 
        listening[id] = 1
       
        set_task(music_lenght[abc],"stop",id)
    }
    else
    {
        client_print(id,print_chat,"You are already listening!")
    }
   
}

public plugin_precache()
{
    for(new i = 0; i < sizeof music; i++)
        precache_sound(music[i])   
}

public eFreezeTime()
{
    client_cmd(0, "mp3 play %s", music[random_num(0,sizeof music - 1)])
}

public client_disconnect(id)
{
    listening[id] = 0   
   
    if(task_exists(id))
            remove_task(id)
}


Arkshine 08-10-2009 08:52

Re: Need Some Scripting Help
 
Hook the roundend event and stop the mp3. See the tutos section.

DoviuX 08-10-2009 09:54

Re: Need Some Scripting Help
 
Like This ?

Code:

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Music Plugin"
#define VERSION "1.0"
#define AUTHOR "DoviuX"

new listening[33]

new const music[][] = {
    "sound/Left4Dead/Songs/amb4.mp3",
    "sound/Left4Dead/Songs/amb5.mp3",
    "sound/Left4Dead/Songs/amb10.mp3",
    "sound/Left4Dead/Songs/amb6.mp3",
    "sound/Left4Dead/Songs/amb12.mp3",
    "sound/Left4Dead/Songs/amb7.mp3",
    "sound/Left4Dead/Songs/amb11.mp3",
    "sound/Left4Dead/Songs/amb8.mp3"
}

new const Float:music_lenght[] = {
    139.0,
    304.0,
    200.0,
    125.0,
    200.0,
    255.0,
    200.0,
    118.0
}

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("HLTV", "eFreezeTime", "a", "1=0", "2=0")
    register_event("round_end", "event_end_round", "a", "1=0", "2=0")
   
    register_clcmd("say /stop","stop")
    register_clcmd("say_team /stop","stop")
   
    register_clcmd("say /play","play")
    register_clcmd("say_team /play","play")
}

public stop(id)
{
    if(listening[id])   
    {
        client_cmd(id,"mp3 stop") 
        listening[id] = 0
       
        if(task_exists(id))
            remove_task(id)
    }
    else
    {
        client_print(id,print_chat,"You are not listening!")
    }
}

public play(id)
{   
    if(!listening[id])
    {
        new abc = random_num(0,sizeof music - 1)
       
        client_cmd(id, "mp3 play %s", music[abc]) 
        listening[id] = 1
       
        set_task(music_lenght[abc],"stop",id)
    }
    else
    {
        client_print(id,print_chat,"You are already listening!")
    }
   
}

public plugin_precache()
{
    for(new i = 0; i < sizeof music; i++)
        precache_sound(music[i])   
}

public eFreezeTime()
{
    client_cmd(0, "mp3 play %s", music[random_num(0,sizeof music - 1)])
}

public client_disconnect(id)
{
    listening[id] = 0   
   
    if(task_exists(id))
            remove_task(id)
}

And Whats next ?

Arkshine 08-10-2009 10:17

Re: Need Some Scripting Help
 
register_event("round_end", "event_end_round", "a", "1=0", "2=0")

It's wrong. There is an available tuto which list such events. PLEASE, search.

DoviuX 08-11-2009 03:27

Re: Need Some Scripting Help
 
i can't find it can you tell my pls ?

Arkshine 08-11-2009 04:28

Re: Need Some Scripting Help
 
No. Use your brain, please. Tutos done by VEN. SEARCH. :down:

DoviuX 08-11-2009 04:54

Re: Need Some Scripting Help
 
Like This

Code:

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Music Plugin"
#define VERSION "1.0"
#define AUTHOR "DoviuX"

new listening[33]

new const music[][] = {
    "sound/Left4Dead/Songs/amb4.mp3",
    "sound/Left4Dead/Songs/amb5.mp3",
    "sound/Left4Dead/Songs/amb10.mp3",
    "sound/Left4Dead/Songs/amb6.mp3",
    "sound/Left4Dead/Songs/amb12.mp3",
    "sound/Left4Dead/Songs/amb7.mp3",
    "sound/Left4Dead/Songs/amb11.mp3",
    "sound/Left4Dead/Songs/amb8.mp3"
}

new const Float:music_lenght[] = {
    139.0,
    304.0,
    200.0,
    125.0,
    200.0,
    255.0,
    200.0,
    118.0
}

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("HLTV", "eFreezeTime", "a", "1=0", "2=0")
   
    register_clcmd("say /stop","stop")
    register_clcmd("say_team /stop","stop")
   
    register_clcmd("say /play","play")
    register_clcmd("say_team /play","play")
    register_logevent("logevent_round_end", 2, "1=Round_End")
}

public stop(id)
{
    if(listening[id])   
    {
        client_cmd(id,"mp3 stop") 
        listening[id] = 0
       
        if(task_exists(id))
            remove_task(id)
    }
    else
    {
        client_print(id,print_chat,"You are not listening!")
    }
}

public play(id)
{   
    if(!listening[id])
    {
        new abc = random_num(0,sizeof music - 1)
       
        client_cmd(id, "mp3 play %s", music[abc]) 
        listening[id] = 1
       
        set_task(music_lenght[abc],"stop",id)
    }
    else
    {
        client_print(id,print_chat,"You are already listening!")
    }
   
}

public plugin_precache()
{
    for(new i = 0; i < sizeof music; i++)
        precache_sound(music[i])   
}

public eFreezeTime()
{
    client_cmd(0, "mp3 play %s", music[random_num(0,sizeof music - 1)])
}

public client_disconnect(id)
{
    listening[id] = 0   
   
    if(task_exists(id))
            remove_task(id)
}

Or Like This ?

Code:

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Music Plugin"
#define VERSION "1.0"
#define AUTHOR "DoviuX"

new listening[33]

new const music[][] = {
    "sound/Left4Dead/Songs/amb4.mp3",
    "sound/Left4Dead/Songs/amb5.mp3",
    "sound/Left4Dead/Songs/amb10.mp3",
    "sound/Left4Dead/Songs/amb6.mp3",
    "sound/Left4Dead/Songs/amb12.mp3",
    "sound/Left4Dead/Songs/amb7.mp3",
    "sound/Left4Dead/Songs/amb11.mp3",
    "sound/Left4Dead/Songs/amb8.mp3"
}

new const Float:music_lenght[] = {
    139.0,
    304.0,
    200.0,
    125.0,
    200.0,
    255.0,
    200.0,
    118.0
}

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("HLTV", "eFreezeTime", "a", "1=0", "2=0")
   
    register_clcmd("say /stop","stop")
    register_clcmd("say_team /stop","stop")
   
    register_clcmd("say /play","play")
    register_clcmd("say_team /play","play")
    register_logevent("EventRoundEnd", 2, "1=Round_End");
}

public stop(id)
{
    if(listening[id])   
    {
        client_cmd(id,"mp3 stop") 
        listening[id] = 0
       
        if(task_exists(id))
            remove_task(id)
    }
    else
    {
        client_print(id,print_chat,"You are not listening!")
    }
}

public play(id)
{   
    if(!listening[id])
    {
        new abc = random_num(0,sizeof music - 1)
       
        client_cmd(id, "mp3 play %s", music[abc]) 
        listening[id] = 1
       
        set_task(music_lenght[abc],"stop",id)
    }
    else
    {
        client_print(id,print_chat,"You are already listening!")
    }
   
}

public plugin_precache()
{
    for(new i = 0; i < sizeof music; i++)
        precache_sound(music[i])   
}

public eFreezeTime()
{
    client_cmd(0, "mp3 play %s", music[random_num(0,sizeof music - 1)])
}

public client_disconnect(id)
{
    listening[id] = 0   
   
    if(task_exists(id))
            remove_task(id)
}


One 08-11-2009 07:43

Re: Need Some Scripting Help
 
the 2.

but TEST it & ull see which will work

Arkshine 08-11-2009 11:12

Re: Need Some Scripting Help
 
Both are the same except the callback. But anyway for both the function is not defined in the code so I don't see how it can work.

One 08-12-2009 10:20

Re: Need Some Scripting Help
 
PHP Code:

register_logevent("round_end"2"1=Round_End")

public 
round_end() {
    
//Stop the mp3




All times are GMT -4. The time now is 18:30.

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