←  Szukam pluginu

AMXX.pl: Support AMX Mod X i SourceMod

»

Automatyczne wywalanie gracza za duża iloś...

  • +
  • -
Cajdlerek's Photo Cajdlerek 24.03.2012


Witam.

Poszukuję pluginu, który kickował by gracza, który został zabity z kosy w jakimś okresie czasu.

Czy istnieję w ogóle taki plugin, jeżeli tak to czy mógłbym prosić o to aby ktoś mi go tutaj podał :)
  • 0

Quote

  • +
  • -
kapi10072's Photo kapi10072 24.03.2012

Sprecyzuj bardziej o co ci chodzi, jeżeli by można :)

Coś takiego?


#include <amxmodx>

#define SPRAWDZ 352

new Odliczanie[33],ile_razy[33], cvar, cvar2;

public plugin_init()
{
register_plugin("Kick z kosy", "0.1", "kapi10072");
register_event("DeathMsg","DeathMsg","a","4&knife");
cvar = register_cvar("kosa_czas", "90");
cvar2 = register_cvar("kosa_ilosc_zabic", "4");
}
public DeathMsg()
{
new id = read_data(2)

ile_razy[id]++

Odliczanie[id] = get_pcvar_num(cvar);

if(task_exists(id + SPRAWDZ))
{
remove_task( id + SPRAWDZ )
}
set_task( 1.0, "Pokazuj", id + SPRAWDZ, _, _, "b" );
}

public Pokazuj(task_id)
{
new id = task_id - SPRAWDZ;

if(ile_razy[id] >= get_pcvar_num(cvar2))
{
remove_task( task_id );
new Name[33];
get_user_name(id, Name, 32);
server_cmd("kick %s ^"Jestes zbyt slaby!^"", Name);
}
Odliczanie[id] -= 1

if(Odliczanie[id] <= 0)
{
if( task_exists(task_id) )
{
remove_task( task_id )
}
}
}

speedkill (25.03.2012 10:43):
Po co task co 1 sekundę ? w DeathMsg if'em możesz sprawdzić czy zabicia z kosy są większe od 5 :)
Quote

  • +
  • -
Cajdlerek's Photo Cajdlerek 25.03.2012

Nie znam się na pluginach ale chodzi mi o to, że jak ktoś zostanie zabity z kosy np : 5 razy z rzędu albo w jakimś okresie czasu to zostaje automatycznie wyrzucony z serwera.
Quote

  • +
  • -
dasiek's Photo dasiek 25.03.2012


/* Plugin generated by AMXX-Studio */



#include <amxmodx>

#include <amxmisc>



#define PLUGIN "New Plugin"

#define VERSION "1.0"

#define AUTHOR "CheQ"



new ilosc_zabic[33];



public plugin_init() {

    register_plugin(PLUGIN, VERSION, AUTHOR)

    

    register_event("DeathMsg", "Death", "ade");

}

public Death()

{

    new id = read_data(2);

    new attacker = read_data(1);

    

    if(!is_user_alive(attacker) || !is_user_connected(attacker))

        return PLUGIN_CONTINUE;

    

    new weapon = get_user_weapon(attacker);

    

    if(get_user_team(id) != get_user_team(attacker))

    {

        if(ilosc_zabic[id] && weapon != CSW_KNIFE)

        {

            ilosc_zabic[id] = 0;

            return PLUGIN_CONTINUE;

        }

        if(weapon == CSW_KNIFE)

        {

            ilosc_zabic[id]++;

        }

        if(ilosc_zabic[id] == 5)

        {

            client_cmd(id,"disconnect")

            return PLUGIN_CONTINUE;

        }

    }

    return PLUGIN_CONTINUE;

}

Quote

  • +
  • -
kapi10072's Photo kapi10072 25.03.2012

@speedkill, task co sekundę zrobiony po to, aby w zliczało i sprawdzało zabicia z kosy w określonym czasie. Robiłem na szybko, więc kod może być nie za bardzo zoptymalizowany
Quote

  • +
  • -
dasiek's Photo dasiek 25.03.2012

zrobiłem inaczej. przy piątym zabiciu z noża rozłącza gracza.
Quote

  • +
  • -
Cajdlerek's Photo Cajdlerek 25.03.2012

mogę prosić ten plugin na download i jakiś opis instalacji czy coś takiego ? Bo się na tym nie znam ;/


I czy rozłącza gracza przy 5 zabiciach z kosy z rzędu czy ogólnie przez trwanie całej mapy.
Bardziej mnie interesuję np, że 5 kos z rzędu i kick a jak kogoś zabije to mu się resetuję to ile razy on zginął z kosy i od nowa się nabija.
Edited by Cajdlerek, 25.03.2012 13:54.
Quote

  • +
  • -
Cajdlerek's Photo Cajdlerek 27.03.2012

Resfresh :)
Quote

  • +
  • -
dasiek's Photo dasiek 27.03.2012

Proszę.

Attached Files

Quote