PDA

View Full Version : Librarylinks and more links



Insanity
August 29th, 2007, 17:13
How many levels of links can one create within their ruleset modules?
The challenge I am having is I had developed some parts of my modules separately, so that I could make edits to individual parts as I worked.
I now what to incorporate all of them into a single module file, so that there is only one main file.

I am having difficulties in getting some links now working properly, and I am certain its to do with link functions.

What I want to accomplish is a single mod file that when open, shows the following links

Races & Getting Started
Creating a Character
Skills
Armor & High-Tech Armor Options
Weapons, Equipment, and Cybernetics
Matrices
Combat


I had developed the matrices as an individual mod file, here a sample of the code for an individual matrix (i have ~400 in the entire database currently), it is based directly from the d20 spells mod file...



<root version="2.0">
<library>
<BL23Cmatrices static="true">
<name type="string">BL23C Matrices</name>
<categoryname type="string">Battlelords of the 23rd Century</categoryname>
<entries>
<empath>
<librarylink type="windowreference">
<class>reference_classspelllist</class>
<recordname>matriceslists.empath@BL23C Matrices</recordname>
</librarylink>
<name type="string">Empath Matrices</name>
</empath>
</entries>
</BL23Cmatrices>
</library>

<matrixdesc static="true">
<!-- EMPATH -->
<clairaudience>
<name type="string">Clairaudience</name>
<power type="string">Empath 1</power>
<generation type="string">2 sec</generation>
<boost type="string">1 min/point</boost>
<smr type="string">None</smr>
<range type="string">Self</range>
<duration type="string">1 minute</duration>
<aoe type="string">Self</aoe>
<description type="formattedtext">
<p>The Chatilian focuses his hearing sense. The matrix increases hearing checks by +50%.</p>
</description>
<shortdescription type="string">Increases hearing checks by 50%.</shortdescription>
</clairaudience>
</matrixdesc>

<matriceslists static="true">
<empath>
<description type="string">Empath Matrices</description>
<groups>
<power1>
<description type="string">1 Power Point</description>
<spells>
<clairaudience>
<link type="windowreference">
<class>spelldesc</class>
<recordname>matrixdesc.clairaudience@BL23C Matrices</recordname>
</link>
<level type="number">1</level>
</clairaudience>
</spells>
</power1>
</groups>
</empath>
</matriceslists>
</root>


This would create a link "Empath Matrices" that when clicked, would create a list of all the empath matrices ordered by Power Level and Alphabetically within power groups, similar to the d20 spells.

I had attempted to paste the same code into my file that contains the races, within the entries tags, except made the following changes. The library is now call "BL23C Complete Rules":



<fmatrices>
<librarylink type="windowreference">
<class>referencetextwide</class>
<recordname>..</recordname>
</librarylink>
<name type="string">Matrices</name>

<empath>
<librarylink type="windowreference"> <class>reference_classspelllist</class>
<recordname>matriceslists.empath@BL23C Complete Rules</recordname>
</librarylink>
<name type="string">Empath Matrices</name>
</empath>
</fmatrices>


Then I pasted this outside the library tags:



<matrixdesc static="true">
<!-- EMPATH -->
<clairaudience>
<name type="string">Clairaudience</name>
<power type="string">Empath 1</power>
<generation type="string">2 sec</generation>
<boost type="string">1 min/point</boost>
<smr type="string">None</smr>
<range type="string">Self</range>
<duration type="string">1 minute</duration>
<aoe type="string">Self</aoe>
<description type="formattedtext">
<p>The Chatilian focuses his hearing sense. The matrix increases hearing checks by +50%.</p>
</description>
<shortdescription type="string">Increases hearing checks by 50%.</shortdescription>
</clairaudience>
</matrixdesc>

<matriceslists static="true">
<empath>
<description type="string">Empath Matrices</description>
<groups>
<power1>
<description type="string">1 Power Point</description>
<spells>
<clairaudience>
<link type="windowreference">
<class>spelldesc</class>
<recordname>matrixdesc.clairaudience@BL23C Complete Rules</recordname>
</link>
<level type="number">1</level>
</clairaudience>
</spells>
</power1>
</groups>
</empath>
</matriceslists>
</root>


This doesn't function the same way, I am not surprised I guess, but I am not sure how to fix this.

sloejack
August 29th, 2007, 17:36
What you want is something like this:



<entries>
<toplevel>
<librarylink type="type"><class>referenceindex</class><recordname>..</recordname></librarylink>
<name type="string">First</name>
<index>
<secondlevel>
<listlink type="type"><class>referenceindex</class><recordname>..</recordname></listlink>
<name type="string">Second</name>
<index>
<thirdlevel>
<listlink type="type"><class>referencetext</class><recordname>..</recordname></listlink>
<name type="string">Third</name>
<text type="formattedtext">
<p>Three Deep</p>
</text>
</thirdlevel>
</index>
</secondlevel>
</index>
</toplevel>
</entries>


Note that after the top level <librarylink> you have to use <listlink> in your indexes. Also make sure you use the proper classes. referencetextwide doesn't permit the use of subsections the way referenceindex and referenceinlineindex do.

Insanity
August 29th, 2007, 18:40
Thanks a bunch, that was the key...