Перейти к содержанию

Дайджесты за январь-февраль

Обновления гайдов и аддонов

Январь Февраль

Мониторинг серверов и редактор аддонов

Представляем вам две легенды. То, о чем можно было только мечтать, стало реальностью.

Мониторинг серверов Редактор аддонов

Подсказки из игры на вашем сайте

Теперь вы можете отображать сведения о внутриигровых элементах простым наведением курсора мыши.

Подробнее

Апдейтер аддонов

Представляем вам программу для автообновления аддонов и делимся подробностями.

Подробнее Скачать

ID корабля


ap0stol

Рекомендуемые сообщения

unit.GetTransport( unitId )

Возвращает Id о транспортном средстве, на котором находится юнит. Если игрок не находится на транспорте, или транспорт не найден, то возвращает nil.

Ссылка на комментарий
Поделиться на другие сайты

это понятно, только вот потом почему то другие функции которые в качестве параметра принимают ID кора жалуются что он(ID) nil (

Ссылка на комментарий
Поделиться на другие сайты

Стоя на коре выполняю

Code:
LogInfo ("Press")

local transportId = unit.GetTransport( avatar.GetId() )

if transportId then

local energy = object.GetTransportEnergy( transportId )

end

дает

Code:
Info: addon AstralButton: Press

Error: addon AstralButton: Error while running the chunk

Error: addon AstralButton:    [string "Mods/Addons/AstralButton/AstralButton.lua"] :37: attempt to call field `GetTransportEnergy' (a nil value)

Error: addon AstralButton:   func: GetTransportEnergy, field, line: -1, defined: C, line: -1,  [C] 

Error: addon AstralButton:     func: onAstralButtonReaction, global, line: 37, defined: Lua, line: 31,  [string "Mods/Addons/AstralButton/AstralButton.lua"]

Ссылка на комментарий
Поделиться на другие сайты

Quote:
LogInfo ("Press")
local transports = avatar.GetTransportList()
for _key, transportId in transports do
LogInfo( tostring( transportId ) )
if transportId then
local health = transport.GetHealth( transportId )
if health then
local value = health.value
end
LogInfo (value)
end
end

Quote:
Info: addon AstralButton: Press
Info: addon AstralButton: 137252
Error: addon AstralButton: Error while running the chunk
Error: addon AstralButton: [string "mods/addons/astralbutton/astralbutton.lua"] :39: attempt to call field `GetHealth' (a nil value)
Error: addon AstralButton: func: GetHealth, field, line: -1, defined: C, line: -1, [c]
Error: addon AstralButton: func: onAstralButtonReaction, global, line: 39, defined: Lua, line: 31, [string "mods/addons/astralbutton/astralbutton.lua"]

что я делаю не так?
Ссылка на комментарий
Поделиться на другие сайты

ну написано же что не такой функции GetTransportEnergy у глобала object

см. описание АПи внимательно

Ссылка на комментарий
Поделиться на другие сайты

ну пишет же нету такого метода GetHealth у глобала transport

смотри внимательно АПИ

Ссылка на комментарий
Поделиться на другие сайты

в общем разобрался =)

И ид кора получать и с астральными секторами разбираюсь.

Думаю может полезен будет аддон аналог астрал-мапа, но с возможностью прямо на нем ткнуть в сектор и прыгнуть....

Ссылка на комментарий
Поделиться на другие сайты

а GetHealth это кстати из мануала по API. Вырезали что ли эту функцию...

Ссылка на комментарий
Поделиться на другие сайты

Читаю самый последний мануал и в упор не вижу GetHealth. В прошлой версии доков тоже нету.

В апрельской - было. Зачем убрали? Х.з., но скорее всего теперь работает функция object.GetHealthInfo( objectId ), которая в сумме с FunctionTransportGetHealthMaximum выдает всю необходимую информацию касательно ХП транспорта.

П.С. Опять же, если ф-я object.GetHealthInfo( objectId ) работает с транспортами.

Ссылка на комментарий
Поделиться на другие сайты

Так работает она на транспорты? Х)

Самому проверять лениво, а ты, по-моему, уже проверил.

Ссылка на комментарий
Поделиться на другие сайты

Health не пробовал, но

Code:
LogInfo ("Press")

local transports = avatar.GetTransportList()

for _key, transportId in transports do

LogInfo( tostring( transportId ) )

if transportId then

local players = transport.GetAstrolabeDeniedPlayers( transportId )

LogInfo("Coins")

if players.withoutCoins then

for i = 0, GetTableSize( players.withoutCoins ) - 1 do

local name = players.withoutCoins [ i ] 

LogInfo (name)

end

else

 LogInfo("Coins good")

end

LogInfo("Fairies")

if players.withoutFairies then

for i = 0, GetTableSize( players.withoutFairies ) - 1 do

local name = players.withoutFairies [ i ] 

LogInfo (name)

end

else

 LogInfo("Fairies bad")

end

--LogInfo (value)

end

такое работает

Ссылка на комментарий
Поделиться на другие сайты

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...

Важная информация

Пользуясь сайтом, вы принимаете Условия использования