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

Jak napisac plugin ?


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

#1 rS.

    Wszechmogący

  • Power User

Reputacja: 159
Profesjonalista

  • Postów:608
  • Lokalizacja:Przemyśl
Offline

Napisano 07.02.2009 17:10

*
Popularny

Serdecznie witam wszystkich , tak więc zaczynamy .



Pierwsze Kroki jakie musimy zrobic to:

AMXx Studio - program do kompilacji, przerabiania i pisania własnych pluginów (można go pobrać z http://www.amxmodx.org , znajduje się w packu AMX Mod X Full Installer, lub można go pobrać samodzielnie AMX Mod X Studio)


Tutaj opiszę jak skonfigurować AMXx Studio aby można było kompilować pluginy:

Po otworzeniu AMXx Studio widzimy taki ekran:

screen1.jpg - Rozmiar oryginalny - Fotosik.pl

Wchodzimy w Tools-->Settings (F12)

screen2.jpg - Rozmiar oryginalny - Fotosik.pl

Następnie Compiler Settings w pierwszym białym polu podajemy adres do naszego pliku (amxxpc.exe - to kompilator znajduje sie w folderze tam gdzie masz CS addons/amxmodx/scripting)


screen3.jpg - Rozmiar oryginalny - Fotosik.pl


Klikamy ok i od tej pory kompilowanie pluginów nie powinno stwarzać problemu tylko otwieram i klikamy compile.

Ciekawostka:
Wybrałem amx studio ponieważ uczyłem się na nim od początku od kolegi


Tak więc zaczynamy:

Otwieramy program AMX Mod X Studio
Co gdzie i jak?:
Dołączona grafika

W tych 3 okienkach będziemy widzieć :

a/1 - W tym okienku, po zaznaczeniu danego fragmentu kodu, zobaczymy, jak zostaje sklasyfikowana poszczególna jego część (czy jest to funkcja, metoda, etc.).
b/2 - W tym okienku zobaczymy (po kliknięciu na dany folder) ile razy użyliśmy danej funkcji, metody, zmiennej, etc.
c/3 - Główne okno programu. To w nim piszemy kod plugin'u.


Teraz musimy podać ścieżkę do kompilatora. W tym celu klikamy F12.
Pojawi sie nam to :

Dołączona grafika

W Compiler (amxxpc.exe) podajemy ścieżkę do kompilatora. Znajdziesz ją w :

addons/amxmodx/scripting

W Default Output Directory podajemy miejsce, gdzie będą zapisywały się skompilowane pliki.


Tak więc przygotowaliśmy amxstudio do pracy więc można zaczynac :)

Zmienne: Zmienne są to struktury, które mają przechowywać pewne informacje przez jakiś okres czasu.

Jakie może mieć typy zmiennych:

•|1Zmienne logiczne.
•|2Integer'y.
•|3Liczby dziesiętne.


Zmienne Logiczne: Zmienne logiczne są bardzo proste wy wykonaniu i obsłudze. Można im nadać jedynie dwie wartości a mianowicie:

"true"
"false"

new bool:
CzyJestWlączone // Tworzę nową zmienną "CzyJestWlaczone", która jest automatycznie ustawiona na "false"

new bool:
JestWlaczone=true //Tworzę nową zmienną JestWlaczone i nadaje jej wartość "true".


Integer'y Są to najprostsze struktury w języku skryptowym Pawn , aby umieścić taką zmienną w kodzie, musimy użyć instrukcji new nazwa_zmiennej.


new c=5.0
//Ta zmienna jest niewłaściwa

new a
//Tworzymy pustą zmienną "a"

new b=5
//Tworzymy nową zmienną "b" i ustawiamy jej wartość na 5.

new d="siema"
//"siema" nie jest liczbą, dlatego ta zmienna też jest niewłaściwa.


Liczby dziesiętne Jeżeli chcemy w kodzie plugin'u umieścić liczbę dziesiętną, musimy określić typ zmiennej jako "float". By to wykonać musimy zrobić to w następujący sposób :

new Float
nazwa_zmiennej

new d="siema"
//Ta zmienna nadal nie jest właściwa

