XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
spellwerk

offline
Опыт: 4,869
Активность:
native SetAltMinimapIcon takes string iconPath returns nothing
Что делает? И работает ли сейчас?
Старый 05.12.2011, 22:47
Lobster

offline
Опыт: 2,043
Активность:
spellwerk:
native SetAltMinimapIcon takes string iconPath returns nothing
Устанавливает новую спец иконку для миникарты, кот. можно использовать на юнитах. Одна для всех.
Старый 05.12.2011, 22:51
quq_CCCP
Я белый и пушистый!
offline
Опыт: 94,663
Активность:
DestroyBoolExpr
Зачем нужно удалять условия фильтра после создания группы?
Старый 17.01.2012, 11:20
Hanabishi
COOL STATUS
offline
Опыт: отключен
quq_CCCP, потому что boolexpr остаётся висеть.
Старый 17.01.2012, 16:01
quq_CCCP
Я белый и пушистый!
offline
Опыт: 94,663
Активность:
Hanabishi
А разве фильтр это не функция результатом которой будет булевское значение, которая описана выше и хранится в памяти всю игру?
можно подробнее объяснить на примере этой функции:
function IsThereEnemyInRangeFilter takes nothing returns boolean
return IsUnitAliveBJ(GetFilterUnit()) and not IsUnitType(GetFilterUnit(), UNIT_TYPE_FLYING) and IsPlayerEnemy( GetOwningPlayer(GetFilterUnit()), bj_groupEnumOwningPlayer )
endfunction
function IsThereEnemyBombTargetInRange takes player fp_pl, location fp_locCenter, real fp_rRadius returns boolean
local group grp = CreateGroup()
local boolean bResult
call GroupEnumUnitsInRange( grp, GetLocationX(fp_locCenter), GetLocationY(fp_locCenter), fp_rRadius, Filter(function IsThereEnemyInRangeFilter))
call DestroyBoolExpr( Filter(function IsThereEnemyInRangeFilter) )

set bResult = FirstOfGroup(grp) != null
call DestroyGroup( grp )
return bResult
endfunction
Старый 18.01.2012, 03:39
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
quq_CCCP, на примере
((код jass
local group g = CreateGroup()
local boolexpr filter = Filter(function My_Func)
call GroupEnumUnitsInRange( grp, x, y, r, filter)
))
В твоем коде ты уничтожаешь новый экземпляр, только что созданный, который отнюдь не принадлежит указанному в параметре функции.
boolexpr - это хендловое значение, поэтому его стоит чистить. Вообще самое оригинальное и простое решение создать 1 фильтр как глобальный при инициализации карты а потом его использовать на протяжении всего кода. Если все равно не понятно, то представь что boolexpr - это такой очень жадный тип, который так и наровит сожрать у тебя всю память в компьютере и он так же подлежит уничтожению, если его не используешь. Ну как то так
Старый 18.01.2012, 12:29
Msey
????
offline
Опыт: 67,346
Активность:
native GetExpansionPeon takes nothing returns unit
что делает данная фича?
Старый 03.02.2012, 19:26
ScorpioT1000
Работаем
offline
Опыт: отключен
Msey, это же AI нативки, а не коммон. Там еще много функций. Наверно, она возвращает незанятого раба, а если нету - занятого или что-то типа того.
Старый 03.02.2012, 19:43
Xoniks

offline
Опыт: 1,858
Активность:
((код Jass
native DisplayTimedTextToPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing
))
для чего тут real x и real y??
Старый 04.03.2012, 11:16
Xoniks

offline
Опыт: 1,858
Активность:
Msey, да ты прав, только вот как их расчитать
Старый 04.03.2012, 11:44
MpW

offline
Опыт: 50,271
Активность:
Xoniks, методом проб: поставил сначала (1, 5) посмотрел итд
Старый 04.03.2012, 13:09
Doc

offline
Опыт: 63,163
Активность:
от 0 до 1 ясноже.
зависимо от разрешения.
Старый 04.03.2012, 15:12
YellowStar
poon
offline
Опыт: 15,144
Активность:
Цитата:
Сообщение от reALien
Причем значения при разных запусках варьировались(!), я записал наименьшие.


» Метод тестирования
scope test initializer testinit{
private void testacts(){
timer t = CreateTimer()
TimerStart(t, 999, false, null)
TriggerSleepAction(X)
BJDebugMsg(R2S(TimerGetElapsed(t)))
}
private void testinit(){
trigger t = CreateTrigger()
TriggerRegisterPlayerChatEvent(t, Player(0), "test", true)
TriggerAddAction(t, function testacts)
}
}


Вывод: лучше не юзать вейты =О


TimerGetElapsed - выдаёт неверные значения, причем вообще часто, там смещение, покрайней мере у меня, с проверками аля integer + 1
Старый 24.08.2012, 13:26
Faion
Noblesse Oblige
offline
Опыт: 30,395
Активность:
GetUnitId ???
Старый 24.08.2012, 15:12
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
в одно из значений функция GetPlayerTypedUnitCount() принимает string unitname, если у двух юнитов одинаковые имена то каким будет результат функции? Или если имена одинаковые, а у одного из них есть суффикс редактора? Как можно перевести из unitid в name? GetObjectName() подойдет?
Старый 25.08.2012, 13:23
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 03:13.