Сейчас 10:06:10 Вторник, 26 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Переменные
adigaДата: Суббота, 29 Октября 2011, 03:21:17 | Сообщение # 1
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
Когда я с кэшем возился, мне сказали через хэндлы можно так же на юнитах хранить свои переменные. К примеру 20 пехотинцев у всех по 25 переменных разных значений. Как с помощью хэндлов записывать и доставать переменые с юнитов? А еще точнее - какими функциями, чтоб вписывать id юнита в хэндлы

триггеринг 439/450
спеллкрафт 447/450
картокрафт 427/450
ландшафтинг 189/450
фастмэйкинг 225/225
иконкрафтинг 310/450
импортинг 110/450
самооценкинг 450/450
 

Mep3aB4uKДата: Суббота, 29 Октября 2011, 07:31:54 | Сообщение # 2
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
Пример на сохранение хп героя и значение его силы: H = глобальная переменная хэш-таблица
local unit u=GetTriggerUnit() --- это не обязательно, просто задаем локальной u, значение переключающего юнита (ставим по событию)
local integer i=GetHandleId(u) - если не создавать локальную юнита, то: GetHandleId(GetTriggerUnit()) --- так получаем номер юнита
local real life=GetWidgetLife(u) --- задаем переменной life значение хп юнита u
local integer str=GetHeroStr(u,true) --- задали значение силы
call SaveReal(udg_H,id,1,life) --- сохраняем реальную, задаем в какую ХТ сохраняем(udg_H), под каким номером сохраним(номер юнита), какой подномер(наше первое значение которое сохраняем под номер даного юнита, ставим 1), и какое значение сохраняем (life - хп юнита)
call SaveInteger(udg_H,id,2,str) --- почти все то же, только сохраняем не реальное, а целое...... и это уже второе значение под номер данного юнита ставим 2(хотя можно любое число, но так чтоб не путаться, ставим поочередным)
Так загружаем:
call LoadReal(udg_H,GetHandleId(unit),1)
call LoadInteger(udg_H,GetHandleId(unit),2)
Надеюсь это то что ты хотел узнать, и понял то что я пытался сказать ;)
 

Ty3uKДата: Суббота, 29 Октября 2011, 09:17:55 | Сообщение # 3
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
На юнита лучше не вешать- не всегда статично получается. А вот вешать на таймер или игрока- тут уж вариантов не много- хэндл игрока за всю игру не изменится

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

adigaДата: Суббота, 29 Октября 2011, 11:55:41 | Сообщение # 4
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
Ага спс мерзавчик то что надо

триггеринг 439/450
спеллкрафт 447/450
картокрафт 427/450
ландшафтинг 189/450
фастмэйкинг 225/225
иконкрафтинг 310/450
импортинг 110/450
самооценкинг 450/450
 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz