Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CoD Nowy

Przerobienie pluginu na przenoszenie expa

CoD Nowy

  • Zamknięty Temat jest zamknięty
2 odpowiedzi w tym temacie

#1 V3ko

    Guru

  • Power User

Reputacja: 83
Zaawansowany

  • Postów:746
  • Lokalizacja:Stopnica
Offline

Napisano 04.06.2011 18:23

Witam. Mam pytanie, przerobiłby mi ktoś plugin na przenoszenie, aby każdy gracz z flagą Z mógł przenosić levele? Tylko chodzi o to, żeby dany gracz mógł przenosić tylko i wyłącznie sobie.
/* Plugin generated by AMXX-Studio */
/*
W oryginale:
lista_klas - wyswietla id klas

cod_przenies "nick" "id klasy 1." "id klasy 2."

W mojej edycji pluginu:

cod_przenies "nick" "id klasy 1." "id klasy 2." - przenosi expa z jednej klasy na druga, na pierwszej ustawia 0 expa
np. na klasie 1. masz 1000 expa, na klasie 2. masz 500 expa - na klasie 1. ustawia 0 expa, na 2. ustawia 1000 expa

cod_zamien "nick" "id klasy 1." "id klasy 2." - zamienia lvle pomiedzy klasami
np. na klasie 1. masz 1000 expa, na klasie 2. 5000 expa - na klasie 1. ustawia 5000 expa, na klasie 2. ustawia 1000 expa

cod_sumuj "nick" "id klasy 1." "id klasy 2." - dodaje exp z klasy 1. do klasy 2, na 1. ustawia 0 expa
np. na klasie 1. jest 1000 expa, na klasie 1. 5000 expaa - na klasie 1. ustawia 0 expa, na klasie 2. ustawia 6000 expa

lista_klas - wyswietla id klas
*/
#include <amxmodx>
#include <codmod>

#define FLAGA ADMIN_IMMUNITY

public plugin_init() {
register_plugin("Przenoszenie EXPa", "1.0", "Orginal version: byQQ, Edit version: kisiel96");

register_concmd("cod_przenies", "handle_przenies");
register_concmd("cod_zamien", "handle_zamien");
register_concmd("cod_sumuj", "handle_sumuj");

register_clcmd("lista_klas", "lista_klas");
}

public handle_przenies(id)
{
if(get_user_flags(id) & FLAGA)
{
new arg[3][33];
new ids[2];

read_argv(1, arg[0], 32); // Nick
read_argv(2, arg[1], 10); // ID 1
read_argv(3, arg[2], 10); // ID 2

new player = find_player("ablj", arg[0]);

if(!player) return PLUGIN_CONTINUE;

ids[0] = str_to_num(arg[1]);
ids[1] = str_to_num(arg[2]);

new nick[2][33], klasa[2][33];
get_user_name(id, nick[0], 32);
get_user_name(player, nick[1], 32);

cod_get_class_name(ids[0], klasa[0], 32);
cod_get_class_name(ids[1], klasa[1], 32);

cod_set_user_class(player, ids[0], 1);
new temp = cod_get_user_xp(player);
cod_set_user_xp(player, 0);
cod_set_user_class(player, ids[1], 1);
cod_set_user_xp(player, temp);

client_print(id, print_chat, "Przeniosles exp %s z %s na %s", nick[0], nick[1], klasa[0], klasa[1]);
}
return PLUGIN_CONTINUE;

}

public handle_zamien(id)
{
if(get_user_flags(id) & ADMIN_USER)
{
new arg[3][33];
new ids[2];

read_argv(1, arg[0], 32); // Nick
read_argv(2, arg[1], 10); // ID 1
read_argv(3, arg[2], 10); // ID 2

new player = find_player("ablj", arg[0]);

if(!player) return PLUGIN_CONTINUE;

ids[0] = str_to_num(arg[1]);
ids[1] = str_to_num(arg[2]);

new nick[2][33], klasa[2][33];
get_user_name(id, nick[0], 32);
get_user_name(player, nick[1], 32);

cod_get_class_name(ids[0], klasa[0], 32);
cod_get_class_name(ids[1], klasa[1], 32);

cod_set_user_class(player, ids[0], 1);
new temp1 = cod_get_user_xp(player);
cod_set_user_class(player, ids[1], 1);
new temp2 = cod_get_user_xp(player);
cod_set_user_xp(player, temp1);
cod_set_user_class(player, ids[0], 1);
cod_set_user_xp(player, temp2);

client_print(id, print_chat, "Zamieniles exp %s pomiedzy %s a %s", nick[0], nick[1], klasa[0], klasa[1]);
}
return PLUGIN_CONTINUE;

}

