Lightstalker
New Member
- Reaction score
- 55
Solution here: http://www.thehelper.net/forums/showpost.php?p=1091597&postcount=5
JASS:
scope SetTeams initializer Init
globals
private constant integer HEROSELECTORID = 039;n00R039;
private constant integer STARTGOLD = 750
//private constant real CENTERSHOPX = GetUnitX(gg_unit_n01E_0006)
//private constant real CENTERSHOPY = GetUnitY(gg_unit_n01E_0006)
//private constant real RECTX = GetRectCenterX(gg_rct_Select_Hero_Center)
//private constant real RECTY = GetRectCenterY(gg_rct_Select_Hero_Center)
endglobals
private function SharedVision takes nothing returns boolean
local unit u = GetFilterUnit()
call UnitShareVision(u, Player(0), true)
set u = null
return false
endfunction
private function Init takes nothing returns nothing
local integer i = 0
local fogmodifier fog = null
loop
if GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING then
//TEAM 1
if i < 5 and Player(i) != Player(i) then
//PLAYER >> CONTROLLER
call SetPlayerAllianceStateAllyBJ(Player(i), Player(5), true)
call SetPlayerAllianceStateVisionBJ(Player(i), Player(5), false)
call SetPlayerAllianceStateControlBJ(Player(i), Player(5), false)
call SetPlayerAllianceStateFullControlBJ(Player(i), Player(5), false)
//CONTROLLER >> PLAYER
call SetPlayerAllianceStateAllyBJ(Player(5), Player(i), true)
call SetPlayerAllianceStateVisionBJ(Player(5), Player(i), false)
call SetPlayerAllianceStateControlBJ(Player(5), Player(i), true)
call SetPlayerAllianceStateFullControlBJ(Player(5), Player(i), true)
call GroupEnumUnitsOfPlayer(TEMPGROUP, Player(5), Condition(function SharedVision))
//TEAM 2
elseif Player(i) != Player(i) then
//PLAYER >> CONTROLLER
call SetPlayerAllianceStateAllyBJ(Player(i), Player(11), true)
call SetPlayerAllianceStateVisionBJ(Player(i), Player(11), false)
call SetPlayerAllianceStateControlBJ(Player(i), Player(11), false)
call SetPlayerAllianceStateFullControlBJ(Player(i), Player(11), false)
//CONTROLLER >> PLAYER
call SetPlayerAllianceStateAllyBJ(Player(11), Player(i), true)
call SetPlayerAllianceStateVisionBJ(Player(11), Player(i), false)
call SetPlayerAllianceStateControlBJ(Player(11), Player(i), true)
call SetPlayerAllianceStateFullControlBJ(Player(11), Player(i), true)
call GroupEnumUnitsOfPlayer(TEMPGROUP, Player(11), Condition(function SharedVision))
endif
//ALL PLAYERS
set HEROSELECTOR<i> = CreateUnit(Player(i), HEROSELECTORID, GetUnitX(gg_unit_n01E_0006), GetUnitY(gg_unit_n01E_0006), 0.0)
set fog = CreateFogModifierRect(Player(i), FOG_OF_WAR_VISIBLE, MAPENTIRE, false, false)
set CAMDIST<i> = 2500.00
call SetCameraField(CAMERA_FIELD_TARGET_DISTANCE, CAMDIST<i>, 0.0)
call PanCameraToTimed(GetRectCenterX(gg_rct_Select_Hero_Center), GetRectCenterY(gg_rct_Select_Hero_Center), 0.0)
call SetPlayerState(Player(i), PLAYER_STATE_RESOURCE_GOLD, STARTGOLD)
//call SetPlayerAllianceStateBJ( ConvertedPlayer(GetForLoopIndexA()), Player(bj_PLAYER_NEUTRAL_EXTRA), bj_ALLIANCE_NEUTRAL )
call SetPlayerTechMaxAllowed(Player(i), 039;HERO039;, 2)
call SetPlayerState(Player(i), PLAYER_STATE_GIVES_BOUNTY, IntegerTertiaryOp(true, 1, 0))
//DISABLE ABILITIES
call SetPlayerAbilityAvailable(Player(i), 039;Aatk039;, false) //ATTACK
call SetPlayerAbilityAvailable(Player(i), 039;A00N039;, false) //HERO STATS
call SetPlayerAbilityAvailable(Player(i), 039;A00W039;, false) //HERO STATS (DISABLED)
call SetPlayerAbilityAvailable(Player(i), 039;A00L039;, false) //WAR VETERAN
call SetPlayerAbilityAvailable(Player(i), 039;ASS1039;, false) //SKILL SLOT 1
call SetPlayerAbilityAvailable(Player(i), 039;ASS2039;, false) //SKILL SLOT 2
call SetPlayerAbilityAvailable(Player(i), 039;ASS3039;, false) //SKILL SLOT 3
call SetPlayerAbilityAvailable(Player(i), 039;ASS4039;, false) //SKILL SLOT 4
//HINT
call DisplayTimedTextToPlayer(Player(i), 0.0, 0.0, 20.0, "|cff1FBF00HINT: If you039;ve never played before, I recommand you read the|r |cffFFCC00Help & Info Dialog|r |cff1FBF00(|r|cffFFCC00F9|r|cff1FBF00) to learn how to play.|r")
call DestroyFogModifier(fog)
set fog = null
endif
set i = i + 1
exitwhen i == bj_MAX_PLAYER_SLOTS
endloop
endfunction
endscope</i></i></i>