Doc, если ты знаешь как отловить без юнита координату игровой камеры в мире, тогда не нужен. Тогда пропускаем этот пункт и переходим к следующим.
Можно каким-то образом заставлять игрока перенести мышь в правый нижний угол (например тыкнуть на иконку) и таким образом вычислять ширину экрана, если кому-то вдруг она понадобилась.
biridius, упрощенный вариант без "кренов", углов поворота и просмотра в небо. Но там полюбому тоже будет зависимость от игровых координат и функции типа "крен камеры игрока" или отбор у игрока возможности вращать камерой кроме нами установленных, тем самым полностью контролируя систему.
GF RaiseD, зачем? если нужен только центр :( я не понимаю к чему мне ширина и высота экрана?
if mouse.position.x>cam.position.x then cam.position.x++
if mouse.position.y>cam.position.y then cam.position.y++
if mouse.position.x<cam.position.x then cam.position.x--
if mouse.position.y<cam.position.y then cam.position.y--
Жду извинений за все вышенаписанные "ядовитые" глупости.
При любом углу наклона, создается в центре камеры юнит. Точка на плоскости у дамми юнита в мировых координатах есть. Точка камеры в мировых координатах есть. Точка мыши теперь в мировых координатах есть.
Clamp, такая же была в с#. Как тут действует, я не знаю. Но скорее всего действительно на мув. У меня нет лицухи, так бы я место идей уже мапу релизнул.
GetUnitDiceNumber - итемы прибавляющие не +1, а от 0 до 2. Welcome dnd!
Можно изменять позицию абилок в интерфейсе после каста или снижать или повышать их стоимость динамически, демонстрируя игроку хаос бытия. Или эффекты алкогольного опьянения и манашторма "неделя волшебника. все заклинания стали стоить на 20% меньше маны"
А ещё с помощью пкм можно выдавать список действий пользователя с обьектом, с помощью левитирующего текста. Колесико - выбор из списка, лкм - подтверждение выбора.
А ещё, если знать немного геодезию, можно определять с позиции стрелка куда ты попал по вражескому юниту. Голова, тело, руки, ноги. Правда по линейной траектории, а не баллистической.
О. Я про эффекты забыл. От уровня навыка скаляция в масштабе создаваемых способностью эффектов. Типа герой стал сильнее и бросает более большие фаерболы.
А ещё можно рисовать гениталии изменением тайлов под курсором на базе врага. Это ж то, о чем мы мечтали 10 лет!
А ещё можно удалять игроков, если его мышь не двигалась минуту. Или наоборот, двинул курсором - проиграл. Можно хороры так делать, типа рядом маньяк, который тебя ищет с 50% вероятности. Двинешь мышкой - точно найдёт. Не двинешь - не сможешь убежать.
Можно встраивать в первую доту десинх от движения мыши.
Clamp, EVENT_PLAYER_MOUSE_MOVE. Можно без клика отследить. Главное чтоб движение было. awesomesk1ll, тебе пофиг какая ширина. Тебе нужно смещать центр камеры к курсору, а не отдаляться от центра. Условие "пока координата центра не равна координате мыши, перемещаем камеру к курсору по х, у , z
awesomesk1ll, смотри, делаем даммик в центре области экрана игрока. Берём его координату.
Берём координату курсора. Вычитаем одно из другого, получаем отклонение курсора от центра экрана, т.е экранную координату. Следственно, если есть экранная координата - можно запилить шутан.
Проверяем юнитов в области от курсора - можно их от туда оттолкнуть, повесить баф/дебаф.
Можно замерять таймером координаты перемещения мыши каждые 0.01 секунд. Тем самым получая скорость её перемещения. И в зависимости от этого увеличивать силу отброса-дебафа юнитов.
Можно создать бензопилы, которые стремятся лететь к курсору.
Создание союзных юнитов при клике мышью, которые воюют с врагами.
Можно устроить выбор спела от поворота колесика мыши.
Вот тебе и миниигра с 5 различными механиками победы. Не говоря уже о комбинациях этих подходов:
ведем курсором рядом с юнитом, чтобы его поджечь, горящий юнит при клике на него взрывается.
При клике правой кнопкой мыши юнит подмерзает, при клике левой - раскалывается на куски.
Cancel, привязка к юнитам решает вопрос многопользовательской игры. Насчёт хендлов не знаю.
Есть вариант менять описание предмета. Если оно не багует. Типа "предмет пренадлежит игроку тра-та-та"
Maniac_91, Ниет. Как же дать итем монетка? Я могу дать 100 монеток, увести юнита и лагать будет там, где я давал монетки, а не где стоит юнит. Причём после убийства этого юнита все равно лагает. Или тут иной заговор?
Cancel,
Юнит получает предме,т в БД этого юнита записывается единичка. Когда герой подходит к квестгиверу, проверяется конкретная строка БД на единичку у конкретного юнита. Если одиночная компания, то хватит одного глобального массива, где цифры 1,2,3,4 - означают стадии квеста. Если игрок выбросил кинжал, сделать стадию-1. И проверять по этому числу.
Maniac_91, все равно будут утечки. Я на это напаролся 10 лет назад, когда первый раз открыл варик и подумал, что кучу эффектов Блад с вейтами это круто. Точки не обнуляются по завершению эффекта. Так же не обнуляются при "дать предмет герою". Да и вообще нигде не обнуляются(
Да. У тебя же есть итемлвл. Либо БД. Если имя предмета такое, то индекс = 1.
Исправят или нет, вопрос не к комьюнити, а к разработчикам. В любом случае есть костыли вида "чёрт бы с ним, этим предметом, у меня рпг" и "пользователь наводит курсор на предмет, быстро меняй его имя"
» WarCraft 3 / Новые нативные функции в 1.29
Doc, Вы, кажется, забыли принести извинения.
» WarCraft 3 / Дамми спелл - режим
» WarCraft 3 / Новые нативные функции в 1.29
if MOUSE_BUTTON_TYPE_RIGHT = true then ВРАЩАТЬ.
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
» WarCraft 3 / Новые нативные функции в 1.29
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
» WarCraft 3 / Новые нативные функции в 1.29
Можно каким-то образом заставлять игрока перенести мышь в правый нижний угол (например тыкнуть на иконку) и таким образом вычислять ширину экрана, если кому-то вдруг она понадобилась.
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
» WarCraft 3 / Новые нативные функции в 1.29
if mouse.position.x>cam.position.x then cam.position.x++
if mouse.position.y>cam.position.y then cam.position.y++
if mouse.position.x<cam.position.x then cam.position.x--
if mouse.position.y<cam.position.y then cam.position.y--
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
При любом углу наклона, создается в центре камеры юнит. Точка на плоскости у дамми юнита в мировых координатах есть. Точка камеры в мировых координатах есть. Точка мыши теперь в мировых координатах есть.
» WarCraft 3 / Новые нативные функции в 1.29
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
GetUnitDiceNumber - итемы прибавляющие не +1, а от 0 до 2. Welcome dnd!
Можно изменять позицию абилок в интерфейсе после каста или снижать или повышать их стоимость динамически, демонстрируя игроку хаос бытия. Или эффекты алкогольного опьянения и манашторма "неделя волшебника. все заклинания стали стоить на 20% меньше маны"
А ещё с помощью пкм можно выдавать список действий пользователя с обьектом, с помощью левитирующего текста. Колесико - выбор из списка, лкм - подтверждение выбора.
Отредактирован DemonoiD
» WarCraft 3 / Новые нативные функции в 1.29
О. Я про эффекты забыл. От уровня навыка скаляция в масштабе создаваемых способностью эффектов. Типа герой стал сильнее и бросает более большие фаерболы.
А ещё можно рисовать гениталии изменением тайлов под курсором на базе врага. Это ж то, о чем мы мечтали 10 лет!
» WarCraft 3 / Новые нативные функции в 1.29
Можно встраивать в первую доту десинх от движения мыши.
» WarCraft 3 / Новые нативные функции в 1.29
awesomesk1ll, тебе пофиг какая ширина. Тебе нужно смещать центр камеры к курсору, а не отдаляться от центра. Условие "пока координата центра не равна координате мыши, перемещаем камеру к курсору по х, у , z
» WarCraft 3 / Новые нативные функции в 1.29
Берём координату курсора. Вычитаем одно из другого, получаем отклонение курсора от центра экрана, т.е экранную координату. Следственно, если есть экранная координата - можно запилить шутан.
Проверяем юнитов в области от курсора - можно их от туда оттолкнуть, повесить баф/дебаф.
Можно замерять таймером координаты перемещения мыши каждые 0.01 секунд. Тем самым получая скорость её перемещения. И в зависимости от этого увеличивать силу отброса-дебафа юнитов.
Можно создать бензопилы, которые стремятся лететь к курсору.
Создание союзных юнитов при клике мышью, которые воюют с врагами.
Можно устроить выбор спела от поворота колесика мыши.
Вот тебе и миниигра с 5 различными механиками победы. Не говоря уже о комбинациях этих подходов:
ведем курсором рядом с юнитом, чтобы его поджечь, горящий юнит при клике на него взрывается.
При клике правой кнопкой мыши юнит подмерзает, при клике левой - раскалывается на куски.
» WarCraft 3 / HiveWE - World Editor 0.6
» WarCraft 3 / SetItemName - баг?
Отредактирован DemonoiD
» WarCraft 3 / SetItemName - баг?
Есть вариант менять описание предмета. Если оно не багует. Типа "предмет пренадлежит игроку тра-та-та"
Отредактирован DemonoiD
» WarCraft 3 / Помогите убрать утечку в триггерном заклинании
» WarCraft 3 / довести до ума триггер
» WarCraft 3 / SetItemName - баг?
Юнит получает предме,т в БД этого юнита записывается единичка. Когда герой подходит к квестгиверу, проверяется конкретная строка БД на единичку у конкретного юнита. Если одиночная компания, то хватит одного глобального массива, где цифры 1,2,3,4 - означают стадии квеста. Если игрок выбросил кинжал, сделать стадию-1. И проверять по этому числу.
» WarCraft 3 / Помогите убрать утечку в триггерном заклинании
» WarCraft 3 / SetItemName - баг?
Исправят или нет, вопрос не к комьюнити, а к разработчикам. В любом случае есть костыли вида "чёрт бы с ним, этим предметом, у меня рпг" и "пользователь наводит курсор на предмет, быстро меняй его имя"