←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Stary
Dawanie expa przez usera z immunitetem

  • +
  • -
Malinaaa. - zdjęcie Malinaaa. 31.01.2012

Witam. Mam prosbe o tuz moglby mi ktos napisac tu na foru czy jak zrobic cos takiego ze chce komus dac exp.
Moga to robic admini z immunitetem, widzialem cos takiego na nowego coda ale niestety na starego nie, jesli juz cos takiego istnieje to poprosze linka :)
Odpowiedz

Oporowiec - zdjęcie Oporowiec 31.01.2012

no to zaczynamy :)

1. Pod
#define ZADANIE_USTAW_SZYBKOSC


2. Dodajesz
#define MAXEXP XXXXX


3. Pod
register_concmd("cod_setlvl", "cmd_setlvl", ADMIN_KICK, " ");


4. Dodajesz
	    register_concmd("cod_addexp", "cmd_addexp", ADMIN_IMMUNITEd, " ");
register_concmd("cod_remexp", "cmd_remexp", ADMIN_IMMUNITED, " ");


5. Na sam koniec dodajesz
public cmd_addexp(id, level, cid)
{
if(!cmd_access(id, level, cid, 3))
return PLUGIN_HANDLED;
new arg1[33];
new arg2[10];
read_argv(1,arg1,32);
read_argv(2,arg2,9);
new player = cmd_target(id, arg1, 0);
remove_quotes(arg2);
new exp = str_to_num(arg2);
if(doswiadczenie_gracza[player] + exp > MAXEXP) {
client_print(id, print_console, "[COD] Chciales dodac za duzo expa (expgracza + wartosc < %i)", MAXEXP)
} else {
doswiadczenie_gracza[player] += exp;
SprawdzPoziom(player);
}
return PLUGIN_HANDLED;
}
public cmd_remexp(id, level, cid)
{
if(!cmd_access(id, level, cid, 3))
return PLUGIN_HANDLED;
new arg1[33];
new arg2[10];
read_argv(1,arg1,32);
read_argv(2,arg2,9);
new player = cmd_target(id, arg1, 0);
remove_quotes(arg2);
new exp = str_to_num(arg2);
if(doswiadczenie_gracza[player] - exp < 1) {
client_print(id, print_console, "[COD] Chciales odjac za duzo expa (expgracza - wartosc > 1)")
} else {
doswiadczenie_gracza[player] -= exp;
SprawdzPoziom(player);
}
return PLUGIN_HANDLED;
}



~ Zamiast XXXXX wstaw ostatnie liczby z tabeli expa
Odpowiedz

  • +
  • -
Malinaaa. - zdjęcie Malinaaa. 01.02.2012

Thx za info, masz plusik :)

Mam jeszcze 1 pytanie gdzie sie ustawia flage? bo bym se przestawil na jakas inna bo premium ma immunitet :P
Użytkownik Malinaaa. edytował ten post 01.02.2012 18:13
Odpowiedz

  • +
  • -
SpiewaK - zdjęcie SpiewaK 01.02.2012

Jeżeli chodzi ci o zmianę flagi z immunitetu to zmieniasz w tej linii
 register_concmd("cod_addexp", "cmd_addexp", ADMIN_IMMUNITED, " ");

przykład
 register_concmd("cod_addexp", "cmd_addexp", ADMIN_KICK, " ");

i admin dający kicki może dać exp
Odpowiedz