• 🏆 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!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[????] Combo Points

Status
Not open for further replies.
Level 6
Joined
Jul 18, 2009
Messages
200
Okay, this is a very complex and, maybe difficult question. Is it even possible to make a Combo Point system?? Rogues and Druids have it in WoW, i will tell you closer. It will have a Point stop at 5 combo point

Claw

Damages the target for 50 plus 20xYourLevel
Awards 1 combo point.

Eviscerate

Finishing Move: Eviscerate. Uses all of your current points at your target and damages equal to them

1 Points: 50-80 Damage
2 Points: 60-90 Damage
3 Points: 70-100 Damage
4 Points: 80-110 Damage
5 Points: 100- 150

As said, this is very complex. If someone is able to make it for me, or give the code or something like that. I will +rep you! :mwahaha:
 
Level 11
Joined
Dec 5, 2009
Messages
846
i can try doing this :)

EDIT: Sorry i can't do so the combo points saves I can save it but not on the unit the caster did claw on. Sorry.. But its not impossible ^^ I hope someone else does it so i can look how he did it.
 
You can do it like that:
  • Trigger0
  • Events
    • Map Initialization
  • Conditions
    • Hashtable - Create a hashtable
    • Set Hashtable = (Last created hashtable)
  • Trigger1
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Claw
  • Actions
    • Set Points = (Load (Key(points)) of (Key(Triggering unit)) from Hashtable)
    • Hashtable - Save (Points + 1) as (Key(points)) of (Key(Triggering unit)) in Hashtable
    • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast) dealing (50 + 20*(Level of (Ability being cast) for (Triggering unit))) of Attack Type Spells and damage type Normal
  • Trigger2
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Eviscerate
  • Conditions
    • If (All conditions are true) then do (Actions) else do (Actions)
      • If - Conditions
        • (Load (Key(points)) of (Key(Triggering unit)) from Hashtable) Greater than 0
      • Then - Actions
        • Set Points = (Load (Key(points)) of (Key(Triggering unit)) from Hashtable)
        • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast) dealing (Random real number between ((10*(Points)) + 40) and ((10*(Points)) + 70)
        • Hashtable - Save 0.00 as (Key(points)) of (Key(Triggering unit)) in Hashtable
      • Else - Actions
        • Game - Display to (Player Group (Owner of (Triggering unit))) the text "Not enough combo points."
 
Level 6
Joined
Jul 18, 2009
Messages
200
You can do it like that:
  • Trigger0
  • Events
    • Map Initialization
  • Conditions
    • Hashtable - Create a hashtable
    • Set Hashtable = (Last created hashtable)
  • Trigger1
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Claw
  • Actions
    • Set Points = (Load (Key(points)) of (Key(Triggering unit)) from Hashtable)
    • Hashtable - Save (Points + 1) as (Key(points)) of (Key(Triggering unit)) in Hashtable
    • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast) dealing (50 + 20*(Level of (Ability being cast) for (Triggering unit))) of Attack Type Spells and damage type Normal
  • Trigger2
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Eviscerate
  • Conditions
    • If (All conditions are true) then do (Actions) else do (Actions)
      • If - Conditions
        • (Load (Key(points)) of (Key(Triggering unit)) from Hashtable) Greater than 0
      • Then - Actions
        • Set Points = (Load (Key(points)) of (Key(Triggering unit)) from Hashtable)
        • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast) dealing (Random real number between ((10*(Points)) + 40) and ((10*(Points)) + 70)
        • Hashtable - Save 0.00 as (Key(points)) of (Key(Triggering unit)) in Hashtable
      • Else - Actions
        • Game - Display to (Player Group (Owner of (Triggering unit))) the text "Not enough combo points."

Lets see if it works :)
 
Level 6
Joined
Jul 18, 2009
Messages
200
You can do it like that:
  • Trigger0
  • Events
    • Map Initialization
  • Conditions
    • Hashtable - Create a hashtable
    • Set Hashtable = (Last created hashtable)
  • Trigger1
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Claw
  • Actions
    • Set Points = (Load (Key(points)) of (Key(Triggering unit)) from Hashtable)
    • Hashtable - Save (Points + 1) as (Key(points)) of (Key(Triggering unit)) in Hashtable
    • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast) dealing (50 + 20*(Level of (Ability being cast) for (Triggering unit))) of Attack Type Spells and damage type Normal
  • Trigger2
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Eviscerate
  • Conditions
    • If (All conditions are true) then do (Actions) else do (Actions)
      • If - Conditions
        • (Load (Key(points)) of (Key(Triggering unit)) from Hashtable) Greater than 0
      • Then - Actions
        • Set Points = (Load (Key(points)) of (Key(Triggering unit)) from Hashtable)
        • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast) dealing (Random real number between ((10*(Points)) + 40) and ((10*(Points)) + 70)
        • Hashtable - Save 0.00 as (Key(points)) of (Key(Triggering unit)) in Hashtable
      • Else - Actions
        • Game - Display to (Player Group (Owner of (Triggering unit))) the text "Not enough combo points."

Pharaoh_, What is the Points for a variable? And how to make it be like that?
 
It's an Integer. Then, when you are about to set the variable, choose "Hashtable - Load Integer Value". Then for the first Key, the default field says "Hashtable - Get Handle Id". Press that and scroll to the next one, "Hashtable - Get String Id". In the new window type "points" or whatever you want and press ok. For the next Key, find Triggering unit.
 
Level 6
Joined
Jul 18, 2009
Messages
200
It's an Integer. Then, when you are about to set the variable, choose "Hashtable - Load Integer Value". Then for the first Key, the default field says "Hashtable - Get Handle Id". Press that and scroll to the next one, "Hashtable - Get String Id". In the new window type "points" or whatever you want and press ok. For the next Key, find Triggering unit.

Can you please send a Demo Map?? This is to hard for me... :sad:
 
Status
Not open for further replies.
Top