Торнадо
Уровень: (1–20)
Расход ресурсов: (15–25) маны
Время применения: 0.75 сек.
Шанс критического удара: 5.00%
Эффективность добавленного урона: 95%
Требуется Уровень (34–70), (50–98) Ловк, (35–68) Инт
Герой создаёт торнадо, многократно наносящее урон врагам вокруг. Некоторое время торнадо будет двигаться вперёд, и в этот период в него можно попасть снарядами, которые могут сталкиваться с врагами, и нанести урон словно по врагу. Затем в течение вторичного промежутка времени торнадо начнёт преследовать противника и будет отражать в него часть урона, полученного от снарядов героя, в дополнение к своему собственному урону.
Наносит от (31–414) до (46–620) физического урона
Наносит урон каждые 0.25 секунд(-ы)
Базовая длительность - 1.5 секунд(-ы)
Длительность вторичного эффекта: 4 секунд
Во время изначальной длительности, может получать удары от ваших снарядов до 20 раз
Во время второй стадии отражает 10% полученного урона во врагов
(0–57)% повышение скорости передвижения Торнадо
Максимум 1 Торнадо

Дополнительные эффекты от качества:
(0–20)% повышение скорости передвижения Торнадо
Для получения умения выберите предмет и поместите камень в гнездо соответствующего цвета. Щёлкните ПКМ, чтобы вынуть камень из гнезда.
Tornado
Level Effect /40
Implicit
Длительность вторичного эффекта: 4 секунд
Наносит урон каждые 0.25 секунд(-ы)
Во время второй стадии отражает 10% полученного урона во врагов
Максимум 1 Торнадо
Во время изначальной длительности, может получать удары от ваших снарядов до 20 раз
Базовая длительность - 1.5 секунд(-ы)
УровеньТребуется УровеньИнтЛовкРасход ресурсовНаносит от 31 до 46 физического урона#% повышение скорости передвижения ТорнадоОпыт
13435501531, 46252,595
23636531536, 543314,394
33838551642, 636388,734
44040581649, 739477,437
54242601757, 8512583,786
64444631866, 9915710,359
74646661876, 115181,355,511
84848681988, 133211,138,877
950497119102, 153241,368,233
1052517420118, 177271,638,338
1154537620136, 204301,956,648
1256557921157, 235333,655,184
1358578221181, 271363,017,327
1460598422208, 312393,576,232
1562608722239, 358429,164,731
1664629023274, 4114517,861,428
1766649224315, 4724846,032,386
1868669524361, 5415187,248,039
1969679624386, 58054157,972,052
2070689825414, 62057
217225474, 71160
227426542, 81363
237626620, 93066
247827709, 106469
258027810, 121572
268228925, 138875
2784281057, 158578
2886291206, 180881
2988301375, 206384
3090301568, 235287
3191301674, 251188
3292311787, 268090
3393311907, 286191
3494312035, 305393
3595312172, 325894
3696322318, 347796
3797322473, 371097
3898322639, 395899
3999332815, 4222100
40100333003, 4504102
Attribute /9

Торнадо

