Critical Strike

litlmike123

New Member
Reaction score
1
How do I make Critical Strike in JASS? I would like the full code please.
Thanks.

*EDIT*
I am trying to accomplish 2 things:
1) Learn more about Triggers/JASS
2) Create a Trigger that calculates/prints the DamageOnEvent (attack)

If I can see how this Critical Strike Trigger works, I think I can rewrite it for this other skill. I am want to do the work, but I need a helping hand to get started.

Thanks in Advance.
 

phyrex1an

Staff Member and irregular helper
Reaction score
447
Umm, there is already an Critical Strike ability so why do you want to make an exact copy of that but in jass?

Also, it is very unlike that anyone would go through all the trouble to make an ability for you when you doesn't even care to explain what you really want and how it should work. You need to put some effort in this yourself.
 

litlmike123

New Member
Reaction score
1
More Info

Thanks for the reply.

I am trying to accomplish 2 things:
1) Learn more about Triggers/JASS
2) Create a Trigger that calculates/prints the DamageOnEvent (attack)

If I can see how this Critical Strike Trigger works, I think I can rewrite it for this other skill. I am want to do the work, but I need a helping hand to get started.

Thanks in Advance.
 

emjlr3

Change can be a good thing
Reaction score
395
er that is no more info then u posted the first time
 

Chocobo

White-Flower
Reaction score
409
With Damage Show while not doing Critical

Code:
Intialization
    Events
        Unit - A unit enters (Playable map area)
    Conditions
        (Custom value of (Triggering unit)) Equal to 0
    Actions
        Trigger - Add to Dmg Trigger <gen> the event (Unit - (Triggering unit) Takes damage)
        Unit - Set the Custom value of (Triggering unit) to 1

Code:
Initialization
Events
Game - Time Elasped 0.00 seconds of game-time

Conditions
None

Actions
Custom Script : set bj_wantDestroyGroup = true
Pick Every Units in (Playable map area) and do Actions
       Loop - Actions
               Trigger - Add to Dmg Trigger <gen> the event (Unit - (Picked unit) takes damage)
                Set the Custom value of (Picked unit) to 1
Trigger - Destroy (This trigger) //In JASS : call DestroyTrigger(GetTriggeringTrigger() )

Code:
Dmg Trigger
Events
None

Conditions
(Damage taken) Not Equal to 0.00
//And yes, damage taken can be equal to 0.00, like Hardened Skin with 0 min dmg.

Actions
Set loc = (Position of (Triggering unit)) //loc is a Location/Point variable, it is against leaks ^^
Set CriticalMultiplier = <whatever in real> //CriticalMultiplier is a real. It refers at Damage Multiplier value defined as you want. Example : 2.00x damage
Set RandomReal = (Random number real between 0.00 and 100.00) //RandomReal fixes a random percentage, you can use a Integer, but it has less power
If (All Conditions are true) Then (Then Actions) Else (Else Actions)
      If (All Conditions are true)
             RandomReal lesser than <your percentage to critical>
      Then (Then Actions)
             Set DamageDealt = (Damage taken x CriticalMultiplier) //DamageDealt is a real which handles the whole damage dealt
      Else (Else Actions)
Trigger - Turn off (This trigger)
Unit - Cause (Damage source) to damage (Triggering unit) dealing ((DamageDealt - (Damage taken)) of type Chaos of type Universal
Trigger - Turn on (This trigger)
Floating Text - Create floating text that reads ((String((Integer((DamageDealt))))) + !) at loc with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Set the velocity of (Last created floating text) to 15.00 towards 90.00 degrees
Floating Text - Change the lifespan of (Last created floating text) to 3.00 seconds
Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds

Without Damage Show while not doing Critical

Code:
Dmg Trigger
Events
None

Conditions
(Damage taken) Not Equal to 0.00
//And yes, damage taken can be equal to 0.00, like Hardened Skin with 0 min dmg.

Actions
Set loc = (Position of (Triggering unit)) //loc is a Location/Point variable, it is against leaks ^^
Set CriticalMultiplier = <whatever in real> //CriticalMultiplier is a real. It refers at Damage Multiplier value defined as you want. Example : 2.00x damage
Set RandomReal = (Random number real between 0.00 and 100.00) //RandomReal fixes a random percentage, you can use a Integer, but it has less power
If (All Conditions are true) Then (Then Actions) Else (Else Actions)
      If (All Conditions are true)
             RandomReal lesser than <your percentage to critical>
      Then (Then Actions)
             Set DamageDealt = (Damage taken x CriticalMultiplier) //DamageDealt is a real which handles the whole damage dealt
             Trigger - Turn off (This trigger)
             Unit - Cause (Damage source) to damage (Triggering unit) dealing ((DamageDealt - (Damage taken)) of type Chaos of type Universal
             Trigger - Turn on (This trigger)
             Floating Text - Create floating text that reads ((String((Integer((DamageDealt))))) + !) at loc with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
             Floating Text - Change (Last created floating text): Disable permanence
             Floating Text - Set the velocity of (Last created floating text) to 15.00 towards 90.00 degrees
             Floating Text - Change the lifespan of (Last created floating text) to 3.00 seconds
             Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
      Else (Else Actions)
 

litlmike123

New Member
Reaction score
1
Thanks!

Thanks so much for you help!
That is exactly what I was looking for. I am going to study this a bit more, fill in the blanks, and try out the modifications. Thanks again!
 
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