Сообщений: 1,912
Тем: 56
Зарегистрирован: Jan 2009
Репутация:
12,921
smeli Написал:что ето за пакет? ExAbnormalStatusUpdateFromTargetPacket
куда его и когда его отсылать и зачем?
этот пакет посылается - когда выделяеш таргет, отображает Бафы таргета
Сообщений: 6
Тем: 0
Зарегистрирован: Jun 2012
Darvin Написал:кому интересно вот отображение урона
писалось быстро так что не обессудте
Открыть спойлер
codeКод: Index: /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/serverpackets/StatusUpdate.java
===================================================================
--- /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/serverpackets/StatusUpdate.java (revision 3)
+++ /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/serverpackets/StatusUpdate.java (revision 103)
@@ -42,5 +42,11 @@
public final static int MAX_CP = 0x22;
+ /**
+ * GOD отображение демага
+ */
+ public final static int DAMAGE = 0x23;
+
private final int _objectId;
+ private int _playerId;
private final List<Attribute> _attributes = new ArrayList<Attribute>();
@@ -54,7 +60,14 @@
}
}
+ public StatusUpdate(int objectId)
+ {
+ _objectId = objectId;
+ _playerId = 0;
+ }
- public StatusUpdate(int objectId) {
+ public StatusUpdate(int objectId, int playerId)
+ {
_objectId = objectId;
+ _playerId = playerId;
}
@@ -68,6 +81,6 @@
writeC(0x18);
writeD(_objectId);
- writeD(1); //хз че такое Наверно МП
- writeD(1); // при 1 идет рег хп
+ writeD(_playerId);
+ writeD(0x01); //При 1 = рег ХП
writeD(_attributes.size());
Index: /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/serverpackets/SystemMessage.java
===================================================================
--- /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/serverpackets/SystemMessage.java (revision 81)
+++ /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/serverpackets/SystemMessage.java (revision 103)
@@ -15,4 +15,5 @@
// d d (d S/d d/d dd)
// |--------------> 0 - String 1-number 2-textref npcname (1000000-1002655) 3-textref itemname 4-textref skills 5-??
+ private static final int TYPE_DAMAGE = 16;
private static final int TYPE_CLASS_NAME = 15;
private static final int TYPE_SYSTEM_STRING = 13;
@@ -3257,4 +3258,10 @@
}
+ public SystemMessage addDamage(Creature targetid, Creature attakerid, int damage)
+ {
+ args.add(new Arg(TYPE_DAMAGE, new int[] { targetid.getObjectId(), attakerid.getObjectId(), damage }));
+ return this;
+ }
+
@Override
protected final void writeImpl() {
@@ -3311,4 +3318,11 @@
break;
}
+ case TYPE_DAMAGE: {
+ int[] attr = (int[]) e.obj;
+ writeD(attr[0]); // target object id
+ writeD(attr[1]); // attaker object id
+ writeD(attr[2]); // damage
+ break;
+ }
}
}
Index: /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/model/Player.java
===================================================================
--- /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/model/Player.java (revision 101)
+++ /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/model/Player.java (revision 103)
@@ -2170,5 +2170,5 @@
return;
- StatusUpdate su = makeStatusUpdate(StatusUpdate.MAX_HP, StatusUpdate.MAX_MP, StatusUpdate.MAX_CP, StatusUpdate.CUR_HP, StatusUpdate.CUR_MP, StatusUpdate.CUR_CP);
+ StatusUpdate su = makeStatusUpdate(StatusUpdate.MAX_HP, StatusUpdate.MAX_MP, StatusUpdate.MAX_CP, StatusUpdate.CUR_HP, StatusUpdate.CUR_MP, StatusUpdate.CUR_CP, StatusUpdate.DAMAGE);
sendPacket(su);
@@ -8404,12 +8404,12 @@
if (crit)
if (magic)
- sendPacket(new SystemMessage(SystemMessage.MAGIC_CRITICAL_HIT).addName(this));
+ sendPacket(new SystemMessage(SystemMessage.MAGIC_CRITICAL_HIT).addName(this).addDamage(target,target,damage));
else
- sendPacket(new SystemMessage(SystemMessage.C1_HAD_A_CRITICAL_HIT).addName(this));
+ sendPacket(new SystemMessage(SystemMessage.C1_HAD_A_CRITICAL_HIT).addName(this).addDamage(target,target,damage));
if (miss)
- sendPacket(new SystemMessage(SystemMessage.C1S_ATTACK_WENT_ASTRAY).addName(this));
+ sendPacket(new SystemMessage(SystemMessage.C1S_ATTACK_WENT_ASTRAY).addName(this).addDamage(target,target,damage));
else if (!target.isDamageBlocked())
- sendPacket(new SystemMessage(SystemMessage.C1_HAS_GIVEN_C2_DAMAGE_OF_S3).addName(this).addName(target).addNumber(damage));
+ sendPacket(new SystemMessage(SystemMessage.C1_HAS_GIVEN_C2_DAMAGE_OF_S3).addName(this).addName(target).addNumber(damage).addDamage(target,target,damage));
if (target.isPlayer()) {
@@ -8424,5 +8424,5 @@
public void displayReceiveDamageMessage(Creature attacker, int damage) {
if (attacker != this)
- sendPacket(new SystemMessage(SystemMessage.C1_HAS_RECEIVED_DAMAGE_OF_S3_FROM_C2).addName(this).addName(attacker).addNumber((long) damage));
+ sendPacket(new SystemMessage(SystemMessage.C1_HAS_RECEIVED_DAMAGE_OF_S3_FROM_C2).addName(this).addName(attacker).addNumber((long) damage).addDamage(attacker,attacker,damage));
}
Index: /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/model/Creature.java
===================================================================
--- /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/model/Creature.java (revision 101)
+++ /trunk/Lineage 2 Goddess of Destruction/gameserver/src/main/java/l2p/gameserver/model/Creature.java (revision 103)
@@ -78,4 +78,5 @@
public abstract class Creature extends GameObject {
+
public class MoveNextTask extends RunnableImpl {
private double alldist, donedist;
@@ -879,6 +880,13 @@
su.addAttribute(field, getPvpFlag());
break;
+ case StatusUpdate.DAMAGE:
+ su.addAttribute(field, (int) getCurrentHp() );
+ break;
}
return su;
+ }
}
Открыть спойлер
ИстинаПисалось, но не тобой и это совершенно не всё
Надо было ТОДОшки не удалять xD
Сообщений: 445
Тем: 46
Зарегистрирован: Oct 2011
TheDebaucher Написал:
Открыть спойлер
ИстинаПисалось, но не тобой и это совершенно не всё
Надо было ТОДОшки не удалять xD
дядя! а вы собственно кто? давай иди отсюда. если обвиняешь то уж доказательства предъяви
Сообщений: 187
Тем: 6
Зарегистрирован: Jun 2012
Репутация:
108
415 - протокол Awakening, 410-411 - протокол Harmony, а какой сейчас значится у Glory Days ? И кто разбирался уже с этим обновлением, не подскажите, какие пакеты были затронуты?
// GPRS удалил подпись пользователя
Сообщений: 445
Тем: 46
Зарегистрирован: Oct 2011
Clown Написал:415 - протокол Awakening, 410-411 - протокол Harmony, а какой сейчас значится у Glory Days ? И кто разбирался уже с этим обновлением, не подскажите, какие пакеты были затронуты?
ну смотри 443-444-445 были на таути. значит гдето 460+
ну это если логически рассуждать. а так хз.
Сообщений: 6
Тем: 0
Зарегистрирован: Jun 2012
Darvin;193787 Написал:дядя! а вы собственно кто? давай иди отсюда. если обвиняешь то уж доказательства предъяви
Открыть спойлер
ИстинаОукей
Цитата: kilroyst@qip.ru (01:16:35 5/06/2012)
/**
* Даный параметр отсылается оффом в паре с MAX_HP
* Сначала CUR_HP, потом MAX_HP
*/
public final static int CUR_HP = 0x09;
public final static int MAX_HP = 0x0a;
/**
* Даный параметр отсылается оффом в паре с MAX_MP
* Сначала CUR_MP, потом MAX_MP
*/
public final static int CUR_MP = 0x0b;
public final static int MAX_MP = 0x0c;
/**
* Меняется отображение только в инвентаре, для статуса требуется UserInfo
*/
public final static int CUR_LOAD = 0x0e;
/**
* Меняется отображение только в инвентаре, для статуса требуется UserInfo
*/
public final static int MAX_LOAD = 0x0f;
public final static int PVP_FLAG = 0x1a;
public final static int KARMA = 0x1b;
/**
* Даный параметр отсылается оффом в паре с MAX_CP
* Сначала CUR_CP, потом MAX_CP
*/
public final static int CUR_CP = 0x21;
public final static int MAX_CP = 0x22;
/**
* GOD отображение демага
*/
public final static int DAMAGE = 0x23;
kilroyst@qip.ru (01:16:52 5/06/2012)
у меня демаг - болванка. У вас есть он?
kilroyst@qip.ru (01:20:21 5/06/2012)
SystemMessage
kilroyst@qip.ru (01:20:28 5/06/2012)
private static final int TYPE_DAMAGE = 16;
kilroyst@qip.ru (01:20:36 5/06/2012)
public SystemMessage addDamage(Creature targetid, Creature attakerid, int damage)
{
args.add(new Arg(TYPE_DAMAGE, new int[] { targetid.getObjectId(), attakerid.getObjectId(), damage }));
return this;
}
Александр Рай (01:20:40 5/06/2012)
Окей, Спасибо
kilroyst@qip.ru (01:20:43 5/06/2012)
case TYPE_DAMAGE:
{
int[] attr = (int[]) e.obj;
writeD(attr[0]); // target object id
writeD(attr[1]); // attaker object id
writeD(attr[2]); // damage
break;
}
kilroyst@qip.ru (01:21:07 5/06/2012)
на мессаджи вывода демага в чат, вешается - аддДемейдж
kilroyst@qip.ru (01:21:20 5/06/2012)
итог - хватаем демаг на экранчег
Так что иди ка ты отсюда
Сообщений: 445
Тем: 46
Зарегистрирован: Oct 2011
06-05-2012, 06:08 PM
(Сообщение последний раз редактировалось: 06-05-2012, 06:09 PM Darvin.)
TheDebaucher Написал:
Открыть спойлер
ИстинаОукей
Так что иди ка ты отсюда
а там вообще есть копирайт???
есть 1 метод который дали(я и не отрицаю этого)
а остальное ты видишь что это спиз*ено??
Добавлено через 1 минуту
и вообще если хочешь поговорить создавай тему в курилке или пиши в аську нифиг засирать тему
Сообщений: 6
Тем: 0
Зарегистрирован: Jun 2012
Darvin;193794 Написал:а там вообще есть копирайт???
есть 1 метод который дали(я и не отрицаю этого)
а остальное ты видишь что это спиз*ено??
Открыть спойлер
опачкеЯ вижу что написано "писал"
Ты совершенно ничего не писал, а лишь - скопировал И пытаешь нажить славу и денях на этом...Вывод?
Сообщений: 187
Тем: 6
Зарегистрирован: Jun 2012
Репутация:
108
gorodetskiy Написал:поделитесь диалогом на парнасе, нипись 33522 , от него порт в 4 инста
( Портал в Хрустальный Лабиринт )
Сам пока до диалогов парнаса не доходил, но в 33522 должно быть что-то вроде:
Цитата:Портал в Хрустальный Лабиринт:
<br>
Вы можете войти в Огненный Коридор.
Вход
// GPRS удалил подпись пользователя
Сообщений: 38
Тем: 1
Зарегистрирован: Aug 2011
Репутация:
446
Darvin Написал:ну смотри 443-444-445 были на таути. значит гдето 460+
ну это если логически рассуждать. а так хз.
Почти, в последнем апдейте Glory Days 468 протокол
|