KeyValue
CostiLvl 1: Normal: 1xСфера удачи
AcronymCooldown, Chain, Recovery
DropLevel 34
BaseType Торнадо
Class Камни умений
TargetTypesGround, Enemy
TypeSpell, Duration, Trappable, Totemable, Mineable, Triggerable, Damage, Physical, Area, Orb, AreaSpell
ItemTypeMetadata/Items/Gems/SkillGemTornado
Referencepoe.ninja, Community Wiki
Горнило Оружие /1
WeightDesc
1000 (T5)Вызывает срабатывание Торнадо 20 уровня когда вы атакуете Расколотой стрелой или Вихрем стрел
Микротранзакции /1 ⍟
Акулий Торнадо
Ваше Торнадо приобретает акулий эффект.
Лабиринт Зачарование helmet /12 ⍟
УровеньИмяModWeight
Безжалостный ЛабиринтEnchantment Tornado Damage 125% увеличение урона Торнадо100
Вечный ЛабиринтEnchantment Tornado Damage 240% увеличение урона Торнадо100
Безжалостный ЛабиринтEnchantment Tornado Shot Damage 125% увеличение урона Вихря стрел100
Вечный ЛабиринтEnchantment Tornado Shot Damage 240% увеличение урона Вихря стрел100
Безжалостный ЛабиринтEnchantment Tornado Area Of Effect 116% увеличение области действия Торнадо100
Вечный ЛабиринтEnchantment Tornado Area Of Effect 224% увеличение области действия Торнадо100
Безжалостный ЛабиринтEnchantment Tornado Movement Speed 120% повышение скорости передвижения Торнадо100
Вечный ЛабиринтEnchantment Tornado Movement Speed 230% повышение скорости передвижения Торнадо100
Безжалостный ЛабиринтEnchantment Tornado Shot Critical Strike Chance 160% повышение шанса критического удара Вихря стрел100
Вечный ЛабиринтEnchantment Tornado Shot Critical Strike Chance 290% повышение шанса критического удара Вихря стрел100
Безжалостный ЛабиринтEnchantment Tornado Shot Num Of Secondary Projectiles 1Вихрь стрел выпускает дополнительный вторичный снаряд
Вечный ЛабиринтEnchantment Tornado Shot Num Of Secondary Projectiles 2Вихрь стрел выпускает дополнительный вторичный снаряд100
Supported By /83 ⍟
IconИмя
Урон огнём
Урон холодом
Расширенная область действия
Урон молнией
Учащение критических ударов
Усиление критических ударов
Отбрасывание
Вытягивание здоровья
Урон хаосом
Оглушение
Ловушка
Редкость предметов
Ускоренное сотворение чар
Средоточие
Продление
Холод в огонь
Воспламенение
Разгул стихий
Добивание
Железная воля
Колдующий тотем
Цепной подрыв
Паника
Ослепление
Пронизывающий жар
Пронизывающий холод
Пронизывающие молнии
Пронизывающие стихии
Заряд энергии при критическом ударе
Урон от горения
Касание порчи
Сокращение
Сотворение чар при смерти
Сотворение чар при получении урона
Сотворение чар при оглушении
Затруднение блока
Физический урон в молнии
Укус льда
Переохлаждение
Возбуждение
Критические удары состояниями
Манипуляция пустотой
Контролируемое разрушение
Стремительный недуг
Концентрация стихий
Распространение поджога
Шанс отравить
Смертельные состояния
Разложение
Эффективность
Едкие токсины
Жертвенность
Безграничные состояния
Жестокость
Колдовской выброс
Призыв фантома
Леденящее охлаждение
Похищение энергетического щита
Интенсивность
Усиленная мина
Пробужденный: Урон огнем
Пробужденный: Жестокость
Пробужденный: Урон от горения
Пробужденный: Пронизывающий жар
Пробужденный: Урон холодом
Пробужденный: Пронизывающий холод
Пробужденный: Смертельные состояния
Пробужденный: Стремительный недуг
Пробужденный: Манипуляция пустотой
Пробужденный: Урон хаосом
Пробужденный: Урон молнией
Пробужденный: Контролируемое разрушение
Пробужденный: Касание порчи
Пробужденный: Концентрация стихий
Пробужденный: Расширенная область действия
Пробужденный: Пронизывающие молнии
Пробужденный: Безграничные состояния
Архимаг
Злость
Перегрузка
Чародейский клинок
Пожирание
Садизм
Демон
Механизм
monster no drops or experience [1]
Tornado
SpectreN
Tagsconstruct, ghost_armour, is_unarmed, non_attacking, very_slow_movement
Здоровье
100%
Ailment Threshold
100%
Сопротивление
0 0 0 0
Damage
100%
Точность
100%
Шанс критического удара
+5%
Множитель критического удара
+130%
Attack Distance
6 ~ 6
Attack Time
1 Second
Damage Spread
±0%
Опыт
100%
Model Size
100%
Type
Tornado
Metadata
Tornado
IsSummoned
Y

Object Type

version 2
extends "Metadata/Monsters/Monster"

BaseEvents
{
	on_construction_complete = "this.immune_to_hellscape = true;"
}

Animated
{
	animated_object = "Metadata/Monsters/Daemon/Daemon.ao"
}

