给单位添加撤回主城技能



日本和尚有个烟雾弹技能,能撤回主城集合点,我们要把这个技能添加到其他单位也很简单,找到这个单位,复制过去就可以了。

流程为:
1.先去abilities.xml查找日本和尚的技能,如果你英文好一点的话,应该就能看出ypPowerSmokeBomb就是烟雾弹技能,然后复制粘贴到你想要添加此技能的单位。
2.如果不嫌麻烦,可以在powers.xml复制粘贴一个ypPowerSmokeBomb,然后改名、改abilities.xml的技能按钮、改动作定义、改图标等,嫌麻烦可以忽略此项,直接在abilities.xml用回已有的ypPowerSmokeBomb。
3.去日本和尚的tactics,把powers.xml定义的那个action复制到要添加技能的单位。
4.去anim那里添加动作。动作自己定,可以用攻击动作,你也可以用回日本和尚的仍烟幕弹动作。


为了节约时间,我就不列出上面的详细操作了,只列出相关的语句:
  powers.xml - 记事本 ____ X
文件(F)  编辑(E)  格式(O)  查看(V)  帮助(H)
	<power name="PowerEscapeToTC" type="UnitAction">
<displaynameid>64300</displaynameid>
<rolloverid>65734</rolloverid>
<icon>art\ui\abilities\ability_smoke_bomb</icon>
<minimapeventtime sendalertto="player">1</minimapeventtime>
<activetime>4</activetime>
<radius>1.0</radius>
<placement forceonmap="1" ally="">full</placement>
<unitaction>PowerEscapeToTC</unitaction>
<allowduringnorush>1</allowduringnorush>
<startsoundset>PowerSmokeBomb</startsoundset>
</power>



  abilities.xml - 记事本 ____ X
文件(F)  编辑(E)  格式(O)  查看(V)  帮助(H)
	<HotoCocoa>
<ability>
PowerBeam
<rof>60</rof>
</ability>
<ability>
PowerStun2
<rof>60</rof>
</ability>
<ability>
PowerCovert2
<rof>60</rof>
</ability>
<ability>
PowerHealUnit
<rof>60</rof>
</ability>
<ability>
PowerEscapeToTC
<rof>60</rof>
<castonself>true</castonself>
</ability>

</HotoCocoa>




<action>
<name stringid="48957">PowerEscapeToTC</name>
<type>EscapeToTC</type>
<maxrange>16</maxrange>
<rate type="Unit">1.0 </rate>
<active>0</active>
<anim>Smokescreen</anim>
<rate type="Guardian">1.0</rate>
<rof>1.000000</rof>
</action>

直接把action添加上去就可以了,无需在tactic调用。
  MircaleGirl.tactics - 记事本 ____ X
文件(F)  编辑(E)  格式(O)  查看(V)  帮助(H)
<?xml version="1.0" encoding="utf-8"?>
<tactics>
<action>
<name stringid="48957">PowerEscapeToTC</name>
<type>EscapeToTC</type>
<maxrange>16</maxrange>
<rate type="Unit">1.0 </rate>
<active>0</active>
<anim>Smokescreen</anim>
<rate type="Guardian">1.0</rate>
<rof>1.000000</rof>
</action>

