function D2H takes destructable d returns handle
return d
endfunction
function U2H takes unit u returns handle
return u
endfunction
function GoldBountyDestructable takes destructable whichDestructable, integer bounty, force killers returns nothing
local texttag tt = CreateTextTag()
local string text = "+" + I2S(bounty)
call SetTextTagText(tt, text, 0.024)
call SetTextTagPos(tt, GetDestructableX(whichDestructable)-16.0, GetDestructableY(whichDestructable), 0.0)
call SetTextTagColor(tt, 255, 220, 0, 255)
call SetTextTagVelocity(tt, 0.0, 0.03)
call SetTextTagVisibility(tt, IsPlayerInForce(GetLocalPlayer(), killers))
call SetTextTagFadepoint(tt, 2.0)
call SetTextTagLifespan(tt, 3.0)
call SetTextTagPermanent(tt, false)
set text = null
set tt = null
endfunction
function GoldBounty takes unit whichUnit, integer bounty, player killer returns nothing
local texttag tt = CreateTextTag()
local string text = "+" + I2S(bounty)
call SetTextTagText(tt, text, 0.024)
call SetTextTagPos(tt, GetUnitX(whichUnit)-16.0, GetUnitY(whichUnit), 0.0)
call SetTextTagColor(tt, 255, 220, 0, 255)
call SetTextTagVelocity(tt, 0.0, 0.03)
call SetTextTagVisibility(tt, GetLocalPlayer()==killer)
call SetTextTagFadepoint(tt, 2.0)
call SetTextTagLifespan(tt, 3.0)
call SetTextTagPermanent(tt, false)
set text = null
set tt = null
endfunction
function PlayerColorToString takes playercolor playerColor returns string
if (playerColor == PLAYER_COLOR_RED) then
return "00FF0303"
elseif (playerColor == PLAYER_COLOR_BLUE) then
return "000042FF"
elseif (playerColor == PLAYER_COLOR_CYAN) then
return "001CE6B9"
elseif (playerColor == PLAYER_COLOR_PURPLE) then
return "00540081"
elseif (playerColor == PLAYER_COLOR_YELLOW) then
return "00FFFC01"
elseif (playerColor == PLAYER_COLOR_ORANGE) then
return "00fEBA0E"
elseif (playerColor == PLAYER_COLOR_GREEN) then
return "0020C000"
elseif (playerColor == PLAYER_COLOR_PINK) then
return "00E55BB0"
elseif (playerColor == PLAYER_COLOR_LIGHT_GRAY) then
return "00959697"
elseif (playerColor == PLAYER_COLOR_LIGHT_BLUE) then
return "007EBFF1"
elseif (playerColor == PLAYER_COLOR_AQUA) then
return "00106246"
elseif (playerColor == PLAYER_COLOR_BROWN) then
return "004E2A04"
elseif (playerColor == PLAYER_COLOR_MAROON) then
return "ff9c0000"
elseif (playerColor == PLAYER_COLOR_NAVY) then
return "ff0000c3"
elseif (playerColor == PLAYER_COLOR_TURQUOISE) then
return "ff00ebff"
elseif (playerColor == PLAYER_COLOR_VIOLET) then
return "ffbd00ff"
elseif (playerColor == PLAYER_COLOR_WHEAT) then
return "ffecce87"
elseif (playerColor == PLAYER_COLOR_PEACH) then
return "fff7a58b"
elseif (playerColor == PLAYER_COLOR_MINT) then
return "ffbfff81"
elseif (playerColor == PLAYER_COLOR_LAVENDER) then
return "ffdbb8eb"
elseif (playerColor == PLAYER_COLOR_COAL) then
return "ff4f5055"
elseif (playerColor == PLAYER_COLOR_SNOW) then
return "ffecf0ff"
elseif (playerColor == PLAYER_COLOR_EMERALD) then
return "ff00781e"
elseif (playerColor == PLAYER_COLOR_PEANUT) then
return "ffa56f34"
endif
//Player Neutral: Black |cff2e2d2e
return "ff2e2d2e"
endfunction
function GetTextWithPlayerColor takes playercolor playerColor, string text returns string
return "|c" + PlayerColorToString(playerColor) + text + "|r"
endfunction
function GetPlayerNameColored takes player whichPlayer returns string
return GetTextWithPlayerColor(GetPlayerColor(whichPlayer), GetPlayerName(whichPlayer))
endfunction
function GetHeroProperNameColored takes unit hero returns string
return GetTextWithPlayerColor(GetPlayerColor(GetOwningPlayer(hero)), GetHeroProperName(hero))
endfunction
function GetHeroProperNameColoredByPlayer takes player whichPlayer returns string
if (udg_Hero[GetConvertedPlayerId(whichPlayer)] == null) then
return GetPlayerNameColored(whichPlayer)
endif
return GetHeroProperNameColored(udg_Hero[GetConvertedPlayerId(whichPlayer)])
endfunction
function Index2D takes integer value0, integer value1, integer maxValue1 returns integer
return (value0 * maxValue1) + value1
endfunction
function IconEnabled takes string iconPath returns string
local integer index = FindLastIndex(iconPath, "\\")
if (index != -1 and SubString(iconPath, index + 1, index + 4) == "DIS") then
return "ReplaceableTextures\\CommandButtons\\" + SubString(iconPath, index + 3, StringLength(iconPath))
endif
return iconPath
endfunction
function IconDisabled takes string iconPath returns string
local integer index = FindLastIndex(iconPath, "\\")
if (index != -1 and SubString(iconPath, index + 1, index + 4) == "BTN") then
return "ReplaceableTextures\\CommandButtonsDisabled\\DIS" + SubString(iconPath, index + 1, StringLength(iconPath))
endif
return iconPath
endfunction
library String
//String functions v1.04
//made by MaskedPoptart
//--------------------IMPORTANT FUNCTIONS------------------------
function FindIndexFrom takes string mainString, string stringToFind, integer startingIndex returns integer
local integer msLength = StringLength(mainString)
local integer sfLength = StringLength(stringToFind)
local integer i = startingIndex
if(sfLength > msLength or i < 0)then
return -1
endif
loop
exitwhen i > msLength - sfLength
if(SubString(mainString, i, i+sfLength) == stringToFind)then
return i
endif
set i = i + 1
endloop
return -1
endfunction
function FindIndex takes string mainString, string stringToFind returns integer
return FindIndexFrom(mainString, stringToFind, 0)
endfunction
function FindLastIndexFrom takes string mainString, string stringToFind, integer startingIndex returns integer
local integer msLength = StringLength(mainString)
local integer sfLength = StringLength(stringToFind)
local integer i = msLength-sfLength
if(startingIndex < i)then
set i = startingIndex
endif
if(sfLength > msLength)then
return -1
endif
loop
exitwhen i < 0
if(SubString(mainString, i, i+sfLength) == stringToFind)then
return i
endif
set i = i - 1
endloop
return -1
endfunction
function FindLastIndex takes string mainString, string stringToFind returns integer
return FindLastIndexFrom(mainString, stringToFind, 2147483647)
endfunction
//----------------------CHAT EVENT FUNCTIONS------------------------------
function RemoveString takes string mainString, string toRemove returns string
local integer i = 0
local string currentString
local integer msLength = StringLength(mainString)
local integer trLength = StringLength(toRemove)
if(trLength > msLength)then
return mainString
endif
loop
exitwhen i+trLength > msLength
set currentString = SubString(mainString, i, i+trLength)
if(currentString == toRemove)then
if(i+trLength <= msLength)then
set mainString = SubString(mainString, 0, i)+SubString(mainString, i+trLength, msLength)
else
set mainString = SubString(mainString, 0, i)
endif
set i = i - trLength
endif
set i = i + 1
endloop
return mainString
endfunction
endlibrary
library UnitZ
globals
private location Loc = Location(0., 0.)
endglobals
function GetTerrainZ takes real x, real y returns real
call MoveLocation(Loc, x, y)
return GetLocationZ(Loc)
endfunction
function GetUnitZ takes unit whichUnit returns real
return GetTerrainZ(GetUnitX(whichUnit), GetUnitY(whichUnit)) + GetUnitFlyHeight(whichUnit)
endfunction
function SetUnitZ takes unit whichUnit, real newZ returns nothing
call UnitAddAbility(whichUnit, 'Arav')
call UnitRemoveAbility(whichUnit, 'Arav')
call SetUnitFlyHeight(whichUnit, newZ - GetTerrainZ(GetUnitX(whichUnit), GetUnitY(whichUnit)), 0.)
endfunction
endlibrary
library Knockback initializer Init
globals
group knockbackTargets = null
item It = null
endglobals
////////////////////Vexorian's Check Pathability////////////////////
function CheckPathabilityTrickGet takes nothing returns nothing
set bj_rescueChangeColorUnit = bj_rescueChangeColorUnit or (GetEnumItem()!=bj_itemRandomCurrentPick)
endfunction
function CheckPathabilityTrick takes real x, real y returns boolean
local integer i = 30
local real X
local real Y
local rect r
call SetItemPosition(It, x, y)
set X = GetItemX(It) - x
set Y = GetItemY(It) - y
if X * X + Y * Y <= 100 then
return true
endif
set r = Rect(x - i, y - i, x + i, y + i)
set bj_rescueChangeColorUnit = false
call EnumItemsInRect(r, null, function CheckPathabilityTrickGet)
call RemoveRect(r)
set r = null
return bj_rescueChangeColorUnit
endfunction
function CheckPathability takes real x, real y returns boolean
local boolean b = CheckPathabilityTrick(x,y)
call SetItemVisible(It,false)
return b
endfunction
///////////////////////////////////////////////////////////////////
private struct Knockback
unit target
real d1
real d2
real sin
real cos
real r
string efect
string attachmentPoint
endstruct
function Knockback_TreeFilter takes nothing returns boolean
local integer d = GetDestructableTypeId(GetFilterDestructable())
return d == 'ATtr' or d == 'BTtw' or d == 'KTtw' or d == 'YTft' or d == 'JTct' or d == 'YTst' or d == 'YTct' or d == 'YTwt' or d == 'JTwt' or d == 'JTwt' or d == 'FTtw' or d == 'CTtr' or d == 'ITtw' or d == 'NTtw' or d == 'OTtw' or d == 'ZTtw' or d == 'WTst' or d == 'LTlt' or d == 'GTsh' or d == 'Xtlt' or d == 'WTtw' or d == 'Attc' or d == 'BTtc' or d == 'CTtc' or d == 'ITtc' or d == 'NTtc' or d == 'ZTtc'
endfunction
function Knockback_KillTree takes nothing returns nothing
call KillDestructable(GetEnumDestructable())
endfunction
globals
timer Timer = CreateTimer()
boolexpr filter
Knockback array ar
integer Total = 0
constant real Interval = 0.04
endglobals
private function Loop takes nothing returns nothing
local Knockback knock
local integer i = 0
local real x
local real y
local rect r
loop
exitwhen i >= Total
set knock = ar[i]
set x = GetUnitX(knock.target) + knock.d1 * knock.cos
set y = GetUnitY(knock.target) + knock.d1 * knock.sin
if knock.r != 0 then
set r = Rect(x - knock.r, y - knock.r, x + knock.r, y + knock.r)
call EnumDestructablesInRect(r, filter, function Knockback_KillTree)
call RemoveRect(r)
endif
if CheckPathability(x, y) then
call SetUnitX(knock.target, x)
call SetUnitY(knock.target, y)
call DestroyEffect(AddSpecialEffectTargetUnitBJ(knock.attachmentPoint, knock.target, knock.efect))
endif
set knock.d1 = knock.d1 - knock.d2
if knock.d1 <= 0 or not CheckPathability(x, y) then
set ar[i] = ar[Total - 1]
set Total = Total - 1
call PauseUnit(knock.target, false)
call GroupRemoveUnit(knockbackTargets, knock.target)
call knock.destroy()
endif
set i = i + 1
endloop
if Total == 0 then
call PauseTimer(Timer)
endif
endfunction
function KnockbackUnit takes unit target, real distance, real angle, real duration, real radius, string efect, string attachmentPoint returns nothing
local Knockback kd = Knockback.create()
local integer q = R2I(duration / Interval)
set kd.target = target
set kd.d1 = 2 * distance / (q + 1)
set kd.d2 = kd.d1 / q
set kd.cos = Cos(angle * bj_DEGTORAD)
set kd.sin = Sin(angle * bj_DEGTORAD)
set kd.r = radius
set kd.efect = efect
set kd.attachmentPoint = attachmentPoint
call PauseUnit(target, true)
if Total == 0 then
call TimerStart(Timer, Interval, true, function Loop)
endif
set ar[Total] = kd
set Total = Total + 1
call GroupAddUnit(knockbackTargets, target)
endfunction
function GetKnockbackTargets takes nothing returns group
return knockbackTargets
endfunction
private function Init takes nothing returns nothing
set knockbackTargets = CreateGroup()
set It = CreateItem('ciri', 0, 0)
set filter = Filter(function Knockback_TreeFilter)
endfunction
endlibrary
library ThrowingAxe
globals
private constant integer ABILITY_ID = 'A06C'
private constant integer MAX_TARGETS = 5
private constant real MAX_NEXT_TARGET_RANGE = 1200.0
private constant real DAMAGE_BONUS_PER_ABILITY_LEVEL = 30.0
private constant real DAMAGE_BONUS_PER_TARGET = 30.0
endglobals
private function GetNextTargetFilter takes nothing returns boolean
return not IsUnitType(GetFilterUnit(), UNIT_TYPE_MECHANICAL)
endfunction
private function GetNextTarget takes unit gimli, unit source returns unit
local group g = CreateGroup()
local group tmp = CreateGroup()
local unit first = null
call GroupEnumUnitsInRange(g, GetUnitX(source), GetUnitY(source), MAX_NEXT_TARGET_RANGE, Filter(function GetNextTargetFilter))
loop
set first = FirstOfGroup(g)
exitwhen (first == null)
call GroupRemoveUnit(g, first)
if (IsUnitEnemy(first, GetOwningPlayer(gimli))) then
call GroupAddUnit(tmp, first)
endif
endloop
set first = FirstOfGroup(tmp)
call DestroyGroup(g)
set g = null
call DestroyGroup(tmp)
set tmp = null
return first
endfunction
function ThrowingAxeEx takes integer abilityId, unit gimli, unit source, unit target, integer counter returns nothing
local lightning l = AddLightning("MFPB", true, GetUnitX(source), GetUnitY(source), GetUnitX(target), GetUnitY(target))
local unit nextTarget = GetNextTarget(gimli, target)
call UnitDamageTargetBJ(gimli,target, GetUnitAbilityLevel(gimli, abilityId) * DAMAGE_BONUS_PER_ABILITY_LEVEL + (counter - 1) * DAMAGE_BONUS_PER_TARGET, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_NORMAL)
call TriggerSleepAction(2.0)
call DestroyLightning(l)
set l = null
if (nextTarget != null and counter < MAX_TARGETS) then
call ThrowingAxeEx(abilityId, gimli, target, nextTarget, counter + 1)
endif
endfunction
function ThrowingAxe takes unit gimli, unit target returns nothing
call ThrowingAxeEx(ABILITY_ID, gimli, gimli, target, 1)
endfunction
endlibrary
Name | Type | is_array | initial_value |
AbyssDummies | group | No | |
AI | boolean | Yes | |
AISiegeTowers | group | No | |
AISiegeTowerTarget1 | unit | No | UnitNull |
AISiegeTowerTarget2 | unit | No | UnitNull |
AISiegeTowerTarget3 | unit | No | UnitNull |
AISiegeTowerTarget4 | unit | No | UnitNull |
AISiegeTowerTarget5 | unit | No | UnitNull |
AISiegeTowerTarget6 | unit | No | UnitNull |
AIWhiteTreeAttackedTimer | timer | No | |
AllBarackUnitTypesWithLimits | unitcode | Yes | |
AllBarracks | group | No | |
AllBarracksUnitTypes | hashtable | No | |
AllBarrackUnitTypes | unitcode | Yes | |
AllBarrackUnitTypesAbilities | abilcode | Yes | |
AllBarrackUnitTypesIcons | string | Yes | |
AllBarrackUnitTypesLimits | integer | Yes | |
AllBarrackUnitTypesOrders | string | Yes | |
AllBarrackUnitTypesSize | integer | No | |
AllBarrackUnitTypesWithLimitsS | integer | No | |
AllForges | group | No | |
AllForgesFloatingTexts | hashtable | No | |
AllForgesUpgrades | techcode | Yes | |
AllForgesUpgradesSize | integer | No | |
AllInitialPlayingPlayers | force | No | |
AllLivingTrebuchets | group | No | |
AllRallyPoints | unit | Yes | |
AllRallyPointsFollower | group | Yes | |
AllRallyPointsGroup | group | No | |
AllTrebuchets | group | No | |
AllTrebuchetsCounter | integer | No | |
AllTrebuchetsHashTable | hashtable | No | |
AmbassadorDummies | group | No | |
ArmyOfTheDead | group | No | |
ArmyOfTheDeadTime | real | No | 1680.00 |
ArmyOfTheDeadTimer | timer | No | |
ArmyOfTheDeadTimerWindow | timerdialog | No | |
AutoAttack | boolean | Yes | |
BannerOfRhunCaster | unit | No | |
BannerOfRhunDummies | group | No | |
BrothersInArmsHouses | destructable | Yes | |
BrothersInArmsSize | integer | No | |
CameraDistance | real | Yes | |
CameraRotation | real | Yes | |
ChargingRiders | group | No | |
ChargingRidersTargets | group | No | |
CinematicIsRunning | boolean | No | |
ControlMumakHashTable | hashtable | No | |
CrippleDummies | group | No | |
DamageDetectionGroup | group | No | |
DeathDummyGroup | group | No | |
DeathSpecialEffects | effect | Yes | |
DeathSpecialEffectsSize | integer | No | |
DevourDummies | group | No | |
DevourHashTable | hashtable | No | |
DevourTargets | group | No | |
EasterlingsMarchDummies | group | No | |
EasterlingsMarchTargets | group | No | |
EffecLight | effect | No | |
EventArmyOfDeadSpawned | boolean | No | |
EventRohanAndMumakilSpawned | boolean | No | |
FadeTime | real | No | 0.20 |
FadeTimeWait | real | No | 0.40 |
FinalArmyFromMordor | group | No | |
FinalArmyFromMordorLeaderboard | leaderboard | No | |
FlameOfAnorGroupDummies | group | No | |
FlameOfAnorGroupTargets | group | No | |
FlameOfAnorHashTable | hashtable | No | |
GameHasEnded | boolean | No | |
Gate1 | unit | No | |
Gate1Destructable | destructable | No | |
Gate1FloatingText | texttag | No | |
Gate2 | unit | No | |
Gate2Destructable | destructable | No | |
Gate2FloatingText | texttag | No | |
Gate3 | unit | No | |
Gate3Destructable | destructable | No | |
Gate3FloatingText | texttag | No | |
Gate4 | unit | No | |
Gate4Destructable | destructable | No | |
Gate4FloatingText | texttag | No | |
Gate5 | unit | No | |
Gate5Destructable | destructable | No | |
Gate5FloatingText | texttag | No | |
Gate6 | unit | No | |
Gate6Destructable | destructable | No | |
Gate6FloatingText | texttag | No | |
Gate7 | unit | No | |
Gate7Destructable | destructable | No | |
Gate7FloatingText | texttag | No | |
GateMinasTirith | unit | No | |
GatePositionBehind | location | No | |
Gates | group | No | |
GatesAliveCounter | integer | No | |
GatesTotalCounter | integer | No | |
GiveGoldAmount | integer | No | |
GivePlayerNumber | integer | No | |
Gondor | player | No | Player21 |
GondorAndHumans | force | No | |
GondorHumanPlayers | force | No | |
GondorHumanPlayersCounter | integer | No | |
GondorPlayer | force | No | Force21 |
GrabSoldiersHashTable | hashtable | No | |
Grond | unit | No | |
GrondAfkTimer | timer | No | |
GrondMarker | minimapicon | No | |
GuardOfTheCitadelDummies | group | No | |
HealFromWaterTimer | timer | No | |
Hero | unit | Yes | UnitNull |
HeroDeaths | integer | Yes | |
HeroKillBonusGold | integer | No | 150 |
HeroKills | integer | Yes | |
HeroSelector | unit | Yes | |
HeroStartXP | integer | Yes | |
HeroTypesGondor | unitcode | Yes | |
HeroTypesGondorSize | integer | No | |
HeroTypesMordor | unitcode | Yes | |
HeroTypesMordorSize | integer | No | |
HornOfRhunDummies | group | No | |
Houses | destructable | Yes | |
HousesFire | effect | Yes | |
HousesHasFire | boolean | Yes | |
HousesInitialSize | integer | No | |
HousesLivingSize | integer | No | |
HousesSize | integer | No | |
IncreaseMoraleCaster | unit | No | |
IncreaseMoraleDummies | group | No | |
IncreaseMoraleLightning | lightning | No | |
IncreaseMoraleLightningExists | boolean | No | |
IncreaseMoraleLocation | location | No | |
InitialUserPlayersCount | integer | No | |
IntegerC | integer | No | |
IntegerD | integer | No | |
KickPlayerNumber | integer | No | |
KickVotedYes | boolean | Yes | |
KickYesVotes | integer | No | |
LightBeaconDummies | group | No | |
LimitBannerman | integer | No | 2 |
LimitBattleTrolls | integer | No | 5 |
LimitCatapults | integer | No | 2 |
LimitGrond | integer | No | 1 |
LimitMumakil | integer | No | 1 |
LimitRidersOfRohan | integer | No | 15 |
LimitSiegeTowers | integer | No | 1 |
LimitTrollDrummers | integer | No | 1 |
MaxPlayers | integer | No | 12 |
MaxPriorities | integer | No | 20 |
MockPlayerTimer | timer | Yes | |
MocksOn | boolean | Yes | |
Mordor | player | No | Player20 |
MordorAndHumans | force | No | |
MordorHumanPlayers | force | No | |
MordorHumanPlayersCounter | integer | No | |
MordorPlayer | force | No | Force20 |
MordorTargetGate | unit | No | UnitNull |
Multiboard | multiboard | No | |
MultiboardOnlinePlayersCounter | integer | No | |
MultiboardPlayerRow | integer | Yes | |
MultiboardRow | integer | No | 1 |
Mumakil | group | No | |
MusicOff | boolean | Yes | |
NoneOrder | ordercode | No | |
OrcArmyAgainstRohan | group | No | |
PeterJacksonSentence | string | Yes | |
PeterJacksonSentenceSize | integer | No | |
PowerfulStaffCaster | unit | No | |
PowerfulStaffDummies | group | No | |
PowerfulStaffTargets | group | No | |
PreparationSkipVotes | boolean | Yes | |
PreparationTime | real | No | 90.00 |
PreparationTimer | timer | No | |
PreparationTimerWindow | timerdialog | No | |
RepickTimeBlocker | real | No | 180.00 |
RepickTimer | timer | Yes | |
RevivalTime | real | No | 30.00 |
RevivalTimer | timer | Yes | |
RevivalTimerWindow | timerdialog | Yes | |
RidersOfRohan | group | No | |
RidersOfRohanTime | real | No | 1020.00 |
RidersOfRohanTimer | timer | No | |
RidersOfRohanTimerWindow | timerdialog | No | |
RidingRiders | group | No | |
RidingRidersHashTable | hashtable | No | |
SelfRepairSpecialEffects | effect | Yes | |
SelfRepairSpecialEffectsSize | integer | No | |
SelfRepairUnits | group | No | |
SiegeTower1 | unit | No | UnitNull |
SiegeTower1Blocker | destructable | No | |
SiegeTower1Facing | real | No | 48.00 |
SiegeTower2 | unit | No | UnitNull |
SiegeTower2Blocker | destructable | No | |
SiegeTower2Facing | real | No | 65.00 |
SiegeTower3 | unit | No | UnitNull |
SiegeTower3Blocker | destructable | No | |
SiegeTower3Facing | real | No | 78.00 |
SiegeTower4 | unit | No | UnitNull |
SiegeTower4Blocker | destructable | No | |
SiegeTower4Facing | real | No | 96.00 |
SiegeTower5 | unit | No | UnitNull |
SiegeTower5Blocker | destructable | No | |
SiegeTower5Facing | real | No | 116.00 |
SiegeTower6 | unit | No | UnitNull |
SiegeTower6Blocker | destructable | No | |
SiegeTower6Facing | real | No | 133.00 |
SiegeTower7 | unit | No | UnitNull |
SiegeTower8 | unit | No | UnitNull |
SiegeTowerArrivalEffects | effect | Yes | |
SiegeTowerArrivalEffectsSize | integer | No | |
SingASongDummies | group | No | |
SkipCinematic | boolean | No | |
SkipCinematicCounter | integer | No | 0 |
SkipCinematicPlayer | boolean | Yes | |
SpawnedArmy | group | Yes | |
SpawnFloatingTextSize | real | No | 5.00 |
SpawnInterval | real | No | 1.00 |
SpawnTimer | timer | No | |
StartGold | integer | No | 200 |
StartItemTeleportStaff | item | Yes | ItemNull |
StingHashTable | hashtable | No | |
SubmergeCast | boolean | No | |
SubmergeVisibilityModifier | fogmodifier | No | |
TavernGondor | unit | No | UnitNull |
TavernMordor | unit | No | UnitNull |
ThunderstormSound | sound | No | |
TmpAbility | abilcode | No | |
TmpBoolean | boolean | No | |
TmpBoolean2 | boolean | No | |
TmpDestructable | destructable | No | |
TmpFloatingText | texttag | No | |
TmpGroup | group | No | |
TmpGroup2 | group | No | |
TmpHandle | handle | No | |
TmpHandle2 | handle | No | |
TmpInt | integer | No | |
TmpInt2 | integer | No | |
TmpInt3 | integer | No | |
TmpInt4 | integer | No | |
TmpInt5 | integer | No | |
TmpInt6 | integer | No | |
TmpLocation | location | No | |
TmpPlayer | player | No | |
TmpPlayer2 | player | No | |
TmpPlayerGroup | force | No | |
TmpReal | real | No | |
TmpRect | rect | No | |
TmpSound | sound | No | |
TmpString | string | No | |
TmpString2 | string | No | |
TmpTimer | timer | No | |
TmpTimer2 | timer | No | |
TmpTrigger | trigger | No | |
TmpUnit | unit | No | |
TmpUnit2 | unit | No | |
TmpUnitType | unitcode | No | |
TmpUnitType2 | unitcode | No | |
TmpUnitTypes | unitcode | Yes | |
TmpUnitTypesSize | integer | No | |
TmpUpgrade | techcode | No | |
TrebuchetAttacksEnabled | boolean | No | |
TrebuchtFlagUnit | unit | No | |
TrolAuraLevel | integer | No | |
TrollAuraCaster | unit | No | |
TrollAuraDummies | group | No | |
TrollAuraTargets | group | No | |
UnitKills | integer | Yes | |
UnitLosses | integer | Yes | |
VotekickPlayerRefreshTime | real | No | 60.00 |
VotekickPlayerTimer | timer | Yes | |
VotekickTimeLimit | real | No | 30.00 |
VotekickTimer | timer | No | |
VotekickTimerWindow | timerdialog | No | |
WhiteTreeCapaultWarningTimer | timer | Yes | |
WhiteTreeWarningTimer | timer | No |