Plugins: Unterschied zwischen den Versionen

Aus Wiki der Helden-Software
Wechseln zu: Navigation, Suche
(.)
 
K
 
(11 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Plugin Schnittstellen=
+
=Plugin-Schnittstellen=
Die Helden-Software kann durch Plugins erweitert werden.
+
Die Helden-Software kann durch Plugins erweitert werden, die die Möglichkeit haben auf die Informationen der Helden zuzugreifen.
  
 
Dabei stehen zur Zeit im wesentlichen zwei verschiedene Schnittstellen zur Verfügung, die Informationen über die Helden auf unterschiedliche Weisen zurückliefern.
 
Dabei stehen zur Zeit im wesentlichen zwei verschiedene Schnittstellen zur Verfügung, die Informationen über die Helden auf unterschiedliche Weisen zurückliefern.
  
==Werte Schnittstelle==
+
Die Sourcen für ein minimales Plugin können [http://www.helden-software.de/index.php/download/ hier] heruntergeladen werden.
 +
==Werte-Schnittstelle==
 
Ermöglicht es auf die Daten eines Heldens mit Hilfe von verschiedenen Funktionen zuzugreifen.<br>
 
Ermöglicht es auf die Daten eines Heldens mit Hilfe von verschiedenen Funktionen zuzugreifen.<br>
 
Ansprechpartner: [http://forum.fuldigors-hoehle.de/memberlist.php?mode=viewprofile&u=15 Maik / Zafnir]
 
Ansprechpartner: [http://forum.fuldigors-hoehle.de/memberlist.php?mode=viewprofile&u=15 Maik / Zafnir]
Zeile 10: Zeile 11:
 
     /**
 
     /**
 
     * Gibt die Zauber Strings
 
     * Gibt die Zauber Strings
     * @return Der Name des Zauber [i][0] und die Repräsentation[i][1]  
+
     * @return Der Name des Zaubers [i][0] und die Repräsentation[i][1]  
 
     */
 
     */
 
     String[][] getZauberAlsString();
 
     String[][] getZauberAlsString();
Zeile 16: Zeile 17:
 
     /**
 
     /**
 
     * Gibt die Sonderfertigkeiten Strings
 
     * Gibt die Sonderfertigkeiten Strings
     * @return Stirngs der Sonderfertigkeiten
+
     * @return Strings der Sonderfertigkeiten
 
     */
 
     */
 
     String[] getSonderfertigkeitenAlsString();
 
     String[] getSonderfertigkeitenAlsString();
 +
 +
Es fängt immer mit einer Klasse an die unser Plugin-Interface implementiert:
 +
z.B. helden.plugin.HeldenWertePlugin3
 +
 +
Die "doWork(JFrame frame, PluginHeld2[] helden, PluginHeldenWerteWerkzeug3 phww)" Methode liefert dir hier den Frame um das Layout zu übernehmen, die Liste der Helden die vom Helden-Jar geladen wurden und das Werkzeug, mit dem du alle Werte abrufen kannst.
 +
 +
Die Klasse, die das Interface implementiert, muss auch im Manifest eingetragen werden, damit wir es finden.
 +
 +
Wichtig, nur bei sehr wenigen Methoden ist eine Rückwirkung, also eine Veränderung unserer Werte, möglich.
  
 
==DatenXml Schnittstelle==
 
==DatenXml Schnittstelle==
Zeile 49: Zeile 59:
 
         <lernkomplexität>B</lernkomplexität>
 
         <lernkomplexität>B</lernkomplexität>
 
     </talent>
 
     </talent>
 +
 +
[http://heldenbogen.open4me.de/held.xml Hier] kann ein vollständiges Beispiel heruntergeladen werden.
 +
 +
Mit Hilfe von JAXB ist auch unter Java ein Zugriff auf die XML-Daten via Objekte möglich.
 +
 +
Diese Schnittstelle kann auch von Nicht-Java-Programmen mit Hilfe einer TCP/IP-Verbindung genutzt werden.

Aktuelle Version vom 11. Juli 2015, 23:31 Uhr

Plugin-Schnittstellen

Die Helden-Software kann durch Plugins erweitert werden, die die Möglichkeit haben auf die Informationen der Helden zuzugreifen.

Dabei stehen zur Zeit im wesentlichen zwei verschiedene Schnittstellen zur Verfügung, die Informationen über die Helden auf unterschiedliche Weisen zurückliefern.

Die Sourcen für ein minimales Plugin können hier heruntergeladen werden.

Werte-Schnittstelle

Ermöglicht es auf die Daten eines Heldens mit Hilfe von verschiedenen Funktionen zuzugreifen.
Ansprechpartner: Maik / Zafnir

   /**
    * Gibt die Zauber Strings
    * @return Der Name des Zaubers [i][0] und die Repräsentation[i][1] 
    */
   String[][] getZauberAlsString();
   /**
    * Gibt die Sonderfertigkeiten Strings
    * @return Strings der Sonderfertigkeiten
    */
   String[] getSonderfertigkeitenAlsString();

Es fängt immer mit einer Klasse an die unser Plugin-Interface implementiert: z.B. helden.plugin.HeldenWertePlugin3

Die "doWork(JFrame frame, PluginHeld2[] helden, PluginHeldenWerteWerkzeug3 phww)" Methode liefert dir hier den Frame um das Layout zu übernehmen, die Liste der Helden die vom Helden-Jar geladen wurden und das Werkzeug, mit dem du alle Werte abrufen kannst.

Die Klasse, die das Interface implementiert, muss auch im Manifest eingetragen werden, damit wir es finden.

Wichtig, nur bei sehr wenigen Methoden ist eine Rückwirkung, also eine Veränderung unserer Werte, möglich.

DatenXml Schnittstelle

Alle Daten eines oder aller Helden werden in einem XML-Format zurückgeliefert.
Ansprechpartner: Sven / little.yoda

   <profession>
       <text>Geode: Diener Sumus</text>
       <textkurz>Geode</textkurz>
   </profession>
   <ap>
       <gesamt>10525</gesamt>
       <frei>12</frei>
       <genutzt>10513</genutzt>
   </ap>
   <talent>
       <name>Geschichtswissen</name>
       <basis>false</basis>
       <nameausfuehrlich>Geschichtswissen</nameausfuehrlich>
       <wert>4</wert>
       <probe>KL/KL/IN</probe>
       <nameausfuehrlichmitprobe>Geschichtswissen (KL/KL/IN)</nameausfuehrlichmitprobe>
       <behinderung/>
       <mirakelplus>false</mirakelplus>
       <mirakelminus>false</mirakelminus>
       <bereich>Wissen</bereich>
       <komplexität>B</komplexität>
       <lernkomplexität>B</lernkomplexität>
   </talent>

Hier kann ein vollständiges Beispiel heruntergeladen werden.

Mit Hilfe von JAXB ist auch unter Java ein Zugriff auf die XML-Daten via Objekte möglich.

Diese Schnittstelle kann auch von Nicht-Java-Programmen mit Hilfe einer TCP/IP-Verbindung genutzt werden.