public handle_sumuj(id)
{
if(get_user_flags(id) & FLAGA)
{
new arg[3][33];
new ids[2];

read_argv(1, arg[0], 32); // Nick
read_argv(2, arg[1], 10); // ID 1
read_argv(3, arg[2], 10); // ID 2

new player = find_player("ablj", arg[0]);

if(!player) return PLUGIN_CONTINUE;

ids[0] = str_to_num(arg[1]);
ids[1] = str_to_num(arg[2]);

new nick[2][33], klasa[2][33];
get_user_name(id, nick[0], 32);
get_user_name(player, nick[1], 32);

cod_get_class_name(ids[0], klasa[0], 32);
cod_get_class_name(ids[1], klasa[1], 32);

cod_set_user_class(player, ids[0], 1);
new temp1 = cod_get_user_xp(player);
cod_set_user_xp(player, 0);
cod_set_user_class(player, ids[1], 1);
new temp2 = cod_get_user_xp(player);
cod_set_user_xp(player, temp1+temp2);

client_print(id, print_chat, "Zsumowales exp %s z %s i %s", nick[0], nick[1], klasa[0], klasa[1]);
}
return PLUGIN_CONTINUE;

}

public lista_klas(id)
{
client_print(id, print_console, "===============================================");

for(new i = 0; i < cod_get_perks_num(); i++)
{
new klasa[33]; cod_get_class_name(i, klasa, 32);
client_print(id, print_console, "ID: %d | Nazwa: %s", i, klasa);
}

client_print(id, print_console, "===============================================");
}

  • +
  • -
  • 0

#2 Knopers

    Nie patrz tak na mnie !

  • Przyjaciel

Reputacja: 588
Wszechwiedzący

  • Postów:2 013
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Cz-wa
Offline

Napisano 05.06.2011 14:15

#include <amxmodx>
#include <codmod>

#define FLAGA ADMIN_USER

public plugin_init()
{
register_plugin("Przenoszenie EXPa", "1.0", "Orginal version: byQQ, Edit version: kisiel96");
//Total Edited By Knopers

register_concmd("cod_przenies", "handle_przenies");
register_concmd("cod_zamien", "handle_zamien");
register_concmd("cod_sumuj", "handle_sumuj");
register_clcmd("lista_klas", "lista_klas");
}

public handle_przenies(id)
{
if(get_user_flags(id) & FLAGA)
{
new arg[2][11];
new ids[2];

read_argv(1, arg[0], 10); // ID 1
read_argv(2, arg[1], 10); // ID 2


ids[0] = str_to_num(arg[0]);
ids[1] = str_to_num(arg[1]);

new klasa[2][33];

cod_get_class_name(ids[0], klasa[0], 32);
cod_get_class_name(ids[1], klasa[1], 32);

cod_set_user_class(id, ids[0], 1);
new temp = cod_get_user_xp(id);
cod_set_user_xp(id, 0);
cod_set_user_class(id, ids[1], 1);
cod_set_user_xp(id, temp);

client_print(id, print_chat, "Przeniosles exp z %s na %s", klasa[0], klasa[1]);
}
return PLUGIN_CONTINUE;

}

public handle_zamien(id)
{
if(get_user_flags(id) & ADMIN_USER)
{
new arg[2][11];
new ids[2];

read_argv(1, arg[0], 10); // ID 1
read_argv(2, arg[1], 10); // ID 2

ids[0] = str_to_num(arg[0]);
ids[1] = str_to_num(arg[1]);

new klasa[2][33];

cod_get_class_name(ids[0], klasa[0], 32);
cod_get_class_name(ids[1], klasa[1], 32);

cod_set_user_class(id, ids[0], 1);
new temp1 = cod_get_user_xp(id);
cod_set_user_class(id, ids[1], 1);
new temp2 = cod_get_user_xp(id);
cod_set_user_xp(id, temp1);
cod_set_user_class(id, ids[0], 1);
cod_set_user_xp(id, temp2);

client_print(id, print_chat, "Zamieniles exp pomiedzy %s a %s", klasa[0], klasa[1]);
}
return PLUGIN_CONTINUE;

}

public handle_sumuj(id)
{
if(get_user_flags(id) & FLAGA)
{
new arg[2][11];
new ids[2];

read_argv(1, arg[0], 10); // ID 1
read_argv(2, arg[1], 10); // ID 2

ids[0] = str_to_num(arg[0]);
ids[1] = str_to_num(arg[1]);

new klasa[2][33];

cod_get_class_name(ids[0], klasa[0], 32);
cod_get_class_name(ids[1], klasa[1], 32);

cod_set_user_class(id, ids[0], 1);
new temp1 = cod_get_user_xp(id);
cod_set_user_xp(id, 0);
cod_set_user_class(id, ids[1], 1);
new temp2 = cod_get_user_xp(id);
cod_set_user_xp(id, temp1+temp2);

client_print(id, print_chat, "Zsumowales exp z %s i %s", klasa[0], klasa[1]);
}
return PLUGIN_CONTINUE;

}

public lista_klas(id)
{
client_print(id, print_console, "===============================================");

for(new i = 0; i < cod_get_perks_num(); i++)
{
new klasa[33]; cod_get_class_name(i, klasa, 32);
client_print(id, print_console, "ID: %d | Nazwa: %s", i, klasa);
}

client_print(id, print_console, "===============================================");
}

Powinno działać, jak coś będzie nie tak to pisz bo nie miałem inc żeby przekomilować. Czyli poprawiane na oko :P
  • +
  • -
  • 1

#3 V3ko

    Guru

  • Autor tematu
  • Power User

Reputacja: 83
Zaawansowany

  • Postów:746
  • Lokalizacja:Stopnica
Offline

Napisano 05.06.2011 15:22

Do zamknięcia. +
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: CoD Nowy

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych