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 kupienia HE


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

#1 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 04.01.2012 23:34

W jednym pluginie blokuję możliwość kupowania HE w taki sposób
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);

register_menucmd(register_menuid("BuyItem"), (1<<3), "cmd_hegren");
register_menucmd(-34, (1<<3), "cmd_hegren");
register_clcmd("hegren", "cmd_hegren");
}

public cmd_hegren(id)
return PLUGIN_HANDLED;

ale niestety to chyba nie są wszystkie możliwości takiego blokowania, bo raz na jakiś czas znajdzie się jakaś osoba co dokupuje sobie te HE. Ktoś wie jak jeszcze można zablokować kupowanie HE?
  • +
  • -
  • 0

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


#2 glutex

    Mamamba

  • Power User

Reputacja: 377
Wszechpomocny

  • Postów:997
  • GG:
  • Steam:steam
  • Imię:Paweł
  • Lokalizacja:Studzionka
Offline

Napisano 05.01.2012 00:03

Myślę, że mógłbyś wykożystać kod z plugin'u Grenade Sack ograniczając ilość HE do zera...
  • +
  • -
  • 0

przejdzmynaty.gif


#3 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 05.01.2012 00:35

Niestety chodzi mi o same kupowanie, a nie całkowite blokowanie HE.
  • +
  • -
  • 0

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


#4 Lelek

    Zaawansowany

  • Użytkownik

Reputacja: 22
Życzliwy

  • Postów:105
  • GG:
  • Imię:Adam
  • Lokalizacja:*
Offline

Napisano 05.01.2012 00:58

A co powiesz na to :D xD

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("hegren", "he_kup");
}

public he_kup(id)
{
client_print(id, print_chat, "BLOKADA!");
return PLUGIN_HANDLED;
}

Użytkownik Lelek edytował ten post 05.01.2012 01:00

  • +
  • -
  • -2

#5 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 05.01.2012 01:14

A co powiesz na to :D xD


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("hegren", "he_kup");
}

public he_kup(id)
{
client_print(id, print_chat, "BLOKADA!");
return PLUGIN_HANDLED;
}

Nie dołuj mnie... :facepalm:
Przeczytaj może mój pierwszy post.
  • +
  • -
  • 0

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


#6 olek0017

    Pomocny

  • Zbanowany

Reputacja: 11
Początkujący

  • Postów:71
  • Lokalizacja:Pyskowice
Offline

Napisano 06.01.2012 01:18

z nie lepiej przez restmenu.amxx zainstalowane wraz z amxx?

badz sprawdzenie przy zmianie broni czy jest to granat he i zmienic graczowi bron na poprzednia badz noz

Użytkownik olek0017 edytował ten post 06.01.2012 01:20


#7 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 06.01.2012 01:26

z nie lepiej przez restmenu.amxx zainstalowane wraz z amxx?

Podobno to także da radę jakoś ominąć, ale nawet jeśli, to ten plugin w grę nie wchodzi, po prostu chcę wiedzieć, jak zablokować możliwość kupienia HE, żeby chociażby potem dodać jeszcze jakiś warunek do tej mojej funkcji "cmd_hegren".
sebul (06.01.2012 03:43):
Sry, chodzi mi tylko o HE, a wcześniej napisałem tutaj "broni" :D

  • +
  • -
  • 0

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


#8 olek0017

    Pomocny

  • Zbanowany

Reputacja: 11
Początkujący

  • Postów:71
  • Lokalizacja:Pyskowice
Offline

Napisano 06.01.2012 01:50

Nie wiem ale może jak to dodasz to już nie można będzie kupić he


register_clcmd("cl_autobuy", "he_kup");
register_clcmd("cl_rebuy", "he_kup");
register_clcmd("cl_setautobuy","he_kup");

tak nawiasem ja to zawsze usuwałem graczowi buyzone bo albo blokowałem wszystkie bronie albo żadne

Użytkownik olek0017 edytował ten post 06.01.2012 01:52


#9 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 08.01.2012 14:41

Użyj kanapki :)

#include <amxmodx>
#include <hamsandwich>

public plugin_init() {
register_clcmd("hegren", "cmdHegren")
RegisterHam(Ham_Item_AttachToPlayer, "weapon_hegrenade", "fw_ItemAttachToPlayer")
}

public cmdHegren(id)
return PLUGIN_HANDLED

public fw_ItemAttachToPlayer(iWeapon, id)
return HAM_SUPERCEDE


Można by także zablokować to w Orpheu ( co by było najbardziej optymalne ), ale jak to powiedział Ortega, użycie go tylko do jednej funkcji to jak jeżdżenie tirem po chleb do sklepu.

sebul (08.01.2012 20:27):
Jutro obczaję to i dam znać czy działa ^^

  • +
  • -
  • 1

marwit-0.png


#10 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 08.01.2012 20:45

A jednak sprawdziłem dzisiaj, chyba blokuje kupowanie (w sensie, że niby granat się kupuje, ale spada na ziemię), ale zaraz po tym serwer się wyłącza ^ ^
  • +
  • -
  • 0

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


#11 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 08.01.2012 21:00

Teraz powinno być good:)

#include <amxmodx>
#include <hamsandwich>

public plugin_init() {
register_clcmd("hegren", "cmdHegren")
RegisterHam(Ham_Item_AttachToPlayer, "weapon_hegrenade", "fw_ItemAttachToPlayer")
}

public cmdHegren(id)
return PLUGIN_HANDLED

public fw_ItemAttachToPlayer(iWeapon, id)
{
ExecuteHamB(Ham_Item_Kill, iWeapon)
return HAM_SUPERCEDE
}

  • +
  • -
  • 0

marwit-0.png


#12 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 08.01.2012 21:25

Niestety nie jest, serwer się wyłącza bez logów.
  • +
  • -
  • 0

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


#13 kapi10072

    Wszechpomocny

  • Użytkownik

Reputacja: 70
Pomocny

  • Postów:318
  • Steam:steam
  • Imię:Kacper
  • Lokalizacja:Polska
Offline

Napisano 08.01.2012 21:39


#include <amxmodx>
#include <fakemeta>

#define m_flNextAttack 83

public plugin_init()
{
register_plugin("Blokada HE", "9", "QTM. Peyote");
register_forward(FM_PlayerPreThink, "client_PreThink");
}

public client_PreThink(id)
{
if(get_user_weapon(id) == CSW_HEGRENADE)
{
set_pdata_float(id, m_flNextAttack, 0.1 , 5);
}
}


O to chodziło ?
sebul (08.01.2012 22:52):
Nie.

Użytkownik kapi10072 edytował ten post 08.01.2012 21:39

  • +
  • -
  • 0

Dołączona grafika
Najlepszy serwer TeamPlay w Polsce !
Pomogłem, wejdź ;)
Zapraszam na BHZ-Game.pl
Bo nie liczą się fragi tylko dobra atmosfera ;D


#14 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 08.01.2012 21:46

Ehh... Pomyliłem funkcje ham'a :facepalm:
To na 100% działa

#include <amxmodx>
#include <hamsandwich>

public plugin_init()
RegisterHam(Ham_Item_AddToPlayer, "weapon_hegrenade", "fw_ItemAddToPlayer")

public fw_ItemAddToPlayer(iWeapon, id)
return HAM_SUPERCEDE

  • +
  • -
  • 1

marwit-0.png


#15 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 08.01.2012 22:48

tak popatrzylem w kod diablo i tam jest jeszcze "hegrenade" ale to moze byc błąd Micza xD

EDIT

no ze tak mozna kupic hegrenada xD

mozesz tez sprobować toucha wykryć z tego co pamietam ktos tak kiedys robil i chyba cos bylo z tego xD
sebul (08.01.2012 22:54):
Ale jaki to ma związek z tym tematem?

Użytkownik G[o]Q edytował ten post 08.01.2012 22:59

  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#16 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 08.01.2012 23:02

Teraz działa (kasę zabiera, ale nie daje HE), tylko szkoda, że działa to nawet wtedy, gdy komuś da się granat funkcją "give_item" ;/

Ale mam pewien pomysł ;] zaraz go sprawdzę.

tak popatrzylem w kod diablo i tam jest jeszcze "hegrenade" ale to moze byc błąd Micza xD

EDIT

no ze tak mozna kupic hegrenada xD

mozesz tez sprobować toucha wykryć z tego co pamietam ktos tak kiedys robil i chyba cos bylo z tego xD

Ja tego "hegrenade" nie widzę w podstawowym kodzie diablo, no i nawet jeśli będę znał wszystkie możliwości kupienia HE przez komendy, to jednak pozostają jeszcze komendy typu "cl_autobuy", gdzie trzeba jakoś wykryć kiedy HE się kupuje. Co do toucha, to on chyba także będzie się wykonywał, gdy granat dostanie ktoś przez komendę "give_item", ale w sumie można by z tym coś próbować.

Teraz mam coś takiego
public plugin_init() {
register_menucmd(register_menuid("BuyItem"), (1<<3), "cmd_hegren");
register_menucmd(-34, (1<<3), "cmd_hegren");
register_clcmd("hegren", "cmd_hegren");
register_clcmd("cl_setautobuy", "cmd_hegren");
register_clcmd("cl_autobuy", "cmd_hegren");
register_clcmd("cl_rebuy", "cmd_hegren");

RegisterHam(Ham_Item_AddToPlayer, "weapon_hegrenade", "fw_ItemAddToPlayer");
}

public cmd_hegren(id) {
boughtTime[id] = get_gametime()+0.5;
}

public fw_ItemAddToPlayer(iWeapon, id) {
if(boughtTime[id] > get_gametime()) {
if(boughtHeGrenade[id] < 1) {
boughtHeGrenade[id]++;
return HAM_IGNORED;
}

return HAM_SUPERCEDE;
}

return HAM_IGNORED;
}

i serwera pada w taki sam sposób jak to było wcześniej przy użyciu "Ham_Item_AttachToPlayer".
  • +
  • -
  • 0

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


#17 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 09.01.2012 18:07

dodaj sobie do linii startowej jesli masz taką mozliwosc -dev -condebug i zobacz moze bedziesz cos miec w qconsole.log bo kod wygladą na dobry :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#18 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 09.01.2012 18:11

dodaj sobie do linii startowej jesli masz taką mozliwosc -dev -condebug i zobacz moze bedziesz cos miec w qconsole.log bo kod wygladą na dobry :D

Niestety testuje na swoim kompie na hlds i nie wiem czy nawet da się gdzieś wpisać komendy startowe.
  • +
  • -
  • 0

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


#19 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 09.01.2012 20:16

HAM_IGNORED -> HAM_HANDLED
  • +
  • -
  • 0

marwit-0.png


#20 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 09.01.2012 20:19

Z tego co wiem, HAM_HANDLED używa się gdy coś zmieniliśmy (np. dmg w funkcji Ham_TakeDamage) i chcemy, żeby to zostało wprowadzone, a jeśli ma coś pomijać to wtedy HAM_IGNORED, przynajmniej tak mi kiedyś r3x tłumaczył ^ ^


Dołączona grafika // MarWit
MarWit (09.01.2012 20:42):
To prawda, ale w tej funkcji niewiadomo dlaczego nie działa HAM_IGNORED :o
sebul (09.01.2012 21:11):
Niestety to nie pomogło, po kupieniu drugiego HE, serwer pada.

  • +
  • -
  • 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