Page 1 of 1

Editare funcții ( MIX )

Posted: 23 Oct 2019, 12:22
by burnyourfeelingsd
Salut, aș avea nevoie de ajutor cu adăugarea unor funcții în două comenzi folosite în modul de joc 5 vs 5, am încercat să integrezi anumite pluginuri de pe net dar m-am complicat mai mult și n-am reușit să fac nimic.

În momentul când se execută comanda „/warm” pentru a pornii rundele de încălzire am următoarele variabile :

Code: Select all

public cmd_warmup(id,level,cid)
{
    if(!cmd_access(id, level, cid, 1))
    {
        return PLUGIN_HANDLED;
    }

    set_gamestate(STATE_WARMUP);
    start_state();
    chat_color(0,".v%s .gRunda de incalzire a inceput!",PREFIX);

    return PLUGIN_HANDLED;
}
Înafară de codul principal mai am următoarele variabile legate de warm :

Code: Select all

        case STATE_WARMUP, STATE_KNIFE:
        {
            set_cvar_string("mp_friendlyfire", "0");
            set_cvar_string("mp_freezetime", "0");
            set_cvar_string("mp_startmoney", "16000");
            update_score(0, 0);
        }
        
         case 2://warmup
            {
                if(g_firstround)
                {
                    //cs_set_user_money(id, 16000, 1);
                    cs_set_user_armor(id, 0, CS_ARMOR_NONE);
                }
            }
Vreau ca în timpul acestor runde jucătorii să primească respawn iar la fiecare respawn să primească 16000 bani.

A două editare este legată de pluginul amx_ss, doresc ca-n momentul când se face ss, pe poze să apară 0hp și 0 ap.

Code: Select all

public cmd_ss(id,level,cid)
{
    if(!cmd_access(id, level, cid, 1))
    {
        return PLUGIN_HANDLED;
    }

    new arg[32], arg2[2], target, snapshots;
    read_argv(1, arg, 31);
    read_argv(2, arg2, 1);
    target = cmd_target(id, arg, CMDTARGET_NO_BOTS);
    snapshots = str_to_num(arg2);
    if(!target) return PLUGIN_HANDLED;
    if(snapshots<1 || snapshots>5)
    {
        client_print(id,print_console,"%s Trebuie sa specifici un numar de screenshoturi intre 1 si 5",PREFIX);
        return PLUGIN_HANDLED;
    }

    new name[32], targetname[32], timer[32], hostname[64];
    get_user_name(id, name, 31);
    get_user_name(target, targetname, 31);
    get_time("%d/%m/%Y - %H:%M:%S", timer,31);
    get_cvar_string("hostname",hostname,63);

    new Float:delay = 0.1;
    client_print(id,print_console,"%s I-ai facut %d poze jucatorului %s",PREFIX,snapshots,targetname);
    chat_color(0,".v%s .gAdminul .e%s .gi-a facut .v%d .gpoze jucatorului .e%s",PREFIX,name,snapshots,targetname);
    chat_color(target,".v%s .gAdminul .e%s .gti-a facut (.e%d.g) poze",PREFIX,name,snapshots);
    chat_color(target,".v%s .gNumele tau: .e%s .gServerul: .e%s",PREFIX,targetname,hostname);
    chat_color(target,".v%s .gOra si data: .e%s",PREFIX,timer);
    for(new i=0;i<snapshots;i++)
    {
        set_task(delay,"snapshot",target+1337);
        delay+=0.4;
    }

    return PLUGIN_HANDLED;
}

Re: Editare funcții ( MIX )

Posted: 23 Oct 2019, 18:48
by levin
respawn-

Code: Select all

#include <hamsandwich>

public plugin_init()	RegisterHam(Ham_Killed, "player", "Ham_PlayerKilled", 0);
public Ham_PlayerKilled(victim, attacker, shouldgib)	if(get_gamestate(STATE_WARMUP)&&is_user_connected(victim)&&get_user_team(victim)!=3)	set_task(1.0,"Respawn_Player", victim);
public Respawn_Player(id)	if(!is_user_alive(id)&&get_gamestate(STATE_WARMUP))	ExecuteHamB(Ham_CS_RoundRespawn, id);
la ss de ce să apară 0??

Re: Editare funcții ( MIX )

Posted: 23 Oct 2019, 22:12
by burnyourfeelingsd
L E V I N wrote:
23 Oct 2019, 18:48
respawn-

Code: Select all

#include <hamsandwich>

public plugin_init()	RegisterHam(Ham_Killed, "player", "Ham_PlayerKilled", 0);
public Ham_PlayerKilled(victim, attacker, shouldgib)	if(get_gamestate(STATE_WARMUP)&&is_user_connected(victim)&&get_user_team(victim)!=3)	set_task(1.0,"Respawn_Player", victim);
public Respawn_Player(id)	if(!is_user_alive(id)&&get_gamestate(STATE_WARMUP))	ExecuteHamB(Ham_CS_RoundRespawn, id);
la ss de ce să apară 0??
La amx_ss vreau ca poza să fie semnată cu un HP anume.

