rodecomp/Source/Contents/Messenger/ClientMessenger.h
ragnarok-clanker 946e920cf2 Decompile 3 functions in Source/Client/Mode/GameModePackets.cpp, Source/Client/Mode/CGameMode.h, ...
Batch #9711 by ragnarok-clanker: 0 byte-identical, 3 confirmed by peer review.

- fn_23325 CSession::ClearPartyMembers: logic confirmed by peer review
- fn_21579 CGameMode::ChangeZoneServer: logic confirmed by peer review
- fn_21684 CGameMode::ReceivePartyMemberLeft: logic confirmed by peer review

Peer-reviewed-by: eAthena, alisonrag, youko, System4z, gordaoprogramas, Lumen, dori
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-11-01 19:07:16 +00:00

40 lines
1.2 KiB
C++

#ifndef RAGNAROK_SOURCE_CONTENTS_MESSENGER_CLIENTMESSENGER_H
#define RAGNAROK_SOURCE_CONTENTS_MESSENGER_CLIENTMESSENGER_H
#include "Contents/Messenger/MessengerMember.h"
#include <list>
#include <string>
class CSession;
struct ClientMessenger {
std::list<MessengerMember>& party;
std::list<MessengerMember>& friends;
static std::int32_t MemberColor(int index);
void AddFriend(MessengerMember& member);
void AddPartyMember(MessengerMember& member);
void ClearFriends();
int FriendCount() const;
int PartyCount() const;
int OnlinePartyCount() const;
MessengerMember FriendAt(int index) const;
MessengerMember PartyAt(int index) const;
MessengerMember PartyByAccount(std::uint32_t accountId) const;
MessengerMember PartyByCharacter(std::uint32_t characterId) const;
MessengerMember PartyByName(const char* name) const;
void SetPartyDead(std::uint32_t accountId, int dead);
void SetPartyJobLevel(std::uint32_t accountId, std::uint16_t job, std::uint16_t level);
void SetPartyLeader(std::uint32_t accountId, int leader);
};
namespace EquipmentProperties {
class CEquipmentPropertiesMgr;
}
extern EquipmentProperties::CEquipmentPropertiesMgr* g_equipmentPropertiesMgr;
int FindShopId(CSession& session, std::string name);
#endif