Advertisement
Guest User

Untitled

a guest
Feb 13th, 2016
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.20 KB | None | 0 0
  1. //:://////////////////////:://
  2. //:://////////////////////:://
  3. //:: Corrupting Touch :://
  4. //:: Scripted by Bob :://
  5. //:: 02/13/2016 :://
  6. //:://////////////////////:://
  7. //:://////////////////////:://
  8. //:://////////////////////:://
  9. //:: Inflicts Damage and :://
  10. //:: heals the user for :://
  11. //:: damage dealt, :://
  12. //:: increasing at later :://
  13. //:: and lowering target :://
  14. //:: phystical stats :://
  15. //:://////////////////////:://
  16. //:://////////////////////:://
  17. //:://////////////////////:://
  18. //::VFX subject to change :://
  19. //:://////////////////////:://
  20. //:://////////////////////:://
  21. //:://////////////////////:://
  22. void main()
  23. {
  24. //Declare Major Variables
  25. int nLevel = GetLevelByClass ( CLASS_TYPE_BLACKGUARD )
  26. int nDamage;
  27. int nCHA = GetAbilityModifier( ABILITY_CHARISMA );
  28. int nSave = ( 10 + 0.5( nLevel) + nCHA;
  29. object oTarget = GetSpellTargetObject();
  30. object oSelf = GetObjectSelf;
  31.  
  32. //Roll Touch Attack
  33. int nTouch = TouchAttackMelee( oTarget, TRUE)
  34. if ( nTouch>0)
  35. {
  36. if ( nLevel == 7 )
  37.  
  38. nDamage = 8(4) + nLevel
  39.  
  40. effect eDamage = EffectDamage( nDamage, DAMAGE_TYPE_NEGATIVE );
  41. effect eHeal = EffectHeal ( nDamage );
  42. effect eVis1 = ( VFX_IMP_AURA_NEGATIVE_ENERGY );
  43. effect eVis2 = ( VFX_IMP_MIND_EFFECTING_NEGATIVE);
  44. ApplyEffectToObject( DURATION_TYPE_INSTANT, eDamage, oTarget );
  45. ApplyEffectToObject( DURATION_TYPE_INSTANT, eHeal, oSelf );
  46. ApplyEffectToObject( DURATION_TYPE_INSTANT, eVis1, oSelf);
  47. ApplyEffectToObject( DURATION_TYPE_INSTANT, eVis2, oTarget);
  48. }
  49. if (nLevel == 8 )
  50. {
  51. nDamage = 8(4) + nLevel
  52.  
  53. effect eDamage = EffectDamage ( nDamage, DAMAGE_TYPE_NEGATIVE );
  54. effect eHeal = EffectHeal ( nDamage );
  55. effect eVis1 = ( VFX_IMP_AURA_NEGATIVE_ENERGY );
  56. effect eVis2 = ( VFX_IMP_MIND_EFFECTING_NEGATIVE);
  57. ApplyEffectToObject( DURATION_TYPE_INSTANT, eDamage, oTarget);
  58. ApplyEffectToObject( DURATION_TYPE_INSTANT, eHeal, oSelf);
  59. ApplyEffectToObject( DURATION_TYPE_INSTANT, eVis1, oSelf);
  60. ApplyEffectToObject( DURATION_TYPE_INSTANT, eVis2, oTarget);
  61.  
  62. if(MySavingThrow(SAVING_THROW_FORT, oTarget, 10 + 1/2nLevel + nCHA == 0)
  63. {
  64. int nStatloss = 4(1)
  65. effect eSTRLOSS = EffectAbilityDecrease( int nSTR = GetAbilityScore(ABILITY_SCORE_STRENGTH), nStatloss );
  66. effect eDEXLOSS = EffectAbilityDecrease( int nDEX = GetAbilityScore(ABILITY_SCORE_DEXTERIT), nStatloss );
  67. effect eCONLOSS = EffectAbilityDecrease( int nCON = GetAbilityScore(ABILITY_SCORE_CONSTITUTION), nStatloss);
  68. }
  69. }
  70. if (nLevel >8)
  71.  
  72. nDamage = 8(5) + nLevel
  73.  
  74. effect eDamage = EffectDamage ( nDamage, DAMAGE_TYPE_NEGATIVE );
  75. effect eHeal = EffectHeal ( nDamage );
  76. effect eVis1 = ( VFX_IMP_AURA_NEGATIVE_ENERGY );
  77. effect eVis2 = ( VFX_IMP_MIND_EFFECTING_NEGATIVE);
  78. ApplyEffectToObject( DURATION_TYPE_INSTANT, eDamage, oTarget);
  79. ApplyEffectToObject( DURATION_TYPE_INSTANT, eHeal, oSelf);
  80. ApplyEffectToObject( DURATION_TYPE_INSTANT, eVis1, oSelf);
  81. ApplyEffectToObject( DURATION_TYPE_INSTANT, eVis2, oTarget);
  82.  
  83. if(MySavingThrow(SAVING_THROW_FORT, oTarget, 10 + 1/2nLevel + nCHA == 0)
  84. {
  85. int nStatloss = 4(1)
  86. effect eSTRLOSS = EffectAbilityDecrease( int nSTR = GetAbilityScore(ABILITY_SCORE_STRENGTH), nStatloss );
  87. effect eDEXLOSS = EffectAbilityDecrease( int nDEX = GetAbilityScore(ABILITY_SCORE_DEXTERIT), nStatloss );
  88. effect eCONLOSS = EffectAbilityDecrease( int nCON = GetAbilityScore(ABILITY_SCORE_CONSTITUTION), nStatloss);
  89.  
  90. }
  91. }
  92. effect eLink = EffectLinkEffects(eDamage, eHeal);
  93. effect eLink = EffectLinkEffects(eLink, eSTRLOSS);
  94. effect eLink = EffectLinkEffects(eLink, eDEXLOSS);
  95. effect eLink = EffectLinkEffects(eLink, eDex);
  96. effect eLink = EffectLinkEffects(eLink, eVis1);
  97. effect eLink = EffectLinkEffects(eLink, eVis2);
  98. SignalEvent(OBJECT_TARGET, EventSpellCast(OBJECT_TARGET, 1131, FALSE));
  99.  
  100. }
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement