Braaaaaand New

Chao

Setting sail for fail in the sea of lame.
Reaction score
63
Hey guys! I'm starting to try and tutor myself at JASS, but I'm at a standstill already.

I'm using the following function in my map to regenerate creeps:
Trigger:
  • INIT Store Creeps NH
    • Events
      • Map initialization
      • Time - Elapsed game time is 2.00 seconds
    • Conditions
    • Actions
      • Set Loop = 0
      • Unit Group - Pick every unit in (Units owned by Neutral Hostile) and do (Actions)
        • Loop - Actions
          • Set Creep_Type[Loop] = (Unit-type of (Picked unit))
          • Set Creep_Position[Loop] = (Position of (Picked unit))
          • Unit - Set the custom value of (Picked unit) to Loop
          • Set Loop = (Loop + 1)


JASS:

function Trig_Revive_Creeps_Actions takes nothing returns nothing
    local integer CUSTOM
    set CUSTOM = GetUnitUserData(GetDyingUnit())
    call TriggerSleepAction( 50.00 )
    call CreateNUnitsAtLoc( 1, udg_Creep_Type[CUSTOM], Player(PLAYER_NEUTRAL_AGGRESSIVE), udg_Creep_Position[CUSTOM], bj_UNIT_FACING )
    call SetUnitUserData( GetLastCreatedUnit(), CUSTOM )
endfunction

//===========================================================================
function InitTrig_Revive_Creeps_NH takes nothing returns nothing
    set gg_trg_Revive_Creeps_NH = CreateTrigger(  )
    call TriggerRegisterPlayerUnitEventSimple( gg_trg_Revive_Creeps_NH, Player(PLAYER_NEUTRAL_AGGRESSIVE), EVENT_PLAYER_UNIT_DEATH )
    call TriggerAddAction( gg_trg_Revive_Creeps_NH, function Trig_Revive_Creeps_Actions )
endfunction



Now, I have a couple questions.
A) I will have a number of units that I want on a longer respawn time than the current 50 seconds and don't know how to make an if/then/else that will grab them and pull them off the 50-second timer
B) I'd like it if I could set some of the larger units to have a larger cooldown: ie. (50 seconds + ((Unitlevel)*3) or something. I figure I'll need some sort of "getunitlevel (dyingunit)"... I don't know.
C) PLAYER_NEUTRAL_AGGRESSIVE, sure.... would it be PLAYER_11?
If the function so called?

Thanks for your help!
 

WolfieeifloW

WEHZ Helper
Reaction score
372
A) I don't know.

B) You could do like:

I think you can get dying unit's levels.

C) No. The "PLAYER_NEUTRAL_XXX" are different then actual players.
Player(11) would be Brown (Player 12 in GUI).

And some optimization:
JASS:
local integer CUSTOM
set CUSTOM = GetUnitUserData(GetDyingUnit())

Just set "CUSTOM" directly:
JASS:

And use lower case on locals, upper case is usually used for globals:
JASS:



Also, try to start using X/Y instead of locations.
 

Chao

Setting sail for fail in the sea of lame.
Reaction score
63
Hey, Wolfie,

Thanks for the help! +rep :)
Now, in trying to answer A) I did a lil' bit of digging; what I'm looking for is something that uses this:
JASS:

function Trig_Winner_Copy_Func001001 takes nothing returns boolean
    return ( GetUnitTypeId(GetDyingUnit()) == 'n00T' )
endfunction


so the unit gets selected.. but how would I set it so the sleeptimer knows it's this unit instead?
 

WolfieeifloW

WEHZ Helper
Reaction score
372
You'd have to do like;
"if GetUnitTypeId(GetDyingUnit()) == 'XXXX' or GetUnitTypeId(..."
Then run a bigger TriggerSleepAction() for them.
 

Chao

Setting sail for fail in the sea of lame.
Reaction score
63
So, I've tried using if/then/else and converting to custom text so I can have a better idea of how to do what you're talking about, but it deosn't quite look the way I think it's supposed to.
 

Chao

Setting sail for fail in the sea of lame.
Reaction score
63
Okay... this is me winging it ...
Would I need to do the following in the primary trigger?
JASS:
    local real Dur = 50
    call TriggerSleepAction( Dur )
 

Rainther

I guess I should write something of value here...
Reaction score
61
Indeed. Maybe I should've been clearier on that and add the conditions between them so that Dur may differ depending on special unit types.
 

Chao

Setting sail for fail in the sea of lame.
Reaction score
63
Hey, no problem, +rep. I hate even ASKING these questions, since I usually prefer figuring stuff out on my own :D
 
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