-
Публикаций
103 -
Зарегистрирован
-
Посещение
-
Отзывы
0%
Сообщения, опубликованные Кастиэль
-
-
шара сурцов гвд была бери в пили.. лучше чем то ты ничего не найдешь..
А разве я ее не посоветовал уже О_о
-
я что то пропустил?
Именно, не знаю разрешено ли в одной теме размещать ссылку на другую, но вот , держите http://forummaxi.ru/topic/64971-lindvior-godworld-source/
-
Возникла проблема со щитами, они считаются как оружие(ну т.к. у них тип стоит Weapon в дп в папке клиент). Пробовал удалить - выбивает ошибку, мол не получается сделать предмет. Что делать, искать все щиты и менять им тип с Weapon на Armor?
Так же в связи с немножко кривым парсом возникает невозможность использования сосок(т.к. у них везде стоит soulshot=0 , а в исходах, если он равен 0, то идет ошибка(я конечно могу потребляемость сосок всем сразу с 0 на 1 поменять, но это немного не то ведь, а вот проблема с щитами так легко не решится)
(activeChar.sendPacket(SystemMessageId.CANNOT_USE_SOULSHOTS))
-
Та нету в шаре ничего нормального)
Как это нету, а слитые гдв, переработанные некстами?
-
https://yadi.sk/d/t36A35jifYXkY
p.s. для интерлюд и грация финал ), вот если что вирус тотал
Кстати, очень просто, если у вас хром - правой кнопкой и найти изображение в интернете )
-
Метод getSkillRadius тут вообще ни в какие ворота, так как радиус у скилла 0 (так как он селфовый). Тут надо константа радиуса искажения, которую находишь сам. Вообще, тебе нужно программно нарисовать окружность вокруг кастующего и отбивать рейндж атаки атакующего, когда он находится в данной окружности.
Хочу уточнить, я радиус скилла примерно знаю - 90, и да, немного наоборот, когда в кругу - урон кастанувшему идет, а когда атакующий вне круга, урон кастанувшему не идет.
Я вот все бьюсь над вопросом, как же так сделать(ведь может быть еще и такое, что бьют 2 игрока - один в кругу, другой нет), т.е. как вы сказали - отбивать рейндж атаки...
-
И опять нужна помощь в реализации скилла Расщепление(30515).
Я попытался сделать скилл на основе и вот, что у меня получилось:
public class ErtheiaFighterAura extends L2Effect { public ErtheiaFighterAura(Env env, EffectTemplate template) { super(env, template); } @Override public L2EffectType getEffectType() { return L2EffectType.BUFF; } @Override public boolean onStart() { L2PcInstance caster = (L2PcInstance) getEffector(); for(L2Character cha1 : caster.getKnownList().getKnownCharactersInRadius(1200)) { for(L2Character cha : caster.getKnownList().getKnownCharactersInRadius(getSkill().getSkillRadius())) { if(cha == cha1) { getEffector().setIsInvul(false); } else { if(cha != cha1) { getEffector().setIsInvul(true); } } } } return true; } }
В итоге - неуязвимость дается определенный промежутки времени, не зависимо от того, где находится персонаж(скилл радиус ради теста указал 400 в дп), зы заводил окно для тестаМожет кто подсказать где ошибки, может быть логика не та?)зыы сборка гдв эртея(гдв -> дво) -
А разве нужен поворот в точку? Ну в общем, разбирайся Попробуй с разными флай-тайпами.
Он теперь летит к цели, но без анимации... Как будто притягивают(THROW_HORIZONTAL)
Эх...
Может быть дело в чем-то другом?
-
FlyType.DUMMY - здесь выбираешь тип. Советую взять тип как у цепи танка (так как цепь притягивает постепенно - то есть не мгновенное перемещение, а постепенное). Ну и поколдовать с flySpeed`ом тоже не помешало бы (это уже скорее всего в дп).
А не лучше ли CHARGE,
"// Движение от точки А к точке В, с разворотом в сторону точки В ID = 3"(из файлика \gameserver\network\game\serverpackets\FlyToLocation.java)
Этот тип используется только в эффекте EnemyCharge. Нужно протестить, что он делает вообще.
Ах да, чуть не забыл, тот что -90 не заработал, но +90 прям в упор влево тпшнул(как и предполагалось - без анимации)
А нет, это я в дп накосячил - все норма, работает(тоже в упор).
-
А хотя, что-то я не подумал, это же телепорт будет без анимации, просто появится сборку, эээх.
ph += 90; и ph -= 90; как направо и налево. Тут чисто по логике: ph - это градусная мера направления стрелки, а ph += 180 - поворот назад. Ну а дальше, естественно, перевод в радикал для последующей работы с ним.
А это все равно обязательно проверю, результаты скажу чуть позже )
-
Кто распологает формулами для телепорта не к задней позиции персонажа, а боковых(левой, либо правой).
Собственно вот метод, в котором указана формула для телепорта назад
int x = 0; int y = 0; int z = 0; int px = target.getX(); int py = target.getY(); double ph = Util.convertHeadingToDegree(target.getHeading()); ph += 180; if(ph > 360) { ph -= 360; } ph = Math.PI * ph / 180; x = (int) (px + 25 * Math.cos(ph)); y = (int) (py + 25 * Math.sin(ph)); z = target.getZ(); Location loc = new Location(x, y, z); //... activeChar.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); activeChar.broadcastPacket(new FlyToLocation(activeChar, loc.getX(), loc.getY(), loc.getZ(), FlyType.DUMMY, skill.getFlySpeed(), skill.getFlyDelay(), skill.getFlyAnimationSpeed())); activeChar.abortAttack(); activeChar.abortCast(); activeChar.setXYZ(loc.getX(), loc.getY(), loc.getZ()); activeChar.broadcastPacket(new ValidateLocation(activeChar));
Если же вы не располагаете нужными формулами, то буду очень благодарен, если поможете их вывести
-
поменяй
return getSkill().isToggle();
просто на
return true;
у тебя getSkill().isToggle() скорее всего false возвращает, а это означает что больше вызывать onActionTime не надо.
Не помогло
-
AI_INTENTION_FOLLOW Нужно было все таки указывать)) Ну координаты постирал все
Эххх, на мобах пашет, на игроках нет(
-
Ого, спасибо большое еще раз))
А то я вон чего намутил, хз работает нет :
package dwo.gameserver.handler.effects; import dwo.gameserver.model.actor.instance.L2FortCommanderInstance; import dwo.gameserver.model.actor.instance.L2GrandBossInstance; import dwo.gameserver.model.actor.instance.L2NpcInstance; import dwo.gameserver.model.actor.instance.L2RaidBossInstance; import dwo.gameserver.model.actor.instance.L2SiegeFlagInstance; import dwo.gameserver.model.actor.instance.L2SiegeSummonInstance; import dwo.gameserver.model.skills.effects.CharEffectList; import dwo.gameserver.model.skills.effects.EffectTemplate; import dwo.gameserver.model.skills.effects.L2EffectType; import dwo.gameserver.model.skills.stats.Env; import dwo.gameserver.model.actor.L2Character; import dwo.gameserver.model.actor.L2Object; import dwo.gameserver.model.actor.ai.CtrlIntention; import dwo.gameserver.model.actor.instance.L2PcInstance; import dwo.gameserver.model.skills.effects.L2Effect; public class GoToMe extends L2Effect { private int _x, _y, _z; public GoToMe(Env env, EffectTemplate template) { super(env, template); } @Override public L2EffectType getEffectType() { return L2EffectType.GOTOME; } public boolean onStart(L2Character activeChar, L2Object[] targets) { if(getEffected() == null || getEffector() == null) { return false; } if(getEffected() instanceof L2SiegeFlagInstance || getEffected() instanceof L2FortCommanderInstance || getEffected() instanceof L2NpcInstance || getEffected() instanceof L2SiegeSummonInstance || getEffected() instanceof L2RaidBossInstance || getEffected() instanceof L2GrandBossInstance) { return false; } L2PcInstance _actor = activeChar.getActingPlayer(); L2Character target; for(L2Object obj : targets) { if(!(obj instanceof L2Character)) { return false; } target = (L2Character) obj; if(target.isDead()) { return false; } target.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, _actor); } return true; } public void onExit(L2Character activeChar, L2Object[] targets) { L2PcInstance _actor = activeChar.getActingPlayer(); L2Character target; for(L2Object obj : targets) { target = (L2Character) obj; target.getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE, _actor); } } @Override public boolean onActionTime() { return false; } @Override public int getEffectFlags() { return CharEffectList.EFFECT_GOTOME; } }
-
target.getAI().setIntention(CtrlIntention.AI_INTENTION_FOLLOW, player, 100);
Как-то так. Смотреть по своей сборке методы нужно.
Ну я примерно понял, это как бы метод принужденной атаки, поищу
-
Кто может приблизительно рабочий класс эффекта написать (или скопипастить уже готовый(мб в шаре есть)) для скилла Артеи мага - Западня ветра(единственный не рабочий скилл у артеек магов остался, хз как написать)
P.S. Если уже готовый скинете, попробую переписать под сорцы с которыми работаю(гдв)
P.S.S У мобиуса критует )
P.S.S.S. Вообще у меня возник вопрос с этим скиллом из-за того, что я не понимаю, как сделать чтобы персонаж шел на того персонажа, который скилл заюзал, все остальное могу сделать(чтобы при наложенном дебаффе, нельзя было юзать скиллы, атаковать, менять таргет)
-
<cond msgId="1518"> <player races="Human,Elf,DarkElf,Orc,Dwarf"/> </cond>
В датапаке почти в каждом предмете (stats/items/base).Уфф, ну это легко исправить, спасибо большое
-
Я кстати, что заметил - не юзаются маг и тяж сеты до шмоток ранга S80, начиная с R одеваются
-
Укажи исходник и тебе помогут найти. А так, Ванга на форум не заходит.
Артея годворлда/драгонвинда
-
Что-то не могу найти, может быть еще дадите какие наводки, пожалуйста
-
По идее в ItemInstance, в методе equip(). Вбиваешь в поиск какую-то другую расу и смотришь.
Хорошо, спасибо, пошел смотреть
-
armorgrp.dat в нем все прописано
Вы видимо не поняли - артейки не могут носить именно маг и тяж броню, при чем тут клиентский файл?!(лайт могут)
-
Столкнулся с проблемой - артеи не могут носить ни каких шмоток,собственно вопрос:
Где ~ прописывается обычно какие шмотки могут одевать определенные классы(расы)?
-
узбекистан рулить :D
Тут еще лучше - Москва ...
Эффект для скилла Расщепление(Артея Воин)
в Ядро сервера
Опубликовано
Я так и сделал если честно ))