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

Uczę się pisać pluginy - czy to działa


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
9 odpowiedzi w tym temacie

#1 Emru

    Początkujący

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:19
  • Lokalizacja:Polska
Offline

Napisano 26.12.2014 17:41

Witam. Stworzyłem na podstawie tutoriala z tego forum własny plugin (a raczej 5). Chciałbym wiedzieć, czy to zadziała. Ma graczowi za 6000 kasy dać tarcze.

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Tarcza"
#define VERSION "1.0"
#define AUTHOR "Emru"

new tarcza_koszt

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_cvar("tarcza_koszt","8000")
    register_clcmd("/say tarcza","shi")
}

public shi(id){
    if(!is_user_alive(id)){
        client_print(id,print_chat,"[Tarcza] Jestes trupem")
        return PLUGIN_HANDLED
    }
    if(cs_get_user_money(id)<get_pcvar_num(tarcza_koszt)){
    	client_print(id,print_chat,"[Tarcza] Nie stac Cie...")
	return PLUGIN_HANDLED
}

    
    give_item(id, "weapon_shield")
    cs_set_user_money(id,cs_get_user_money(id)-get_pcvar_num(tarcza_koszt))
    return PLUGIN_HANDLED
   }


  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png

b_350_20_692108_381007_FFFFFF_000000.png


#2 he1st

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 132
Zaawansowany

  • Postów:357
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 26.12.2014 18:00

Moim zdaniem powinno być tak, ale zawsze mogę się mylić ;)

 
/* Plugin generated by AMXX-Studio */
 
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
 
#define PLUGIN "Tarcza"
#define VERSION "1.0"
#define AUTHOR "Emru"
 
new tarcza_koszt
 
public plugin_init() 
{
register_plugin(PLUGIN, VERSION, AUTHOR)
tarcza_koszt = register_cvar("tarcza_koszt","8000")
register_clcmd("/say tarcza","shi")
}
 
public shi(id)
{
if(!is_user_alive(id))
{
client_print(id,print_chat,"[Tarcza] Jestes trupem")
return PLUGIN_HANDLED
}
if(cs_get_user_money(id)<get_pcvar_num(tarcza_koszt))
{
client_print(id,print_chat,"[Tarcza] Nie stac Cie...")
return PLUGIN_HANDLED
}
 
 
give_item(id, "weapon_shield")
cs_set_user_money(id,cs_get_user_money(id)-get_pcvar_num(tarcza_koszt))
return PLUGIN_HANDLED;
}


Użytkownik MS.Zer0. edytował ten post 26.12.2014 18:12

  • +
  • -
  • 1

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#3 NieWiemMamMac@

    Wszechwidzący

  • Użytkownik

Reputacja: 166
Profesjonalista

  • Postów:289
  • Imię:Kamil
  • Lokalizacja:Lokalizacja
Offline

Napisano 26.12.2014 18:18

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

#define PLUGIN "Tarcza"
#define VERSION "1.0"
#define AUTHOR "Emru"


public plugin_init() 
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("say /tarcza","shi")
}

public shi(id)
{
	if(!is_user_alive(id))
	{
		client_print(id,print_chat,"[Tarcza] Jestes trupem")
	}
	if(cs_get_user_money(id) >= 8000)
	{
		cs_set_user_money(id, cs_get_user_money(id)-8000);
		give_item(id, "weapon_shield")
		client_print(id,print_chat,"[Tarcza] Dostales Tarcze!")
	}
	else
		client_print(id,print_chat,"[Tarcza] Nie stac Cie...")
}

Jeśli robisz to na serwer COD MOD to nie zadziała ..

Wtedy musiałbyś użyć

cod_set_user_shield(id, 1);

  • +
  • -
  • 2

Pomagam z klasami/perkami/silnikiem COD

Kontakt:

[email protected]

PW

 


#4 he1st

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 132
Zaawansowany

  • Postów:357
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 26.12.2014 18:21

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

#define PLUGIN "Tarcza"
#define VERSION "1.0"
#define AUTHOR "Emru"


public plugin_init() 
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("say /tarcza","shi")
}

public shi(id)
{
	if(!is_user_alive(id))
	{
		client_print(id,print_chat,"[Tarcza] Jestes trupem")
	}
	if(cs_get_user_money(id) >= 8000)
	{
		cs_set_user_money(id, cs_get_user_money(id)-8000);
		give_item(id, "weapon_shield")
		client_print(id,print_chat,"[Tarcza] Dostales Tarcze!")
	}
	else
		client_print(id,print_chat,"[Tarcza] Nie stac Cie...")
}

Jeśli robisz to na serwer COD MOD to nie zadziała ..

Wtedy musiałbyś użyć

cod_set_user_shield(id, 1);

 

 

Wszystko fajnie tylko nie podał takich informacji. :P Ogólnie wydaje mi się, że kod, który podałem jest ok. tym bardziej, że zawsze może sobie cenę tarczy ustawić cvarem, a nie edytować i kompilować za każdym razem, gdy chce zmienić cenę. ^D^ Niemniej rzeczywiście na COD nie zadziała ten sposób, który podał/em i trzeba byłoby użyć cod_set_user_shield


  • +
  • -
  • 1

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#5 NieWiemMamMac@

    Wszechwidzący

  • Użytkownik

Reputacja: 166
Profesjonalista

  • Postów:289
  • Imię:Kamil
  • Lokalizacja:Lokalizacja
Offline

Napisano 26.12.2014 19:50


Ogólnie wydaje mi się, że kod, który podałem jest ok

 

Mogę się mylić ale :

return PLUGIN_HANDLED;

Zatrzyma dalsze działanie...

 

No i oczywiscie przy użyciu :

cod_set_user_shield(id, wartosc);

Będzie trzeba dać event nowej rundy by zabierało tarcze :)


Użytkownik NieWiemMamMac@ edytował ten post 26.12.2014 20:14

  • +
  • -
  • 1

Pomagam z klasami/perkami/silnikiem COD

Kontakt:

[email protected]

PW

 


#6 Emru

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:19
  • Lokalizacja:Polska
Offline

Napisano 26.12.2014 20:57

Jest to na serwer 4FUN. Też myślę, że return PLUGIN_HANDLED zablokuje plugin.
  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png

b_350_20_692108_381007_FFFFFF_000000.png


#7 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 26.12.2014 22:43

Ogółem return przerywa działanie funkcji.

Można dać samo return lub return PLUGIN_*

Pytałem się o to na tym forum, wystarczy poszukać
  • +
  • -
  • 1

#8 Emru

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:19
  • Lokalizacja:Polska
Offline

Napisano 26.12.2014 23:14

Dziękuje za pomoc. Jeszcze taka prośba. Czy te pluginy są poprawne? Wszystki są prawie takie same.

Załączone pliki


  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png

b_350_20_692108_381007_FFFFFF_000000.png


#9 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 27.12.2014 05:36

ms zero, podales ten sam kod czy ja jestem taki zmeczony?

 

plugin jest napisany w działający sposób.

 

return PLUGIN_HANDLED w tym przypadku sprawi jedynie, że napis nie zostanie pokazany na czacie ani żadne kolejne pluginy go nie będą w stanie przechwycić.


Użytkownik grankee edytował ten post 27.12.2014 05:36

  • +
  • -
  • 1

#10 he1st

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 132
Zaawansowany

  • Postów:357
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 27.12.2014 13:27

ms zero, podales ten sam kod czy ja jestem taki zmeczony?

 

plugin jest napisany w działający sposób.

 

return PLUGIN_HANDLED w tym przypadku sprawi jedynie, że napis nie zostanie pokazany na czacie ani żadne kolejne pluginy go nie będą w stanie przechwycić.

 

Jesteś zmęczony :D Jak widzisz nie przypisał

tarcza_koszt
wartości cvaru
 register_cvar("tarcza_koszt","8000")

 

 

Więc zrobiłem to za niego :D

 

 tarcza_koszt = register_cvar("tarcza_koszt","8000")

  • +
  • -
  • 1

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png





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

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