<action>
<name stringid="69148">Discover</name>
<type>Discover</type>
<anim>Pickup</anim>
<maxrange>1.0</maxrange>
<rate type="AbstractNuggetLand">1.0</rate>
</action>
<action>
<name stringid="69155">Heal</name>
<type>Heal</type>
<active>1</active>
<maxrange>20</maxrange>
<rate type="Unit">100.0</rate>
<anim>Heal</anim>
</action>
<action>
<name stringid="48957">ConvertGuardian</name>
<type>ConvertGuardian</type>
<active>0</active>
<maxrange>16</maxrange>
<anim>AblBeastMaster</anim>
<rate type="All">1.0</rate>
<rof>1.000000</rof>
</action>
<action>
<name stringid="38137">HandAttack</name>
<type>Attack</type>
<maxrange>2</maxrange>
<rate type="Unit">1.0 </rate>
<rate type="Military">1.0 </rate>
<rate type="Huntable">1.0 </rate>
<rate type="Economic">1.0 </rate>
<rate type="Guardian">1.0 </rate>
<rate type="Herdable">1.0 </rate>
<attackaction>1</attackaction>
<handlogic>1</handlogic>
<speedboost>1</speedboost>
<anim>Grenadier_attack</anim>
<impacteffect>effects\impacts\melee</impacteffect>
</action>
<action>
<name stringid="38127">VolleyRangedAttack</name>
<type>Attack</type>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Magic_attack</anim>
<idleanim>Volley_standing_idle</idleanim>
<maxheight>0</maxheight>
<accuracy>1.0</accuracy>
<accuracyreductionfactor>1.5</accuracyreductionfactor>
<aimbonus>0</aimbonus>
<maxspread>12</maxspread>
<spreadfactor>0.25</spreadfactor>
<trackrating>20</trackrating>
<unintentionaldamagemultiplier>0.7</unintentionaldamagemultiplier>
<projectile>MagicAttack</projectile>
<impacteffect>effects\impacts\gun</impacteffect>
<minrange>2</minrange>
<rate type="Military">1.0 </rate>
<rate type="Huntable">1.0 </rate>
<rate type="Economic">1.0 </rate>
<rate type="Guardian">1.0 </rate>
<rate type="Herdable">1.0 </rate>
<throw>1</throw>
<damage>13.000000</damage>
<maxrange>12.000000</maxrange>
<rof>2.000000</rof>
</action>
<action>
<name stringid="38130">VolleyHandAttack</name>
<type>Attack</type>
<maxrange>1.75</maxrange>
<rate type="Unit">1.0 </rate>
<attackaction>1</attackaction>
<handlogic>1</handlogic>
<speedboost>1</speedboost>
<anim>Charge_attack</anim>
<idleanim>Charge_idle</idleanim>
<impacteffect>effects\impacts\melee</impacteffect>
</action>
<action>
<name stringid="38136">DefendRangedAttack</name>
<type>Attack</type>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Volley_standing_attack</anim>
<idleanim>Volley_standing_idle</idleanim>
<maxheight>0</maxheight>
<accuracy>1.0</accuracy>
<accuracyreductionfactor>1.5</accuracyreductionfactor>
<aimbonus>0</aimbonus>
<maxspread>5</maxspread>
<spreadfactor>0.25</spreadfactor>
<trackrating>12</trackrating>
<unintentionaldamagemultiplier>0.7</unintentionaldamagemultiplier>
<projectile>InvisibleProjectile</projectile>
<impacteffect>effects\impacts\gun</impacteffect>
<minrange>2</minrange>
<rate type="Unit">1.0 </rate>
<throw>1</throw>
<damage>13.000000</damage>
<maxrange>12.000000</maxrange>
<rof>2.000000</rof>
<instantballistics>1</instantballistics>
</action>
<action>
<name stringid="38118">BuildingAttack</name>
<type>Attack</type>
<rangedlogic>1</rangedlogic>
<minrange>11.9</minrange>
<maxrange>14</maxrange>
<rate type="LogicalTypeShipsAndBuildings">1.0 </rate>
<attackaction>1</attackaction>
<speedboost>1</speedboost>
<maxheight>0.5</maxheight>
<anim>Magic_attack</anim>
<projectile>MagicAttack2</projectile>
<impacteffect>Chino\effects\magic</impacteffect>
</action>
<action>
<name stringid="09970">MagicRangedAttack</name>
<type>Attack</type>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Magic_attack</anim>
<idleanim>Volley_standing_idle</idleanim>
<maxheight>0</maxheight>
<accuracy>1.0</accuracy>
<accuracyreductionfactor>1.5</accuracyreductionfactor>
<projectile>MagicAttack</projectile>
<aimbonus>0</aimbonus>
<maxspread>5</maxspread>
<spreadfactor>0.25</spreadfactor>
<trackrating>12</trackrating>
<unintentionaldamagemultiplier>0.7</unintentionaldamagemultiplier>
<impacteffect>effects\impacts\gun</impacteffect>

