←  Tutoriale

AMXX.pl: Support AMX Mod X i SourceMod

»

Tutorial dla zielonych jak napisać naprawd...

  • +
  • -
Kosa :D - zdjęcie Kosa :D 08.09.2012

Witam, Obiecałem, że napisze tutek dla zielonych i oto on :)
Dodam że plugin jest naprawdę bardzo bardzo prosty :D
więc tak zaczynamy :

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>


ok więc to co napisałem wyżej to są biblioteki.Jak używacie amxmodx Studio to <amxmodx> i <amxmisc> będziecie mieli automatycznie
resztę trzeba będzie dopisać o bibliotekach i różnych funkcjach możecie poczytać tutaj : http://amxx.pl/dokumentacja/
jak już to dodaliśmy możemy jechać dalej

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

W amxmod Studio powinniście mieć taki public z automatu
pod register_plugin dodajemy
register_clcmd("say /m", "Moc", ADMIN_LEVEL_H);

tym rejstrujemy co trzeba wpisać na say, aby wywołać daną funkcje ja wam zaprezentuję, że po wpisaniu /m dostaje się 150 armoru i 120 hp, ale tej komendy może użyć tylko Admin z flagą t czyli ADMIN_LEVEL_H
Czyli to co napisaliście do tej pory powinno wyglądać tak :
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>

#define PLUGIN "New Plug-In"
#define VERSION "0.1"
#define AUTHOR "Kosa"


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

register_clcmd("say /m", "Moc", ADMIN_LEVEL_H);
}

jak tak wygląda to wszystko zrobiliście dobrze :)
teraz trzeba dodac Public Moc zeby z niego wywolywala sie funkcja i dodac też żeby admin mógł tylko korzystać z Komendy
czyli robimy tak

public Moc(id) {

if (get_user_flags(id) & ADMIN_LEVEL_H )
{

to odpowiada ze admin bedzie mogl tylko uzyc tej komendy
dalej co będzie się dostawało po wpisaniu komendy
set_user_armor(id, 150);
set_user_health(id, 120);
ColorChat(id, GREEN, "Masz 120 hp i 150 armoru Wykorzystaj to dobrze");

więc tak set_user_armor ustawia graczowi (w tym przypadku adminowi) Armor
z set_user_healthjest tak samo tylko ustawia życie
ColorChat daje informacje na zielono w zalezności od tego jak się napisze ja napisałem na zielono
więc wasz plugin powinien teraz wyglądać tak:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>

#define PLUGIN "New Plug-In"
#define VERSION "0.1"
#define AUTHOR "Kosa"


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

register_clcmd("say /m", "Moc", ADMIN_LEVEL_H);
}
public Moc(id) {
if (get_user_flags(id) & ADMIN_LEVEL_H )
{

set_user_armor(id, 150);
set_user_health(id, 120);
ColorChat(id, GREEN, "Masz 120 hp i 150 armoru Wykorzystaj to dobrze");
}

jak tak wygląda to jest wszystko git :)
teraz dodamy ostatnie "coś" co będzie dawalo graczowi informacje że nie może użyć tej komendy (jak będzie próbowal ją uzyć)
pod ostatnim }
dodajecie
else

ColorChat(id, GREEN, "nie masz uprawnien do uzycia tej komendy");

}

i to będzie na tyle
tak powinien wyglądać cały Plugin
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>

#define PLUGIN "New Plug-In"
#define VERSION "0.1"
#define AUTHOR "Kosa"


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

register_clcmd("say /m", "Moc", ADMIN_LEVEL_H);
}
public Moc(id) {
if (get_user_flags(id) & ADMIN_LEVEL_H )
{

set_user_armor(id, 150);
set_user_health(id, 120);
ColorChat(id, GREEN, "Masz 120 hp i 150 armoru Wykorzystaj to dobrze");
}
else

ColorChat(id, GREEN, "nie masz uprawnien do uzycia tej komendy");

}


Mam nadzieję że pomogłem trochę tym zielonym całkiem :) Sory za błędy itp. ale poradnik pisany na szybko, Może jeszcze coś poprawie.Proszę piszcie mi o błędach ja poprawie :)

Poradnik by Kosa zakaz kopiowania na inne fora bez mojej zgody ! :)
Pozdrawiam Kosa
Odpowiedz

  • +
  • -
::Gogiel:: - zdjęcie ::Gogiel:: 14.09.2012

Dobry Poradnik jak dla tych "zielonych"

Mogłeś jeszcze opisać że ADMIN_LEVEL_H to jest flaga 't'

Ale mimo wszystko proste i zapewne dla niejednego pomocne :)
Odpowiedz

  • +
  • -
Fajled - zdjęcie Fajled 14.09.2012

Dodaj jeszcze zabezpieczenie, aby tę komendę można było użyć raz na rundę / mapę =)
Odpowiedz

  • +
  • -
K!113r - zdjęcie K!113r 14.09.2012

A kiedy napiszesz poradnik dla czarnych? (nie dla murzynów, a o ciemnej stronie mocy ^D^)

Hmm, opis dobry, każdy happy bo napisze sobie plugin z gotowca, mogłeś dać coś więcej, np. uruchomienie menu na komende xD.
Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 14.09.2012

