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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Проверка на наличие героя
Проверка на наличие героя
FaceringДата: Понедельник, 04 Февраля 2013, 23:35:47 | Сообщение # 1
9 уровень
Группа: Проверенные
Сообщений: 842
Награды: 0
Репутация: 50
Блокировки:
Какое есть условие, чтобы можно было проверять есть ли герой у игрока или нет?

Эх, береза..... мне бы столько почек.
 

God_of_lightДата: Понедельник, 04 Февраля 2013, 23:41:55 | Сообщение # 2
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
есть штука
Integer Compasion - Игрок - Plаyer Property - Доступные герои (0)
Можно в начале задать например 10 насильно. А проверять к примеру - Доступные герои - меньше 10 или нет?




Сообщение отредактировал God_of_light - Понедельник, 04 Февраля 2013, 23:43:27
 

IlushaДата: Понедельник, 04 Февраля 2013, 23:44:34 | Сообщение # 3
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 295
Блокировки:
Например так: взять всех юнитов игрока 1, тип юнита - герой , если кого-то пикнет (можно проверить с помощью целочисленной переменной или с помощью логического выражения) то есть герой, если никого не пикнет то нету
 

God_of_lightДата: Понедельник, 04 Февраля 2013, 23:46:10 | Сообщение # 4
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
Цитата (Ilusha)
Например так: взять всех юнитов игрока 1, тип юнита - герой , если кого-то пикнет (можно проверить с помощью целочисленной переменной или с помощью логического выражения) то есть герой, если никого не пикнет то нету
А если герой в момент проверки мертв оказался?? Твоя система выдаст что у игрока нет героя...


 

IlushaДата: Вторник, 05 Февраля 2013, 00:08:04 | Сообщение # 5
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 295
Блокировки:
Хм, по-моему pick all units работает и на мертвых
 

Lich246Дата: Вторник, 05 Февраля 2013, 01:49:05 | Сообщение # 6
9 уровень
Группа: Проверенные
Сообщений: 1103
Награды: 0
Репутация: 637
Блокировки:
Цитата (Ilusha)
Хм, по-моему pick all units работает и на мертвых
Лучше проверить
 

God_of_lightДата: Вторник, 05 Февраля 2013, 07:31:11 | Сообщение # 7
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
Цитата (Ilusha)
Хм, по-моему pick all units работает и на мертвых
Только на тех кого можно выбрать, пока герой мертв - его нельзя выбрать. Эта функция так же не сможет выбрать героя который в данный момент использует способность на базе Перерождения. Юнитов которые скрыты функцией Hide/Unhide и юнитов, имеющих способность Москиты.


 

FaceringДата: Вторник, 05 Февраля 2013, 08:23:56 | Сообщение # 8
9 уровень
Группа: Проверенные
Сообщений: 842
Награды: 0
Репутация: 50
Блокировки:
Цитата (Facering)
Integer Compasion - Игрок - Plаyer Property - Доступные герои (0)
А как это поможет? имею ввиду мне надо, чтобы, если у игрока нет героя. Время на выбор героя заканчивается и если выбрать героя вне времени, то и героя и игрока выкидывает из игры (это говорить не надо думаю поняли)

Добавлено (05 Февраля 2013, 08:14:53)
---------------------------------------------

Цитата (God_of_light)
Можно в начале задать например 10 насильно. А проверять к примеру - Доступные герои - меньше 10 или нет?
герои выбираются через pick

Добавлено (05 Февраля 2013, 08:23:56)
---------------------------------------------
а да забыл сказать, что я для этого создал переменную, еще вначале создания карты

Selected
    События
        Игрок - Игрок Игрок 1 (красный) Выбирает боевую единицу
        Игрок - Игрок Игрок 2 (синий) Выбирает боевую единицу
        Игрок - Игрок Игрок 3 (сине-зеленый) Выбирает боевую единицу
        Игрок - Игрок Игрок 4 (фиолетовый) Выбирает боевую единицу
        Игрок - Игрок Игрок 5 (желтый) Выбирает боевую единицу
        Игрок - Игрок Игрок 7 (зеленый) Выбирает боевую единицу
        Игрок - Игрок Игрок 8 (розовый) Выбирает боевую единицу
        Игрок - Игрок Игрок 9 (серый) Выбирает боевую единицу
        Игрок - Игрок Игрок 10 (светло-синий) Выбирает боевую единицу
        Игрок - Игрок Игрок11 (темно-зеленый) Выбирает боевую единицу
    Условия
        Has_Picked[(Player number of (Triggering player))] равно Нет
        (Owner of (Triggering unit)) равно Нейтрально-пассивный
    Действия
        Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия)
            Если - Условия
                (Unit-type of (Triggering unit)) равно (Unit-type of Select_Hero[(Player number of (Triggering player))])
                ((Triggering unit) is Герой) равно Да
            То - Действия
                Установить переменной Has_Picked[(Player number of (Triggering player))] как Да
                Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия)
                    Если - Условия
                        (Name of (Triggering player)) равно (Name of Игрок 1 (красный))
                    То - Действия
                        Установить переменной Region[1] как (Center of Red <gen>)
                        Боевая единица - Create 1 (Unit-type of (Triggering unit)) for (Triggering player) at Region[1] facing Стандартная ориентация зданий degrees
                        Установить переменной Nachalo_on[1] как Да
                        Установить переменной HERO[1] как (Last created unit)
                        Установить переменной HEROINST как (HEROINST + 1)
                    Иначе - Действия
                        Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия)
                            Если - Условия
                                (Name of (Triggering player)) равно (Name of Игрок 2 (синий))
                            То - Действия
                                Установить переменной Region[2] как (Center of Blue <gen>)
                                Боевая единица - Create 1 (Unit-type of (Triggering unit)) for (Triggering player) at Region[2] facing Стандартная ориентация зданий degrees
                                Установить переменной Nachalo_on[2] как Да
                                Установить переменной HERO[2] как (Last created unit)
                                Установить переменной HEROINST как (HEROINST + 1)
                            Иначе - Действия
                Установить переменной Player_Unit_Heroes[(Player number of (Triggering player))] как (Last created unit)
                Спецэффекты - Очистить текстовые сообщения на экранах группы игроков (Player group((Triggering player)))
                Камера - Установить игровую камеру по умолчанию для игрока (Triggering player) за 0.00 секунд
                Камера - Переместить камеру для игрока (Triggering player) в точку TempPoint за 0.00 секунд
                Script-код:   call RemoveLocation( udg_TempPoint )
                Выбор - Select (Last created unit) for (Triggering player)
                Ждать 0.50 секунд
                Установить переменной HEROINST как HEROINST
                Установить переменной HeroAll как HEROINST

            Иначе - Действия
                Анимация - Проиграть анимацию боевой единицы (Triggering unit) (attack)
                Анимация - Поставить анимацию боевой единицы (Triggering unit) (stand) в очередь на проигрывание
                Спецэффекты - Очистить текстовые сообщения на экранах группы игроков (Player group((Triggering player)))
                Установить переменной Select_Hero[(Player number of (Triggering player))] как (Triggering unit)
                Установить переменной TempInt как (Point-value of (Triggering unit))
                Установить переменной TempPlayer как (Triggering player)
                Триггер - Run Text <gen> (ignoring conditions)

если например приравнять heroall к players, то как удалить нужного игрока...


Эх, береза..... мне бы столько почек.
 

vov68Дата: Вторник, 05 Февраля 2013, 13:14:02 | Сообщение # 9
10 уровень
Группа: Проверенные
Сообщений: 1329
Награды: 3
Блокировки:
Цитата FaceringHas_Picked[(Player number of (Triggering player))] равно Нет
а прогнать цикл для выше приведённой переменной и выкинуть соответствующее сообщение - это никак?

тебе ещё раз напоминаю: сделай целочисленную переменную равную конвертации номера игрока
и прекрати приводить этот огород...  задолбал уже.


Зачем делать для других новые карты...
... лучше устроить коту божественный почесон. :)
 

FaceringДата: Вторник, 05 Февраля 2013, 13:42:43 | Сообщение # 10
9 уровень
Группа: Проверенные
Сообщений: 842
Награды: 0
Репутация: 50
Блокировки:
Да вы совсем? Нельзя тут сократить триггер сделай попробуй чтобы потом все работоло без бага если он большей не значит что он будет багать илли от него будут лаги в игре сделай я посмотрю как у тебя получится

Эх, береза..... мне бы столько почек.
 

Imba_pvLДата: Вторник, 05 Февраля 2013, 13:45:03 | Сообщение # 11
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
ты делаешь для каждого игрока....
Не знаешь такое как номер(игрока-инициатора)??


 

FaceringДата: Вторник, 05 Февраля 2013, 16:00:46 | Сообщение # 12
9 уровень
Группа: Проверенные
Сообщений: 842
Награды: 0
Репутация: 50
Блокировки:
Цитата (Imba_pvL)
ты делаешь для каждого игрока.... Не знаешь такое как номер(игрока-инициатора)??
ты о чем еще...?

Добавлено (05 Февраля 2013, 16:00:46)
---------------------------------------------
Как вы собираетесь 3 переменных дать каждому игроку.


Эх, береза..... мне бы столько почек.
 

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

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