예제 #1
0
 public override void SendSpawnData(MapleClient client)
 {
     if (TargetMap.MapId == client.Player.Map.MapId || Owner == client.Player && Owner.Party == null)
     {
         client.Send(PacketCreator.SpawnDoor(Owner.Id,
                                             Town.MapId == client.Player.Map.MapId ? TownPortal.Position : TargetMapPosition, true));
         if (Owner.Party != null &&
             (Owner == client.Player || Owner.Party.ContainsMember(new MaplePartyCharacter(client.Player))))
         {
             client.Send(PacketCreator.PartyPortal(Town.MapId, TargetMap.MapId, TargetMapPosition));
         }
         client.Send(PacketCreator.SpawnPortal(Town.MapId, TargetMap.MapId, TargetMapPosition));
     }
 }
예제 #2
0
 public override void SendDestroyData(MapleClient client)
 {
     if (TargetMap.MapId == client.Player.Map.MapId || Owner == client.Player ||
         Owner.Party != null && Owner.Party.ContainsMember(new MaplePartyCharacter(client.Player)))
     {
         if (Owner.Party != null &&
             (Owner == client.Player || Owner.Party.ContainsMember(new MaplePartyCharacter(client.Player))))
         {
             client.Send(PacketCreator.PartyPortal(999999999, 999999999, new Point(-1, -1)));
         }
         client.Send(PacketCreator.RemoveDoor(Owner.Id, false));
         client.Send(PacketCreator.RemoveDoor(Owner.Id, true));
     }
 }