←  Poradniki, Łatki oraz Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Sprzedawanie itemów innemu graczowi

  • +
  • -
d0naciak - zdjęcie d0naciak 09.12.2011

Dołączona grafika

Edytowałem sobie na serwer plugin OddajPerk i pomyślałem że dla zielonych się przyda.
Oto plugin który umożliwia sprzedawanie perkow innej osobie

Dołączona grafika

say /sprzedaj - włącza menu sprzedawania
say /sell - włącza menu sprzedawania
SprzedajPerk - włącza menu sprzedawania
Dołączona grafika

cod_sprzedajperk_kasa "5000" //Za ile sprzedajemy perk ?

Dołączona grafika
Wszelkie pliki *.amxx do cstrike/addons/amxmodx/plugins
Wszelkie pliki *.sma do cstrike/addons/amxmodx/scripting
W nowej linijce pliku plugins-codmod.ini dopisujemy SprzedajPerk.amxx

Załączone pliki


Użytkownik d0n tHe Pr0oo edytował ten post 10.12.2011 19:00
Odpowiedz

  • +
  • -
radim - zdjęcie radim 09.12.2011

Po samym kodzie widać, że będzie bug gdyż jak gracz nie ma 5000 $ to jaka wiadomość wyskoczy ?
Odpowiedz

  • +
  • -
ric0 - zdjęcie ric0 09.12.2011

[CoD Nowy] Sprzedawanie perków - AMXX.pl: Support AMX Mod X to nie to samo?

nie , nie to samo... przeczytaj opisy jescze raz.
Odpowiedz

  • +
  • -
d0naciak - zdjęcie d0naciak 10.12.2011

@radim naprawione
Odpowiedz

  • +
  • -
Mordek - zdjęcie Mordek 11.12.2011

Możesz zrobić to samo tylko że z... monetami? :D Bo $ na codzie są rzadko używane ;]
Odpowiedz

  • +
  • -
fbang - zdjęcie fbang 11.12.2011

Macie wersję na 2perki
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <codmod>
#include <cstrike>

#define PLUGIN "Sprzedaj Perk"
#define VERSION "1.0"
#define AUTHOR "QTM_Peyote"


new bool:dostal_przedmiot[33];
new sprzedaj_id[33];
new cvar_codsprzedajperk_kasa;

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);

cvar_codsprzedajperk_kasa = register_cvar("cod_sprzedajperk_kasa", "5000");

register_clcmd("say /sprzedaj", "SprzedajPerk");
register_clcmd("say /sprzedaj2", "SprzedajPerk2");
register_clcmd("SprzedajPerk", "SprzedajPerk");
register_clcmd("SprzedajPerk2", "SprzedajPerk2");
register_clcmd("say /sell", "SprzedajPerk");
register_clcmd("say /sell2", "SprzedajPerk2");
register_event("ResetHUD", "cod_perk_changed", "abe");
}

public SprzedajPerk(id)
{
new menu = menu_create("Przekazywanie Perku", "SprzedajPerk_Handle");
new cb = menu_makecallback("SprzedajPerk_Callback");
for(new i=0, n=0; i<=32; i++)
{
if(!is_user_connected(i))
continue;
sprzedaj_id[n++] = i;
new nazwa_gracza[64];
get_user_name(i, nazwa_gracza, 63)
menu_additem(menu, nazwa_gracza, "0", 0, cb);
}
menu_setprop(menu,MPROP_NUMBER_COLOR,"\y");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu);
}
public SprzedajPerk2(id)
{
new menu = menu_create("Przekazywanie Perku", "SprzedajPerk2_Handle");
new cb = menu_makecallback("SprzedajPerk2_Callback");
for(new i=0, n=0; i<=32; i++)
{
if(!is_user_connected(i))
continue;
sprzedaj_id[n++] = i;
new nazwa_gracza[64];
get_user_name(i, nazwa_gracza, 63)
menu_additem(menu, nazwa_gracza, "0", 0, cb);
}
menu_setprop(menu,MPROP_NUMBER_COLOR,"\y");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu);
}

public cod_perk_changed(id)
dostal_przedmiot[id] = false;

public SprzedajPerk_Handle(id, menu, item)
{
new codsprzedajperk_kasa = get_pcvar_num(cvar_codsprzedajperk_kasa);

if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}

if(!is_user_connected(sprzedaj_id[item]))
{
client_print(id, print_chat, "[COD:MW] Nie odnaleziono zadanego gracza.");
return PLUGIN_CONTINUE;
}

if(dostal_przedmiot[id])
{
client_print(id, print_chat, "[COD:MW] Musisz poczekac 1 runde.");
return PLUGIN_CONTINUE;
}

new wartosc_perku_dajacego;
new perk_dajacego = cod_get_user_perk(id, wartosc_perku_dajacego, 0);

if(!perk_dajacego)
{
client_print(id, print_chat, "[COD:MW] Nie masz zadnego perku.");
return PLUGIN_CONTINUE;
}

new nazwa_dajacego[64];
new nazwa_otrzymujacego[64];

get_user_name(id, nazwa_dajacego, 63)
get_user_name(sprzedaj_id[item], nazwa_otrzymujacego, 63)

if(cs_get_user_money(id) >= 5000)
{
dostal_przedmiot[sprzedaj_id[item]] = true;
cod_set_user_perk(sprzedaj_id[item], perk_dajacego, wartosc_perku_dajacego, 0, 0);
client_print(id, print_chat, "[COD:MW] Sprzedales perk graczowi %s za %i$!", nazwa_otrzymujacego, codsprzedajperk_kasa);
client_print(sprzedaj_id[item], print_chat, "[COD:MW] Dostales perk od gracza %s.", nazwa_dajacego);
cs_set_user_money(id, cs_get_user_money(id)+codsprzedajperk_kasa);
cod_set_user_perk(id, 0, 0, 0, 0);
}
if(cs_get_user_money(id) < 5000)
{
client_print(id, print_chat, "[COD:MW] Masz za malo pieniedzy !");
}

return PLUGIN_CONTINUE;
}
public SprzedajPerk_Callback(id, menu, item)
{
if(sprzedaj_id[item] == id || !cod_get_user_class(sprzedaj_id[item]) || cod_get_user_perk(sprzedaj_id[item],0, 0))
return ITEM_DISABLED;
return ITEM_ENABLED;
}
public SprzedajPerk2_Handle(id, menu, item)
{
new codsprzedajperk_kasa = get_pcvar_num(cvar_codsprzedajperk_kasa);

if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}

if(!is_user_connected(sprzedaj_id[item]))
{
client_print(id, print_chat, "[COD:MW] Nie odnaleziono zadanego gracza.");
return PLUGIN_CONTINUE;
}

if(dostal_przedmiot[id])
{
client_print(id, print_chat, "[COD:MW] Musisz poczekac 1 runde.");
return PLUGIN_CONTINUE;
}

new wartosc_perku_dajacego;
new perk_dajacego = cod_get_user_perk(id, wartosc_perku_dajacego, 1);

if(!perk_dajacego)
{
client_print(id, print_chat, "[COD:MW] Nie masz zadnego perku.");
return PLUGIN_CONTINUE;
}

new nazwa_dajacego[64];
new nazwa_otrzymujacego[64];

get_user_name(id, nazwa_dajacego, 63)
get_user_name(sprzedaj_id[item], nazwa_otrzymujacego, 63)

if(cs_get_user_money(id) >= 5000)
{
dostal_przedmiot[sprzedaj_id[item]] = true;
cod_set_user_perk(sprzedaj_id[item], perk_dajacego, wartosc_perku_dajacego, 0, 1);
client_print(id, print_chat, "[COD:MW] Sprzedales perk graczowi %s za %i$!", nazwa_otrzymujacego, codsprzedajperk_kasa);
client_print(sprzedaj_id[item], print_chat, "[COD:MW] Dostales perk od gracza %s.", nazwa_dajacego);
cs_set_user_money(id, cs_get_user_money(id)+codsprzedajperk_kasa);
cod_set_user_perk(id, 0, 0, 0, 1);
}
if(cs_get_user_money(id) < 5000)
{
client_print(id, print_chat, "[COD:MW] Masz za malo pieniedzy !");
}

return PLUGIN_CONTINUE;
}

public SprzedajPerk2_Callback(id, menu, item)
{
if(sprzedaj_id[item] == id || !cod_get_user_class(sprzedaj_id[item]) || cod_get_user_perk(sprzedaj_id[item],0, 1))
return ITEM_DISABLED;
return ITEM_ENABLED;
}

Odpowiedz