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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Очки за хил (О_о)
Очки за хил
InkviRGДата: Суббота, 05 Февраля 2011, 22:30:32 | Сообщение # 1
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
В общем у юнита есть способность, у этой способности несколько уровней. В общем имея эту способность, он должен, как отхилит 10 хп, получить 1 очко. Если отхилит меньше, то ничего не получит. Например за 299 отхиленного, он получит 29 очков. И что бы не считался оверхил. Может кто помочь?
 

lawsonДата: Суббота, 05 Февраля 2011, 22:37:40 | Сообщение # 2
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
ЧЕЕ? Я ни че не понял что тут написано.

Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

InkviRGДата: Суббота, 05 Февраля 2011, 22:42:41 | Сообщение # 3
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Герой хилит 100 хп. В переменную заносится значение 10. Герой хилит 259 хп. В переменную заноситься 25. Учитывать только "чистое" хп, без оверхила(избыточный хил).
Хил - леченеие
 

lawsonДата: Суббота, 05 Февраля 2011, 22:44:08 | Сообщение # 4
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Кароче с твои хиллом пусть тебе кто то другой поможет.

Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

DreiiДата: Суббота, 05 Февраля 2011, 22:44:57 | Сообщение # 5
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
InkviRG, пиши по русски,а то на языке ЫФвыапывапый больше никто не говорит

 

AdMiRaLLДата: Суббота, 05 Февраля 2011, 22:46:49 | Сообщение # 6
8 уровень
Группа: Проверенные
Сообщений: 743
Награды: 1
Репутация: 61
Блокировки:
я лично всё понял, но как сделать хз

 

DreiiДата: Суббота, 05 Февраля 2011, 22:47:19 | Сообщение # 7
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
AdMiRaLL, Напиши на русском ,я сделаю

 

InkviRGДата: Суббота, 05 Февраля 2011, 22:49:41 | Сообщение # 8
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Dreii, написал по русски. Или вам совсем по шагам? Хорошо.
Юнит имеет заклинание "Очки" уровень 1
Юнит кастует заклинание "Лечение" уровень 1
Юнит лечит этим заклинанием 100 хп.
В переменную(целоисчесленная) заносить значение (значение переменной + 10 )

Юнит имеет заклинание "Очки" уровень 1
Юнит кастует заклинание "Лечение" уровень 2
Юнит лечит этим заклинанием 259 хп.
В переменную(целоисчесленная) заносить значение (значение переменной + 25)

Юнит имеет заклинание "Очки" уровень 2
Юнит кастует заклинание "Лечение" уровень 1
Юнит лечит этим заклинанием 100 хп.
В переменную(целоисчесленная) заносить значение (значение переменной + 20 )

Юнит имеет заклинание "Очки" уровень 2
Юнит кастует заклинание "Лечение" уровень 2
Юнит лечит этим заклинанием 259 хп.
В переменную(целоисчесленная) заносить значение (значение переменной + 50)

 

Host-mapperДата: Суббота, 05 Февраля 2011, 22:51:31 | Сообщение # 9
6 уровень
Группа: Проверенные
Сообщений: 177
Награды: 0
Репутация: 42
Блокировки:
Quote (AdMiRaLL)
я лично всё понял, но как сделать хз
+1 Вроде все понятно.

Герой Лечит другого героя и получает за это очки которые записываются в переменную.

 

InkviRGДата: Суббота, 05 Февраля 2011, 22:52:22 | Сообщение # 10
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Очки должны зачисляться за любой хил собственными заклинаниями (не предметами/зельями)
 

DreiiДата: Суббота, 05 Февраля 2011, 22:55:37 | Сообщение # 11
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
InkviRG,
Code
local integer i=0
if GetSpellAbilityLevel(unit,rawcode)==1 then
set i=i+10
elseif GetSpellAbilityLevel(unit,rawcode)==2 then
set i=i+20
endif

Что-то на это похожее


 

InkviRGДата: Суббота, 05 Февраля 2011, 23:04:38 | Сообщение # 12
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Dreii, не совсем. Не обязательно же лечение отхилит именно 100? Оно может и меньше отхить(например если у юнита не хватает всего 50 хп, то отхилено будет только 50) и больше, если хил например int*2.

Добавлено (05-02-2011, 23:02)
---------------------------------------------
И не только лечение, должен учитывать хил от всех активных скилов юнита, который имеет способность "очки"

Добавлено (05-02-2011, 23:04)
---------------------------------------------
и не только скил "лечение" **

 

DreiiДата: Суббота, 05 Февраля 2011, 23:12:34 | Сообщение # 13
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
InkviRG, мм завтра подумаю,а щяс спать хочу

 

InkviRGДата: Суббота, 05 Февраля 2011, 23:18:57 | Сообщение # 14
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Ок.
Что бы было проще, при первом уровне "очки" - в переменную заносить значение переменной + 10%(хил), при втором - значение переменной + 15%(хил) и так далее.
От числа после запятой нужно избавляться, хотя при использовании типа переменной integer, оно должно само отброситься.
 