<minrange>2</minrange>
<rate type="Unit">1.0 </rate>
<throw>1</throw>
<damage>13.000000</damage>
<maxrange>12.000000</maxrange>
<rof>2.000000</rof>
</action>
<action>
<name stringid="38134">SweepDamage</name>
<type>Attack</type>
<maxrange>12</maxrange>
<rate type="Unit">1.0 </rate>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Attack_melee</anim>
<idleanim>Idle</idleanim>
<impacteffect>effects\impacts\melee_no_weapon</impacteffect>
<basedamagecap>1</basedamagecap>
</action>
<action>
<name stringid="09973">MagicBeamAttack</name>
<type>Attack</type>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Magic_attack</anim>
<idleanim>Volley_standing_idle</idleanim>
<maxheight>0</maxheight>
<accuracy>1.0</accuracy>
<accuracyreductionfactor>1.0</accuracyreductionfactor>
<aimbonus>0</aimbonus>
<numberprojectiles>1</numberprojectiles>
<Projectile>MagicBeam</Projectile>
<spreadfactor>0.25</spreadfactor>
<trackrating>12</trackrating>
<unintentionaldamagemultiplier>1.0</unintentionaldamagemultiplier>
<impacteffect>Chino\effects\cannon</impacteffect>
<minrange>12</minrange>
<rate type="All">1.0 </rate>
<throw>1</throw>
<impactforcemin>500.0f</impactforcemin>
<impactforcemax>800.0f</impactforcemax>
<impactlaunchangle>60.0</impactlaunchangle>
<outerdamageareadistance>.25</outerdamageareadistance>
<outerdamageareafactor>.20</outerdamageareafactor>
<basedamagecap>1</basedamagecap>
<areasortmode>Directional</areasortmode>
<damage>13.000000</damage>
<maxrange>24.000000</maxrange>
<rof>2.000000</rof>
<perfectaccuracy>1</perfectaccuracy>
</action>
<action>
<name stringid="38124">Stun</name>
<type>StunAttack</type>
<anim>stun_attack</anim>
<idleanim>Volley_standing_idle</idleanim>
<rangedlogic>1</rangedlogic>
<maxrange>16</maxrange>
<damage>10</damage>
<impacteffect>effects\impacts\arrow</impacteffect>
<rate type="Unit">1.0 </rate>
<rof>1</rof>
<maxheight>0</maxheight>
<accuracy>1</accuracy>
<accuracyreductionfactor>0</accuracyreductionfactor>
<aimbonus>5</aimbonus>
<trackrating>12</trackrating>
<projectile>ypShuriken</projectile>
<instantballistics>0</instantballistics>
</action>
<action>
<name stringid="38137">DefendHandAttack</name>
<type>Attack</type>
<maxrange>1.75</maxrange>
<rate type="Unit">1.0 </rate>
<attackaction>1</attackaction>
<handlogic>1</handlogic>
<speedboost>1</speedboost>
<anim>Charge_attack</anim>
<idleanim>Charge_idle</idleanim>
<impacteffect>effects\impacts\melee</impacteffect>
<damage>6.5</damage>
<rof>1.0</rof>
</action>
<action>
<name stringid="38129">StaggerRangedAttack</name>
<type>Attack</type>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Volley_standing_attack</anim>
<reloadanim>Volley_standing_reload</reloadanim>
<idleanim>Volley_standing_idle</idleanim>
<maxheight>0</maxheight>
<accuracy>1.0</accuracy>
<accuracyreductionfactor>1.5</accuracyreductionfactor>
<aimbonus>0</aimbonus>
<maxspread>5</maxspread>
<spreadfactor>0.25</spreadfactor>
<trackrating>12</trackrating>
<unintentionaldamagemultiplier>0.7</unintentionaldamagemultiplier>
<projectile>InvisibleProjectile</projectile>
<impacteffect>effects\impacts\gun</impacteffect>
<minrange>2</minrange>
<rate type="Unit">1.0 </rate>
<throw>1</throw>
<damage>13.000000</damage>
<maxrange>12.000000</maxrange>
<rof>2.000000</rof>
<instantballistics>1</instantballistics>
</action>
<action>
<name stringid="38132">StaggerHandAttack</name>
<type>Attack</type>
<maxrange>1.75</maxrange>
<rate type="Unit">1.0 </rate>
<attackaction>1</attackaction>
<handlogic>1</handlogic>
<speedboost>1</speedboost>
<anim>Charge_attack</anim>
<idleanim>Charge_idle</idleanim>
<impacteffect>effects\impacts\melee</impacteffect>
<damage>6.5</damage>
<rof>1.0</rof>
</action>
<action>
<name stringid="38135">MeleeHandAttack</name>
<type>Attack</type>
<maxrange>1.75</maxrange>
<rate type="Unit">1.0 </rate>
<attackaction>1</attackaction>
<handlogic>1</handlogic>
<speedboost>1</speedboost>
<anim>Charge_attack</anim>
<idleanim>Charge_idle</idleanim>
<impacteffect>effects\impacts\melee</impacteffect>
<damage>6.5</damage>
<rof>1.0</rof>
</action>
<action>
<name stringid="69147">Build</name>
<type>Build</type>
<anim>Build</anim>
<active>0</active>
<maxrange>0.2</maxrange>
<rate type="Building">2.0</rate>
</action>
<action>
<name stringid="09962">DamageBonus</name>
<type>AutoRangedModify</type>
<modifyabstracttype>AbstractVillager</modifyabstracttype>
<active>1</active>
<maxrange>12</maxrange>
<persistent>1</persistent>
<modifytype>Damage</modifytype>
<modifymultiplier>1.25</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>0</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09963">DamageBonus2</name>
<type>AutoRangedModify</type>
<modifyabstracttype>AbstractVillager</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Damage</modifytype>
<modifymultiplier>2.00</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>1</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09964">DamageBonus3</name>
<type>AutoRangedModify</type>
<modifyprotoid>AbstractArtillery</modifyprotoid>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Damage</modifytype>
<modifymultiplier>0.5</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>1</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09963">DamageBonus4</name>
<type>AutoRangedModify</type>
<modifyabstracttype>LogicalTypeLandMilitary</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Damage</modifytype>
<modifymultiplier>2.00</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>1</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09963">DamageBonus5</name>
<type>AutoRangedModify</type>
<modifyabstracttype>LogicalTypeLandMilitary</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Damage</modifytype>
<modifymultiplier>2.00</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>0</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09965">SpeedBonus</name>
<type>AutoRangedModify</type>
<modifyabstracttype>AbstractVillager</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Speed</modifytype>
<modifymultiplier>0.75</modifymultiplier>
<modelattachment>effects\ypack_auras\frightpower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>1</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09966">SpeedBonus2</name>
<type>AutoRangedModify</type>
<modifyabstracttype>LogicalTypeLandMilitary</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Speed</modifytype>
<modifymultiplier>0.75</modifymultiplier>
<modelattachment>effects\ypack_auras\frightpower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>1</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09967">BountyBonus</name>
<type>AutoRangedModify</type>
<modifyprotoid>Unit</modifyprotoid>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>Bounty</modifytype>
<modifymultiplier>2.0</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>0</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09968">GatherBonus</name>
<type>AutoRangedModify</type>
<modifyabstracttype>AbstractVillager</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>GatherRate</modifytype>
<modifymultiplier>1.1</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>0</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name stringid="09969">AutoGatherBonus</name>
<type>AutoRangedModify</type>
<modifyabstracttype>AbstractVillager</modifyabstracttype>
<active>1</active>
<maxrange>24</maxrange>
<persistent>1</persistent>
<modifytype>AutoGatherRate</modifytype>
<modifymultiplier>1.1</modifymultiplier>
<modelattachment>effects\ypack_auras\daimyopower.xml</modelattachment>
<modelattachmentbone>bonethatdoesntexist</modelattachmentbone>
<targetenemy>0</targetenemy>
<modifyexclusive>1</modifyexclusive>
</action>
<action>
<name>ConvertGuardian</name>
<type>ConvertGuardian</type>
<active>1</active>
<rate type="Guardian">1.0</rate>
<anim>Heal</anim>
</action>
<action>
<name stringid="69155">Heal</name>
<type>Heal</type>
<active>1</active>
<maxrange>20</maxrange>
<rate type="Unit">100.0</rate>
<anim>Heal</anim>
</action>
<action>
<name stringid="46491">Stealth</name>
<type>Stealth</type>
<maxrange>1.0</maxrange>
<active>1</active>
<persistent>1</persistent>
</action>
<action>
<name stringid="38134">SweepDamage</name>
<type>Attack</type>
<maxrange>1.75</maxrange>
<rate type="Guardian">1.0 </rate>
<attackaction>1</attackaction>
<handlogic>1</handlogic>
<anim>Attack_melee</anim>
<idleanim>Idle</idleanim>
<impacteffect>effects\impacts\melee_no_weapon</impacteffect>
<basedamagecap>1</basedamagecap>
</action>
<tactic>
Volley
<action priority="100">VolleyRangedAttack</action>
<action priority="75">BuildingAttack</action>
<action priority="60">NatureAttack</action>
<action priority="25">VolleyHandAttack</action>
<action>Build</action>
<action>Stun</action>
<action>ConvertGuardian</action>
<action>Heal</action>
<action>Discover</action>
<action>MagicBeamAttack</action>
<action>DamageBonus</action>
<action>DamageBonus2</action>
<action>DamageBonus3</action>
<action>DamageBonus4</action>
<action>DamageBonus5</action>
<action>SpeedBonus</action>
<action>SpeedBonus2</action>
<action>BountyBonus</action>
<action>GatherBonus</action>
<action>AutoGatherBonus</action>
<attacktype>LogicalTypeVillagersAttack</attacktype>
<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
<runaway>1</runaway>
<autoretarget>1</autoretarget>
<idleanim>Volley_standing_idle</idleanim>
<boredanim>Volley_standing_bored</boredanim>
<deathanim>Death_by_melee</deathanim>
<walkanim>Volley_walk</walkanim>
<joganim>Volley_jog</joganim>
<runanim>Volley_run</runanim>
</tactic>
<tactic>
Stagger
<action priority="100">MagicRangedAttack</action>
<action priority="75">BuildingAttack</action>
<action priority="60">NatureAttack</action>
<action priority="25">VolleyHandAttack</action>
<action>Build</action>
<action>Heal</action>
<action>Stun</action>
<action>ConvertGuardian</action>
<action>MagicBeamAttack</action>
<action>Discover</action>
<action>DamageBonus</action>
<action>DamageBonus2</action>
<action>DamageBonus3</action>
<action>DamageBonus4</action>
<action>DamageBonus5</action>
<action>SpeedBonus</action>
<action>SpeedBonus2</action>
<action>BountyBonus</action>
<action>GatherBonus</action>
<action>AutoGatherBonus</action>
<attacktype>LogicalTypeVillagersAttack</attacktype>
<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
<runaway>0</runaway>
<autoretarget>1</autoretarget>
<idleanim>Magic_idle</idleanim>
<boredanim>Magic_standing_bored</boredanim>
<deathanim>Death_by_melee</deathanim>
<walkanim>Magic_walk</walkanim>
<joganim>Magic_jog</joganim>
<runanim>Magic_run</runanim>
</tactic>
<tactic>
Melee
<action priority="100">BuildingAttack</action>
<action priority="25">MeleeHandAttack</action>
<action>Build</action>
<action>Heal</action>
<action>Stun</action>
<action>ConvertGuardian</action>
<action>Discover</action>
<action priority="10">MagicBeamAttack</action>
<action>DamageBonus</action>
<action>DamageBonus2</action>
<action>DamageBonus3</action>
<action>DamageBonus4</action>
<action>DamageBonus5</action>
<action>SpeedBonus</action>
<action>SpeedBonus2</action>
<action>BountyBonus</action>
<action>GatherBonus</action>
<action>AutoGatherBonus</action>
<attacktype>LogicalTypeVillagersAttack</attacktype>
<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
<runaway>0</runaway>
<autoretarget>1</autoretarget>
<idleanim>Charge_idle</idleanim>
<boredanim>Charge_bored</boredanim>
<deathanim>Death_by_melee</deathanim>
<walkanim>Charge_walk</walkanim>
<joganim>Charge_jog</joganim>
<runanim>Charge_run</runanim>
</tactic>
<tactic>
Defend
<action priority="100">MagicRangedAttack</action>
<action priority="75">BuildingAttack</action>
<action priority="25">VolleyHandAttack</action>
<action>Build</action>
<action>Heal</action>
<action>Stun</action>
<action>ConvertGuardian</action>
<action>MagicBeamAttack</action>
<action>Discover</action>
<action>DamageBonus</action>
<action>DamageBonus2</action>
<action>DamageBonus3</action>
<action>DamageBonus4</action>
<action>DamageBonus5</action>
<action>SpeedBonus</action>
<action>SpeedBonus2</action>
<action>BountyBonus</action>
<action>GatherBonus</action>
<action>AutoGatherBonus</action>
<attacktype>LogicalTypeVillagersAttack</attacktype>
<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
<runaway>0</runaway>
<autoretarget>1</autoretarget>
<idleanim>Magic_idle</idleanim>
<boredanim>Magic_standing_bored</boredanim>
<deathanim>Death_by_melee</deathanim>
<walkanim>Magic_walk</walkanim>
<joganim>Magic_jog</joganim>
<runanim>Magic_run</runanim>
</tactic>
<tactic>
Stealth
<action>Stealth</action>
<checkifcanstealth range="1.0">1</checkifcanstealth>
<speedmodifier>1.0</speedmodifier>
<attacktype>LogicalTypeHandUnitsAttack</attacktype>
<active>0</active>
<action>Heal</action>
<action>Stun</action>
<action>MagicBeamAttack</action>
<autoretarget>0</autoretarget>
<idleanim>Magic_idle</idleanim>
<boredanim>Magic_standing_bored</boredanim>
<deathanim>Death_by_melee</deathanim>
<walkanim>Magic_walk</walkanim>
<joganim>Magic_jog</joganim>
<runanim>Magic_run</runanim>
</tactic>
</tactics>