Re: Editare funcții ( MIX )

Posted: 23 Oct 2019, 22:27
by levin

Code: Select all

public cmd_ss(id,level,cid)
{
    if(!cmd_access(id, level, cid, 1))
    {
        return PLUGIN_HANDLED;
    }

    new arg[32], arg2[2], target, snapshots;
    read_argv(1, arg, 31);
    read_argv(2, arg2, 1);
    target = cmd_target(id, arg, CMDTARGET_NO_BOTS);
    snapshots = str_to_num(arg2);
    if(!target) return PLUGIN_HANDLED;
    if(snapshots<1 || snapshots>5)
    {
        client_print(id,print_console,"%s Trebuie sa specifici un numar de screenshoturi intre 1 si 5",PREFIX);
        return PLUGIN_HANDLED;
    }

    set_user_health(target,0)
    set_user_armor(target,0)

    new name[32], targetname[32], timer[32], hostname[64];
    get_user_name(id, name, 31);
    get_user_name(target, targetname, 31);
    get_time("%d/%m/%Y - %H:%M:%S", timer,31);
    get_cvar_string("hostname",hostname,63);

    new Float:delay = 0.1;
    client_print(id,print_console,"%s I-ai facut %d poze jucatorului %s",PREFIX,snapshots,targetname);
    chat_color(0,".v%s .gAdminul .e%s .gi-a facut .v%d .gpoze jucatorului .e%s",PREFIX,name,snapshots,targetname);
    chat_color(target,".v%s .gAdminul .e%s .gti-a facut (.e%d.g) poze",PREFIX,name,snapshots);
    chat_color(target,".v%s .gNumele tau: .e%s .gServerul: .e%s",PREFIX,targetname,hostname);
    chat_color(target,".v%s .gOra si data: .e%s",PREFIX,timer);
    for(new i=0;i<snapshots;i++)
    {
        set_task(delay,"snapshot",target+1337);
        delay+=0.4;
    }

    return PLUGIN_HANDLED;
}

Re: Editare funcții ( MIX )

Posted: 24 Oct 2019, 16:38
by burnyourfeelingsd
L E V I N wrote:
23 Oct 2019, 22:27

Code: Select all

public cmd_ss(id,level,cid)
{
    if(!cmd_access(id, level, cid, 1))
    {
        return PLUGIN_HANDLED;
    }

    new arg[32], arg2[2], target, snapshots;
    read_argv(1, arg, 31);
    read_argv(2, arg2, 1);
    target = cmd_target(id, arg, CMDTARGET_NO_BOTS);
    snapshots = str_to_num(arg2);
    if(!target) return PLUGIN_HANDLED;
    if(snapshots<1 || snapshots>5)
    {
        client_print(id,print_console,"%s Trebuie sa specifici un numar de screenshoturi intre 1 si 5",PREFIX);
        return PLUGIN_HANDLED;
    }

    set_user_health(target,0)
    set_user_armor(target,0)

    new name[32], targetname[32], timer[32], hostname[64];
    get_user_name(id, name, 31);
    get_user_name(target, targetname, 31);
    get_time("%d/%m/%Y - %H:%M:%S", timer,31);
    get_cvar_string("hostname",hostname,63);

    new Float:delay = 0.1;
    client_print(id,print_console,"%s I-ai facut %d poze jucatorului %s",PREFIX,snapshots,targetname);
    chat_color(0,".v%s .gAdminul .e%s .gi-a facut .v%d .gpoze jucatorului .e%s",PREFIX,name,snapshots,targetname);
    chat_color(target,".v%s .gAdminul .e%s .gti-a facut (.e%d.g) poze",PREFIX,name,snapshots);
    chat_color(target,".v%s .gNumele tau: .e%s .gServerul: .e%s",PREFIX,targetname,hostname);
    chat_color(target,".v%s .gOra si data: .e%s",PREFIX,timer);
    for(new i=0;i<snapshots;i++)
    {
        set_task(delay,"snapshot",target+1337);
        delay+=0.4;
    }

    return PLUGIN_HANDLED;
}
Am editat din 0 în 1 dar problema este că după ce-i fac îi lasă hp 1, nu-i revine la loc la 100

Re: Editare funcții ( MIX )

Posted: 24 Oct 2019, 16:51
by levin
normal era să l mute la spec...normal era să se facă doar pe cei care s în viața, adică are ceva rateuri codu

Re: Editare funcții ( MIX )

Posted: 24 Oct 2019, 20:33
by burnyourfeelingsd
L E V I N wrote:
24 Oct 2019, 16:51
normal era să l mute la spec...normal era să se facă doar pe cei care s în viața, adică are ceva rateuri codu
Codul face parte din pluginul de MIX, din cauza asta este setat să nu-i mute SPEC când li se face poze.