﻿<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
	xmlns:am="http://www.ani-mayhem.com/"
	xmlns:db="http://www.ani-mayhem.com/database"
	xmlns:g="http://www.ani-mayhem.com/guide"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="text"/>
	<xsl:template match="/">
		<xsl:text>Ani-Mayhem Online</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Guide</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>----------------------------------------</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="am:ani-mayhem">
		<xsl:apply-templates select="am:card"/>
	</xsl:template>
	<xsl:template match="am:card">
		<xsl:apply-templates/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>----------------------------------------</xsl:text>
	</xsl:template>
	<xsl:template match="g:Character | g:Enhancement | g:Equipment | g:Haven | g:Item | g:Location">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: </xsl:text><xsl:value-of select="local-name()"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:FlashEffect">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: Flash Effect</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:GlobalEffect">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: Global Effect</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:MajorDisaster">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: Major Disaster</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:MinorDisaster">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: Minor Disaster</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:Combat">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: Combat</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:CharmCombat">
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Name: </xsl:text><xsl:value-of select="db:Name"/>
		<xsl:text>&#0013;</xsl:text>
		<xsl:text>Type: Charm Combat</xsl:text>
		<xsl:text>&#0013;</xsl:text>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="db:Name"/>
	<xsl:template match="g:Categories">
		<xsl:text>Categories: </xsl:text>
		<xsl:apply-templates select="./*[1]" mode="g:Keyword"/><xsl:if test="count(./*) = 2">, <xsl:apply-templates select="./*[2]" mode="g:Keyword"/></xsl:if><xsl:if test="count(./*) = 3">, <xsl:apply-templates select="./*[3]" mode="g:Keyword"/></xsl:if><xsl:if test="count(./*) = 4">, <xsl:apply-templates select="./*[4]" mode="g:Keyword"/></xsl:if>
		<xsl:if test="following-sibling::node()">
			<xsl:text>&#0013;</xsl:text>
		</xsl:if>
	</xsl:template>
	<xsl:template match="g:Uses | g:Skills | g:Gender | g:Instruction | g:Text | g:Quote">
		<xsl:value-of select="local-name()"/><xsl:text>: </xsl:text>
		<xsl:apply-templates/>
		<xsl:if test="following-sibling::node()">
			<xsl:text>&#0013;</xsl:text>
		</xsl:if>
	</xsl:template>
	<xsl:template match="g:Abilities">
		<xsl:text>Abilities: </xsl:text>
		<xsl:if test="g:Attack">
			<xsl:if test="*[1][name() != 'g:Attack']"><xsl:text>&#0013;	   </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Attack"/>
		</xsl:if>
		<xsl:if test="g:Defense">
			<xsl:if test="*[1][name() != 'g:Defense']"><xsl:text>&#0013;	   </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Defense"/>
		</xsl:if>
		<xsl:if test="g:Movement">
			<xsl:if test="*[1][name() != 'g:Movement']"><xsl:text>&#0013;	   </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Movement"/>
		</xsl:if>
		<xsl:if test="g:Charm">
			<xsl:if test="*[1][name() != 'g:Charm']"><xsl:text>&#0013;	   </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Charm"/>
		</xsl:if>
		<xsl:if test="g:Energy">
			<xsl:if test="*[1][name() != 'g:Energy']"><xsl:text>&#0013;	   </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Energy"/>
		</xsl:if>
		<xsl:if test="following-sibling::node()">
			<xsl:text>&#0013;</xsl:text>
		</xsl:if>
	</xsl:template>
	<xsl:template match="g:Cost">
		<xsl:text>Cost: </xsl:text>
		<xsl:if test="g:Attack">
			<xsl:if test="*[1][name() != 'g:Attack']"><xsl:text>&#0013;      </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Attack"/>
		</xsl:if>
		<xsl:if test="g:Defense">
			<xsl:if test="*[1][name() != 'g:Defense']"><xsl:text>&#0013;      </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Defense"/>
		</xsl:if>
		<xsl:if test="g:Movement">
			<xsl:if test="*[1][name() != 'g:Movement']"><xsl:text>&#0013;      </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Movement"/>
		</xsl:if>
		<xsl:if test="g:Charm">
			<xsl:if test="*[1][name() != 'g:Charm']"><xsl:text>&#0013;      </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Charm"/>
		</xsl:if>
		<xsl:if test="g:Energy">
			<xsl:if test="*[1][name() != 'g:Energy']"><xsl:text>&#0013;     </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Energy"/>
		</xsl:if>
		<xsl:if test="following-sibling::node()">
			<xsl:text>&#0013;</xsl:text>
		</xsl:if>
	</xsl:template>
	<xsl:template match="g:Bonus">
		<xsl:text>Bonus: </xsl:text>
		<xsl:if test="g:Attack">
			<xsl:if test="*[1][name() != 'g:Attack']"><xsl:text>&#0013;       </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Attack"/>
		</xsl:if>
		<xsl:if test="g:Defense">
			<xsl:if test="*[1][name() != 'g:Defense']"><xsl:text>&#0013;       </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Defense"/>
		</xsl:if>
		<xsl:if test="g:Movement">
			<xsl:if test="*[1][name() != 'g:Movement']"><xsl:text>&#0013;       </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Movement"/>
		</xsl:if>
		<xsl:if test="g:Charm">
			<xsl:if test="*[1][name() != 'g:Charm']"><xsl:text>&#0013;       </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Charm"/>
		</xsl:if>
		<xsl:if test="g:Energy">
			<xsl:if test="*[1][name() != 'g:Energy']"><xsl:text>&#0013;       </xsl:text></xsl:if>
			<xsl:apply-templates select="g:Energy"/>
		</xsl:if>
		<xsl:if test="following-sibling::node()">
			<xsl:text>&#0013;</xsl:text>
		</xsl:if>
	</xsl:template>
	<xsl:template match="g:Attack">
		<xsl:text>Attack:   </xsl:text><xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:Defense">
		<xsl:text>Defense:  </xsl:text><xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:Movement">
		<xsl:text>Movement: </xsl:text><xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:Charm">
		<xsl:text>Charm:    </xsl:text><xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:Energy">
		<xsl:text>Energy:   </xsl:text><xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="g:Skills/*">
		<xsl:if test="position() != 1"><xsl:text>&#0013;	</xsl:text></xsl:if>
		<xsl:apply-templates select="." mode="g:Keyword"/>
		<xsl:call-template name="values">
			<xsl:with-param name="value" select="."/>
		</xsl:call-template>
	</xsl:template>
	<xsl:template match="g:Requirements">
		<xsl:text>Requirements: </xsl:text>
		<xsl:apply-templates select="g:Requirement[1]/*[1]"/>
		<xsl:if test="g:Requirement[1]/*[2]"> &amp; <xsl:apply-templates select="g:Requirement[1]/*[2]"/>
			<xsl:if test="g:Requirement[1]/*[3]"> &amp; <xsl:apply-templates select="g:Requirement[1]/*[3]"/>
				<xsl:if test="g:Requirement[1]/*[4]"> &amp; <xsl:apply-templates select="g:Requirement[1]/*[4]"/></xsl:if>
			</xsl:if>
		</xsl:if>
		<xsl:if test="g:Requirement[2]">
			<xsl:text>&#0013;	      or</xsl:text>
			<xsl:text>&#0013;	      </xsl:text>
			<xsl:apply-templates select="g:Requirement[2]/*[1]"/>
			<xsl:if test="g:Requirement[2]/*[2]"> &amp; <xsl:apply-templates select="g:Requirement[2]/*[2]"/>
				<xsl:if test="g:Requirement[2]/*[3]"> &amp; <xsl:apply-templates select="g:Requirement[2]/*[3]"/>
					<xsl:if test="g:Requirement[2]/*[4]"> &amp; <xsl:apply-templates select="g:Requirement[2]/*[4]"/></xsl:if>
				</xsl:if>
			</xsl:if>
		</xsl:if>
		<xsl:if test="g:Requirement[3]">
			<xsl:text>&#0013;	      or</xsl:text>
			<xsl:text>&#0013;	      </xsl:text>
			<xsl:apply-templates select="g:Requirement[3]/*[1]"/>
			<xsl:if test="g:Requirement[3]/*[2]"> &amp; <xsl:apply-templates select="g:Requirement[3]/*[2]"/>
				<xsl:if test="g:Requirement[3]/*[3]"> &amp; <xsl:apply-templates select="g:Requirement[3]/*[3]"/>
					<xsl:if test="g:Requirement[3]/*[4]"> &amp; <xsl:apply-templates select="g:Requirement[3]/*[4]"/></xsl:if>
				</xsl:if>
			</xsl:if>
		</xsl:if>
		<xsl:if test="g:Requirement[4]">
			<xsl:text>&#0013;	      or</xsl:text>
			<xsl:text>&#0013;	      </xsl:text>
			<xsl:apply-templates select="g:Requirement[4]/*[1]"/>
			<xsl:if test="g:Requirement[4]/*[2]"> &amp; <xsl:apply-templates select="g:Requirement[4]/*[2]"/>
				<xsl:if test="g:Requirement[4]/*[3]"> &amp; <xsl:apply-templates select="g:Requirement[4]/*[3]"/>
					<xsl:if test="g:Requirement[4]/*[4]"> &amp; <xsl:apply-templates select="g:Requirement[4]/*[4]"/></xsl:if>
				</xsl:if>
			</xsl:if>
		</xsl:if>
		<xsl:if test="following-sibling::node()">
			<xsl:text>&#0013;</xsl:text>
		</xsl:if>
	</xsl:template>
	<xsl:template match="g:Requirement/*">
		<xsl:apply-templates select="." mode="g:Keyword"/>
		<xsl:call-template name="values">
			<xsl:with-param name="value" select="."/>
		</xsl:call-template>
	</xsl:template>
	<xsl:template match="g:Gender/*">
		<xsl:value-of select="local-name()"/>
	</xsl:template>
	<xsl:template match="g:line">
		<xsl:if test="name(parent::node()) = 'g:Text' and position() != '1'">
			<xsl:text>&#0013;      </xsl:text>
		</xsl:if>
		<xsl:if test="name(parent::node()) = 'g:Instruction' and position() != '1'">
			<xsl:text>&#0013;	     </xsl:text>
		</xsl:if>
		<xsl:if test="name(parent::node()) = 'g:Quote' and position() != '1'">
			<xsl:text>&#0013;       </xsl:text>
		</xsl:if>
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template name="values">
		<xsl:param name="value"/>
		<xsl:choose>
			<xsl:when test="$value &gt; 1">
				<xsl:text> x</xsl:text><xsl:value-of select="$value"/>
			</xsl:when>
			<xsl:when test="$value &lt; 0">
				<xsl:text> </xsl:text><xsl:value-of select="$value"/>
			</xsl:when>
		</xsl:choose>
	</xsl:template>
	<xsl:template match="*" mode="g:Keyword">
		<xsl:choose>
			<xsl:when test="name() = 'g:AirElement'">Air Element</xsl:when>
			<xsl:when test="name() = 'g:AnySkill'">*Any Skill</xsl:when>
			<xsl:when test="name() = 'g:AnyElement'">Any Element</xsl:when>
			<xsl:when test="name() = 'g:BlindLuck'">Blind Luck</xsl:when>
			<xsl:when test="name() = 'g:DarkTribe'">Dark Tribe</xsl:when>
			<xsl:when test="name() = 'g:FireElement'">Fire Element</xsl:when>
			<xsl:when test="name() = 'g:FlyingVehicle'">Flying Vehicle</xsl:when>
			<xsl:when test="name() = 'g:HalfSaiyan'">Half-Saiyan</xsl:when>
			<xsl:when test="name() = 'g:HandHeldWeapon'">Hand-held Weapon</xsl:when>
			<xsl:when test="name() = 'g:HotTub'">Hot Tub</xsl:when>
			<xsl:when test="name() = 'g:MartialArts'">Martial Arts</xsl:when>
			<xsl:when test="name() = 'g:Movement3'">Movement 3+</xsl:when>
			<xsl:when test="name() = 'g:Movement4'">Movement 4+</xsl:when>
			<xsl:when test="name() = 'g:NonFlyingVehicle'">Non-flying Vehicle</xsl:when>
			<xsl:when test="name() = 'g:PlanetaryVehicle'">Planetary Vehicle</xsl:when>
			<xsl:when test="name() = 'g:PureHeart'">Pure Heart</xsl:when>
			<xsl:when test="name() = 'g:SavoirFaire'">Savoir-Faire</xsl:when>
			<xsl:when test="name() = 'g:ShapeChange'">Shape Change</xsl:when>
			<xsl:when test="name() = 'g:Strength4'">Strength 4+</xsl:when>
			<xsl:when test="name() = 'g:WaterElement'">Water Element</xsl:when>
			<xsl:otherwise><xsl:value-of select="local-name()"/></xsl:otherwise>
		</xsl:choose>
	</xsl:template>
</xsl:stylesheet>