Multishot with Levels

Level 5
Joined
Aug 19, 2021
Messages
40
Hello! So i was trying to rectify my terrible mistake of using a Barrage as a reference for multi-projectile ability, and used this instead, which seems pretty easy to understand! The problem is, there seems to be no mention of how to use it with ability that can be leveled up three times, instead only for ult-like ability (can only be leveled up once), so i just want to ask - especially to others who probably uses this specific version of multishot or even have one of their own - if there's anything i need to add for it to be applicable with a three leveled ability instead? Thanks!
 

Uncle

Warcraft Moderator
Level 73
Joined
Aug 10, 2018
Messages
7,866
You should be able to save the unit's properties again, but this time with your updated settings (more missiles);
  • -------- Death Archer --------
  • Set UnitType = Death Archer
  • Set MultishotAngle = 50.00
  • Set MultishotRange = 900.00
  • Set MultishotTargets = 9
  • Set AttackType = 5
  • Set Upgradeable = False
  • Set Always_Hits_Main_Target = True
  • Set OffsetAngle = 90.00
  • Set Missile = Arrow 2
  • Custom script: call ExecuteFunc("Save_Properties")
I'm not sure what Upgradeable means, but perhaps that should be set to True?

Also, you could probably do something like this to update the Missile data directly:
  • -------- Death Archer --------
  • Set UnitType = Death Archer
  • Set MultishotTargets = 18
  • Custom script: call SaveInteger(udg_Table, udg_UnitType , 'misl', udg_MultishotTargets)
I based this on the "SaveProperties" function from the source code. This should only overwrite that one value and be more efficient.
 
Level 5
Joined
Aug 19, 2021
Messages
40
Mhmm, i can give this a try!
I'm not sure what Upgradeable means, but perhaps that should be set to True?
Oh, and that one is said for a range upgrade of the attack if there's any applied to it i believe, so no...but i'll see if it can be applied to the actual leveling up system soon enough :D
 
Level 5
Joined
Aug 19, 2021
Messages
40
Okay! So update, progress been fine and i ACTUALLY got to figure out the codings and triggers properly! Still, when i was going to test it out, i got met with this 'missing endblock' error while i was validating the triggers as an end process.

JASS:
function main takes nothing returns nothing
    call SetCameraBounds( -7424.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), -768.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 7168.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -7424.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 7168.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -768.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM) )
    call SetDayNightModels( "Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl" )
    call NewSoundEnvironment( "Default" )
    call SetAmbientDaySound( "BlackCitadelDay" )
    call SetAmbientNightSound( "BlackCitadelNight" )
    call SetMapMusic( "Music", true, 0 )
    call CreateAllUnits(  )
    call InitBlizzard(  )

//! initstructs
call ExecuteFunc("OrbsAddOn__Init")
call ExecuteFunc("Init")

//! initdatastructs
    call InitGlobals(  )
    call InitCustomTriggers(  )
    call RunInitializationTriggers(  )

endfunction

//***************************************************************************
//*
//*  Map Configuration
//*
//***************************************************************************

function config takes nothing returns nothing
    call SetMapName( "TRIGSTR_006" )
    call SetMapDescription( "TRIGSTR_3049" )
    call SetPlayers( 1 )
    call SetTeams( 1 )
    call SetGamePlacement( MAP_PLACEMENT_USE_MAP_SETTINGS )

    call DefineStartLocation( 0, -6784.0, 6592.0 )

    // Player setup
    call InitCustomPlayerSlots(  )
    call InitCustomTeams(  )
endfunction



<- right here apparently??

If there's anything else i need to provide to fix this up, lemme know!
 
Top