[Мануал]Эмоции в чате. - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Тех-документация

Тех-документация Статьи по редактированию, компиляции и настройки ява серверов Lineage 2

Ответ
Опции темы
Непрочитано 08.09.2013, 10:40   #1
Супергерой

Автор темы (Топик Стартер) [Мануал]Эмоции в чате.

Суть в том что если игрок пишет в чат к примеру фразу "Привет братюня" То персонаж машет рукой. Если "ЗБС" то будет хлопать руками а если "лол, хаха" то будет смеятся и т.д

Оффтоп:
Свернуть ↑Развернуть ↓


Ну приступим

Открываем нашу IDE заходиm в java/clientpackets/Say2C.java

и пишет такой код после
Код:
protected void runImpl()
	{
		Player activeChar = getClient().getActiveChar();
		if(activeChar == null)
			return;
Пишем наш код:

Код:
  if ((_text.equalsIgnoreCase("ку") 
								|| _text.equalsIgnoreCase("Здравствуй") 
								|| _text.equalsIgnoreCase("Приветствую"))
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 2));
						
						if ((_text.equalsIgnoreCase("lol") 
								|| _text.contains("haha") 
								|| _text.equalsIgnoreCase("хаха") 
								|| _text.equalsIgnoreCase("лол"))
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 10));
							
						if ((_text.equalsIgnoreCase("конечно") 
								|| _text.equalsIgnoreCase("естественно")
								|| _text.equalsIgnoreCase("угу"))
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 6));
						
						if ((_text.equalsIgnoreCase("отрицаю") 
								|| _text.equalsIgnoreCase("нетушки") 
								|| _text.contains("неа")
								|| _text.equalsIgnoreCase("нет")
								|| _text.equalsIgnoreCase("nope")
								|| _text.equalsIgnoreCase("no")
								|| _text.contains("не")
						     	|| _text.contains("ненад"))
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 5));
						
						if ((_text.equalsIgnoreCase("хз") 
								|| _text.contains("незнаю")) 
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 8));
						
						if ((_text.contains("круто") 
								|| _text.equalsIgnoreCase("збс") 
								|| _text.equalsIgnoreCase("awesome") 
								|| _text.equalsIgnoreCase("cool")) 
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 11));
						
						if ((_text.contains("сори") 
								|| _text.contains("sorry")) 
								&& (!activeChar.isRunning() || !activeChar.isAttackingNow() || !activeChar.isCastingNow()))
							activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 13));
Инфа:

_text.equalsIgnoreCase = будет работать если в месаге строго будет тот текст что вы прописали в скрипте к примеру "збс" и он не будет работать если будет "збс брат"

|| _text.contains = будет работать всегда пока во всей месаге будет найден тот или иной текст пример: "збс братюня ты крутой ололо трололо" Всеравно будет работать до тех пор пока содержит слово збс.

Вот список еще эмоций.

Эмоции:
Свернуть ↑Развернуть ↓


По этому примеру можно много других условии поставить к примеру танцевать или поклон на ХФ

Создатель не я даже не знаю кто он. Поставил мне в исходы Matthew Masterio

Последний раз редактировалось OneThunder; 08.09.2013 в 11:09.
OneThunder вне форума Ответить с цитированием
Непрочитано 08.09.2013, 11:01   #2
Пользователь

По умолчанию Re: [Мануал]Эмоции в чате.

Почему не указали человека, который это сделал? где копирайты?
Взято и переведено с maxcheaters.
FullControl вне форума Ответить с цитированием
Непрочитано 08.09.2013, 11:02   #3
Супергерой

Автор темы (Топик Стартер) Re: [Мануал]Эмоции в чате.

О_О Можно ссылку?
OneThunder вне форума Ответить с цитированием
Непрочитано 08.09.2013, 11:22   #4
Пользователь

По умолчанию Re: [Мануал]Эмоции в чате.

