А как же реализации на cJass, vJass и чистом JASS без jasshelper и т.п.?
Версия на wurst будет тоже или нет?
cJass идёт лесом
Чем тебе cJass не угодил?
Телескопы нынче дорогие.
Это не аргумент.
Можно не сарказмом?
Или тебе не нравится один его неприятный фактор, или как он обрабатывает код?
Способ реализации: Zinc
globals //globals from SpellHolyBoltAOE: constant boolean LIBRARY_SpellHolyBoltAOE=true group SpellHolyBoltAOE__g=CreateGroup() unit SpellHolyBoltAOE__caster unit SpellHolyBoltAOE__target real SpellHolyBoltAOE__x real SpellHolyBoltAOE__y real SpellHolyBoltAOE__range real SpellHolyBoltAOE__heal real SpellHolyBoltAOE__damage real SpellHolyBoltAOE__life real array SpellHolyBoltAOE__data boolean SpellHolyBoltAOE__isEnemy boolean SpellHolyBoltAOE__isUndead integer SpellHolyBoltAOE__level constant integer SpellHolyBoltAOE__abilityId='SHhb' constant integer SpellHolyBoltAOE__allyUndeadAction=0 constant integer SpellHolyBoltAOE__enemyNoUndeadAction=0 constant string SpellHolyBoltAOE__spellEffect="HolyLight.mdx" constant string SpellHolyBoltAOE__spellEffectAttach="origin" constant attacktype SpellHolyBoltAOE__attackType=ATTACK_TYPE_MAGIC //endglobals from SpellHolyBoltAOE // Generated trigger gg_trg_SpellHolyBoltAOE= null trigger l__library_init //JASSHelper struct globals: endglobals native UnitAlive takes unit u returns boolean //library SpellHolyBoltAOE: function SpellHolyBoltAOE__getRange takes nothing returns real set SpellHolyBoltAOE__data[1]=100 // 2 уровень set SpellHolyBoltAOE__data[2]=200 // 3 уровень set SpellHolyBoltAOE__data[3]=300 return SpellHolyBoltAOE__data[SpellHolyBoltAOE__level] endfunction function SpellHolyBoltAOE__getHeal takes nothing returns real set SpellHolyBoltAOE__data[1]=200 // 2 уровень set SpellHolyBoltAOE__data[2]=400 // 3 уровень set SpellHolyBoltAOE__data[3]=600 return SpellHolyBoltAOE__data[SpellHolyBoltAOE__level] endfunction function SpellHolyBoltAOE__getDamage takes nothing returns real set SpellHolyBoltAOE__data[1]=100 // 2 уровень set SpellHolyBoltAOE__data[2]=200 // 3 уровень set SpellHolyBoltAOE__data[3]=300 return SpellHolyBoltAOE__data[SpellHolyBoltAOE__level] endfunction function SpellHolyBoltAOE__isTarget takes nothing returns boolean if ( IsUnitType(SpellHolyBoltAOE__target, UNIT_TYPE_STRUCTURE) ) then // Отсеиваем механических юнитов return false endif if ( IsUnitType(SpellHolyBoltAOE__target, UNIT_TYPE_MECHANICAL) ) then // Отсеиваем летающих юнитов return false endif if ( IsUnitType(SpellHolyBoltAOE__target, UNIT_TYPE_FLYING) ) then // Отсеиваем кастера return false endif if ( SpellHolyBoltAOE__caster == SpellHolyBoltAOE__target ) then return false endif return true endfunction function SpellHolyBoltAOE__anon__1 takes nothing returns nothing set SpellHolyBoltAOE__target=GetEnumUnit() // Отсеиваем мёртвых юнитов if ( not ( UnitAlive(SpellHolyBoltAOE__target) ) ) then // Отсеиваем юнитов по расстоянию функцией, которая учитывает радиус юнита return endif if ( not ( IsUnitInRangeXY(SpellHolyBoltAOE__target, SpellHolyBoltAOE__x, SpellHolyBoltAOE__y, SpellHolyBoltAOE__range) ) ) then return endif set SpellHolyBoltAOE__isEnemy=IsPlayerEnemy(GetOwningPlayer(SpellHolyBoltAOE__caster), GetOwningPlayer(SpellHolyBoltAOE__target)) set SpellHolyBoltAOE__isUndead=IsUnitType(SpellHolyBoltAOE__target, UNIT_TYPE_UNDEAD) // Отсеиваем цели if ( not ( SpellHolyBoltAOE__isTarget() ) ) then // Отсеиваем дружественную нежить, если она игнорируется return endif if ( not SpellHolyBoltAOE__isEnemy and SpellHolyBoltAOE__isUndead and SpellHolyBoltAOE__allyUndeadAction == 0 ) then // Отсеиваем враждебную НЕ нежить, если она игнорируется return endif if ( SpellHolyBoltAOE__isEnemy and not SpellHolyBoltAOE__isUndead and SpellHolyBoltAOE__enemyNoUndeadAction == 0 ) then return endif call DestroyEffect(AddSpecialEffectTarget(SpellHolyBoltAOE__spellEffect, SpellHolyBoltAOE__target, SpellHolyBoltAOE__spellEffectAttach)) // Создаём эффект set SpellHolyBoltAOE__life=GetUnitState(SpellHolyBoltAOE__target, UNIT_STATE_LIFE) if ( SpellHolyBoltAOE__life < GetUnitState(SpellHolyBoltAOE__target, UNIT_STATE_MAX_LIFE) and ( ( not SpellHolyBoltAOE__isUndead and not SpellHolyBoltAOE__isEnemy ) or ( SpellHolyBoltAOE__allyUndeadAction == 1 and SpellHolyBoltAOE__isUndead and not SpellHolyBoltAOE__isEnemy ) or ( SpellHolyBoltAOE__enemyNoUndeadAction == 1 and not SpellHolyBoltAOE__isUndead and SpellHolyBoltAOE__isEnemy ) ) ) then // Лечим call SetUnitState(SpellHolyBoltAOE__target, UNIT_STATE_LIFE, SpellHolyBoltAOE__life + SpellHolyBoltAOE__heal) endif if ( ( SpellHolyBoltAOE__isUndead and SpellHolyBoltAOE__isEnemy ) or ( SpellHolyBoltAOE__allyUndeadAction == 2 and SpellHolyBoltAOE__isUndead and not SpellHolyBoltAOE__isEnemy ) or ( SpellHolyBoltAOE__enemyNoUndeadAction == 2 and not SpellHolyBoltAOE__isUndead and SpellHolyBoltAOE__isEnemy ) ) then // Наносим урон call UnitDamageTarget(SpellHolyBoltAOE__caster, SpellHolyBoltAOE__target, SpellHolyBoltAOE__damage, true, false, SpellHolyBoltAOE__attackType, DAMAGE_TYPE_NORMAL, WEAPON_TYPE_WHOKNOWS) endif endfunction function SpellHolyBoltAOE__anon__0 takes nothing returns nothing if ( SpellHolyBoltAOE__abilityId != GetSpellAbilityId() ) then return endif set SpellHolyBoltAOE__caster=GetTriggerUnit() set SpellHolyBoltAOE__level=GetUnitAbilityLevel(SpellHolyBoltAOE__caster, SpellHolyBoltAOE__abilityId) set SpellHolyBoltAOE__x=GetSpellTargetX() set SpellHolyBoltAOE__y=GetSpellTargetY() set SpellHolyBoltAOE__range=SpellHolyBoltAOE__getRange() call GroupClear(SpellHolyBoltAOE__g) call GroupEnumUnitsInRange(SpellHolyBoltAOE__g, SpellHolyBoltAOE__x, SpellHolyBoltAOE__y, SpellHolyBoltAOE__range + 200, null) set SpellHolyBoltAOE__heal=SpellHolyBoltAOE__getHeal() set SpellHolyBoltAOE__damage=SpellHolyBoltAOE__getDamage() call ForGroup(SpellHolyBoltAOE__g, function SpellHolyBoltAOE__anon__1) endfunction function SpellHolyBoltAOE__onInit takes nothing returns nothing local trigger t=CreateTrigger() local integer i set i=0 loop exitwhen ( i >= bj_MAX_PLAYER_SLOTS ) call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, null) set i=i + 1 endloop call TriggerAddAction(t, function SpellHolyBoltAOE__anon__0) endfunction //library SpellHolyBoltAOE ends //=========================================================================== // // Благодать AOE // // Warcraft III map script // Generated by the Warcraft III World Editor // Date: Tue Apr 11 02:19:50 2023 // Map Author: xgm.guru/user/nazarpunk // //=========================================================================== //*************************************************************************** //* //* Global Variables //* //*************************************************************************** function InitGlobals takes nothing returns nothing endfunction //*************************************************************************** //* //* Unit Creation //* //*************************************************************************** //=========================================================================== function CreateUnitsForPlayer0 takes nothing returns nothing local player p= Player(0) local unit u local integer unitID local trigger t local real life set u=CreateUnit(p, 'hfoo', 619.7, 331.2, 208.205) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) set u=CreateUnit(p, 'Hpal', 406.8, 256.7, 1.810) call SetHeroLevel(u, 5, false) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) call SetUnitState(u, UNIT_STATE_MANA, 360) call SelectHeroSkill(u, 'SHhb') call IssueImmediateOrder(u, "") set u=CreateUnit(p, 'hfoo', 695.8, 333.4, 200.761) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) set u=CreateUnit(p, 'ugho', 639.8, 189.2, 164.997) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) set u=CreateUnit(p, 'ugho', 725.4, 193.0, 170.308) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) endfunction //=========================================================================== function CreateNeutralHostile takes nothing returns nothing local player p= Player(PLAYER_NEUTRAL_AGGRESSIVE) local unit u local integer unitID local trigger t local real life set u=CreateUnit(p, 'hfoo', 778.6, 324.8, 194.445) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) set u=CreateUnit(p, 'hfoo', 862.5, 327.9, 192.006) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) set u=CreateUnit(p, 'ugho', 809.8, 195.0, 170.976) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) set u=CreateUnit(p, 'ugho', 900.2, 193.0, 174.032) set life=GetUnitState(u, UNIT_STATE_LIFE) call SetUnitState(u, UNIT_STATE_LIFE, 0.01 * life) endfunction //=========================================================================== function CreatePlayerBuildings takes nothing returns nothing endfunction //=========================================================================== function CreatePlayerUnits takes nothing returns nothing call CreateUnitsForPlayer0() endfunction //=========================================================================== function CreateAllUnits takes nothing returns nothing call CreatePlayerBuildings() call CreateNeutralHostile() call CreatePlayerUnits() endfunction //*************************************************************************** //* //* Triggers //* //*************************************************************************** //=========================================================================== // Trigger: SpellHolyBoltAOE //=========================================================================== function InitCustomTriggers takes nothing returns nothing //Function not found: call InitTrig_SpellHolyBoltAOE() endfunction //*************************************************************************** //* //* Players //* //*************************************************************************** function InitCustomPlayerSlots takes nothing returns nothing // Player 0 call SetPlayerStartLocation(Player(0), 0) call SetPlayerColor(Player(0), ConvertPlayerColor(0)) call SetPlayerRacePreference(Player(0), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(0), true) call SetPlayerController(Player(0), MAP_CONTROL_USER) // Player 1 call SetPlayerStartLocation(Player(1), 1) call SetPlayerColor(Player(1), ConvertPlayerColor(1)) call SetPlayerRacePreference(Player(1), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(1), true) call SetPlayerController(Player(1), MAP_CONTROL_USER) // Player 2 call SetPlayerStartLocation(Player(2), 2) call SetPlayerColor(Player(2), ConvertPlayerColor(2)) call SetPlayerRacePreference(Player(2), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(2), true) call SetPlayerController(Player(2), MAP_CONTROL_USER) // Player 3 call SetPlayerStartLocation(Player(3), 3) call SetPlayerColor(Player(3), ConvertPlayerColor(3)) call SetPlayerRacePreference(Player(3), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(3), true) call SetPlayerController(Player(3), MAP_CONTROL_USER) // Player 4 call SetPlayerStartLocation(Player(4), 4) call SetPlayerColor(Player(4), ConvertPlayerColor(4)) call SetPlayerRacePreference(Player(4), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(4), true) call SetPlayerController(Player(4), MAP_CONTROL_USER) // Player 5 call SetPlayerStartLocation(Player(5), 5) call SetPlayerColor(Player(5), ConvertPlayerColor(5)) call SetPlayerRacePreference(Player(5), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(5), true) call SetPlayerController(Player(5), MAP_CONTROL_USER) // Player 6 call SetPlayerStartLocation(Player(6), 6) call SetPlayerColor(Player(6), ConvertPlayerColor(6)) call SetPlayerRacePreference(Player(6), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(6), true) call SetPlayerController(Player(6), MAP_CONTROL_USER) // Player 7 call SetPlayerStartLocation(Player(7), 7) call SetPlayerColor(Player(7), ConvertPlayerColor(7)) call SetPlayerRacePreference(Player(7), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(7), true) call SetPlayerController(Player(7), MAP_CONTROL_USER) // Player 8 call SetPlayerStartLocation(Player(8), 8) call SetPlayerColor(Player(8), ConvertPlayerColor(8)) call SetPlayerRacePreference(Player(8), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(8), true) call SetPlayerController(Player(8), MAP_CONTROL_USER) // Player 9 call SetPlayerStartLocation(Player(9), 9) call SetPlayerColor(Player(9), ConvertPlayerColor(9)) call SetPlayerRacePreference(Player(9), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(9), true) call SetPlayerController(Player(9), MAP_CONTROL_USER) // Player 10 call SetPlayerStartLocation(Player(10), 10) call SetPlayerColor(Player(10), ConvertPlayerColor(10)) call SetPlayerRacePreference(Player(10), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(10), true) call SetPlayerController(Player(10), MAP_CONTROL_USER) // Player 11 call SetPlayerStartLocation(Player(11), 11) call SetPlayerColor(Player(11), ConvertPlayerColor(11)) call SetPlayerRacePreference(Player(11), RACE_PREF_RANDOM) call SetPlayerRaceSelectable(Player(11), true) call SetPlayerController(Player(11), MAP_CONTROL_USER) endfunction function InitCustomTeams takes nothing returns nothing // Force: TRIGSTR_002 call SetPlayerTeam(Player(0), 0) call SetPlayerTeam(Player(1), 0) call SetPlayerTeam(Player(2), 0) call SetPlayerTeam(Player(3), 0) call SetPlayerTeam(Player(4), 0) call SetPlayerTeam(Player(5), 0) call SetPlayerTeam(Player(6), 0) call SetPlayerTeam(Player(7), 0) call SetPlayerTeam(Player(8), 0) call SetPlayerTeam(Player(9), 0) call SetPlayerTeam(Player(10), 0) call SetPlayerTeam(Player(11), 0) endfunction function InitAllyPriorities takes nothing returns nothing call SetStartLocPrioCount(0, 11) call SetStartLocPrio(0, 0, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 1, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 2, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 3, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 4, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 5, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(0, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(1, 11) call SetStartLocPrio(1, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 1, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 2, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 3, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 4, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 5, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(1, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(2, 11) call SetStartLocPrio(2, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 2, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 3, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 4, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 5, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(2, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(3, 11) call SetStartLocPrio(3, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 3, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 4, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 5, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(3, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(4, 11) call SetStartLocPrio(4, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 4, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 5, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(4, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(5, 11) call SetStartLocPrio(5, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 5, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(5, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(6, 11) call SetStartLocPrio(6, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 5, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 6, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(6, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(7, 11) call SetStartLocPrio(7, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 5, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 6, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 7, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(7, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(8, 11) call SetStartLocPrio(8, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 5, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 6, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 7, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 8, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(8, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(9, 11) call SetStartLocPrio(9, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 5, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 6, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 7, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 8, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 9, 10, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(9, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(10, 11) call SetStartLocPrio(10, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 5, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 6, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 7, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 8, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 9, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(10, 10, 11, MAP_LOC_PRIO_HIGH) call SetStartLocPrioCount(11, 11) call SetStartLocPrio(11, 0, 0, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 1, 1, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 2, 2, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 3, 3, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 4, 4, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 5, 5, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 6, 6, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 7, 7, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 8, 8, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 9, 9, MAP_LOC_PRIO_HIGH) call SetStartLocPrio(11, 10, 10, MAP_LOC_PRIO_HIGH) endfunction //*************************************************************************** //* //* Main Initialization //* //*************************************************************************** //=========================================================================== function main takes nothing returns nothing call SetCameraBounds(- 3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), - 3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), - 3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), - 3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM)) call SetDayNightModels("Environment\\DNC\\DNCDalaran\\DNCDalaranTerrain\\DNCDalaranTerrain.mdl", "Environment\\DNC\\DNCDalaran\\DNCDalaranUnit\\DNCDalaranUnit.mdl") call NewSoundEnvironment("Default") call SetAmbientDaySound("DalaranRuinsDay") call SetAmbientNightSound("DalaranRuinsNight") call SetMapMusic("Music", true, 0) call CreateAllUnits() call InitBlizzard() call ExecuteFunc("SpellHolyBoltAOE__onInit") call InitGlobals() call InitCustomTriggers() endfunction //*************************************************************************** //* //* Map Configuration //* //*************************************************************************** function config takes nothing returns nothing call SetMapName("TRIGSTR_025") call SetMapDescription("TRIGSTR_032") call SetPlayers(12) call SetTeams(12) call SetGamePlacement(MAP_PLACEMENT_TEAMS_TOGETHER) call DefineStartLocation(0, 320.0, 192.0) call DefineStartLocation(1, 320.0, 192.0) call DefineStartLocation(2, 320.0, 192.0) call DefineStartLocation(3, 320.0, 192.0) call DefineStartLocation(4, 320.0, 192.0) call DefineStartLocation(5, 320.0, 192.0) call DefineStartLocation(6, 320.0, 192.0) call DefineStartLocation(7, 320.0, 192.0) call DefineStartLocation(8, 320.0, 192.0) call DefineStartLocation(9, 320.0, 192.0) call DefineStartLocation(10, 320.0, 192.0) call DefineStartLocation(11, 320.0, 192.0) // Player setup call InitCustomPlayerSlots() call SetPlayerSlotAvailable(Player(0), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(1), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(2), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(3), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(4), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(5), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(6), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(7), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(8), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(9), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(10), MAP_CONTROL_USER) call SetPlayerSlotAvailable(Player(11), MAP_CONTROL_USER) call InitGenericPlayerSlots() call InitAllyPriorities() endfunction //Struct method generated initializers/callers:
изи перевёл в православный
При снятии с публикации можно указать причину в комментарий к ресурсу.
ну или так
Ред. nazarpunk
Версия на wurst будет тоже или нет?
Ред. nazarpunk