new Float:c=5.0
//Ta zmienna była niewłaściwa. Teraz, gdy określiliśmy typ zmiennej na "float" stała się właściwa <img src='http://img.amxx.pl/public/style_emoticons/<#EMO_DIR#>/wink.gif' class='bbc_emoticon' alt=';)' />.

new Float:b=5.1
//Tworzymy nową zmienną "b" i ustawiamy jej wartość na 5.1.

Teraz będzie sporo czytania ze zrozumieniem musicie wszystko po kolei ładnie przeczytaj to jest najgłówniejsza rzecz , będziemy się uczyć jak działa plugin , i budową pluginu:

Włączamy AMX MOD X Studio i klikamy CTRL + N.
Otworzy nam się nowe okno z plugin'em, który wygląda tak :

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Author"


public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
   
    // Add your code here...
}

Teraz o budowie pluginu .

Instrukcje w pluginie zawierają się w funkcjach. Owe funkcje można porównać to spiętych kartek w zeszycie (oryginalne porównanie by Seba :] ) - instrukcje są po kolei wykonywane (tak jak zapisujemy kartki w zeszycie). Każdą funkcję w plugin'ie musimy zarejestrować w kodzie. Robimy to tak :

public nazwa_funkcji(wartości_jakie_przyjmuje_funkcja)
{
//Tutaj będzie nasz kod
}

Kod w funkcji zapisujemy między nawiasami klamrowymi. Funkcje mogą być wywoływane przez gracza (gracz zrobił coś, np. otrzymał obrażenia - nasza funkcja się wykonuje) lub przez inne funkcje.
Wiem, że możecie tego nie zrozumieć, ale przeczytajcie to jeszcze kilka razy i obraz Wam się rozjaśni. Zabieramy się za nasz plugin :) .
Na początku musimy pod nasz plugin podpiąć odpowiednie moduły.
Co to są moduły? Są to zbiory instrukcji. Jeżeli w pluginie użyjemy instrukcji, która wymaga zadeklarowania odpowiedniego modułu - plugin się nie skompiluje.
Otwórzmy okno z AMX MOD X Studio.

#include <amxmodx>
#include <amxmisc>

dopiszmy :

#include <fun>

oraz :

#include <cstrike>

Fun jest to moduł, który zawiera instrukcje związane z "zabawą" (zmienianiem HP oraz armor'a gracza, wyrzucaniem jego wszystkich broni, itp.).
Cstrikezawiera instrukcje, które pozwalają nam np. na zmienianie ilości pieniędzy gracza oraz także na zmienianie jego armor'a (jak w fun'ie) z tym, że tutaj możemy dodatkowo określić rodzaj kamizelki (sama kamizelka czy z hełmem).
Następną czynnością, jaką musimy wykonać jest zadeklarowanie zmiennej do naszej pcvark'i ( jeżeli nie wiecie jak to się robi - odsyłam Was do poprzedniej lekcji). Pcvark'i są szybsze od zwykłych cvar'ek, ale czym różni się deklarowanie pcvarek od deklarowania cvar'ek?
Pcvark'i muszą zostać przypisane do zmiennej, więc zadeklarujmy takową.
Nasza pcvark'a będzie odpowiadać za koszt skorzystania z usługi zmiany HP, więc nadajmy jej nazwę (na przykład) hp_koszt.
Zadeklarujmy zmienną. Dla czystości kodu robimy to pod :

#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Author"

new hp_koszt

Teraz musimy zadeklarować naszą pcvarkę.
Robimy to w funkcji plugin_inti(). W funkcji ten deklarujemy wszystkie event'y, cvarki, itp.
Pod :

register_plugin(PLUGIN, VERSION, AUTHOR)

dopisujemy :

hp_koszt = register_cvar("hp_koszt","6000")

Instrukcja register_cvar("nazwa_cvarki","jaką_domyślną_wartość_przypisujemy") odpowiada za rejestrowanie cvar'ek. W nawiasie musimy podać nazwę cvarki oraz domyślną wartość. Domyślny koszt skorzystania z usługi zmiany HP ustawiłem na 6000.
Teraz zarejestrujemy co musi wpisać gracz, aby mógł skorzystać z usługi zmiany HP.
Umożliwia nam to instrukcja register_clcmd("jaką_komendę_musi_wpisać_gracz","którą_funkcję_wywołuje_wpisana_komenda")
Dopisujemy w plugin_init() :