Człowiek, który zobaczy ten poradnik i przeczyta go, według mnie nic z tego nie zrozumie(Osoba newbie).
+ brak returnow, [można dodać kod przecież, za if'a ...]
Poradnik 2/10 [coś tam jest], widać chęć zdjęcia sobie warna czy podniecić się plusami :)
Poradnik dla zielonych powinien wyglądać tak, że każda linijka została by opisana przynajmniej dwoma zdaniami.
[np. plugin_init - wykonuje się podczas początku mapy. W tym miejscu rejestrujemy zdarzenia, komendy, cvary[w innym poradniku jest to wyjaśnione [link]]
przeciwienstwem plugin_init jest plugin_end który wywołuje się zaraz przed zmiana mapy [koniec mapy], w tym miejscu zamykamy pliki, i konczymy prace.
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 14.09.2012

Za dużo tych poradników dla początkujących...

1) register_clcmd jak już masz dla zielonych tłumaczyć - to "wyłapanie momentu" kiedy gracz wpisze coś w konsoli. jako że wypis czegokolwiek na czacie to wpisanie w konsole say Tekst to rejestrujemy /m z sayem.
2)Dodaj into że ColorChat nie jest "automatycznie" wklepany w AmxxStudio
3) po co w register_clcmd dajesz ADMIN_LEVEL_H skoro w Funkcji Mod również jest takowe sprawdzenie? Zdecyduj się ;)
4)

ColorChat daje informacje na zielono w zalezności od tego jak się napisze ja napisałem na zielono

Logiczne - Jak się napisze tak się napisze.... Mogłeś napisać że ColorChat to wypisywanie Wiadomości na chacie w rożnych kolorach.

I w ten oto sposób kolejny poradnik " jak pisać plugin " zmienił się w "Kopiuj ode mnie wklej do siebie i działa "...
Odpowiedz

  • +
  • -
Nestea****Lemon - zdjęcie Nestea****Lemon 07.10.2012

A może ktoś napisze poradnik że aby nauczyć się pisania pluginów należy poanalizować sobie inne pluginy i zobaczyć do czego dana funkcja służy , bo z tego tuta dużo się nie nauczymy ;) , taki szary będzie tylko wiedział jak zrobić tą komendę moc ;d
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 07.10.2012

A może ktoś napisze poradnik że aby nauczyć się pisania pluginów należy poanalizować sobie inne pluginy i zobaczyć do czego dana funkcja służy , bo z tego tuta dużo się nie nauczymy ;) , taki szary będzie tylko wiedział jak zrobić tą komendę moc ;d


Ja mam pomysł na 'poradnik dla początkujących' od kilku miechów ale to i obrazki, Teksty itp... kiedyś go skończe :&
Odpowiedz

  • +
  • -
Domiss - zdjęcie Domiss 10.10.2012

A jak zrobić aby dostawało się to automatycznie przy odrodzeniu ?
Odpowiedz

  • +
  • -
K!113r - zdjęcie K!113r 10.10.2012

Po prostu w zdarzeniu spawn'a ustawiasz pożądaną ilość hp


#include <amxmodx>
#include <fun>
#include <hamsandwich>

#define PLUGIN "New Plug-In"
#define VERSION "0.1"
#define AUTHOR "Kosa"


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

RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1)
}
public Odrodzenie(id) {
if ((get_user_flags(id) & ADMIN_LEVEL_H) && is_user_alive(id))
{
set_user_armor(id, 150);
set_user_health(id, 120);
}
}


(10.10.2012 20:09):
is_user_alive na lewo i będzie w porządku.
Odpowiedz

  • +
  • -
Filippo841 - zdjęcie Filippo841 26.01.2013

ja nic nie rozumem ._.
Odpowiedz

Truskawkowy1997 - zdjęcie Truskawkowy1997 03.02.2013

WOOW! FANTASTYCZNE dzięki! :)
Odpowiedz

  • +
  • -
NieTymRazem - zdjęcie NieTymRazem 27.02.2013

a jak zrobić żeby użyć tej mocy raz na runde ? (Sory za ref)
dasiek (27.02.2013 21:00):
Omawiane 150790125 razy. Użyj wyszukiwarki.
Odpowiedz

  • +
  • -
tiger3153 - zdjęcie tiger3153 28.02.2013

Wszystko idealnie opisane
Odpowiedz

  • +
  • -
Merior - zdjęcie Merior 26.04.2016

A jak to ustawić, żeby każdy mógł tej komendy używać?
Odpowiedz

  • +
  • -
vanillah - zdjęcie vanillah 26.04.2016

A jak to ustawić, żeby każdy mógł tej komendy używać?

usuwając wymaganą flagę

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>

#define PLUGIN "New Plug-In"
#define VERSION "0.1"
#define AUTHOR "Kosa"


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

register_clcmd("say /m", "Moc");
}
public Moc(id) {
set_user_armor(id, 150);
set_user_health(id, 120);
ColorChat(id, GREEN, "Masz 120 hp i 150 armoru Wykorzystaj to dobrze");
}
Odpowiedz