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] Pierwszy plugin.


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

#1 vBullet.

    Nowy

  • Nowy

Reputacja: -1
Nowy

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

Napisano 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.

Użytkownik benio101 edytował ten post 11.07.2012 15:53
Dodanie znaczników CODE, SMA

  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 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

Napisano 11.07.2012 16:12

Dziękuję bardzo, plugin chodzi.

Do zamknięcia.
  • +
  • -
  • 0

#4 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 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, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




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

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