/// <summary> /// Broadcasts PartySetActiveQuest in party. /// </summary> /// <param name="party"></param> /// <param name="uniqueQuestId"></param> public static void PartySetActiveQuest(Party party, long uniqueQuestId) { var packet = new Packet(Op.PartySetActiveQuest, 0); packet.PutLong(uniqueQuestId); party.Broadcast(packet, true); }
/// <summary> /// Broadcasts QuestUpdate in party. /// </summary> /// <param name="creature"></param> /// <param name="quest"></param> public static void QuestUpdate(Party party, Quest quest) { var packet = new Packet(Op.QuestUpdate, 0); packet.AddQuestUpdate(quest); party.Broadcast(packet, true); }
/// <summary> /// Sends new finish rule setting to all clients in the party /// </summary> /// <param name="party"></param> public static void PartyFinishUpdate(Party party) { var packet = new Packet(Op.PartyFinishUpdate, 0); packet.PutInt((int)party.Finish); party.Broadcast(packet, true); }
/// <summary> /// Updates clients on new party EXP distribution settings. /// </summary> /// <param name="party"></param> public static void PartyExpUpdate(Party party) { var packet = new Packet(Op.PartyExpUpdate, 0); packet.PutInt((int)party.ExpRule); party.Broadcast(packet, true); }
/// <summary> /// Informs all members of a change in leadership. /// </summary> /// <param name="party"></param> public static void PartyChangeLeader(Party party) { var packet = new Packet(Op.PartyChangeLeaderUpdate, 0); packet.PutLong(party.Leader.EntityId); party.Broadcast(packet, true); }
/// <summary> /// Updates members on changes to the party settings /// </summary> /// <remarks> /// Apparently they only get to know about name changes? /// </remarks> /// <param name="party"></param> public static void PartySettingUpdate(Party party) { var packet = new Packet(Op.PartySettingUpdate, 0); packet.PutString(party.Name); party.Broadcast(packet, true); }
/// <summary> /// Updates remaining party members of a member who has left the party. /// </summary> /// <param name="creature"></param> /// <param name="party"></param> public static void PartyLeaveUpdate(Creature creature, Party party) { var packet = new Packet(Op.PartyLeaveUpdate, 0); packet.PutLong(creature.EntityId); party.Broadcast(packet, true); }
/// <summary> /// I THINK this one is for actually updating the UI element of the party (with leader controls). /// </summary> /// <param name="creature"></param> /// <param name="party"></param> public static void PartyWindowUpdate(Creature creature, Party party) { var packet = new Packet(Op.PartyWindowUpdate, 0); packet.PutLong(creature.EntityId); // TODO: Find out what these actually mean. packet.PutByte(1); packet.PutByte(1); packet.PutByte(0); packet.PutByte(0); party.Broadcast(packet, true); }
/// <summary> /// Closes the party's Member Wanted window. /// </summary> /// <param name="party"></param> public static void PartyWantedClosed(Party party) { var packet = new Packet(Op.PartyWantedClosed, 0); party.Broadcast(packet, true); }