register_clcmd("say /hpme","hp")

/hpmejest to komenda, którą gracz musi wpisać w say'u. Owa komenda wywołuje funkcję hp. Musimy tą funkcję teraz stworzyć.
Za ostatnim nawiasem klamrowym w naszym pluginie (za nawiasem zamykającym funkcję plugin_init()) dopisujemy :

public hp(id){
}

Wartość id w nawiasie jest to unikalny identyfikator gracza. Można go oczywiście nazwać inaczej, jak player lub gracz, ale id jest najtrafniejsze :) .
Dodamy teraz pierwszą instrukcję warunkową, która uniemożliwi skorzystanie z usługi zmiany HP gdy gracz jest nieżywy.
W funkcji hp(id) dopisujemy :

if(!is_user_alive(id)){
}

Wykrzyknik przed instrukcją is_user_alive(id) sprawia, że dana instrukcja zostanie wykonana tylko wtedy, gdy gracz nie jest żywy. !można przetłumaczyć jako nie,a całą instrukcję jako jeżeli gracz nie jest żywy wykonaj
Teraz przydałoby się zawiadomić gracza, że nie może skorzystać z naszej usługi.
W tym celu przyda nam się instrukcja client_print(), czyli wypisz graczowi.

Wygląda ona tak :

code_print(id,rodzaj_wypisanej_wiadomości (print_chat - wypisuje ją tak jak say lub print_center - wypisuje ją tam, gdzie wiadomości "Counter Terrorist win, itp.","Co_chcemy_wypisać")

Dopiszmy w naszej instrukcji warunkowej (za nawiasem klamrowym naszej instrukcji warunkowej) instrukcję :

client_print(id,print_chat,"[Zmiana HP] Nie mozesz skorzystac z tej uslugi ziom, bo jestes niezywy ;-(")

Przydałoby się teraz zastopować plugin. Dlaczego?
Dlatego, że nasza instrukcja nie została spełniona i nie chcemy, aby to co jest po niej wykonało się.
W naszej instrukcji warunkowej dopisujemy :

return PLUGIN_HANDLED

co oznacza - zwróć zastopowany plugin lub nie wykonuj dalej.
Teraz kolejna instrukcja warunkowa, uniemożliwiająca skorzystanie z usługi gdy nasze HP już wynosi 200.
Deklarujemy kolejną instrukcję warunkową. Do sprawdzenia życia gracza przyda nam się instrukcja get_user_health(id).

    if(get_user_health(id)>=200)){
       
    }

Teraz wzorem poprzedniej funkcji zaalarmujmy użytkownika, że nie może wykonać danej czynności. Tak jak wtedy posłuży nam do tego client_print().

client_print(id,print_chat,"[Zmiana HP] Juz skorzystales z tej uslugi!")

Standardowo dodajemy też zastopowanie plugin'u :

return PLUGIN_HANDLED

Dotychczas nasz kod powinien wyglądać tak :

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Author"

new hp_koszt

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_cvar("hp_koszt","6000")
    register_clcmd("/say hpme","hp")
}

public hp(id){
    if(!is_user_alive(id)){
        client_print(id,print_chat,"[Zmiana HP] Nie mozesz skorzystac z tej uslugi ziom, bo jestes niezywy ;-(")
        return PLUGIN_HANDLED
    }
    if(get_user_health(id)>=200){
        client_print(id,print_chat,"[Zmiana HP] Juz skorzystales z tej uslugi!")
        return PLUGIN_HANDLED
    }
}

Teraz w końcu dodamy zmianę HP :) .
Umożliwi nam to instrukcja set_user_health(id,ile_HP).
Za klamrą zamykającą ostatnią instrukcję warunkową dopisujemy :

set_user_health(id,200)

Teraz pozostaje nam tylko odjęcie odpowiedniej ilości pieniędzy.
Posłuży nam do tego instrukcja cs_set_user_money(id,ilosc_pieniedzy) oraz
cs_get_user_money(id).
Pierwsza umożliwia ustawienie ilości pieniędzy a druga pobranie ilości pieniędzy posiadanej przez gracza.
Potrzebujemy jeszcze teraz instrukcji, która pobierze z pcvark'i hp_koszt koszt naszej usługi. Posłuży nam do tego get_pcvar_num(nazwa_cvarki).Pobiera ona wartość liczbową zapisaną w cvarc'e.
Dopisujemy pod instrukcją ustawiania życia :

