Jump to content

Home

[TSL]Inserting animation in scripts.


oldflash

Recommended Posts

I make a useable item (after darth333's and chanintz.2da's utility devices - thanks) and set to fire this script

void main() 
{
ClearAllActions();
ClearAllEffects();
object oPC = GetFirstPC();
int nHealAmount = GetMaxForcePoints(oPC) - GetCurrentForcePoints(oPC);
int nHealAmount2 = GetMaxHitPoints(oPC) - GetCurrentHitPoints(oPC);
while ( (nHealAmount + nHealAmount2)  > 0 ) {
{
if( nHealAmount > 0 )
{
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHealForcePoints( nHealAmount ),oPC);
}
if( nHealAmount2 > 0 )
{
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal( nHealAmount2 ),oPC);
}
}
}
}

The initial reason for that was to clear all forceppowers effect, all visual effect (shields) and to regenerate fast hp and fp.

The effect is instant.

I have try to insert a animation (play meditate animation for few seconds) without succes. When I activate the item also pc play "use force" animation which I don't want it. All I want is to have a pc which play meditate animation (and if is possible some visual effect to suggest revitalize) for 5 sec before or after this script is executed.

Right now I use this to cheat. :)

 

Thanks.

Link to comment
Share on other sites

I make a useable item (after darth333's and chanintz.2da's utility devices - thanks) and set to fire this script

(...snip...)

The initial reason for that was to clear all forceppowers effect, all visual effect (shields) and to regenerate fast hp and fp.

The effect is instant.

I have try to insert a animation (play meditate animation for few seconds) without succes.

When I activate the item also pc play "use force" animation which I don't want it.

 

Try this variant, it should make the player sit down and meditate briefly as well. As far as I know you can't get rid of the "activate" animation when you trigger an object tied to a "spell", i think that is hardcoded since the "cast" animations set in spells.2da only seem to be used if you cast it as a force power. Thus the character will first do the activation animation and then sit down and meditate right afterwards.

 

void main()  {
   object oPC = GetSpellTargetObject();

   AssignCommand(oPC, ClearAllActions());
   AssignCommand(oPC, ClearAllEffects());

   int nHealAmount = GetMaxForcePoints(oPC) - GetCurrentForcePoints(oPC);
   if( nHealAmount > 0 )
       ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHealForcePoints(nHealAmount), oPC);

   nHealAmount = GetMaxHitPoints(oPC) - GetCurrentHitPoints(oPC);
   if( nHealAmount > 0 )
       ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(nHealAmount), oPC);

   DelayCommand(1.0, AssignCommand(oPC, ActionPlayAnimation( ANIMATION_LOOPING_SIT_AND_MEDITATE, 1.0, 6.0 )));
}

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...