Positioned
{
	trigger_blocking = true
}

Stats
{
	immune_to_curses = 1
	immune_to_auras_from_other_entities = 1
	set_item_drop_slots = 0
	set_monster_no_drops_or_experience = 1
	set_monster_do_not_fracture = 1
	set_max_frenzy_charges = 0
	set_max_endurance_charges = 0
	set_max_power_charges = 0
	base_cannot_be_stunned = 1
	cannot_be_knocked_back = 1
	set_phase_through_objects = 1
	set_monster_grants_no_flask_charges = 1
	set_maximum_life_is_one = 1
	set_cannot_die = 1
	set_hidden_monster_can_have_auras = 1
	set_hide_mini_life_bar = 1
	does_not_count_as_monster = 1
}

Life
{
	corpse_usable = false
	ignore_on_life_changed_stats = true
}

Pathfinding
{
	base_speed = 8
}

DiesAfterTime
{

}

StateMachine
{
	define_shared_state =
	"
		tornado_radius;
		tornado_state;

		tornado_physical;
		tornado_fire;
		tornado_cold;
		tornado_lightning;
		tornado_chaos;
		tornado_main_element;
	"
}

Object Type Codes

version 2
extends "Metadata/Monsters/Monster"

Targetable
{
	no_highlight = true
	targetable = false
}

Render
{
	allow_attached_arrows = false
}

BaseEvents
{
	on_construction_complete =
	"
		this.animated_object.is_high_priority_effect = true;
		this.tornado_aoe = AddAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, , ScaleMiscAnimated( TornadoAoe, GetState( tornado_radius ) ), 5 );
		IfState( tornado_state, <2,
		{
			this.tornado = AddAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao,  );
			QueueAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_idle_01 );
			this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/default_Start.epk );
		} );
		IfState( tornado_state, 0,
		{
			this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/can_Target.epk );
		} );
	"
}

StateMachine
{
	define_state = "tornado_last_element"

	on_exit_state_tornado_state_0 =
	"
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/can_Target.epk );
	"

	on_change_state_tornado_radius =
	"
		IfState( tornado_state, <2,
		{
			ScaleAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, ScaleMiscAnimated( TornadoAoe, GetState( tornado_radius ) ) );
		} );
	"

	// Finished
	on_state_tornado_state_2 =
	"
		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_end_01, 1, false, true );
		Delay( 1.4, { PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_end_01 ); } );
		QueueAnimationAttachedByIndex( Metadata/Effects/Spells/tornado_spell/tornado.ao, -1 );

		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
	"
	
	// Replaced
	on_state_tornado_state_3 =
	"
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/recast_Fade.epk );
		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_end_01 );
		
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_transform.epk );

		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
	"

	on_change_state_tornado_main_element =
	"
		TriggerStateBracket( remove_element, tornado_last_element );

		IfState( tornado_main_element, 1,
		{
			TriggerStateBracket( element_to_phys, tornado_last_element );
			PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_01 );
			QueueAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_idle_01 );
			this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
		},
		{
			QueueAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_idle_elements_01 );
			this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/default_Start.epk );
			this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
		} );

		SetStateTo( tornado_last_element, GetState( tornado_main_element ) );
	"

	// Physical
	on_state_tornado_main_element_1 =
	"
	"

	// Cold
	on_state_tornado_main_element_2 =
	"
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_transform.epk, 1.0 );
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_cold_01 );
	"

	// Fire
	on_state_tornado_main_element_3 =
	"
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_transform.epk, 1.0 );
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_fire_01 );
	"

	// Lightning
	on_state_tornado_main_element_4 =
	"
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_transform.epk, 1.0 );
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_light_01 );
	"

	// Chaos
	on_state_tornado_main_element_5 =
	"
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_transform.epk, 1.0 );
		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_chaos_01 );
	"
}

