Jump to content

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

Posted Image Posted Image

Guest Message by DevFuse
 

Photo

[ROZWIĄZANE] Pierwszy plugin.


  • This topic is locked This topic is locked
3 replies to this topic

#1 vBullet.

    Nowy

  • Nowy

Reputacja: -1
Nowy

  • Postów:2
  • Imię:Filip
  • Lokalizacja:Głogówek
Offline

Posted 11.07.2012 15:52

Witam,

Otóż dzisiaj zacząłem zabawę z pisaniem pluginów. Zacząłem pisać i jakoś tak skończyłem :D Lecz nie chce on się skompilować. Czy możecie dać mi jakieś rady ?

Tutaj wklejam treść.



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

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "vBullet."


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

// Add your code here...
}
set_hudmessage(255, 0, 0, -1.0, 0.01
show_hudmessage(id, "<Witam>");
}




Wyskakuje error :
Error: Symbol already defined: "set_hudmessage" on line 18

Proszę o pomoc ! Ewentualnie proszę o jakieś poradniki i tutoriale, które objaśniają jak "zamknąć" plugin itd.


Dzięki !
(11.07.2012 15:54):
Kod w postach(np. źródło pluginu) umieszczaj w odpowiednich tagach(code/php/spoiler itp) a powyżej 200 linijek tylko w załączniku.

Edited by benio101, 11.07.2012 15:53.
Dodanie znaczników CODE, SMA

  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Posted 11.07.2012 16:02

Pierwszą funkcją, jaka się wykonuje, jest plugin_init()
W tej funkcji wykonujesz podstawowe czynności, t.j. zarejestrowanie pluginu, dodanie nasłuchiwaczy (np. nasłuchiwaczy śmierci) etc.
Pomijając niedomknięty nawias w set_hudmessage, nie możesz wykonać tych funkcji związanych w HUDzie w głównym ciele funkcji.
Tym bardziej, pierwszy parametr funkcji show_hudmessage (id) wskazuje na konkretną osobę, a plugin nie wie, komu tę wiadomość wyświetlić (kim jest id)
Tak samo, jak nie wie, kiedy tę wiadomość wyświetlić.

Weźmy sobie na początek prosty przykład:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "vBullet."


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

register_logevent("logevent_round_end", 2, "1=Round_End")
}

public logevent_round_end(){
set_hudmessage(255, 0, 0, -1.0, 0.01);
show_hudmessage(0, "Koniec rundy");
}
W plugin_init (odpowiednik main() dla wielu języków programowania) zarejestrujemy zdarzenie, jakim jest koniec rundy.
W przypadku wystąpienia tego zdarzenia, wykonamy funkcję logevent_round_end(), którą definiujemy osobno.
Funkcja ta wyświetli wiadomość "Koniec rundy" do wszystkich graczy na serwerze (parametr pierwszy równy 0 wysyła wiadomość do wszystkich).

Polecam Ci zapoznać się z kilkoma podstawowymi tutorialami i na ich podstawie napisać parę prostych pluginów.

#3 vBullet.

    Nowy

  • Autor tematu
  • Nowy

Reputacja: -1
Nowy

  • Postów:2
  • Imię:Filip
  • Lokalizacja:Głogówek
Offline

Posted 11.07.2012 16:12

Dziękuję bardzo, plugin chodzi.

Do zamknięcia.
  • +
  • -
  • 0

#4 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Posted 11.07.2012 16:13

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Posted Image raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users