扔烟雾弹动作:

<anim>
Smokescreen
<assetreference type="GrannyAnim">
<file>units\asians\japanese\monk\monk_smokescreen</file>
<tag type="SpecificSoundSet" checkvisible="1" set="PowerSmokeBomb">0.96</tag>
<tag type="Particles" particlename="effects\smoke\smokescreen.particle">0.97</tag>
</assetreference>
<component>ModelComp</component>
<attach a="bows" frombone="bone_bow" tobone="Bip01 Prop1" syncanims="0"/>
</anim>
传送门
  HotoCocoa.xml - 记事本 ____ X
文件(F)  编辑(E)  格式(O)  查看(V)  帮助(H)
<?xml version="1.0" encoding="utf-8"?>
<animfile>
<definebone>bone_hat</definebone>
<definebone>bone_bow</definebone>
<definebone>bone_quiver</definebone>
<definebone>BIP01 PROP1</definebone>
<definebone>Bip01 Prop2</definebone>
<definebone>bone01</definebone>
<attachment>
LearySparkles
<component>
learysparkles
<assetreference type="ParticleSystem">
<file>effects\animal particles\leary_sparkles.particle</file>
</assetreference>
</component>
<anim>
Idle
<component>learysparkles</component>
</anim>
</attachment>
<attachment>
HealRays
<component>
HealFXEmitter
<assetreference type="ParticleSystem">
<file>units\explorers\heal_rays.particle</file>
</assetreference>
</component>
<anim>
None
<component>HealFXEmitter</component>
</anim>
</attachment>
<attachment>
crossbows
<component>
crossbows
<assetreference type="GrannyModel">
<file>units\asians\chinese\chu_ko_nu\chokonu_bow</file>
</assetreference>
</component>
<anim>
Idle
<component>crossbows</component>
</anim>
</attachment>
<attachment>
sword
<component>
sword
<assetreference type="GrannyModel">
<file>Chino\sword\sword</file>
</assetreference>
</component>
<anim>
Idle
<component>sword</component>
</anim>
</attachment>
<attachment>
sword1
<component>
sword
<assetreference type="GrannyModel">
<file>Chino\sword\sword1</file>
</assetreference>
</component>
<anim>
Idle
<component>sword</component>
</anim>
</attachment>
<attachment>
wands
<component>
wands
<assetreference type="GrannyModel">
<file>Chino\Wands\Wands</file>
</assetreference>
</component>
<anim>
Idle
<component>wands</component>
</anim>
</attachment>
<attachment>
wands1
<component>
wands
<assetreference type="GrannyModel">
<file>Chino\Wands\Wands1</file>
</assetreference>
</component>
<anim>
Idle
<component>wands</component>
</anim>
</attachment>
<component>
ModelComp
<logic type="Tech">
<none>
<logic type="LowPoly">
<normal>
<assetreference type="GrannyModel">
<file>Is the order a rabbit\HotoCocoa\HotoCocoa</file>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
</assetreference>
</normal>
<lowpoly>
<assetreference type="GrannyModel">
<file>Is the order a rabbit\HotoCocoa\HotoCocoa</file>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
</assetreference>
</lowpoly>
</logic>
</none>
</logic>
<decal>
<effecttype>default</effecttype>
<texture isfakeshadow="1">shadows_selections\shadow_circle_32x32</texture>
<selectedtexture>shadows_selections\selection_circle_32x32</selectedtexture>