Brackets
{
	define_bracket = "remove_element; element_to_phys"

	remove_element_2 = "
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
	"

	remove_element_3 = "
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
	"

	remove_element_4 = "
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
	"

	remove_element_5 = "
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_transform.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos.epk );
		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
	"

	element_to_phys_2 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_off.epk, 1.0 );"
	element_to_phys_3 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_off.epk, 1.0 );"
	element_to_phys_4 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_off.epk, 1.0 );"
	element_to_phys_5 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_off.epk, 1.0 );"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/Tornado/Tornado"] = {
    name = "Tornado",
    life = 1,
    fireResist = 0,
    coldResist = 0,
    lightningResist = 0,
    chaosResist = 0,
    damage = 1,
    damageSpread = 0,
    attackTime = 1,
    attackRange = 6,
    accuracy = 1,
    skillList = {
    },
    modList = {
    },
}
monster no drops or experience [1]
IdMonsterNoDropsOrExperience
FamilyMonsterNoDropsOrExperience
Domainsмонстр (3)
GenerationTypeУникальный (3)
Req. level1
Stats
  • monster no drops or experience Min: 1 Max: 1 Global
  • Торнадо
    Механизм
    monster no drops or experience [1]
    Tornado
    SpectreN
    Tagsconstruct, ghost_armour, is_unarmed, non_attacking, very_slow_movement
    Здоровье
    100%
    Ailment Threshold
    100%
    Сопротивление
    0 0 0 0
    Damage
    100%
    Точность
    100%
    Шанс критического удара
    +5%
    Множитель критического удара
    +130%
    Attack Distance
    6 ~ 6
    Attack Time
    1 Second
    Damage Spread
    ±0%
    Опыт
    100%
    Model Size
    100%
    Type
    Tornado
    Metadata
    TornadoShark
    IsSummoned
    Y

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    BaseEvents
    {
    	on_construction_complete = "this.immune_to_hellscape = true;"
    }
    
    Animated
    {
    	animated_object = "Metadata/Monsters/Daemon/Daemon.ao"
    }
    
    Positioned
    {
    	trigger_blocking = true
    }
    
    Stats
    {
    	immune_to_curses = 1
    	immune_to_auras_from_other_entities = 1
    	set_item_drop_slots = 0
    	set_monster_no_drops_or_experience = 1
    	set_monster_do_not_fracture = 1
    	set_max_frenzy_charges = 0
    	set_max_endurance_charges = 0
    	set_max_power_charges = 0
    	base_cannot_be_stunned = 1
    	cannot_be_knocked_back = 1
    	set_phase_through_objects = 1
    	set_monster_grants_no_flask_charges = 1
    	set_maximum_life_is_one = 1
    	set_cannot_die = 1
    	set_hidden_monster_can_have_auras = 1
    	set_hide_mini_life_bar = 1
    	does_not_count_as_monster = 1
    }
    
    Life
    {
    	corpse_usable = false
    	ignore_on_life_changed_stats = true
    }
    
    Pathfinding
    {
    	base_speed = 8
    }
    
    DiesAfterTime
    {
    
    }
    
    StateMachine
    {
    	define_shared_state =
    	"
    		tornado_radius;
    		tornado_state;
    
    		tornado_physical;
    		tornado_fire;
    		tornado_cold;
    		tornado_lightning;
    		tornado_chaos;
    		tornado_main_element;
    	"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Targetable
    {
    	no_highlight = true
    	targetable = false
    }
    
    Render
    {
    	allow_attached_arrows = false
    }
    
    BaseEvents
    {
    	on_construction_complete =
    	"
    		this.animated_object.is_high_priority_effect = true;
    		this.tornado_aoe = AddAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, , ScaleMiscAnimated( TornadoAoe, GetState( tornado_radius ) ), 5 );
    		IfState( tornado_state, <2,
    		{
    			this.tornado = AddAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao,  );
    			QueueAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_idle_01 );
    			this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/default_Start.epk );
    		} );
    		IfState( tornado_state, 0,
    		{
    			this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/can_Target.epk );
    		} );
    	"
    }
    
    StateMachine
    {
    	define_state = "tornado_last_element"
    
    	on_exit_state_tornado_state_0 =
    	"
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/can_Target.epk );
    	"
    
    	on_change_state_tornado_radius =
    	"
    		IfState( tornado_state, <2,
    		{
    			ScaleAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, ScaleMiscAnimated( TornadoAoe, GetState( tornado_radius ) ) );
    		} );
    	"
    
    	// Finished
    	on_state_tornado_state_2 =
    	"
    		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_end_01, 1, false, true );
    		Delay( 1.4, { PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_end_01 ); } );
    		QueueAnimationAttachedByIndex( Metadata/Effects/Spells/tornado_spell/tornado.ao, -1 );
    
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
    	"
    	
    	// Replaced
    	on_state_tornado_state_3 =
    	"
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/recast_Fade.epk );
    		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_end_01 );
    		
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_transform.epk );
    
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
    	"
    
    	on_change_state_tornado_main_element =
    	"
    		TriggerStateBracket( remove_element, tornado_last_element );
    
    		IfState( tornado_main_element, 1,
    		{
    			TriggerStateBracket( element_to_phys, tornado_last_element );
    			PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_01 );
    			QueueAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_idle_01 );
    			this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
    		},
    		{
    			QueueAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado.ao, tornado_idle_elements_01 );
    			this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/default_Start.epk );
    			this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Physical.epk);
    		} );
    
    		SetStateTo( tornado_last_element, GetState( tornado_main_element ) );
    	"
    
    	// Physical
    	on_state_tornado_main_element_1 =
    	"
    	"
    
    	// Cold
    	on_state_tornado_main_element_2 =
    	"
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_transform.epk, 1.0 );
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
    		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_cold_01 );
    	"
    
    	// Fire
    	on_state_tornado_main_element_3 =
    	"
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_transform.epk, 1.0 );
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
    		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_fire_01 );
    	"
    
    	// Lightning
    	on_state_tornado_main_element_4 =
    	"
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_transform.epk, 1.0 );
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
    		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_light_01 );
    	"
    
    	// Chaos
    	on_state_tornado_main_element_5 =
    	"
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_transform.epk, 1.0 );
    		this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
    		PlayAnimationAttached( Metadata/Effects/Spells/tornado_spell/tornado_aoe.ao, tornado_AoE_idle_chaos_01 );
    	"
    }
    
    Brackets
    {
    	define_bracket = "remove_element; element_to_phys"
    
    	remove_element_2 = "
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Cold.epk);
    	"
    
    	remove_element_3 = "
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Fire.epk);
    	"
    
    	remove_element_4 = "
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Lightning.epk);
    	"
    
    	remove_element_5 = "
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_transform.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos.epk );
    		this.tornado.RemoveEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/fx_Chaos.epk);
    	"
    
    	element_to_phys_2 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Cold_off.epk, 1.0 );"
    	element_to_phys_3 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Fire_off.epk, 1.0 );"
    	element_to_phys_4 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Lightning_off.epk, 1.0 );"
    	element_to_phys_5 = "this.tornado.AddEffectPack( Metadata/Effects/Spells/tornado_spell/EPKs/skin_Chaos_off.epk, 1.0 );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Tornado/TornadoShark"] = {
        name = "Tornado",
        life = 1,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1,
        damageSpread = 0,
        attackTime = 1,
        attackRange = 6,
        accuracy = 1,
        skillList = {
        },
        modList = {
        },
    }
    
    monster no drops or experience [1]
    IdMonsterNoDropsOrExperience
    FamilyMonsterNoDropsOrExperience
    Domainsмонстр (3)
    GenerationTypeУникальный (3)
    Req. level1
    Stats
  • monster no drops or experience Min: 1 Max: 1 Global
  • Community Wiki

    Edit

    Tornado

    Tornado is a skill that launches a tornado that repeatedly damages enemies around it. It will move forward for a duration, during which your projectiles can collide with it to deal damage as though it was an enemy. Then it will chase down enemies for a secondary duration, and reflect a portion of the damage it took from your projectiles to them in addition to its own damage. Note only projectiles that can collide with enemies contribute to Tornado's damage, so skills like Rolling Magma and Cremation cannot contribute.

    Version history

    VersionChanges
    3.17.0
  • Tornado now deals 31 to 46 Physical Damage at gem level 1 (previously 31 to 47) up to 414 to 620 at gem level 20 (previously 290 to 435).
  • Now has 95% Effectiveness of Added Damage at all gem levels (previously 65%).
  • 3.16.0
  • Tornado has been added to the game.

  • Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.