Соотношение ширины экрана к высоте экрана в Варкрафте всегда 3 : 4. На устройствах с большим разрешением картинка растягивается и на экране можно видеть исключительно тот участок, который бы можно было видеть при текущем FoV на экране с соотношением сторон 3 к 4. Вертикальный FoV находится по формуле:
Как делать спеллы, урон которых будет зависеть от стат?
Почитать статьи и хотя бы открыть редактор. Попытайся подумать/поискать сам вместо того чтоб искать туториалы к любому возникшему вопросу. Это не круто.
nvc123, стоит. Тему стоит расширить и подумать над названием. Понимаю, что она кочевала из форума, но уже давно пора поменять формат. Если есть идеи пишите руководителю проекта или мне. Уместные предложения всегда рассматриваются.
globals
timer periodic
real period = 0.01
group restoreHP
endglobals
function restoreParamatersCallback takes nothing returns nothing
local integer iD = GetHandleId(GetEnumUnit())
local real hpRegen = LoadReal(Hash,iD,HASH_LIFE_REGENERATION_INDEX)
local real manaRegen = LoadReal(Hash,iD,HASH_MANA_REGENERATION_INDEX)
call SetUnitState(GetEnumUnit(),UNIT_STATE_LIFE,GetUnitState(GetEnumUnit(),UNIT_STATE_LIFE)+hpRegen*restorationPeriod)
call SetUnitState(GetEnumUnit(),UNIT_STATE_MANA,GetUnitState(GetEnumUnit(),UNIT_STATE_MANA)+manaRegen*restorationPeriod)
endfunction
function periodicActions takes nothing returns nothing //Тут просто вызовы всего что нужно
call ForGroup(restoreHP,function restoreHPCallback)
endfunction
function Initialization takes nothing returns nothing
set periodic = CreateTimer()
call TimerStart(periodic,period,true,function periodicActions)
endfunction
А вообще создать триггер и добавить событие - глобальный таймер истекает, не?
M1n3rva, это я знаю. У меня были проблемы с использованием считывания/записи локальной группы в хэш в таймере: вроде как не получалось передать локальной группе значение без "CreateGroup()", тоесть без создания нового хэндла. Старая ссылка терялась и это вызывало утечки групп. С "ForGroup" подобного не наблюдалось.
В той наработке, кажется, нужна глобальная переменная типа таблица рекордов с названием HandleBoard.
Да, автор наработки по какой-то неясной причине решил что лучше создать переменную в гуи. В следствии чего чтоб использовать наработку не достаточно просто скопировать код в свою карту. Вот "исправленная" версия. Нужно скопировать весь код и поместить в свою карту, в любое место. Цельным куском.
Код
library HandleCounter initializer Initialization
globals
leaderboard HandleBoard
endglobals
function HandleCounter_Update takes nothing returns nothing
local integer i = 0
local integer id
local location array P
local real result=0
loop
exitwhen i >= 50
set i = i + 1
set P[i] = Location(0,0)
set id = GetHandleId(P[i])
set result = result + (id-0x100000)
endloop
set result = result/i-i/2
loop
call RemoveLocation(P[i])
set P[i] = null
exitwhen i <= 1
set i = i - 1
endloop
call LeaderboardSetItemValue(HandleBoard,0,R2I(result))
endfunction
function HandleCounter_Actions takes nothing returns nothing
set HandleBoard = CreateLeaderboard()
call LeaderboardSetLabel(HandleBoard, "Handle Counter")
call PlayerSetLeaderboard(GetLocalPlayer(),HandleBoard)
call LeaderboardDisplay(HandleBoard,true)
call LeaderboardAddItem(HandleBoard,"Handles",0,Player(0))
call LeaderboardSetSizeByItemCount(HandleBoard,1)
call HandleCounter_Update()
call TimerStart(GetExpiredTimer(),0.05,true,function HandleCounter_Update)
endfunction
function Initialization takes nothing returns nothing
call TimerStart(CreateTimer(),0,false,function HandleCounter_Actions)
endfunction
endlibrary
А вообще - эта штука считает утечки. Какие проблемы с прочими скиллами не ясно.
» WarCraft 3 / Величина вертикального FoV игровой камеры в Warcraft III
» WarCraft 3 / Не могу решить задачу при создании спелла
» WarCraft 3 / Не могу решить задачу при создании спелла
» WarCraft 3 / Не могу решить задачу при создании спелла
» WarCraft 3 / Не могу решить задачу при создании спелла
» IN-VERT / IN-VERT
» WarCraft 3 / Вылетает при нанесении урона по области или юнитам через триггер
» WarCraft 3 / Просто ваше мнения, или знания.
Ред. Raised
» WarCraft 3 / Просто ваше мнения, или знания.
Ред. Raised
» WarCraft 3 / Автокаст способностей.
» WarCraft 3 / Как делать спеллы, урон которых будет зависеть от стат?
Ред. Raised
» WarCraft 3 / Способности и алгоритмы на заказ
» Stronghold Crusader 1 Rus Mod / Stronghold Crusader 1 Rus Mod
» WarCraft 3 / Видимость и туман войны
» WarCraft 3 / Создание глобального таймера, к которому привязывается всё
Ред. Raised
» WarCraft 3 / Создание глобального таймера, к которому привязывается всё
» WarCraft 3 / Сообщение из чата
» WarCraft 3 / Скорость поворота боевой единицы
» WarCraft 3 / Скорость поворота боевой единицы
» Блог Кета Голосова / Хандра
Ред. Raised
» WarCraft 3 / Dynamic Graphic User Interface (DGUI)
» WarCraft 3 / нормально ли такое юзать?
Ред. Raised
» WarCraft 3 / нормально ли такое юзать?
» WarCraft 3 / нормально ли такое юзать?
Ред. Raised
» WarCraft 3 / Проблема с переносом спеллпака