XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
"Запоминание" заклинания, примененного на персонажа.
Суть: на персонажа кидают заклинание (не обязательно наносящее урон), после применения, персонаж получает в распоряжение это-же заклинание на некоторое время. Как реализовать без применения JASS?
Старый 08.10.2008, 16:17
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
Его достаточно просто отловить через Ability Beeing Cast
Старый 08.10.2008, 16:21
Пикси

offline
Опыт: 2,422
Активность:
PeJack Есть переменные такого типа, можно сделать на гуи с cs. Юнит приводит способность, таргет == нужный юнит, устанавливаешь локалку на эту абилку добавляешь таргету ждёшь вермя и забираешь.
Старый 08.10.2008, 16:22
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
Алгоритм:
  1. На искомого юнита (владельца абилки "запоминание") "падает" заклинание (любого вида, что "негативное", что "положительное", наносящее/ненаносящее урон)
  2. Производится проверка уровня абилки "запоминание", на основе проверки, выясняется, какой уровень направленного спелла может выучить персонаж; после производится еще одна проверка на "стоимость" запоминаемого заклинания (т.е мана, которая тратиться на использование заклинания, в зависимости от уровня "запоминания"); далее проходит проверка длительности запоминания персонажем заклинания.
  3. Персонаж приобретает заклинание на ограниченное время
  4. После истечения времени, заклинание исчезает.
Интерес представляет, каким образом производится запоминание заклинания (без указание определенного типа и получения урона от заклинания); каким образом происходит проверка стоимости спелла? Если можно, то предложения покажите в системе GUI, т.е: Условия -> Событие -> Действия.
Старый 08.10.2008, 16:41
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
Ну, всё правильно. Я не вижу в чём сложность? Всё необходимое есть. Тип применённого спелла, его уровень спелла, есть все необходимые типы переменных. Сам-то хоть пробовал?
Старый 08.10.2008, 16:47
Пикси

offline
Опыт: 2,422
Активность:
PeJack Я тебе всё сказал прежде чем писать тупые посты подумай.
С: Юнит приводит спосу в едйствие
У: Уровень "запоминания" для таргета > 0
Д: переменная s
переменная u
установить u - таргер
установить s - скастованную абилку
добавить таргету s
установить уровень s для таргета == уровню s для кастера
ждать 10 сек
забрать s с u
Старый 08.10.2008, 16:50
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
To Пикси: прости, но твой предыдуший пост оказался бесмысленным для меня, поэтому я попросил описать в системе GUI, а также описал алгоритм, для уточнения. Спасибо за последний пост, не вижу тупости своего поста, подумай прежде чем кого/то, что/то обвинять. Спасибо тем, кто откликнулся!
Старый 08.10.2008, 16:57
RazArt

offline
Опыт: 11,197
Активность:
Вот пример
Прикрепленные файлы
Тип файла: w3x Spell.w3x (16.6 Кбайт, 8 просмотров )
Старый 08.10.2008, 17:07
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
JokArt Большое спасибо. Вернусь за свой компьютер, посмотрю!
Старый 08.10.2008, 17:12
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
Разобрал спелл, подредактировал. Цель заключается в том, чтобы скопировать спелл мог только тот персонаж, у которого имеется скилл "запоминания", далее по вопросу: какой уровень у спелла кастующего, такой и у запоминающего, не смог присвоить нужного значения. Посмотрите пример, может получиться что-нибудь исправить.
Прикрепленные файлы
Тип файла: w3x Spell.w3x (17.6 Кбайт, 7 просмотров )
Старый 09.10.2008, 23:04
agentex

offline
Опыт: 34,834
Активность:
дело в то что в условиях самого триггера стоит Level of Плагиат for Hero, хотя переменной Hero еще ничего не присвоено.

agentex добавил:
=> нужно заменить Hero на Target Unit Of Issued Order
Старый 09.10.2008, 23:25
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
С этим понятно, но как сделать проверку на уровень спелла плагиатора (чтобы он равнялся уровню спелла кастующего)?
Старый 09.10.2008, 23:29
Deviator
Feel the purification...
offline
Опыт: 10,376
Активность:
Событие - Юнит приводит способность в действие
Условие - If target unit of ability beining cast = твой юнит
If level of ability "Запоминание" of target unit of ability beining cast больше или равно 1 (укажи то, что тебе нужно), то:
Set variable T = Target unit of ability beining cast
Set variable A = Ability beining cast
Действие - Add A to T
Set level of A to T = level of ability A of caster unit
Wait 10 sec
Remove A from T
Set variable T = нет боевой единицы
Set variable A = нет способности
Do nothing
Вот и всё! Всё гениальное - просто! =)

Отредактировано Deviator, 10.10.2008 в 00:28.
Старый 10.10.2008, 00:06
alexkill

offline
Опыт: 18,872
Активность:
Цитата:
Сообщение от PeJack
Как реализовать без применения JASS?


Если ты хочешь реализовать это в виде способности, то по-нормальному никак (из-за того, что присутствует время действия способности).

Переменные будут забиваться другими значениями.
Старый 10.10.2008, 10:40
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
Deviator спасибо!

alexkill Значит без применения ДЖАСС возможность реализации "увеличения стоимости заклинания" невозможна?
Старый 10.10.2008, 16:04
Пикси

offline
Опыт: 2,422
Активность:
PeJack Возможно при инициализации карты устанавливать массив заклинаний(1-оригинал, 2- 1 с добавленной мп)и при касте на владелеца плагиата добавлять несчасному таргету абилку[1+1].
Старый 10.10.2008, 16:21
ScorpioT1000
Работаем
offline
Опыт: отключен
Цитата:
PeJack Я тебе всё сказал прежде чем писать тупые посты подумай.
С: Юнит приводит спосу в едйствие
У: Уровень "запоминания" для таргета > 0
Д: переменная s
переменная u
установить u - таргер
установить s - скастованную абилку
добавить таргету s
установить уровень s для таргета == уровню s для кастера
ждать 10 сек
забрать s с u

Мне лично не понятен именно сей пост.

ScorpioT1000 добавил:
вобще бред
"==" - сравнение
"=" - операция присваивания
Вы о чем?!
Старый 10.10.2008, 16:27
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
На данный момент не могу зайти в эдитор, поэтому спрошу: возможно ли записать в массив "любое" заклинание, запомненное персонажем?
Старый 10.10.2008, 16:31
ScorpioT1000
Работаем
offline
Опыт: отключен
Ну если есть массив заклинаний )
Старый 10.10.2008, 16:32
PeJack
*Sob* *Sob* *Sob*
offline
Опыт: 3,033
Активность:
В этом есть смысл XD
Старый 10.10.2008, 19:46
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 09:18.