NestrikДата: Воскресенье, 06 Февраля 2011, 13:43:34 | Сообщение # 15
4 уровень
Группа: Пользователи
Сообщений: 88
Награды: 0
Репутация: 7
Блокировки:
Дык нужно просто проверить сколько здоровья есть у война перед тем как его хильнули: если макс хп - курент хп больше чем хилит способность то все как есть;
а если макс хп - курент хп меньше чем хилит заклинание, то от этой разницы и заносить переменную. Вот тебе и нету "оверхила"
Надеюсь написал доходчиво.
 

InkviRGДата: Воскресенье, 06 Февраля 2011, 13:50:47 | Сообщение # 16
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Nestrik, правильно то правильно, вот только мне не от оверхила избавиться надо. В первую очередь нужно проверить на сколько именно его хильнула способность, именно способность. Ведь есть такие вещи как вампиризм, собственная регенерация, зелья, чужие хилки, хоты... Я думал реализовать через хп после применения - хп перед применением, но будет не совсем верно.
 

NestrikДата: Воскресенье, 06 Февраля 2011, 14:00:21 | Сообщение # 17
4 уровень
Группа: Пользователи
Сообщений: 88
Награды: 0
Репутация: 7
Блокировки:
Ну тогда остается только сначала дял каждой способности высчитать соклько она отхилит, т.е. брать базовое значение, прибавлять к нему все бонусы, которые воздействуют на эту способность (т.е. если хил повышается от интеллекта, то добавлять эти значения, от предметов - то же самое), затем добавлять учет состояния юнита (если он в астрале то +33% вроде к хилу), ну и так далее по всем воздействующим эффектам, а потом все равно: вычитать из макс хп, курент хп и смотреть разницу.
В принципе все это выполняется игрой моментально, если вейты не ставить, а они тут не нужны. Если у тебя не сильно много различных воздействий от предметов и характеристик то то же ничего сложного.
Но для каждой способности хилящей придется делать свой триггер, или запихав все в один триггер сделать много конструкций Иф-Тхен-Элси с проверкой на "Абилити Байн Каст"
Это все реализуется на ГУИ.
 

InkviRGДата: Воскресенье, 06 Февраля 2011, 14:02:41 | Сообщение # 18
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
К сожалению много. Очень.
 

NestrikДата: Воскресенье, 06 Февраля 2011, 14:08:48 | Сообщение # 19
4 уровень
Группа: Пользователи
Сообщений: 88
Награды: 0
Репутация: 7
Блокировки:
Тогда остается вариант просчитывать силы воздействий заранее, скажем в периоде для каждого игрока,хранить их в переменных; а при применении заклинания брать эту переменную, и от нее считать все.
В итоге у тебя будет один триггер, которые скажем, каждые полсекунды считает значения усиления заклинаний, а второй триггер будет конкретно на твое заклинание, соответственно третий, четвертый и тд. так же на каждое хилящее заклинание.
С вампиризмами всякими , только я вот хз как: там событие будет Воин атаковал, а условие "он под бафом" , с действиями -теми же.

Работы много конечно, но никто не обещал, что тут тебе предложат легкие пути ;)
В общем: решать тебе как делать ,я вряд ли что-то еще предложу :)

 

lawsonДата: Воскресенье, 06 Февраля 2011, 14:11:16 | Сообщение # 20
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Нужно создать целоисчеслительную массив и туда в каждую ячейку записывать нужное тебе кол-во хп. А потом при добавлении просто использовать нежную тебе ячейку.

Добавлено (06-02-2011, 14:11)
---------------------------------------------
О боже если б я еще понял что ты имеешь ввиду свой триггер я бы может конкретней помог.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

InkviRGДата: Воскресенье, 06 Февраля 2011, 14:11:29 | Сообщение # 21
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Quote (lawson)
записывать нужное тебе кол-во хп

мне его сначала нужно найти -_-
 

lawsonДата: Воскресенье, 06 Февраля 2011, 14:14:13 | Сообщение # 22
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Я думаю тебе нужно типо этого:
Юнит использует способность, эта способность добавляет ему хп например 200 только в том случае если... (А здесь что???)


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

InkviRGДата: Воскресенье, 06 Февраля 2011, 14:16:47 | Сообщение # 23
3 уровень
Группа: Пользователи
Сообщений: 43
Награды: 0
Репутация: 2
Блокировки:
Не, не оно. Мне нужно получить, сколько именно эта способность отхилит.
 

lawsonДата: Воскресенье, 06 Февраля 2011, 14:17:44 | Сообщение # 24
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (InkviRG)
сколько именно эта способность отхилит

А у тебя что способность пустыщка ты добавляешь хп триггерно?


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

NestrikДата: Воскресенье, 06 Февраля 2011, 14:20:08 | Сообщение # 25
4 уровень
Группа: Пользователи
Сообщений: 88
Награды: 0
Репутация: 7
Блокировки:
Если у война 99/100 а хилка хилит 100 хп, то похилит она только 1 хп а не 100 как написано в РО
 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Очки за хил (О_о)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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