[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Saidas, Везервакс, Сагамарт  
Форум » Главная улица » Квартал мастеровых » Секреты GHI (как сделать хитрую вещицу)
Секреты GHI
БизлДата: Воскресенье, 22.08.10, 01:13 | Сообщение # 61
Лейтенант
Группа: Проверенные
Сообщений: 46
Репутация: 30
Статус: Offline
Без долгих вступлений.
Эвент Хэндлера для маунта не обнаружил, что прискорбно.
Вот скрипт.

Time=2
function Repeater()
if(IsMounted()==true)and(Time~=1)
ApplyGHIBuff(...)
Time=1
elseif(IsMounted()==false)and(Time~=2)
RemoveGHIBuff(...)
Time=2
end
GHI_DoScript("Repeater()",1)
end

Не проверял, но работать должно...
Все равно проверю.

Добавлено (22.08.10, 01:13)
---------------------------------------------
Кстати насчет "управления речью"...
Это выполнимо, более того реализуется вполне... не сложно.


Ушел.
 
ТаурелинДата: Воскресенье, 22.08.10, 07:55 | Сообщение # 62
Лейтенант
Группа: Проверенные
Сообщений: 67
Репутация: 3
Статус: Offline
Quote (Античный)
*ржет* Борги, там просто были разные эмоции с разной задержкой) Я например делал усыпляющий яд с задержкой в 5 минут. Через 5 минут начинался каскад эффектов: сообщения, эмоции и т.п.)

Саги, он реально управлял речью.


Сообщение отредактировал Таурелин - Воскресенье, 22.08.10, 07:55
 
СагамартДата: Воскресенье, 22.08.10, 13:06 | Сообщение # 63
Генерал-майор
Группа: Модераторы
Сообщений: 320
Репутация: 176
Статус: Offline
Ну что сказать, имбохакер, я даже догадываюсь кто это.

 
ТаурелинДата: Воскресенье, 22.08.10, 15:55 | Сообщение # 64
Лейтенант
Группа: Проверенные
Сообщений: 67
Репутация: 3
Статус: Offline
Я даже знаю кто это 100500% знаю ), но сказать не могу.
 
ГольвиДата: Воскресенье, 22.08.10, 16:51 | Сообщение # 65
Сержант
Группа: Заблокированные
Сообщений: 33
Репутация: 119
Статус: Offline
И не скажешь, так ведь? Молодец.

Капер Гольви Беккерс.
 
ДжинарДата: Воскресенье, 22.08.10, 22:53 | Сообщение # 66
Лейтенант
Группа: Проверенные
Сообщений: 61
Репутация: 24
Статус: Offline
Возвращаясь к столь нелюбимой Люггером рации: при активации устройство создает и подключается к каналу "Рация". Можно ли как-то реализовать следующее:
при активации итема, выводить следующее сообщение - "на связи: <и далее список игроков, сидящих на канале "Рация">"?


 
БизлДата: Понедельник, 23.08.10, 13:01 | Сообщение # 67
Лейтенант
Группа: Проверенные
Сообщений: 46
Репутация: 30
Статус: Offline
ListChannelByName(channelName); - выводит всех пользователей канала в стандартное окно чата.
channelName - имя канала
Проверил. Работает исправно.


Ушел.

Сообщение отредактировал Бизл - Понедельник, 23.08.10, 13:15
 
MitonДата: Вторник, 31.08.10, 06:49 | Сообщение # 68
Рядовой
Группа: Проверенные
Сообщений: 19
Репутация: 29
Статус: Offline
Кстати, кому интересно, как удобнее вытаскивать картинку из игры - создайте итем вот с таким вот скриптом:

И просто щелкните на другой итем, чью иконку Вы хотите узнать. Адрес иконки высветится в чат.

 
ArisuДата: Четверг, 02.09.10, 16:29 | Сообщение # 69
Рядовой
Группа: Проверенные
Сообщений: 9
Репутация: 7
Статус: Offline
А можно ли сделать так, чтобы при использовании итема отправлялся мессэйдж создателю итема?
В моем случае ленточки. И мессэйдж говорит, что эти ленточки завязали.
Не повторяюсь?


В следующий миг ли, в следующий час ли, лишь на меня одну как в озеро смотри... (с)
 
Eug3nyДата: Четверг, 02.09.10, 17:57 | Сообщение # 70
Полковник
Группа: Конгломерат
Сообщений: 230
Репутация: 80
Статус: Offline
Решается обычной командой шёпота или иной формой сообщения с заранее забитым адресатом, которая включается при активации.

