<?xml version="1.0" encoding="ISO-8859-1"?>
<document signature="Hero Lab Data">
<thing id="fBstShape1" name="Beast Shape I" description="Does not check if the target form's granted abilities are less than the maximum allowed by the spell. Does not set Race or RaceType." compset="Feat" uniqueness="useronce">
<fieldval field="shortname" value="Beast Shape I"/>
<arrayval field="usrArray" index="0" value="Any Size"/>
<arrayval field="usrArray" index="1" value="Small"/>
<arrayval field="usrArray" index="2" value="Medium"/>
<tag group="Custom" tag="PolyClimb"/>
<tag group="Custom" tag="PolyDrkVis"/>
<tag group="Custom" tag="PolyFly"/>
<tag group="Custom" tag="PolyLowLt"/>
<tag group="Custom" tag="PolyScent"/>
<tag group="Custom" tag="PolySwim"/>
<tag group="SpInfo" tag="spBeasSha3"/>
<tag group="fCategory" tag="Special"/>
<tag group="ChooseSrc1" tag="Thing"/>
<tag group="Helper" tag="UserAdjust"/>
<bootstrap thing="xClimb">
<containerreq phase="First" priority="2000">hero#Custom.PolyClimb</containerreq>
<autotag group="Value" tag="30"/>
</bootstrap>
<bootstrap thing="raDarkVis">
<containerreq phase="First" priority="2000">hero#Custom.PolyDrkVis</containerreq>
<autotag group="Value" tag="60"/>
</bootstrap>
<bootstrap thing="xFly">
<containerreq phase="First" priority="2000">hero#Custom.PolyFly</containerreq>
<autotag group="Value" tag="30"/>
<autotag group="Maneuver" tag="Average"/>
</bootstrap>
<bootstrap thing="raLowLight">
<containerreq phase="First" priority="2000">hero#Custom.PolyLowLt</containerreq>
</bootstrap>
<bootstrap thing="xScent">
<containerreq phase="First" priority="2000">hero#Custom.PolyScent</containerreq>
</bootstrap>
<bootstrap thing="xSwim">
<containerreq phase="First" priority="2000">hero#Custom.PolySwim</containerreq>
<autotag group="Value" tag="30"/>
</bootstrap>
<eval phase="First" priority="1000"><![CDATA[var sizelim as string
if ( compare(field[usrSelect].text, "Small") = 0 ) then
sizelim = "RaceSize.Small11"
elseif ( compare(field[usrSelect].text, "Medium") = 0 ) then
sizelim = "RaceSize.Medium0"
else
sizelim = "( RaceSize.Small11 | RaceSize.Medium0 )"
endif
field[usrCandid1].text = "thingid.iidNone | ( component.BaseRace & HasType.tpAnimal & " & sizelim & " )"
~foreach thing in BaseRace where field[usrCandid1].text
~ debug eachthing.idstring
~nexteach]]></eval>
<eval phase="First" priority="1100" index="2"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if (field[usrChosen1].chosen.tagis[RaceSize.Medium0] <> 0) then
herofield[tSize].value = 0
hero.child[aSTR].field[Bonus].value += 2
#enhancementbonus[hero.child[mNatural], 2]
elseif (field[usrChosen1].chosen.tagis[RaceSize.Small11] <> 0) then
herofield[tSize].value = -1
hero.child[aDEX].field[Bonus].value += 2
#enhancementbonus[hero.child[mNatural], 1]
endif]]></eval>
<eval phase="First" priority="1100" index="3"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if ( field[usrChosen1].chosen.isbootstrap[xClimb] <> 0 ) then
perform hero.assign[Custom.PolyClimb]
done
endif
foreach bootstrap in field[usrChosen1].chosen from Subtype
if ( eachthing.isbootstrap[xClimb] <> 0 ) then
perform hero.assign[Custom.PolyClimb]
done
endif
nexteach]]></eval>
<eval phase="First" priority="1100" index="4"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if ( field[usrChosen1].chosen.isbootstrap[raDarkVis] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
if ( field[usrChosen1].chosen.isbootstrap[raDarksens] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
if ( field[usrChosen1].chosen.isbootstrap[raSeeDark] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
if ( field[usrChosen1].chosen.isbootstrap[xPFSeeDark] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
foreach bootstrap in field[usrChosen1].chosen from Subtype
if ( eachthing.isbootstrap[raDarkVis] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
if ( eachthing.isbootstrap[raDarksens] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
if ( eachthing.isbootstrap[raSeeDark] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
if ( eachthing.isbootstrap[xPFSeeDark] <> 0 ) then
perform hero.assign[Custom.PolyDrkVis]
done
endif
nexteach]]></eval>
<eval phase="First" priority="1100" index="5"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if ( field[usrChosen1].chosen.isbootstrap[xFly] <> 0 ) then
perform hero.assign[Custom.PolyFly]
done
endif
foreach bootstrap in field[usrChosen1].chosen from Subtype
if ( eachthing.isbootstrap[xFly] <> 0 ) then
perform hero.assign[Custom.PolyFly]
done
endif
nexteach]]></eval>
<eval phase="First" priority="1100" index="6"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if ( field[usrChosen1].chosen.isbootstrap[raLowLight] <> 0 ) then
perform hero.assign[Custom.PolyLowLt]
done
endif
foreach bootstrap in field[usrChosen1].chosen from Subtype
if ( eachthing.isbootstrap[raLowLight] <> 0 ) then
perform hero.assign[Custom.PolyLowLt]
done
endif
nexteach]]></eval>
<eval phase="First" priority="1100" index="7"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if ( field[usrChosen1].chosen.isbootstrap[xScent] <> 0 ) then
perform hero.assign[Custom.PolyScent]
done
endif
foreach bootstrap in field[usrChosen1].chosen from Subtype
if ( eachthing.isbootstrap[xScent] <> 0 ) then
perform hero.assign[Custom.PolyScent]
done
endif
nexteach]]></eval>
<eval phase="First" priority="1100" index="8"><![CDATA[doneif (field[usrChosen1].ischosen = 0)
if ( field[usrChosen1].chosen.isbootstrap[xSwim] <> 0 ) then
perform hero.assign[Custom.PolySwim]
done
endif
foreach bootstrap in field[usrChosen1].chosen from Subtype
if ( eachthing.isbootstrap[xSwim] <> 0 ) then
perform hero.assign[Custom.PolySwim]
done
endif
nexteach]]></eval>
</thing>
<thing id="pBstShape1" name="Beast Shape I" description="When you cast this spell, you can assume the form of any Small or Medium creature of the animal type. If the form you assume has any of the following abilities, you gain the listed ability: climb 30 feet, fly 30 feet (average maneuverability), swim 30 feet, darkvision 60 feet, low-light vision, and scent.\n\n{b}Small animal{/b}: If the form you take is that of a Small animal, you gain a +2 size bonus to your Dexterity and a +1 natural armor bonus.\n\n{b}Medium animal{/b}: If the form you take is that of a Medium animal, you gain a +2 size bonus to your Strength and a +2 natural armor bonus." compset="InPlay">
<fieldval field="pDuration" value="1 min. / level"/>
<tag group="Helper" tag="AdjSpell"/>
<tag group="Helper" tag="NoIncr"/>
<bootstrap thing="fBstShape1">
<containerreq phase="First" priority="1000"><![CDATA[fieldval:pIsOn <> 0]]></containerreq>
</bootstrap>
</thing>
</document>