cs_set_user_money(id,cs_get_user_money(id)-get_pcvar_num(hp_koszt))

Teraz dla czystej kosmetyki i poprawnego działania plugin'u dodajemy jeszcze pod ostatnią instrukcją :

return PLUGIN_HANDLED

No tak własnie ty , to koniec! CONGRATULATION . Jeżeli coś zle wypaliło napisz mi jeżeli masz z czymś problem . Jeżeli jest jakiś błąd w poradniku .

Teraz pozostaje Wam tylko skompilowanie plugin'u i zainstalowanie go na serwerze.
Finałowy kod powinien wyglądać tak :

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Author"

new hp_koszt

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_cvar("hp_koszt","6000")
    register_clcmd("/say hpme","hp")
}

public hp(id){
    if(!is_user_alive(id)){
        client_print(id,print_chat,"[Zmiana HP] Nie mozesz skorzystac z tej uslugi ziom, bo jestes niezywy ;-(")
        return PLUGIN_HANDLED
    }
    if(get_user_health(id)>=200){
        client_print(id,print_chat,"[Zmiana HP] Juz skorzystales z tej uslugi!")
        return PLUGIN_HANDLED
    }
    set_user_health(id,200)
    cs_set_user_money(id,cs_get_user_money(id)-get_pcvar_num(hp_koszt))
    return PLUGIN_HANDLED
}



Poradnik wykonany w całości przez Paweł

Użytkownik Paweł edytował ten post 04.03.2011 09:51

  • +
  • -
  • 51

- Pisanie pluginów: http://amxx.pl/topic...napisac-plugin/

- Backlinks, podstawy i pozycjonowanie SEO: http://amxx.pl/topic...cjonowanie-seo/


#2 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 07.02.2009 17:45

*
Popularny

byk na byku...
zaczynając od "amxxpc.exe - to kompilator znajduje sie w folderze tam gdzie masz CS addons/amxmodx/scripting" kompilator jest w paczce z amxx'em, wcale nie jest nam do tego potrzebny CS więc znajduje się tam gdzie go wypakowaliśmy z paczki AMXX

"•W tych 3 okienkach będziemy widzieć :"
zamieniony opis(pozycja) 1<=>3

"Jakie może mieć typy zmiennych: "

tylko 3 ? bardzo ubogo

"•|2Integer'y. "
liczby całkowite ?

"•|3Liczby dziesiętne. "
chyba chodziło ci o liczy rzeczywiste

a gdzie tablice, ciągi itd ?

"public nazwa_funkcji(wartości_jakie_przyjmuje_funkcja) "
nie "wartości_jakie_przyjmuje_funkcja" tylko parametry funkcji

"Kod w funkcji zapisujemy między nawiasami klamrowymi."
nie potrzebne są klamry jeżeli kod jest w jednej linijce

"register_clcmd("say /hpme","hp")"
register_clcmd(komenda,wywolana_funkcja,flagi, informacje) wiecej

"zadeklarowanie zmiennej do naszej pcvark'i"
pcvarka - lol

"code_print(id,rodzaj_wypisanej_wiadomości (print_chat - wypisuje ją tak jak say lub print_center - wypisuje ją tam, gdzie wiadomości "Counter Terrorist win, itp.","Co_chcemy_wypisać")"
a raczej client_print(id_gracza, typ, wiadomosc, wartosci_dodatkowe). typy: print_chat, print_colsole, print_center i print_notify. więcej

"return PLUGIN_HANDLED
co oznacza - zwróć zastopowany plugin lub nie wykonuj dalej."

plugin stopujesz komendą pause() wiecej

"Finałowy kod powinien wyglądać tak : "
pisałeś tyle o "pcvar'kach" a jakoś w kodzie tego brakło ci "register_cvar("hp_koszt","6000")"

