Ein neues Thema erstellen  Auf das Thema antworten  [ 12 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Wie scripte ih ein Plugin?
BeitragVerfasst: 19.11.2002, 07:51 

Registriert: 17.11.2002, 13:39
Beiträge: 34
Kann mir einer sagen, wie ich überhaupt ein Plugin scripte (bzw. programmiere) und wo ich dieses small herbekomme???


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 09:31 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
ALLGEMEINE VORRAUSSETZUNG

- Grundkenntnisse in C oder Basic

- Small ist die Programmier-Sprache.

- Du brauchst einen ordentlichen Texteditor. Notepad reicht aus.

- Die Source-Datei hat die Endung *.sma

- Um die Datei später kompilieren zu können, muss der Dateiname mit plugin_*.sma beginnen.

- Im Download des AM-Zip Files befindet sich ein Ordner scripting. In diesem scripting-Ordner ein Ordner myscripts. Dort kommt die oben genannte, selbsterstellte plugin_*.sma Datei hin.

- zum Kompilieren der sma Datei zu einer amx Datei muss die compile_all.bat betätigt werden

- die amx Datei befindet sich im Ordner mybinaries und kann nun als Plugin installiert werden.

ZUR PROGRAMMIERUNG

- Ein Plugin in sma Form ansehen, wo man genau weiß, was es macht. Diese Datei sollte klein und einfach aufgebaut sein.

- Nachvollziehen, wie es die Funktion(en) umsetzt.

- Die *.inc Dateien ansehen. Diese befinden sich ebenfalls im scripting Ordner und können mit Notepad geöffnet werden. Darin sind alle Befehle, die für ein Plugin benutzt werden können.

- In einem Plugin wird zu aller erst auf die *.inc Dateien verwiesen. (mit dem Befehl #include)

- Man erstellt eine Funktion. Als Beispiel nehmen wir eine public Funktion.

- Die public Funktion hat immer eine vorgegebene Kopfinformation/aufbau.

- Man erhält in dieser Public-Funktion Informationen von Halflife als Zeichenkette(Strings), die man in für Small verständliche und verwendbare Zeichen (string) umwandeln muss.

- Diese Small-Strings werden in sogenannten Arrays gespeichert, welche innerhalb der public Funktion zuerst definiert werden müssen. Diese Arrays haben eine feste Größe. (z.B. MAX_TEXT_LENGTH etc.)

- Die so erhaltenen Daten können nun mit den Befehlen, welche man aus den include Dateien entnimmt, für die gewünschte Aufgabe verwendet werden.

- Zu beachten sind auch die Zeichensetzung. Geschweifte Klammern, die die gesamte Funltion umfassen und das Semikolon am Ende jeder Zeile. Die Funktion wird z.B. mit return PLUGIN_HANDLED abgeschlossen.

- Diese public-Funktion, sowie eine Info zum Plugin, muss nun in der Funktion plugin_init() registriert werden.

Im Anhang eine Beispiel-sma, die demonstrieren soll, wie HLDaten zu Small-Daten umgewandelt werden und diese dann auf dem Bildschirm in CS sichtbar gemacht werden.

Zum Ausführen in CS: admin_beispiel <irgendwas eingeben>

HINWEIS

- Die HLData darf eine Zeichenlänge von 100 Zeichen nicht überschreiten. Sonst erhält man eine Fehlermeldung.

- Bunte Textausgaben dürfen die Textlänge von 80 Zeichen nicht überschreiten.

- UserIndex ist eine ganze Zahl und wird einfach einer Variablen zugewiesen. ( new userindex;). Wird also nicht in einem Array gespeichert. Der UserIndex ist auch ein wichtiges Instrument, um viele Befehle zu verwenden.

_________________
Fehleranalyse: Poste den Inhalt Deiner liblist.gam, (listen)server.cfg, adminmod.cfg, users.ini, vault.ini, plugin.ini von adminmod und plugins.ini von metamod. Benutze auch die Such-Funktion


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 13:04 

Registriert: 17.11.2002, 13:39
Beiträge: 34
Erstmal danke, ich werde mal jetzt versuchen irgndwas zu programmieren. Ich hoffe QBasic kenntnisse reichen auch aus :-)


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 14:08 
AM.de Team

Registriert: 08.07.2002, 21:11
Beiträge: 2192
Sehr schoene Hausaufgaben gibts auch unter www.adminmod-hilfe.de und dort unter AM Scripting :D

_________________
it's better to burn out, than to fade away


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 18:06 
AM.de Team

Registriert: 04.10.2002, 16:14
Beiträge: 1212
eine vorabversion des bald offiziellen scripting-tutorials
http://www.ravenousbugblatterbeast.pwp. ... uk/Script/


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 18:11 

Registriert: 27.05.2002, 12:14
Beiträge: 541
Wohnort: im Osten ;)
wär wohl zuviel verlangt das in deutsch zu machen?

:wink:


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 18:28 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
auf adminmod-hilfe.de findest Du ja schon einige Script-Funktions in Deutsch erklärt.

Wenn wir die offizielle englische Seite von AM fertig haben, kann man ja mal an dieser deutsche Seite weiter machen.

_________________
Fehleranalyse: Poste den Inhalt Deiner liblist.gam, (listen)server.cfg, adminmod.cfg, users.ini, vault.ini, plugin.ini von adminmod und plugins.ini von metamod. Benutze auch die Such-Funktion


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 19:45 
AM.de Team
Benutzeravatar

Registriert: 23.11.2001, 00:00
Beiträge: 3842
Wohnort: Vor König Arthus
Danke Rinde,
den Link hab ich schon den ganzen Tag gesucht! ;)

PS.: Wenn Ihr das Forum von AM.de schon unübersichtlich findet, solltet Ihr auf gar keinen Fall etwas im AM.org Forum suchen. ;)

_________________
Der schwarze Ritter triumphiert immer...
WING-Clan


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 22:06 
HLDS Team
Benutzeravatar

Registriert: 26.11.2001, 01:00
Beiträge: 676
Zitat:
auf adminmod-hilfe.de findest Du ja schon einige Script-Funktions in Deutsch erklärt.[...]
ja, wo du es gerade sachst, ich sollte dat mal weiter machen ;)


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 22:41 
AM.de Team

Registriert: 04.10.2002, 16:14
Beiträge: 1212
Zitat:
Danke Rinde,
den Link hab ich schon den ganzen Tag gesucht! ;)

PS.: Wenn Ihr das Forum von AM.de schon unübersichtlich findet, solltet Ihr auf gar keinen Fall etwas im AM.org Forum suchen. ;)
aus diesem grunde habe ich den link in meinen favoriten...
Zitat:
ja, wo du es gerade sachst, ich sollte dat mal weiter machen :wink:
darf ich dir meine unterstützung anbieten?


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 19.11.2002, 22:56 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
gute Idee!!!!

_________________
Fehleranalyse: Poste den Inhalt Deiner liblist.gam, (listen)server.cfg, adminmod.cfg, users.ini, vault.ini, plugin.ini von adminmod und plugins.ini von metamod. Benutze auch die Such-Funktion


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 20.11.2002, 18:27 
HLDS Team
Benutzeravatar

Registriert: 26.11.2001, 01:00
Beiträge: 676
Ich muss erstma Zeit finden die neuen Befehle zu sortieren, aber wenn du mir helfen möchtest, kein Problem, ich melde mich bald, wenn ich dat sortiert habe.

Thx


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 12 Beiträge ] 


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de
Original Design von "[ Half-Life Admin Mod © Alfred Reynolds 2000-2003 ] - [ site design by Jägermeister ]"