Цитата:
Сообщение от Rattyx Посмотреть сообщение
О_О Можно ссылку?
Без проблем .
http://maxcheaters.com/forum/index.p...281#msg1295281
FullControl вне форума Ответить с цитированием
Непрочитано 08.09.2013, 16:45   #5
Супергерой

Автор темы (Топик Стартер) Re: [Мануал]Эмоции в чате.

Цитата:
Сообщение от FullControl Посмотреть сообщение
Спасибо. Однако я не знал что на МКСЧ есть такой мод уже) Мне его ставил Matthew Masterio. Удалять темку значит?

2FullControl:
Свернуть ↑Развернуть ↓
OneThunder вне форума Ответить с цитированием
Непрочитано 08.09.2013, 19:54   #6
Аватар для KID
Пользователь

По умолчанию Re: [Мануал]Эмоции в чате.

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

исходя из этого кода, мне будет интересно, а что же будет в случае когда игрок сидит на троне/полу или в абнормале по типу immobil
KID вне форума Отправить сообщение для KID с помощью Skype™ Ответить с цитированием
Непрочитано 08.09.2013, 22:52   #7
Супергерой

Автор темы (Топик Стартер) Re: [Мануал]Эмоции в чате.

Игорь, часто ли сидя в абнормале игрокам приспичивает чтото написать? ну можно сделать проверки на них) не проблема)
OneThunder вне форума Ответить с цитированием
Непрочитано 08.09.2013, 22:56   #8
Аватар для Gaikotsu
Герой

По умолчанию Re: [Мануал]Эмоции в чате.

по уму, не надо пихать в пакет Say2C все подряд - он и так уже достаточно монструозненький.
лучше завести новый тип слушателей, для чата, и их опрашивать в пакете.
и в эти слушатели и пихать обработку всех этих извращений.
к тому же это позволит "на лету" включать/выключать данные обработки - достаточно лишь зарегистрировать или наоборот убрать регистрацию нужного слушателя.

в свое время я этим путем и пошел, когда мне потребовалось для эвента Trick or Treat (о чем эвент - можете загуглить, он официальный) обрабатывать ситуацию, когда эвентовый нпс должен произвести определенные действия, когда поблизости него игроки произнесут в чат определенную фразу.
Gaikotsu вне форума Ответить с цитированием
Непрочитано 08.09.2013, 23:00   #9
Супергерой

Автор темы (Топик Стартер) Re: [Мануал]Эмоции в чате.

Почему если вы, те кто знают так хорошо кодинг хотябы раз в 1 месяц не вылаживать чтот вкусненькое для жителей зг? Я не говорю чтото мего сложное просто чтот интерестное мб и полезное. Раньше на ЗГ была тонна новых мануалов фишек все обсуждали делились знаниями. Сейчас такого нету...ну оно и понятно все подросли и забыли о том что есть другое поколение которые тоже хотят учится. Мой товарищ написал как мог, я проверял на лайв сервере работает отлично нагрузок нет, а как написать красиво? Подскажите?

Если тема не нужная и не интерестная и новичкам это не нужно - удалите. Я просто пытался разнообразить чем смог ЗГ.
OneThunder вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 08.09.2013, 23:04   #10
Аватар для Gaikotsu
Герой

По умолчанию Re: [Мануал]Эмоции в чате.

ну я вот подсказал в каком направлении можно все это доработать - дальше уже все в ваших руках.
посмотреть к примеру как реализованы слушатели, ну хотя бы входа игрока в игру и сделать по подобию.

З.Ы. и не стоит обижаться на здоровую критику и предложения того, как улучшить код.
Gaikotsu вне форума Ответить с цитированием
Сказали спасибо:
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подсказки в чате Thieff Серверная часть 6 14.05.2011 18:19
Убрать лицензию в чате (чтоб непоказовала) jonnyzero Lineage II 9 30.03.2010 13:48
Как зделать что бы орки и алые понимали друг друга в чате Denuc World of WarCraft 11 28.12.2009 20:55


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 18:05. Часовой пояс GMT +3.

Вверх