Wygląd kodu beznadziejny, nieczytelny. Powinieneś w ogóle nauczyć się poprawnego używania tabulatora. Albo chociaż używaj Tools > Indenter
W finałowym kodzie błąd w komędzie: "register_clcmd("/say hpme","hp")" Poza tym co do kodu brakuje sprawdzania czy gracz ma wystarczającą ilość kasy bo teraz to jeden bind i ma nieśmiertelność.
Ogólnie nawet już nie czepiam się stylu w jakim zostało to napisane.

p.s.
sprawdzałem na szybko więc może być więcej "ciekawostek"
  • +
  • -
  • 11

#3 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 07.02.2009 17:49

*
Popularny

każdy bez podstaw c++, kto spotka sie z pawnem i przeczyta ten temat bedzie wiedzial tyle co przed przeczytaniem go. strasznie ogolnie napisane. 2/5.
  • +
  • -
  • 5

#4 rS.

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 159
Profesjonalista

  • Postów:608
  • Lokalizacja:Przemyśl
Offline

Napisano 07.02.2009 17:50

Pavulon, heh no poprawię to wszystko O:)

darkman to jest przez amx studio .
  • +
  • -
  • 0

- Pisanie pluginów: http://amxx.pl/topic...napisac-plugin/

- Backlinks, podstawy i pozycjonowanie SEO: http://amxx.pl/topic...cjonowanie-seo/


#5 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 07.02.2009 18:06

darkman to jest przez amx studio .

a co to zmienia ? amxx studio nie będzie za nikogo myślało. równie dobrze można pisać w notatniku a potem skompilować.
  • +
  • -
  • 0

#6 MafiaDL

    Naj-Najstarszy Moderator

  • Przyjaciel

Reputacja: 561
Wszechwiedzący

  • Postów:3 492
  • GG:
  • Imię:Łukasz
  • Lokalizacja:Warsaw
Offline

Napisano 07.02.2009 18:07

a to w ogóle twoje ze tak zapytam?:P
  • +
  • -
  • 1

#7 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 07.02.2009 18:09

darkman to jest przez amx studio .

a co to zmienia ? amxx studio nie będzie za nikogo myślało. równie dobrze można pisać w notatniku a potem skompilować.


no ^^ btw. pawn studio jest x razy lepsze, dla mnie nie ma porównania.
  • +
  • -
  • 0

#8 WHineye

    Zaawansowany

  • Użytkownik

Reputacja: 8
Nowy

  • Postów:83
  • GG:
  • Lokalizacja:w-wa
Offline

Napisano 08.02.2009 05:25

możecie mówic ze ubogo, ale ja, n00bek, sie pare rzeczy przydatnych dowiedzialem :]
tutek poczatkujacym da chociaz jakis "punkt odniesienia" do dalszego zaglebiania sie w temat ^^
  • +
  • -
  • 0

#9 Vorian

    Życzliwy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:21
  • Lokalizacja:Augustów
Offline

Napisano 06.10.2009 17:16

Jedna rzecz... nie pisze tu nic o tym jak zabezpieczyć się przed tym że gracz użyje ten skill choćby i gdy ma 800$...
U mnie po pierwsze nie pobiera nic jak się ma 800 po drugie pozwala kupować skill...
  • +
  • -
  • 0

#10 naven

    Hero

  • Power User

Reputacja: 204
Profesjonalista

  • Postów:1 088
  • GG:
  • Imię:Adam
  • Lokalizacja:Cieszyn
Offline

Napisano 07.10.2009 15:44

if(cs_get_user_money(id) < 6000)
{
client_print(id, print_chat, "Nie stac cie na to koles!")
return PLUGIN_HANDLED;
}

Wynik poprawiania 3 lini kodu:
Miczu: klamry & zakonczenie printa (2p)
kyku: mniejsze zamiast wieksze (1p)
naven: porpawione handled(1p)

  • +
  • -
  • 0

#11 Fixxor

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:12
  • Lokalizacja:Częstochowa
Offline

Napisano 08.05.2010 09:26

Mam takie pytanie, to w końcu ten tutek jest dobrze napisany czy źle bo nie wiem czy mam to przeczytać i potem jakieś głupoty będę miał w głowie zamiast poprawnych komend..
Proszę o odpowiedź :)


Pozdrawiam Fixxor

  • +
  • -
  • 0
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl

#12 nad3jf

    Pomocny

  • Użytkownik

Reputacja: 10
Początkujący

  • Postów:68
  • GG:
  • Lokalizacja:xx.xxx.xxx:xxx
Offline

Napisano 08.05.2010 10:10

Jeżeli masz całkowite podstawy poczytaj go zawsze coś się dowiesz. Choć to na pewno Ci wiele wiedzy nie da.
  • +
  • -
  • 0

#13 Fixxor

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:12
  • Lokalizacja:Częstochowa
Offline

Napisano 08.05.2010 12:06

Chodziło mi o to czy nie ma w tym jakiś błędów że piszę złe kody a nie dobre że poprzestawiane litery, dlatego nie wiem czy w ogóle ma to sens..
jeśli tutek jest dobrze napisany bez błędów, niech ktoś napisze posta albo zedytuje mojego
  • +
  • -
  • 0
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl

#14 StormRage

    Banned

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:4
  • Imię:Bartosz
  • Lokalizacja:Tychowo
Offline

Napisano 24.11.2010 20:58

Zrozumiałem tyle co niec. Nie potrzebne ' ( np cvar'ki, nie da się normalnie napisać? Przez to tylko mieszasz w głowie )
2/5na =

#15 Rex96

    Nowy

  • Użytkownik

Reputacja: 4
Nowy

  • Postów:5
  • Lokalizacja:SDL
Offline

Napisano 19.03.2011 00:32

Szukalem poradnika jak napisać prostego vipa na paintball (hp/bron i he) i nie iwme po komentarzach sądze że jest to napisane źle i na wiele mi się nie przyda możecie podać mi link do dobrego poradnikka/tutoriala.
  • +
  • -
  • 0

#16 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 552
Godlike

  • Postów:11 974
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 19.03.2011 01:14

Pawn Tutorial - AlliedModders Wiki
to że po angielsku to chyba nie robi problemu
  • +
  • -
  • 1

#17 Kaster

    Wszechwidzący

  • Użytkownik

Reputacja: 32
Życzliwy

  • Postów:268
  • GG:
  • Imię:Kamil
  • Lokalizacja:Gliwice
Offline

Napisano 15.04.2011 21:48

W sumie nie "świetnie" ale jest + :)
  • +
  • -
  • 0

#18 ManiaQ

    Wszechwidzący

  • Użytkownik

Reputacja: 49
Pomocny

  • Postów:291
  • GG:
  • Steam:steam
  • Imię:Kamil
  • Lokalizacja:Skierniewice
Offline

Napisano 15.04.2011 21:57

Nauczyłem się trochę pisać z tego tematu i dlatego plus leci chociaż są błędy - chyba już poprawione ;)

Szukalem poradnika jak napisać prostego vipa na paintball (hp/bron i he) i nie iwme po komentarzach sądze że jest to napisane źle i na wiele mi się nie przyda możecie podać mi link do dobrego poradnikka/tutoriala.

KLIK
Masz tam prostego VIP wykonanego pod Surf jednak przerób go sobie.
  • +
  • -
  • 0

Najnowszy CS:GO MOD: 193.33.177.54:27130 

Chcesz rozpocząć współpracę? Pisz na PW.

 

 

 


#19 Racz'Q

    Pomocny

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:49
  • Imię:kuba
  • Lokalizacja:polska , gdyni
Offline

Napisano 28.12.2011 22:21

Kop Kop Kop . Mam takie jedno pytanko . Jak dodac cvar na hp ? ( Tyle ma dodac ) . Wiem ze na poczatku napisze new ilosc_hp , pozniej register_cvar("ilosc_hp","50") . Ale nie wiem jak to wplesc w plugin . Oczywiscie wiem ,że musze podmienić zamiane hp na dodawanie hp . ( z set_user_health , bedzie get_user_health ? )

Użytkownik Racz'Q edytował ten post 28.12.2011 22:26

  • +
  • -
  • 0

#20 Najkon

    Profesjonalista

  • Użytkownik

Reputacja: 60
Pomocny

  • Postów:161
Offline

Napisano 29.12.2011 15:51

Co do cvarow to sam nie wiem. A aby dodac hp komus to :

set_user_health(id, get_user_health(id) + jakastamiloschp)

  • +
  • -
  • 0




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

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