ScopteRectuS, сравнение с дотой тут не уместно. У меня рпг и в инвентаре могут лежать пачки ингридиентов, еды и т.д.
Вместимость инвентаря не ограничивается кол-вом предметов на карте.
Я не говорил, что он будет забиваться миллионом предметов. Я сказал что инвентарь сам по себе - бесконечный.
Я понятия не имею, сколько у меня будет предметов, но т.к. карта - рпг, то всякой чепухи типа ингридиентов будет не мало. Поэтому мне нравится идея бесконечного инвентаря.
Ige, сорян, не проснулся еще.
Проморгал, что ты в качестве childKey использовал ID предмета.
Действительно, я могу на этой основе построить решение моей проблемы.
Спасибо!
Sergarr, автор просит урон нанести, а не хп снять.
local unit u = GetSpellTargetUnit()
local real p = 0.25
call UnitDamageTarget( GetSpellAbiliyUnit(), u, GetWigetLife(u)*(1-p), boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType )
Остальные параметры выставляешь по вкусу, как предлагал Maniac_91.
Clamp, так у меня и есть свой пул доступных предметов для каждого юнита.
Там же parentKey - GetUnitUserData().
А чем удобнее и проще то?
Даже используя структуры, я все равно упрусь в то, что при покупке/поднятии юнитом предмета у которого есть стаки, мне нужно перелопатить весь его инвентарь, чтобы узнать, надо создавать новую ячейку или добавить в существующую.
То есть единственное преимущество структуры над хэш-таблицей - это разница в скорости обращения к глобалке и к хэшу. И на сколько я знаю, она не велика.
Clamp, так ведь описал же. В БД хранятся целые числа. Вопрос стоит в том, каким методом, кроме перебора я могу проверять, лежит в этой БД конкретное число или нет.
Т.е. у меня есть какие-то данные
и если я хочу туда добавить, например 'U001', то хотелось бы знать, может он там уже есть.
local itemCount=3
local i=1
loop
exitwhen i>itemCount
if (LoadInteger(udg_ht, GetUnitUserData(u), StringHash("I"+I2S(i)))=='U001') then
...
endif
set i=i+1
endloop
StringHash() я на целые числа заменю, не вопрос. Но это текущую задачу не решает =\
ScopteRectuS, но ведь в один childKey можно записать только одно значение. Это получается тот же самый ручной перебор.
Да и вообще, эта функция не поможет мне определить, какой равкод записан в эту ячейку.
» WarCraft 3 / Как разрешить юнитам проходить под мостом?
» Edemium / Edemium – Trailer
» WarCraft 3 / Hashtable или array
неблагодари
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Вместимость инвентаря не ограничивается кол-вом предметов на карте.
» WarCraft 3 / Поиск элемента БД
» WarCraft 3 / Импорт моделей, архив .mix; насколько актуально
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Я понятия не имею, сколько у меня будет предметов, но т.к. карта - рпг, то всякой чепухи типа ингридиентов будет не мало. Поэтому мне нравится идея бесконечного инвентаря.
» WarCraft 3 / Где скачать модельку пандаренки mdx?
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
У меня инвентарь бесконечный.
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Проморгал, что ты в качестве childKey использовал ID предмета.
Действительно, я могу на этой основе построить решение моей проблемы.
Спасибо!
Ред. avuremybe
» WarCraft 3 / Процентный урон
» WarCraft 3 / Таблица - дерево
Я не понимаю как может возникнуть вопрос "как сделать схему".
» WarCraft 3 / Где скачать модельку пандаренки mdx?
А по поводу головы - у тебя щеки слишком низко и слишком маленькие.
» WarCraft 3 / Таблица - дерево
» WarCraft 3 / Поиск элемента БД
Ige, а у меня в примерах не то же самое?
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Там же parentKey - GetUnitUserData().
А чем удобнее и проще то?
То есть единственное преимущество структуры над хэш-таблицей - это разница в скорости обращения к глобалке и к хэшу. И на сколько я знаю, она не велика.
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Иначе у меня страница магазина будет формироваться туеву хучу времени.
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Т.е. у меня есть какие-то данные
» WarCraft 3 / Поиск элемента БД
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
» WarCraft 3 / Поиск элемента БД
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Да и вообще, эта функция не поможет мне определить, какой равкод записан в эту ячейку.
» WarCraft 3 / Система общего здоровья.
» WarCraft 3 / Можно ли совместить 1 карту с другой?
» WarCraft 3 / Конкурс ландшафтеров Средиземья