mirror of
https://github.com/Rogiel/l2jserver2
synced 2025-12-05 23:22:47 +00:00
Implement create item packet dispatch
This commit is contained in:
@@ -34,6 +34,7 @@ import com.l2jserver.model.game.Fort;
|
|||||||
import com.l2jserver.model.game.Skill;
|
import com.l2jserver.model.game.Skill;
|
||||||
import com.l2jserver.model.id.object.CharacterID;
|
import com.l2jserver.model.id.object.CharacterID;
|
||||||
import com.l2jserver.model.template.ItemTemplate;
|
import com.l2jserver.model.template.ItemTemplate;
|
||||||
|
import com.l2jserver.model.world.Actor;
|
||||||
import com.l2jserver.model.world.Item;
|
import com.l2jserver.model.world.Item;
|
||||||
import com.l2jserver.model.world.L2Character;
|
import com.l2jserver.model.world.L2Character;
|
||||||
import com.l2jserver.service.network.model.Lineage2Client;
|
import com.l2jserver.service.network.model.Lineage2Client;
|
||||||
@@ -281,6 +282,8 @@ public class Lineage2ClientImpl implements Lineage2Client {
|
|||||||
packet.addSkill((Skill) obj);
|
packet.addSkill((Skill) obj);
|
||||||
else if (obj instanceof Fort)
|
else if (obj instanceof Fort)
|
||||||
packet.addFort((Fort) obj);
|
packet.addFort((Fort) obj);
|
||||||
|
else if(obj instanceof Actor)
|
||||||
|
packet.addActorName((Actor) obj);
|
||||||
}
|
}
|
||||||
return write(packet);
|
return write(packet);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ import com.l2jserver.model.template.ItemTemplate;
|
|||||||
import com.l2jserver.model.template.SkillTemplate;
|
import com.l2jserver.model.template.SkillTemplate;
|
||||||
import com.l2jserver.model.world.Actor;
|
import com.l2jserver.model.world.Actor;
|
||||||
import com.l2jserver.model.world.Item;
|
import com.l2jserver.model.world.Item;
|
||||||
|
import com.l2jserver.model.world.L2Character;
|
||||||
import com.l2jserver.model.world.NPC;
|
import com.l2jserver.model.world.NPC;
|
||||||
import com.l2jserver.service.network.model.Lineage2Client;
|
import com.l2jserver.service.network.model.Lineage2Client;
|
||||||
import com.l2jserver.service.network.model.SystemMessage;
|
import com.l2jserver.service.network.model.SystemMessage;
|
||||||
@@ -226,14 +227,12 @@ public class SM_SYSTEM_MESSAGE extends AbstractServerPacket {
|
|||||||
* @return this instance
|
* @return this instance
|
||||||
*/
|
*/
|
||||||
public final SM_SYSTEM_MESSAGE addActorName(final Actor actor) {
|
public final SM_SYSTEM_MESSAGE addActorName(final Actor actor) {
|
||||||
// params.add(new SystemMessagePacketParameter() {
|
if (actor instanceof L2Character) {
|
||||||
// @Override
|
addString(((L2Character) actor).getName());
|
||||||
// public void write(Lineage2Connection conn, ChannelBuffer buffer) {
|
} else if (actor instanceof NPC) {
|
||||||
// // buffer.writeInt(TYPE_TEXT);
|
addString(((NPC) actor).getTemplate().getInfo().getName()
|
||||||
// // buffer.writeInt(number);
|
.getValue());
|
||||||
// // TODO
|
}
|
||||||
// }
|
|
||||||
// });
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -65,8 +65,10 @@ import com.l2jserver.model.world.character.event.CharacterStartMovingEvent;
|
|||||||
import com.l2jserver.model.world.character.event.CharacterTargetDeselectedEvent;
|
import com.l2jserver.model.world.character.event.CharacterTargetDeselectedEvent;
|
||||||
import com.l2jserver.model.world.character.event.CharacterTargetSelectedEvent;
|
import com.l2jserver.model.world.character.event.CharacterTargetSelectedEvent;
|
||||||
import com.l2jserver.model.world.character.event.CharacterWalkingEvent;
|
import com.l2jserver.model.world.character.event.CharacterWalkingEvent;
|
||||||
|
import com.l2jserver.model.world.item.ItemCreatedEvent;
|
||||||
import com.l2jserver.model.world.item.ItemDropEvent;
|
import com.l2jserver.model.world.item.ItemDropEvent;
|
||||||
import com.l2jserver.model.world.item.ItemPickEvent;
|
import com.l2jserver.model.world.item.ItemPickEvent;
|
||||||
|
import com.l2jserver.model.world.item.ItemRemovedEvent;
|
||||||
import com.l2jserver.model.world.npc.event.NPCSpawnEvent;
|
import com.l2jserver.model.world.npc.event.NPCSpawnEvent;
|
||||||
import com.l2jserver.model.world.npc.event.NPCTalkEvent;
|
import com.l2jserver.model.world.npc.event.NPCTalkEvent;
|
||||||
import com.l2jserver.model.world.player.event.PlayerTeleportedEvent;
|
import com.l2jserver.model.world.player.event.PlayerTeleportedEvent;
|
||||||
@@ -249,6 +251,26 @@ public class BroadcastServiceImpl extends AbstractService implements
|
|||||||
} else if (e instanceof CharacterCreateShortcutEvent) {
|
} else if (e instanceof CharacterCreateShortcutEvent) {
|
||||||
conn.write(new SM_CHAR_SHORTCUT_REGISTER(
|
conn.write(new SM_CHAR_SHORTCUT_REGISTER(
|
||||||
((CharacterCreateShortcutEvent) e).getShortcut()));
|
((CharacterCreateShortcutEvent) e).getShortcut()));
|
||||||
|
} else if (e instanceof ItemCreatedEvent) {
|
||||||
|
if (((ItemCreatedEvent) e).getItem().getCount() == 1) {
|
||||||
|
conn.sendSystemMessage(SystemMessage.C1_OBTAINED_S2,
|
||||||
|
((ItemCreatedEvent) e).getCharacter(),
|
||||||
|
((ItemCreatedEvent) e).getItem());
|
||||||
|
} else {
|
||||||
|
conn.sendSystemMessage(SystemMessage.C1_OBTAINED_S3_S2,
|
||||||
|
((ItemCreatedEvent) e).getCharacter(),
|
||||||
|
((ItemCreatedEvent) e).getItem(),
|
||||||
|
((ItemCreatedEvent) e).getItem().getCount());
|
||||||
|
}
|
||||||
|
} else if (e instanceof ItemRemovedEvent) {
|
||||||
|
if (((ItemCreatedEvent) e).getItem().getCount() == 1) {
|
||||||
|
conn.sendSystemMessage(SystemMessage.S1_DISAPPEARED,
|
||||||
|
((ItemCreatedEvent) e).getItem());
|
||||||
|
} else {
|
||||||
|
conn.sendSystemMessage(SystemMessage.S2_S1_DISAPPEARED,
|
||||||
|
((ItemCreatedEvent) e).getItem(),
|
||||||
|
((ItemCreatedEvent) e).getItem().getCount());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// keep listener alive
|
// keep listener alive
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -64,8 +64,10 @@ import com.l2jserver.model.world.character.event.CharacterStartMovingEvent;
|
|||||||
import com.l2jserver.model.world.character.event.CharacterTargetDeselectedEvent;
|
import com.l2jserver.model.world.character.event.CharacterTargetDeselectedEvent;
|
||||||
import com.l2jserver.model.world.character.event.CharacterTargetSelectedEvent;
|
import com.l2jserver.model.world.character.event.CharacterTargetSelectedEvent;
|
||||||
import com.l2jserver.model.world.character.event.CharacterWalkingEvent;
|
import com.l2jserver.model.world.character.event.CharacterWalkingEvent;
|
||||||
|
import com.l2jserver.model.world.item.ItemCreatedEvent;
|
||||||
import com.l2jserver.model.world.item.ItemDropEvent;
|
import com.l2jserver.model.world.item.ItemDropEvent;
|
||||||
import com.l2jserver.model.world.item.ItemPickEvent;
|
import com.l2jserver.model.world.item.ItemPickEvent;
|
||||||
|
import com.l2jserver.model.world.item.ItemRemovedEvent;
|
||||||
import com.l2jserver.model.world.npc.event.NPCSpawnEvent;
|
import com.l2jserver.model.world.npc.event.NPCSpawnEvent;
|
||||||
import com.l2jserver.model.world.npc.event.NPCTalkEvent;
|
import com.l2jserver.model.world.npc.event.NPCTalkEvent;
|
||||||
import com.l2jserver.model.world.player.event.PlayerTeleportedEvent;
|
import com.l2jserver.model.world.player.event.PlayerTeleportedEvent;
|
||||||
@@ -225,7 +227,8 @@ public class BroadcastServiceImpl extends AbstractService implements
|
|||||||
final L2Character character = (L2Character) ((PlayerTeleportedEvent) e)
|
final L2Character character = (L2Character) ((PlayerTeleportedEvent) e)
|
||||||
.getPlayer();
|
.getPlayer();
|
||||||
conn.write(new SM_CHAR_INFO(character));
|
conn.write(new SM_CHAR_INFO(character));
|
||||||
//conn.write(new SM_CHAR_INFO_EXTRA(character)); not sure if interlude has this packet.
|
// conn.write(new SM_CHAR_INFO_EXTRA(character)); not sure
|
||||||
|
// if interlude has this packet.
|
||||||
broadcastAll(conn, character);
|
broadcastAll(conn, character);
|
||||||
} else if (e instanceof ActorAttackHitEvent) {
|
} else if (e instanceof ActorAttackHitEvent) {
|
||||||
conn.write(new SM_ACTOR_ATTACK(((ActorAttackHitEvent) e)
|
conn.write(new SM_ACTOR_ATTACK(((ActorAttackHitEvent) e)
|
||||||
@@ -248,6 +251,26 @@ public class BroadcastServiceImpl extends AbstractService implements
|
|||||||
} else if (e instanceof CharacterCreateShortcutEvent) {
|
} else if (e instanceof CharacterCreateShortcutEvent) {
|
||||||
conn.write(new SM_CHAR_SHORTCUT_REGISTER(
|
conn.write(new SM_CHAR_SHORTCUT_REGISTER(
|
||||||
((CharacterCreateShortcutEvent) e).getShortcut()));
|
((CharacterCreateShortcutEvent) e).getShortcut()));
|
||||||
|
} else if (e instanceof ItemCreatedEvent) {
|
||||||
|
if (((ItemCreatedEvent) e).getItem().getCount() == 1) {
|
||||||
|
conn.sendSystemMessage(SystemMessage.C1_OBTAINED_S2,
|
||||||
|
((ItemCreatedEvent) e).getCharacter(),
|
||||||
|
((ItemCreatedEvent) e).getItem());
|
||||||
|
} else {
|
||||||
|
conn.sendSystemMessage(SystemMessage.C1_OBTAINED_S3_S2,
|
||||||
|
((ItemCreatedEvent) e).getCharacter(),
|
||||||
|
((ItemCreatedEvent) e).getItem(),
|
||||||
|
((ItemCreatedEvent) e).getItem().getCount());
|
||||||
|
}
|
||||||
|
} else if (e instanceof ItemRemovedEvent) {
|
||||||
|
if (((ItemCreatedEvent) e).getItem().getCount() == 1) {
|
||||||
|
conn.sendSystemMessage(SystemMessage.S1_DISAPPEARED,
|
||||||
|
((ItemCreatedEvent) e).getItem());
|
||||||
|
} else {
|
||||||
|
conn.sendSystemMessage(SystemMessage.S2_S1_DISAPPEARED,
|
||||||
|
((ItemCreatedEvent) e).getItem(),
|
||||||
|
((ItemCreatedEvent) e).getItem().getCount());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// keep listener alive
|
// keep listener alive
|
||||||
return true;
|
return true;
|
||||||
@@ -375,7 +398,8 @@ public class BroadcastServiceImpl extends AbstractService implements
|
|||||||
// send this user information
|
// send this user information
|
||||||
log.debug("Sending character information packets");
|
log.debug("Sending character information packets");
|
||||||
conn.write(new SM_CHAR_INFO(e.getCharacter()));
|
conn.write(new SM_CHAR_INFO(e.getCharacter()));
|
||||||
// conn.write(new SM_CHAR_INFO_EXTRA(e.getCharacter())); interlude doesn't have this?
|
// conn.write(new SM_CHAR_INFO_EXTRA(e.getCharacter())); interlude
|
||||||
|
// doesn't have this?
|
||||||
conn.write(new SM_CHAR_INVENTORY(e.getCharacter().getInventory()));
|
conn.write(new SM_CHAR_INVENTORY(e.getCharacter().getInventory()));
|
||||||
conn.write(new SM_CHAR_SHORTCUT_LIST(e.getCharacter().getShortcuts()));
|
conn.write(new SM_CHAR_SHORTCUT_LIST(e.getCharacter().getShortcuts()));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user