Прописать юнит создание в скиле

Epselot

Пользователь
11 Янв 2017
34
0
Есть строка кода:
Код:
local caster_up = CreateUnitByName(tower_up, tower_loc, false, caster, caster, caster:GetTeam())

Хочу что бы юнит который будет создан заносился в способность, обычно это делается через AbilitySpecial.
Код:
		"AbilitySpecial"
		{
			"01"
			{
				"var_type"				"FIELD_FLOAT"
				"tower_up"				"tower_stone_ii"
			}
		}

Но но не выходит занести переменную через
Код:
local tower_up = ability:GetSpecialValueFor("tower_up")

Скажите, как правильно сделать, чтоб работало?
 
Последнее редактирование модератором:

CryDeS

Друзья CG
14 Июл 2015
1,210
11
[quote author=Epselot link=topic=1295.msg8010#msg8010 date=1486201092]
Есть строка кода:
Код:
local caster_up = CreateUnitByName(tower_up, tower_loc, false, caster, caster, caster:GetTeam())

Хочу что бы юнит который будет создан заносился в способность, обычно это делается через AbilitySpecial.
Код:
		"AbilitySpecial"
		{
			"01"
			{
				"var_type"				"FIELD_FLOAT"
				"tower_up"				"tower_stone_ii"
			}
		}

Но но не выходит занести переменную через
Код:
local tower_up = ability:GetSpecialValueFor("tower_up")

Скажите, как правильно сделать, чтоб работало?
[/quote]
Во-1, что блять ты хочешь?
Во-2, какого хера у тебя указан тип FLOAT, а по факту строка?
 
Последнее редактирование модератором:

Epselot

Пользователь
11 Янв 2017
34
0
Последнее редактирование модератором:

Илья

Друзья CG
25 Сен 2015
2,348
41
Во-1, что бабушка ты хочешь?
Во-2, какого хера у тебя указан тип FLOAT, а по факту строка?

Он хочет, чтобы вместо FLOAT была строка с именем юнита.

Насколько я знаю: через speacial так не сделать, т.к. не встречал в этом блоке строковых переменных.
Но ты можешь сделать абилку не через lua, а через dd и вызывать в ней по касту скрипт, в который сможешь передать в параметрах имя.

Либо ты можешь в самой абилке, в её скрипте, хранить имена юнитов в hash table, в которой у тебя в качестве ключей к именам будут выступать цифры, которые ты уже сможешь запрашивать из ability special.
 
Последнее редактирование модератором:

Epselot

Пользователь
11 Янв 2017
34
0
Либо ты можешь в самой абилке, в её скрипте, хранить имена юнитов в hash table, в которой у тебя в качестве ключей к именам будут выступать цифры, которые ты уже сможешь запрашивать из ability special.

Да этот вариант не такой элегантный, но наверное самый простой в данном случае. А вообще странно что такой возможности нет, тоже искал, найти не смог.

А можно взять название скила, отредактировать его программно и использовать как название юинта?
 
Последнее редактирование модератором:

CryDeS

Друзья CG
14 Июл 2015
1,210
11
Можно ссылку на гайды по dd на эту тему, его не касался ещё.

Да этот вариант не такой элегантный, но наверное самый простой в данном случае. А вообще странно что такой возможности нет, тоже искал, найти не смог.

А можно взять название скила, отредактировать его программно и использовать как название юинта?
Код:
ability:GetName()
А потом делай что хочешь с этим, это ж строка.
ps. вместо бабушки было бл*дь, но гениальная система антимата такая гениальная :D
 
Последнее редактирование модератором:

Илья

Друзья CG
25 Сен 2015
2,348
41
ps. вместо бабушки было бл*дь, но гениальная система антимата такая гениальная :D


Я помню статью тут писал, так там пришлось потом перечитывать и исправлять, ибо все её "литертаурные" маты были чьими-то родственниками : ))


Можно ссылку на гайды по dd на эту тему, его не касался ещё.


Ссыль и ссыль.
 
Последнее редактирование модератором:

gameizeazy

Активный
10 Июн 2016
116
0
Я непонял что иммено ты хочеш, но если ты типо хочеш сделать что то типо,
Есть абилка ( при юзе выдает одного) , создаеться юнит - при юзе абилки она выдает другое, создаеться еще юнит - при юзе абилки создаеться еще -
делай при спавне глобальную переменную _G.MyAbility = {}, _G.MyAbility[ply].u =,потом каждого игрока заноси туда, и потом при создании юнита делай уже что хочеш, заноси в переменную _G.MyAbility[ply].u id юнита, или прибавляй 1, можеш туда еще id из кв закинуть, а если юнит сдох то абилку ему прихерач на смерть...
 

gameizeazy

Активный
10 Июн 2016
116
0
Если надо несколько юнитов делай
Код:
_G.MyAbility[id].u = {}
 

CryDeS

Друзья CG
14 Июл 2015
1,210
11
[quote author=gameizeazy link=topic=1295.msg8030#msg8030 date=1486264273]
Если надо несколько юнитов делай
Код:
_G.MyAbility.u = {}
[/quote]
Сейчас бы в глобальные переменные записывать без нужды, ага.
 

CryDeS

Друзья CG
14 Июл 2015
1,210
11
ай всё исправил
Да нихрена ты не исправил.
Ненужно записывать в глобальные переменные что то, когда можно записать это же самое с тем же самым успехом в локальные.
 
Последнее редактирование модератором:
Реклама: