Перейти к содержанию

Blueeyer

Постоялец
  • Публикаций

    340
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1
  • Отзывы

    100%

Весь контент Blueeyer

  1. gameserver/java/net/sf/l2j/gameserver/model/L2Skill.java
  2. парень просто халявную репутацию пытается себе набить
  3. было бы не плохо, готов взглянуть)
  4. Blueeyer

    Работаю с ядром

    А, вот, если вдруг дорожите своими исходниками, то можно придумать какой-то более безопасный способ. Вспомнил! Оплата WebMoney. Может и другие системы приму, но надо смотреть. Помнится, возникали проблемы с выводом денег.
  5. Blueeyer

    Работаю с ядром

    Вообщем. Учусь на программиста, работаю программистом, есть опыт работы с ядром aCis, состою в приватной команде и так далее. Знаю Java, C/C++, C#, JS, HTML, CSS, всякие языки разметки и так далее. Верстать что-либо - не мой конек. Готов принять заказы, связанные с ядром, в свободное от работы и личной команды время. Даете хорошо описанное ТЗ, по пунктам - как и что должно работать (желательно даже со сценариями), указываете - сколько готовы заплатить, какие даете сроки. Перед началом работы от вас требуются исходники сборки, на которой я должен написать подобное дополнение и отправка денег под протекцией. Делаю задание, тестируете, убираем баги и даете код, либо просто платите наперед. Если задание не выполняю по какой-либо причине - возвращаю деньги. Пишу аккуратно, красиво и понятно (работа в различных командах научила этому). Пишите тут, либо в профиле есть мои контакты. Не знаю, что там еще сказать можно. Было что-то важное, но вылетело из головы.
  6. Актуально. Работа медленно, но продвигается. Простенький, аккуратный и красивый шаблон сайта почти готов. Решил сделать тестовую оффлайн версию игры. Думаю, начну с нее. В ближайшие недели постараюсь что-нибудь выложить, если кому-либо интересно. Ну и сайт поставлю. В скором времени может понадобиться помощь верстальщика PSD шаблона. Если кто готов помочь - дайте знать.
  7. Не было возможности ранее просмотреть ваш код внимательно, сейчас пришел с работы и еще раз перечитал его. По поводу: if(npcId == npcId) Тут потерялась одна очень важная вещь. У вас есть два разных объекта npcId, один принадлежит классу квеста (явлется общим для всех экземпляров класса), а второй достается из поля npc, которое передается как параметр в метод onTalk, onKill... Так вот, там с параметра npc достается свойство npcId, которое существует только в теле метода, а за его пределами (после того, как метод отработал) - сборщик мусора очищает память, уничтожая его). public String onTalk(L2NpcInstance npc, L2PcInstance talker) { int npcId = npc.getNpcId(); // тут мы через геттер достаем значение поля объекта (экзампляра класса) L2NpcInstance. Тоесть, какого-то определенного нпц, который вызвал этот метод. } Таким образом в вашем условии вы дважды обращались к полю метода, вам же надо сравзнить - совпадает ли поле метода с полем класса. private static final int npcId = 50002; // это поле класса, оно у вас объявлено вверху Действительно ли нпц, который обращается к вашему квесту имеет тот же айди, что и нпц, прописанный в квесте. Чтобы обратиться к полю npcId объекта надо использовать зарезервированное слово this. Как видите, у вас появляется несколько вариантов: 1) убрать значение статик (что менее логично), тогда можно обращаться к полю экземпляра через this. Однако, смысл каждому экземпляру класса резервировать память под одно и то же значение? (что происходит без статики). private final int npcId = 50002; И сравниваем: if (this.npcId == npcId) { // Put your logic here } 2) переименуйте переменную в методе (тогда можно оставить поле класса статическим): public String onTalk(L2NpcInstance npc, L2PcInstance talker) { int currNpcId = npc.getNpcId(); if (currNpcId == npcId) { // ...... } } Объяснение материала - не мой конек Но постарался разъяснить все максиально доступно.
  8. а, вижу, не заметил что у вас переменные с разным названием (count и caunt), на будущее рекомендую переменные называть соответствующим образом. К примеру кол-во предметов itemCount, уровень предмета itemLevel. И самому будет проще ориентироваться, если вдруг вернешься к этому, и другим, если кто-то вступит в ттвою команду или еще что Тогда, скорее всего, это будет более верным вариантом: if (count < 2000 || caunt < 1) event = "50002-no1.htm"; else { st.takeItems(HEAD_UNDEAD,2000); st.takeItems(MASTER_1,1); st.giveItems(MASTER_2,1); st.set("cond","3"); event = "50002-6.htm"; } Желаю удачи, если будут проблемы - обращайтесь.
  9. Кстати, не могу не подметить: if(npcId == npcId) { //Зачем это условие? Равна ли переменная сама себе. Всегда будет возвращать true if (cond == 0) htmltext = "50002-1.htm"; else if (cond == 1) htmltext = "50002-3.htm"; else if (cond == 2) htmltext = "50002-5.htm"; else if (cond == 3) htmltext = "50002-7.htm"; else if (cond == 4) htmltext = "50002-9.htm"; } И тут же, в вашем случае очень просто все это заменить в пару строк: if(cond >= 0 && cond <= 4) { htmltext = "50002-" + (cond*2 + 1) + ".htm"; }
  10. Я немного не верно выразился. Вот что у вас происходило в данных строках: если кол-во меньше 2000, то event = "50002-no1.htm" затем проверяем, если кол-во меньше 1, то опять то же действие, хотя не знаю - зачем... а если кол-во не меньше 1 (т.е. >= 1) то выдает призы вот и вся проблема P.S. аналогичная проблема и с 3 уровнем Финально я бы сделал так: if (count < 2000) event = "50002-no1.htm"; else { st.takeItems(HEAD_UNDEAD,2000); st.takeItems(MASTER_1, 1); st.giveItems(MASTER_2, 1); st.set("cond", "3"); event = "50002-6.htm"; }
  11. по поводу 2000 итемов - у вас тело if состоит более, чем из одной строки, поэтому его надо открыть и закрыть с помощью скобок, иначе в это условие попадает только первая строка, остальные же выполнятся в не зависимости от того, истинно ли оно или ложно: if (count < 2000) { event = "50002-no1.htm"; if (caunt < 1) // не знаю, зачем вам это условие, можно убрать event = "50002-no1.htm"; } else { st.takeItems(HEAD_UNDEAD,2000); st.takeItems(MASTER_1,1); st.giveItems(MASTER_2,1); st.set("cond","3"); event = "50002-6.htm"; }
  12. тоесть, весь путь со start до start_2 проходит нормально? А вообще, хоть реформат бы сделал. Ато из-за разброса открывающихся и закрывающихся скобок на разном уровне не классно ориентироваться. И белый фон тоже как-то не радует глаз.
  13. Blueeyer

    Точки с прозрачным фоном

    Здравствуйте, может кто-то сможет помочь. Делаю гугл карту, поскольку картинки загружаются быстрее, чем рисуются фигуры - необходимо сделать 18 фигур. 9 кружочков 12х12 разного цвета с белой обводкой и 9 точек 4х4 без обводки. С прозрачным фоном. Расширение PNG. Цвета RGB: function getMarkerColor(type) { switch (type) { case 'POLICE': return '#75bfc5'; case 'ACCIDENT': return '#adadad'; case 'CHIT_CHAT': return '#7bd649'; case 'ROAD_CLOSED': return '#ffa88d'; case 'HAZARD': case 'CONSTRUCTION': return '#ffc262'; case 'JAM': return '#df3b3b'; //JAM_HEAVY = #c76757, JAM_MODERATE = #e69b4f default: return 'white'; } } //JAM_HEAVY = #c76757, JAM_MODERATE = #e69b4f - тоже туда входят. Вот пример того, как это выглядит: P.S. Буду очень признателен.
  14. Вы опишите его хотяб. Может будет интересно написать что-то подобное.
  15. Blueeyer

    Ошибка MySQL

    думаю, что если идти подобным путем, то проще удалить сервис mysql скорее всего из-за него все проблемы летят
  16. Blueeyer

    Ошибка MySQL

    попробуйте зайти череть терминал (cmd), введите mysql -u user_name -p далее вам предложат ввести пароль (не пугайтесь, что он не вводится, на самом деле это не так) - введите его и проверьте, появилась ли та же ошибка? Если да, то попробуйте не вводить пароль, а сразу нажать Enter, возможно вы его и не меняли. К чему это привело? Кстати, если в терминале не находит "mysql", то добавьте в переменную окружения (environment variable) Path (через точку с запятой) - путь к папке bin вашей бд MySQL (что-то вроде C:/MySQL/bin). P.S. Переменный окружения находятся в настройках компьютера, в левой части окна, либо Control Panel -> System and Security -> System (если у вас Windows).
  17. Blueeyer

    Ошибка MySQL

    Так пишет же, что пароль не верный. Не к той базе коннектишься, либо как-то криво пароль сменил, либо еще что.
  18. на кикстартере не вышло, оказывается там есть одно требование - человек должен проживать в Штатах...
  19. подумывал уже, но нормально ли там к созданию игры отнесутся...
  20. Какая-то схожесть в синтаксисе на начальном уровне изучения языка не делает его очень похожим. Те же события, делегаты, лямбда выражения, ... (что, кстати, также является основами) - уже там возникают не маленькие различия. В C# нет как таковых указателей, есть что-то похожее, но не на том уровне (если не использовать unsafe code). И заметь, это еще не углубление в мелочи, это вещи, которые знает каждый начинающий.
  21. чем глубже ты будешь изучать эти языки, тем больше начнешь понимать - на сколько они разные. C++ более низкоуровневый и менее безопасный язык, C# же является высокоуровневым, объектно-ориентированным языком. Прежде чем делать подобное заявление - почитай об этом побольше. Как минимум, первое, что выдал гугл на эту тему: http://www.quora.com/What-is-the-difference-between-C-C++-and-C
  22. Ребята, прошу учесть, что платить за подобные вещи не с чего. Если вы готовы только из интереса к проекту помочь, то я это учту и в дальнейшем, думаю, обращусь. А так, вещи нужные Тему создавал сидя на работе и пропустил много мелочей. По поводу существующего аналога - в нем не реализован мультиплеер. По поводу клиент-серверной части пока решаю различные нюансы, вроде того - как правильнее всего распределять потоки, отправлять пакеты по принципу транзакций, либо держать коннект на протяжении всей сессии (с некоторыми дополнительными фишками, если произашел мелкий сбой в сети). Решил писать все с нуля, использую сокеты. Пока AI мобов примитивный. Собирают список персонажей, находящихся в определенном радиусе и стараются бить тех, кто наносит им больше всего, а так же - кого им легче догнать (чаще всего). Если игрок увел моба слишком далеко от его респа, то моб возвращается туда и все его хдоровье восстанавливается. На самом деле, много хитростей и интересных фишек пришло именно благодаря тому, что изучал ядро ла2, но пока еще не успел реализовать. На данный момент сделано очень мало, но в скоре процесс пойдет гораздо быстрее.
×
×
  • Создать...