Hero
─║╣ero─
- Reaction score
- 250
This is my attribute system that allows you to add attributes to a hero upon leveling...
Features (as of now)
-Supports a single hero for each player
-Supports the addition of 1 intelligence,agility,strength
-In JASS
Future Updates Will Support
-More than one hero for each player will be able to use this system
-Optimization
_______________
Ok being updated soon...
Sorry no screenshot as of now...will be adding it
Code:
Features (as of now)
-Supports a single hero for each player
-Supports the addition of 1 intelligence,agility,strength
-In JASS
Future Updates Will Support
-More than one hero for each player will be able to use this system
-Optimization
_______________
Ok being updated soon...
Sorry no screenshot as of now...will be adding it
Code:
JASS:
constant function SkillPointsGiven takes nothing returns integer
return 3
endfunction
constant function AgilityRawCode takes nothing returns integer
return 039;A002039;
endfunction
constant function IntelligenceRawCode takes nothing returns integer
return 039;A004039;
endfunction
constant function StrengthRawCode takes nothing returns integer
return 039;A001039;
endfunction
function Trig_Atrribute_System_Actions takes nothing returns nothing
local unit u=GetLevelingUnit()
set udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] = udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))]+ SkillPointsGiven()
endfunction
function Add_Strength_Conditions takes nothing returns boolean
return GetSpellAbilityId() == StrengthRawCode()
endfunction
function Add_Strength_Actions takes nothing returns nothing
local unit u=GetTriggerUnit()
local integer Str=GetHeroStr(u,false)+1
if udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] >0 then
set udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] = udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] - 1
call SetHeroStr(u,Str,true)
call DisplayTimedTextToPlayer( GetOwningPlayer(u), 0.52, -1.00, 2.00, "|cffff0000You have|r " + I2S(udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))]) + " |cffff0000attribute points left!|r" )
else
call SimError(GetOwningPlayer(u),"Not enough attribute points left")
endif
endfunction
function Add_Intelligence_Conditions takes nothing returns boolean
return GetSpellAbilityId() == IntelligenceRawCode()
endfunction
function Add_Intelligence_Actions takes nothing returns nothing
local unit u=GetTriggerUnit()
local integer Int=GetHeroInt(u,false)+1
if udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] >0 then
set udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] = udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] - 1
call SetHeroInt(u,Int,true)
call DisplayTimedTextToPlayer( GetOwningPlayer(u), 0.52, -1.00, 2.00, "|cffff0000You have|r " + I2S(udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))]) + " |cffff0000attribute points left!|r" )
else
call SimError(GetOwningPlayer(u),"Not enough attribute points left")
endif
endfunction
function Add_Agility_Conditions takes nothing returns boolean
return GetSpellAbilityId() == AgilityRawCode()
endfunction
function Add_Agility_Actions takes nothing returns nothing
local unit u=GetTriggerUnit()
local integer Agi=GetHeroAgi(u,false)+1
if udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] >0 then
set udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] = udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))] - 1
call SetHeroAgi(u,Agi,true)
call DisplayTimedTextToPlayer( GetOwningPlayer(u), 0.52, -1.00, 2.00, "|cffff0000You have|r " + I2S(udg_A_SkillPointsLeft[GetConvertedPlayerId(GetOwningPlayer(u))]) + " |cffff0000attribute points left!|r" )
else
call SimError(GetOwningPlayer(u),"Not enough attribute points left")
endif
endfunction
//===========================================================================
function InitTrig_Atrribute_System takes nothing returns nothing
local trigger A_Agi=CreateTrigger()
local trigger A_Str=CreateTrigger()
local trigger A_Int=CreateTrigger()
set gg_trg_Atrribute_System = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Atrribute_System, EVENT_PLAYER_HERO_LEVEL )
call TriggerAddAction( gg_trg_Atrribute_System, function Trig_Atrribute_System_Actions )
call TriggerRegisterAnyUnitEventBJ( A_Agi, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( A_Agi, Condition( function Add_Agility_Conditions ) )
call TriggerAddAction( A_Agi, function Add_Agility_Actions )
call TriggerRegisterAnyUnitEventBJ( A_Str, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( A_Str, Condition( function Add_Strength_Conditions ) )
call TriggerAddAction( A_Str, function Add_Strength_Actions )
call TriggerRegisterAnyUnitEventBJ( A_Int, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( A_Int, Condition( function Add_Intelligence_Conditions ) )
call TriggerAddAction( A_Int, function Add_Intelligence_Actions )
endfunction