Тебе нужно изменить у способностей одну строку, которая называется базовый ID приказа (+порядок строк). Просто, если он одинаковый, то срабатывают все неправильно, если у героя все способности канала с одинаковым ID.
quq_CCCP, это хорошо. Забыл однако про такой метод. Еще удалял единичные глобалки, вроде этих, так как они создаются сразу при их создании, а именно в блоке globals-endglobals. Спасибо большое)
Лучше воздержаться от сравнивания реальных переменных с 0.00. Лучше сделай через больше или меньше. Вынужден сказать, что знаю лишь основы vJass, но то, что сравнение с 0.00 вызывает глюки, узнал на практике.
nvc123, я даже сохранил игру с 97 тысячами объектов и загрузил ее. Их количество не захотело уменьшаться после создания новых объектов. Переназначение id не произошло. nvc123,
globals
leaderboard udg_HandleBoard = null
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(udg_HandleBoard,0,R2I(result))
endfunction
function HandleCounter_Actions takes nothing returns nothing
set udg_HandleBoard = CreateLeaderboard()
call LeaderboardSetLabel(udg_HandleBoard, "Handle Counter")
call PlayerSetLeaderboard(GetLocalPlayer(),udg_HandleBoard)
call LeaderboardDisplay(udg_HandleBoard,true)
call LeaderboardAddItem(udg_HandleBoard,"Handles",0,Player(0))
call LeaderboardSetSizeByItemCount(udg_HandleBoard,1)
call HandleCounter_Update()
call TimerStart(GetExpiredTimer(),0.01,true,function HandleCounter_Update)
endfunction
function InitTrig_HandleCounter takes nothing returns nothing
call TimerStart(CreateTimer(),0,false,function HandleCounter_Actions)
endfunction
nvc123, переменные также подлежали обнулению, но все равно количество росло вверх. Даже, если, например, в переодике в моей магии написать DestroyEffect(AddSpecialEffect(...)), то количество handle'ов растет.
Я считаю, что это вполне возможно, правда на практике не проверял. С альфа-тайлами же получилось, значит и это получить весьма вероятно, но только одно но - даже, если получится, то все равно это не значит, что убрать полностью (кликабельность будет оставаться).
» WarCraft 3 / GUI. Обсуждаем устройства циклов
» WarCraft 3 / Проблематика выделения типа widget в GUI
» WarCraft 3 / Цыкал он работает или нет
Ред. Пушистый
» WarCraft 3 / Проблематика выделения типа widget в GUI
» WarCraft 3 / Instant-функции приказов из common.j
Ред. Пушистый
» WarCraft 3 / Проблема из способностью канал
» WarCraft 3 / Малоизвестные функции для типа переменной trigger
Ред. Пушистый
» WarCraft 3 / Чистка ненужных переменных из Blizzard.j
Ред. Пушистый
» WarCraft 3 / vjass Нужна помощь
» WarCraft 3 / Генерация handle'ов в Warcraft 3
Ред. Пушистый
» WarCraft 3 / Генерация handle'ов в Warcraft 3
nvc123,
» WarCraft 3 / Генерация handle'ов в Warcraft 3
» WarCraft 3 / Прозрачная текстура на интерфейс WC3.Возможно ли?