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

[ROZWIĄZANE] Blokada przed stratą pieniędzy przy kupowaniu na komendę


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

#1 pomen

    Pomocny

  • Użytkownik

Reputacja: 8
Nowy

  • Postów:57
  • Imię:Przemysław
  • Lokalizacja:Zachodniopomorskie
Offline

Napisano 19.07.2012 22:01

Ave! Dręczy mnie taki problem, na moim serwerze TT może sobie kupić /m4 a CT /ak właśnie takimi komendami.
Wszystko jest fajnie tylko jak ktoś już sobie takie m4 kupi i przez przypadek naciśnie przycisk z bindem jeszcze raz
to odejmie mu pieniądze za m4 a drugiej emki mu przecież nie da.. da się to jakoś zabezpieczyć? oto kod:

// Description: This plugin is mainly for terrorists to be able to buy an m4. Cts can buy one as
// well but its the same price as an m4 on the buy menu.
// Commands: say /m4 or /m4ammo
// Cvars: "m4_price" "ak_price"

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "Buy_m4"
#define VERSION "1.1"
#define AUTHOR "{PHILMAGROIN}"

new m4_cost, m4_ammo;

public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        
        register_clcmd("say /m4", "buym4")
        register_clcmd("say /ak", "buyak")
        m4_cost = register_cvar("m4_price", "3100")
        m4_ammo = register_cvar("m4_aprice", "2500")
}

public buym4(id)
{
        if(!is_user_alive(id))
                return PLUGIN_HANDLED
                
        new money = cs_get_user_money(id);
        new cost = get_pcvar_num(m4_cost)
                
        if(money < cost)
        {
                client_print(id, print_chat,"[INFO] Masz za malo kasy na M4")
        }
        else {
                cs_set_user_money(id, money - cost);
                         give_item(id,"weapon_m4a1");
        }
        return PLUGIN_HANDLED
}

public buyak(id)
{
        if(!is_user_alive(id))
                return PLUGIN_HANDLED
                
        new money = cs_get_user_money(id);
        new cost = get_pcvar_num(m4_ammo)
                
        if(money < cost)
        {
                client_print(id, print_chat,"[INFO] Masz za malo kasy na AK47")
        }
        else {
                cs_set_user_money(id, money - cost);
                give_item(id, "weapon_ak47");
        }
        return PLUGIN_HANDLED
}


  • +
  • -
  • 0

#2 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 20.07.2012 10:29

// Description: This plugin is mainly for terrorists to be able to buy an m4. Cts can buy one as
// well but its the same price as an m4 on the buy menu.
// Commands: say /m4 or /m4ammo
// Cvars: "m4_price" "ak_price"

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "Buy_m4"
#define VERSION "1.1"
#define AUTHOR "{PHILMAGROIN}"

new m4_cost, m4_ammo;

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

register_clcmd("say /m4", "buym4")
register_clcmd("say /ak", "buyak")
m4_cost = register_cvar("m4_price", "3100")
m4_ammo = register_cvar("m4_aprice", "2500")
}

public buym4(id)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED

new money = cs_get_user_money(id);
new cost = get_pcvar_num(m4_cost)

if(money < cost)
{
client_print(id, print_chat,"[INFO] Masz za malo kasy na M4")
}
else if(user_has_weapon(id, CSW_M4A1))
return PLUGIN_CONTINUE;
else
{
cs_set_user_money(id, money - cost);
give_item(id,"weapon_m4a1");
}
return PLUGIN_HANDLED
}

public buyak(id)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED

new money = cs_get_user_money(id);
new cost = get_pcvar_num(m4_ammo)

if(money < cost)
{
client_print(id, print_chat,"[INFO] Masz za malo kasy na AK47")
}
else if(user_has_weapon(id, CSW_AK47))
return PLUGIN_CONTINUE;
else
{
cs_set_user_money(id, money - cost);
give_item(id, "weapon_ak47");
}
return PLUGIN_HANDLED
}


#3 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 20.07.2012 15:25

Załączony plik  Plugin.sma   2,63 KB  18 Ilość pobrań
  Plugin.amxx

#4 pomen

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:57
  • Imię:Przemysław
  • Lokalizacja:Zachodniopomorskie
Offline

Napisano 20.07.2012 23:38

Dzięki panowie! mogę się jeszcze zapytać co należy wpisać tutaj:
else if(user_has_weapon(id, CSW_M4A1))

zamiast CSW_M4A1 żeby nie można było kupić broni jeśli ma się jakąkolwiek broń główną (primary weapon)
Wtedy nie dałoby się kupić ak i m4 na raz albo dokupić np m4 do awp :)
  • +
  • -
  • 0

#5 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 21.07.2012 00:05

Zamiast user_has_weapon(id, CSW_M4A1) możesz użyć funkcji cs_get_user_hasprim(id) z biblioteki cstrike

#6 pomen

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:57
  • Imię:Przemysław
  • Lokalizacja:Zachodniopomorskie
Offline

Napisano 21.07.2012 19:43

dzięki benio101, zrobiłem jak pokazałeś, śmiga! jestem ci bardzo wdzięczny ^D^
  • +
  • -
  • 0

#7 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 21.07.2012 19:45

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo





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

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