А вот как именно... Честно, или я такой ленивый, или действительно даже на сайте Pilus'а нельзя найти образцы команд и их описания - было бы как раз довольно интересно найти подобие буклета для чайников и покопаться во всём лично.

 
БизлДата: Четверг, 02.09.10, 18:58 | Сообщение # 71
Лейтенант
Группа: Проверенные
Сообщений: 46
Репутация: 30
Статус: Offline
Arisu, тут два варианта.
Либо месседж, который отправляется как простой whisper. То есть после юза будет написано:
"Вы шепчете:......."
Либо скрытое сообщение, которое видите только вы. Но для этого нужно создать еще один итем, который будет отслеживать их прием и будет находится у вас.
Какой вам нужен?


Ушел.
 
ArisuДата: Пятница, 03.09.10, 17:44 | Сообщение # 72
Рядовой
Группа: Проверенные
Сообщений: 9
Репутация: 7
Статус: Offline
А можно оба?

В следующий миг ли, в следующий час ли, лишь на меня одну как в озеро смотри... (с)
 
БизлДата: Пятница, 03.09.10, 20:37 | Сообщение # 73
Лейтенант
Группа: Проверенные
Сообщений: 46
Репутация: 30
Статус: Offline
Arisu, с удовольствием!

Значицо, начнем со сложного...
Для реализации метода со скрытыми сообщениями мы создадим два предмета, например:
[Загадочный кристалл] - в качестве приемника, который лежит у нас в сумке.
[Осколок кристалла] - тот, что люди будут носить с собой.

Для [Загадочного Кристалла] добавляем действием скрипт, и втыкиваем ему следующие строки:

if Msg_Checker == nil then
Msg_Checker = CreateFrame("Frame", "mFrame",UIParent);
Msg_Checker:SetScript("OnEvent", function() Msg_CheckerF() end);
Msg_Checker:RegisterEvent("CHAT_MSG_ADDON");
GHI_Message("Crystal activated");
else
Msg_Checker:UnregisterEvent("CHAT_MSG_ADDON");
Msg_Checker=nil
GHI_Message("Crystal deactivated");
end

function Msg_CheckerF()
if event == "CHAT_MSG_ADDON" and arg1 == "[Secret_Msg]" then
GHI_Message(arg4.." шепчет в кристалл: "..arg2)
end
end

Строку, выделенную красным, вы можете отредактировать как вам понравится: просто учтите что arg4 - это имя отправившего персонажа а arg2 - текст отправленного сообщения (две точки служат для соединения строк).

Теперь отредактируем [Осколок Кристалла]
Добавим менее весомый скрипт:

SendChatMessage("подносит переливающийся осколок к лицу и что-то шепчет.","EMOTE",nil)
SendAddonMessage("[Secret_Msg]","Я люблю тебя, осколочек!","WHISPER","ИМЯ_АДРЕСАТА")

Тут, я думаю, вы сами разберетесь. Главное, заменить выделенный текст... на свое имя.

Теперь нам достаточно активировать наш кристалл, и мы сможем отслеживать использование осколка.
Не забывайте, что слежка сбрасывается при каждом выходе из игры или перезагрузке пользовательского интерфейса.

Изучим более простой метод: создадим предмет [Отправлялка].
Добавляем ему скрипт:

SendChatMessage("достает из кармана странный предмет.","EMOTE",nil)
SendChatMessage("А куда это отправится?","WHISPER",nil,"ИМЯ_АДРЕСАТА")

Готово!


Ушел.
 
ArisuДата: Суббота, 04.09.10, 15:01 | Сообщение # 74
Рядовой
Группа: Проверенные
Сообщений: 9
Репутация: 7
Статус: Offline
Спасибо большое, испробуем =^_^=

В следующий миг ли, в следующий час ли, лишь на меня одну как в озеро смотри... (с)
 
БизлДата: Суббота, 04.09.10, 20:57 | Сообщение # 75
Лейтенант
Группа: Проверенные
Сообщений: 46
Репутация: 30
Статус: Offline
Энэрилан, долго искал нужную функцию и имена нужных переменных:

a=GetCVar("UnitNameEnemyPlayerName")
if(a=="1")then
SetCVar("UnitNameEnemyPlayerName",0)
else
SetCVar("UnitNameEnemyPlaye rName",1)
end

Этот скрипт отключает/включает отображение имен противников.

a=GetCVar("UnitNameFriendlyPlayerName")
if(a=="1")then
SetCVar("UnitNameFriendlyPlayerName",0)
else
SetCVar("UnitNameFri endlyPlayerName",1)
end

Этот - имен союзников.


Ушел.

Сообщение отредактировал Бизл - Суббота, 04.09.10, 20:58
 
Форум » Главная улица » Квартал мастеровых » Секреты GHI (как сделать хитрую вещицу)
Поиск:


Copyright MyCorp © 2024
Конструктор сайтов - uCoz