<width>1.0</width>
<height>1.0</height>
</decal>
</component>
<anim>
Death_by_melee
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.52</tag>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.18</tag>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.73</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Death_by_range
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.53</tag>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.19</tag>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.73</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Death_by_havoc
<assetreference type="GrannyAnim">
<file>animation_library\range\havoc_death</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\havoc_deathB</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\havoc_deathC</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\range\havoc_deathD</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Death_havoc_flail
<assetreference type="GrannyAnim">
<file>animation_library\range\havoc_flail</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Cheer
<assetreference type="GrannyAnim">
<file>animation_library\shared\cheer_A</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\cheer_B</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\cheer_C</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\cheer_D</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\cheer_E</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Recoil
<assetreference type="GrannyAnim">
<file>animation_library\shared\recoil_A</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\recoil_C</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\recoil_E</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>animation_library\shared\recoil_G</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
HC_openDoor
<assetreference type="GrannyAnim">
<file>animation_library\shared\doorOpen</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
HC_closeDoor
<assetreference type="GrannyAnim">
<file>animation_library\shared\doorClose</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Raze_Idle
<assetreference type="GrannyAnim">
<file>animation_library\range\volley\crossbow_volley_idle</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Raze_Attack
<assetreference type="GrannyAnim">
<file>animation_library\range\volley\volley_standing_fire</file>
<tag type="Attack">0.48</tag>
</assetreference>
<component>ModelComp</component>
<attach a="flaming_arrow" frombone="bone01" tobone="L HAND" syncanims="0"/>
</anim>
<anim>
Cover_ranged_idle
<assetreference type="GrannyAnim">
<file>animation_library\range\cover\cover_idle</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Cover_bored
<assetreference type="GrannyAnim">
<file>animation_library\shared\human_crossbow_bored_a</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Cover_Walk
<assetreference type="GrannyAnim">
<file>animation_library\range\cover\cover_walk</file>
<tag type="FootstepLeft" footprinttype="HumanLeft">0.28</tag>
<tag type="FootstepRight" footprinttype="HumanRight">0.80</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Cover_Jog
<assetreference type="GrannyAnim">
<file>animation_library\range\cover\cover_jog</file>
<tag type="FootstepLeft" footprinttype="HumanLeft">0.29</tag>
<tag type="FootstepRight" footprinttype="HumanRight">0.76</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Cover_Run
<assetreference type="GrannyAnim">
<file>animation_library\range\cover\cover_run</file>
<tag type="FootstepLeft" footprinttype="HumanLeft">0.68</tag>
<tag type="FootstepRight" footprinttype="HumanRight">0.12</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Volley_standing_idle
<assetreference type="GrannyAnim">
<file>animation_library\villager\generic_idle</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Volley_standing_attack
<assetreference type="GrannyAnim">
<file>animation_library\range\charge\charge_idleA</file>
<tag type="Attack">0.45</tag>
<tag type="Attack">0.30</tag>
<tag type="Attack">0.15</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Volley_standing_bored
<assetreference type="GrannyAnim">
<file>animation_library\shared\human_crossbow_bored_a</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Volley_walk
<assetreference type="GrannyAnim">
<file>animation_library\range\walk_grenadier</file>
<tag type="FootstepLeft" footprinttype="HumanLeft">0.50</tag>
<tag type="FootstepRight" footprinttype="HumanRight">1.00</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Volley_jog
<assetreference type="GrannyAnim">
<file>animation_library\shared\jog_generic</file>
<tag type="FootstepLeft" footprinttype="HumanLeft">0.60</tag>
<tag type="FootstepRight" footprinttype="HumanRight">0.10</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Volley_run
<assetreference type="GrannyAnim">
<file>animation_library\shared\run_generic</file>
<tag type="FootstepLeft" footprinttype="HumanLeft">0.13</tag>
<tag type="FootstepRight" footprinttype="HumanRight">0.60</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Magic_idle
<assetreference type="GrannyAnim">
<file>animation_library\villager\generic_idle</file>
</assetreference>
<component>ModelComp</component>
<attach a="wands" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Magic_bored
<assetreference type="GrannyAnim">
<file>animation_library\shared\human_crossbow_bored_a</file>
</assetreference>
<component>ModelComp</component>
<attach a="wands" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Magic_attack
<assetreference type="GrannyAnim">
<file>animation_library\explorer\melee_attack</file>
<tag type="Attack">0.20</tag>
<tag type="Attack">0.45</tag>
<tag type="Attack">0.80</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.23</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.57</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="LearicornExist">0.00</tag>
</assetreference>
<component>ModelComp</component>
<attach a="wands1" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
</anim>
<anim>
Magic_attack_Buliding
<assetreference type="GrannyAnim">
<file>animation_library\explorer\melee_attack</file>
<tag type="Attack">0.20</tag>
<tag type="Attack">0.45</tag>
<tag type="Attack">0.80</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.23</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.57</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="LearicornExist">0.00</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.45</tag>
</assetreference>
<component>ModelComp</component>
<attach a="wands1" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
</anim>
<anim>
Magic_walk
<assetreference type="GrannyAnim">
<file>animation_library\shared\walk_generic</file>
<tag type="FootstepLeft">0.20</tag>
<tag type="FootstepRight">0.50</tag>
</assetreference>
<component>ModelComp</component>
<attach a="wands" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Magic_jog
<assetreference type="GrannyAnim">
<file>animation_library\shared\jog_generic_upper</file>
<file>animation_library\shared\jog_generic_lower</file>
<tag type="FootstepLeft">0.30</tag>
<tag type="FootstepRight">0.80</tag>
</assetreference>
<component>ModelComp</component>
<attach a="wands" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Magic_run
<assetreference type="GrannyAnim">
<file>animation_library\shared\run_generic_upper</file>
<file>animation_library\shared\run_generic_lower</file>
<tag type="FootstepLeft">0.30</tag>
<tag type="FootstepRight">0.80</tag>
</assetreference>
<component>ModelComp</component>
<attach a="wands" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_idle
<assetreference type="GrannyAnim">
<file>animation_library\villager\generic_idle</file>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_bored
<assetreference type="GrannyAnim">
<file>animation_library\range\defend\longbow_defend_combat_idle</file>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_attack
<assetreference type="GrannyAnim">
<file>animation_library\explorer\melee_attack</file>
<tag type="Attack">0.45</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.23</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.57</tag>
</assetreference>
<component>ModelComp</component>
<attach a="sword1" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
</anim>
<anim>
Charge_special_attack
<assetreference type="GrannyAnim">
<file>animation_library\range\defend\longbow_defend_melee_A</file>
<tag type="Attack">0.45</tag>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_walk
<assetreference type="GrannyAnim">
<file>animation_library\shared\walk_generic</file>
<tag type="FootstepLeft">0.20</tag>
<tag type="FootstepRight">0.50</tag>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_jog
<assetreference type="GrannyAnim">
<file>animation_library\shared\jog_generic_upper</file>
<file>animation_library\shared\jog_generic_lower</file>
<tag type="FootstepLeft">0.30</tag>
<tag type="FootstepRight">0.80</tag>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_run
<assetreference type="GrannyAnim">
<file>animation_library\shared\run_generic_upper</file>
<file>animation_library\shared\run_generic_lower</file>
<tag type="FootstepLeft">0.30</tag>
<tag type="FootstepRight">0.80</tag>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_death_by_melee
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_death_by_range
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Charge_death_by_havoc
<assetreference type="GrannyAnim">
<file>animation_library\range\death_standing_rifleman_A</file>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="ROOT" tobone="bip01 Prop1" syncanims="0"/>
</anim>
<anim>
Swashbuckler
<assetreference type="GrannyAnim">
<file>animation_library\explorer\swashbuckler</file>
<tag type="Attack">0.70</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="Swoosh">0.53</tag>
</assetreference>
<component>ModelComp</component>
<attach a="sword" frombone="MASTER" tobone="Bip01 Prop1" syncanims="1"/>
<attach a="muskets" frombone="Bip01_AttachRt" tobone="bip01 Prop2" syncanims="0"/>
</anim>
<anim>
Physician
<assetreference type="GrannyAnim">
<file>animation_library\explorer\physician</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Pickup
<assetreference type="GrannyAnim">
<file>animation_library\explorer\pickup_explorer_A</file>
<tag type="SpecificSoundSet" checkvisible="1" set="GatherFruit">0.33</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Heal
<assetreference type="GrannyAnim">
<file>animation_library\natives\priest\heal2</file>
</assetreference>
<component>ModelComp</component>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="L HAND" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="1"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="1"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="1"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="1"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="1"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="L HAND" syncanims="1"/>
<attach a="HealRays" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop2" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop1" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="bip01 Prop3" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanLeft" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="HumanRight" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="L HAND" syncanims="1"/>
<attach a="LearySparkles" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="1"/>
</anim>
<anim>
stun_attack
<assetreference type="GrannyAnim">
<file>units\asians\natives\chakram\chakram_throwA</file>
<tag type="Attack">0.44</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="LearicornExist">0.00</tag>
</assetreference>
<assetreference type="GrannyAnim">
<file>units\asians\spc\chen\spc_chen_handattackA</file>
<tag type="Attack">0.50</tag>
<tag type="SpecificSoundSet" checkvisible="1" set="LearicornExist">0.00</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
AblBeastMaster
<assetreference type="GrannyAnim">
<file>animation_library\natives\priest\heal2</file>
<tag type="SpecificSoundSet" checkvisible="1" set="LearicornExist">0.00</tag>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
Smokescreen
<assetreference type="GrannyAnim">
<file>units\asians\japanese\monk\monk_smokescreen</file>
<tag type="SpecificSoundSet" checkvisible="1" set="PowerSmokeBomb">0.96</tag>
<tag type="Particles" particlename="effects\smoke\smokescreen.particle">0.97</tag>
</assetreference>
<component>ModelComp</component>
<attach a="bows" frombone="bone_bow" tobone="Bip01 Prop1" syncanims="0"/>
</anim>
</animfile>