Plugins: Unterschied zwischen den Versionen

Aus Wiki der Helden-Software
Wechseln zu: Navigation, Suche
(Werte Schnittstelle)
(DatenXml Schnittstelle)
Zeile 61: Zeile 61:
  
 
[http://heldenbogen.open4me.de/held.xml Hier] kann ein vollständiges Beispiel heruntergeladen werden.
 
[http://heldenbogen.open4me.de/held.xml Hier] kann ein vollständiges Beispiel heruntergeladen werden.
 +
 +
Diese Schnittstelle kann auch von Nicht-Java-Programmen mit Hilfe einer TCP/IP-Verbindung genutzt werden.

Version vom 1. Juli 2010, 08:45 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 Zauber [i][0] und die Repräsentation[i][1] 
    */
   String[][] getZauberAlsString();
   /**
    * Gibt die Sonderfertigkeiten Strings
    * @return Stirngs 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.

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