• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • ✅ The POLL for Hive's Texturing Contest #33 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!

[Trigger] Magic shield

Status
Not open for further replies.
Level 6
Joined
Oct 31, 2014
Messages
170
I don't know if the question has already been asked but . How do you trigger a magic shield that takes every damages until dissapearing (like the priest bubble in wow) I was thinking of creating a dummy unit that would take all the incoming damages but how do I redirect the damages properly ? Any idea ?
 
Level 6
Joined
May 20, 2014
Messages
228
> Naga Sea Witch - Mana Shield?

He wants something similar to an absorb shield like the one on World of Warcraft, not something that absorbs mana :p

What I can think of is putting an effect on the unit, have 100% damage transfer (spirit link), though I don't think that would really work :S

There is a spell in spells section that has what you're looking for, but is in vJass. http://www.hiveworkshop.com/forums/spells-569/light-shield-2-1-3-a-131394/
 
Level 6
Joined
Oct 31, 2014
Messages
170
Yeah no I'm looking for a trigger. But the spirit link might be a good idea I'm gonna try this.
I thought of redirecting the damages by "hand" but using this might be more effective. I just need to adjust the life of my dummyshield.
 
Level 6
Joined
May 20, 2014
Messages
228
Keep in mind spirit link doesn't actually kill the target, it damages until 1 HP then it wears off. So you might want to add one point to the total absorption, and then remove the dummy unit whenever spirit link ends.

If it doesn't work though, no idea, as I can't seem to find any kind of working absorb system.
 
Level 6
Joined
Oct 31, 2014
Messages
170
What is a DDS ?

Yeah wietlol I thought of something like this aswell, the shield can be dispelled so .. that's all good ^^
 
Level 12
Joined
Mar 24, 2011
Messages
1,082
DDS = Damage Detection System
As war3 has... no "good" "native" way of detecting damage dealt people have made quite a few workarounds with scripts being GUI or JASS or vJASS etc.

I personaly prefer Bribe's DDS, although I have not worked with any other and can not make comparison.

  • Cast spellshield
  • Events
    • Unit starts the effect of an ability
  • Conditions
    • Ability = Shield
  • Actions
    • Set UnitIndex = Unit Index of Caster
    • Set ShieldOn_Bool[UnitIndex] = True
    • Set ShieldAmount_Real = 500
    • or if it stacks
    • Set ShieldAmount_Real = ShieldAmount_Real + 500
  • DDSDetectsDamage
  • Events
    • DDS Detects Damage
  • Actions
    • UnitIndex = Unit Index of DamageReceiver
    • If ShieldOnBool[UnitIndex] == True
    • then
      • If ShieldAmount_Real[UnitIndex] > Damage
        • then
          • Damage = 0;
          • ShieldAmount_Real[UnitIndex] = ShieldAmount_Real[UnitIndex] - Damage;
        • else
          • Damage = Damage - ShieldAmount_Real[UnitIndex]
    • else
 
Level 6
Joined
Oct 31, 2014
Messages
170
Yeah I had a look at that Jass thing and ... I will stick with my triggers for now .. :p
This DDS is looking great tho... triggering a proper DDS probably means a lot of floating texts .. ^^

I will try this spiritual link at first and see if I can custom the effect based on some specific caracteristics such as intelligence or strenght. If it doesn't work properly I'm gonna use your system Nedio it looks good, just need to set it for "target of ability being cast" and "attacked unit" instead of DDS system. Thanks !
 
Level 12
Joined
Mar 24, 2011
Messages
1,082
Have in mind that without DDS you have no way of detecting how much damage was dealt.
You do not have to make the DDS yourself and it does not involve floating texts at all, there are quite a few very good DDS systems in the spell section.
 
Level 6
Joined
Oct 31, 2014
Messages
170
Yeah I tried earlier and .. fail. I guess I'll have tu use one of those indeed..thanks !
 
Status
Not open for further replies.
Top