Damage/Defence Trigger Help

Craigimus

New Member
Reaction score
0
Pretty much its a whole stat / equip system i need that increases the different types of damage.

I'm trying to make a trigger which say you equip an item that gives +20 magic attack. Therefore it would increase all your spells by 20

and visa versa for defence equiping an item that gives +20 magic defence increasing ur magic defence by 20

allocate points of STR, CON, INT, WIS and AGI.

Increasing STR points will improve the effect of attacks/non-magic skills.
Increasing CON points will raise HP maximum and DEF.
Changing INT points will affect MATK effects.
Adding points to WIS will increase SP and MDEF.
Increasing AGI will raise SPD.

If none of that makes sense please let me know xD i tried as hard as i could :p
 

Exide

I am amazingly focused right now!
Reaction score
448
I got something similar in one of my maps.
I call it Spellpower. -Each of my spells deals (base damage + spellpower) to the target.
-Which means that the spellpower bonus damage is hardcoded into the spell triggers.
In my map, spellpower is an real variable.

I guess you could do something similar.
All my triggers are in JASS, though. So I doubt showing them to you will do little good. :p
 

Craigimus

New Member
Reaction score
0
hmm sounds pretty much like i need lol xD

prehaps you could help me out sometime ?

im not in desperate need of it straight away but its always good to get the stuff im unsure of to develop more.
 

Exide

I am amazingly focused right now!
Reaction score
448
Do you have one or more Heroes that will be using this kind of system?
 

Exide

I am amazingly focused right now!
Reaction score
448
I mean player's controlling heroes.
How many players is there in the map - how many heroes can each player control?

I'm guessing this isn't a singleplayer game, so you'll have to use array variables. Which will make the triggers a lot more complicated.
 

Exide

I am amazingly focused right now!
Reaction score
448
So, for example.. (I can't make specific triggers, since I don't know what your map looks like.)

Code:
Setup
    Events
        Map initialization
    Conditions
    Actions
        Set tempgroup = (Units in (Playable map area) matching (((Matching unit) is A Hero) Equal to True))
        Unit Group - Pick every unit in tempgroup and do (Actions)
            Loop - Actions
                Unit - Set the custom value of (Picked unit) to (Integer A)
                Set hero[(Integer A)] = (Picked unit)        [COLOR="Red"]// This action is only needed eventually, in another trigger.[/COLOR]
                Set spellpower[(Integer A)] = 0.00
        Custom script:   call DestroyGroup(udg_tempgroup)

The event could differ, since the players might not start with heroes.

Code:
Special Items Recieve
    Events
        Unit - A unit Acquires an item
    Conditions
        ((Triggering unit) is A Hero) Equal to True
    Actions
        If ((Custom value of (Triggering unit)) Equal to 0) then do (Skip remaining actions) else do (Do nothing)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Item-type of (Item being manipulated)) Equal to Orb of Frost
            Then - Actions
                Set spellpower[(Custom value of (Triggering unit))] = (spellpower[(Custom value of (Triggering unit))] + 50.00)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Item-type of (Item being manipulated)) Equal to Mindstaff
            Then - Actions
                Set spellpower[(Custom value of (Triggering unit))] = (spellpower[(Custom value of (Triggering unit))] + 100.00)
            Else - Actions

Code:
Special Items Lose
    Events
        Unit - A unit Loses an item
    Conditions
        ((Triggering unit) is A Hero) Equal to True
    Actions
        If ((Custom value of (Triggering unit)) Equal to 0) then do (Skip remaining actions) else do (Do nothing)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Item-type of (Item being manipulated)) Equal to Orb of Frost
            Then - Actions
                Set spellpower[(Custom value of (Triggering unit))] = (spellpower[(Custom value of (Triggering unit))] - 50.00)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Item-type of (Item being manipulated)) Equal to Mindstaff
            Then - Actions
                Set spellpower[(Custom value of (Triggering unit))] = (spellpower[(Custom value of (Triggering unit))] - 100.00)
            Else - Actions

In these two triggers you might want to use the hero - unit variable, that we set in the first trigger. Depending on if there are any neutral heroes on the map or not.
The very first action in this trigger is to make sure that any other heroes will mess up someone else's spellpower.

Using the hero Variable:

Code:
Special Items Recieve
    Events
        Unit - A unit Acquires an item
    Conditions
        Or - Any (Conditions) are true
            Conditions
                (Triggering unit) Equal to hero[1]
                (Triggering unit) Equal to hero[2]
                (Triggering unit) Equal to hero[3]
                (Triggering unit) Equal to hero[4]
                (Triggering unit) Equal to hero[5]
                (Triggering unit) Equal to hero[6]
                (Triggering unit) Equal to hero[7]
                (Triggering unit) Equal to hero[8]
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Item-type of (Item being manipulated)) Equal to Orb of Frost
            Then - Actions
                Set spellpower[(Custom value of (Triggering unit))] = (spellpower[(Custom value of (Triggering unit))] + 50.00)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Item-type of (Item being manipulated)) Equal to Mindstaff
            Then - Actions
                Set spellpower[(Custom value of (Triggering unit))] = (spellpower[(Custom value of (Triggering unit))] + 100.00)
            Else - Actions

Finally, an example trigger. Really simple:

Code:
Ability1
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Storm Bolt
    Actions
        Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing spellpower[(Custom value of (Triggering unit))] damage of attack type Chaos and damage type Universal
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top