AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
ArenaTeamMember Struct Reference

#include "ArenaTeam.h"

Public Member Functions

void ModifyPersonalRating (Player *player, int32 mod, uint32 type)
 
void ModifyMatchmakerRating (int32 mod, uint32 slot)
 

Public Attributes

ObjectGuid Guid
 
std::string Name
 
uint8 Class
 
uint16 WeekGames
 
uint16 WeekWins
 
uint16 SeasonGames
 
uint16 SeasonWins
 
uint16 PersonalRating
 
uint16 MatchMakerRating
 
uint16 MaxMMR
 

Detailed Description

Member Function Documentation

◆ ModifyMatchmakerRating()

void ArenaTeamMember::ModifyMatchmakerRating ( int32  mod,
uint32  slot 
)
549{
550 if (mod < 0)
551 {
552 // pussywizard: prevent lowering MMR too much from max achieved MMR
553 int32 maxAllowedDrop = (int32)sWorld->getIntConfig(CONFIG_MAX_ALLOWED_MMR_DROP);
554 mod = std::min<int32>(std::max<int32>(-((int32)MatchMakerRating - (int32)MaxMMR + maxAllowedDrop), mod), 0);
555 }
556
557 if (int32(MatchMakerRating) + mod < 0)
559 else
560 MatchMakerRating += mod;
561
564}
std::int32_t int32
Definition Define.h:103
@ CONFIG_MAX_ALLOWED_MMR_DROP
Definition WorldConfig.h:300
#define sWorld
Definition World.h:320
uint16 MatchMakerRating
Definition ArenaTeam.h:117
uint16 MaxMMR
Definition ArenaTeam.h:118

References CONFIG_MAX_ALLOWED_MMR_DROP, MatchMakerRating, MaxMMR, and sWorld.

◆ ModifyPersonalRating()

void ArenaTeamMember::ModifyPersonalRating ( Player player,
int32  mod,
uint32  type 
)
535{
536 if (int32(PersonalRating) + mod < 0)
537 PersonalRating = 0;
538 else
539 PersonalRating += mod;
540
541 if (player && ArenaTeam::GetSlotByType(type) < 3)
542 {
545 }
546}
@ ARENA_TEAM_PERSONAL_RATING
Definition ArenaTeam.h:80
@ ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_PERSONAL_RATING
Definition DBCEnums.h:153
static uint8 GetSlotByType(uint32 type)
Definition ArenaTeam.cpp:621
void UpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscValue1=0, uint32 miscValue2=0, Unit *unit=nullptr)
Definition PlayerUpdates.cpp:2179
void SetArenaTeamInfoField(uint8 slot, ArenaTeamInfoType type, uint32 value)
Definition Player.cpp:16176
uint16 PersonalRating
Definition ArenaTeam.h:116

References ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_PERSONAL_RATING, ARENA_TEAM_PERSONAL_RATING, ArenaTeam::GetSlotByType(), PersonalRating, Player::SetArenaTeamInfoField(), and Player::UpdateAchievementCriteria().

Member Data Documentation

◆ Class

uint8 ArenaTeamMember::Class

◆ Guid

◆ MatchMakerRating

uint16 ArenaTeamMember::MatchMakerRating

◆ MaxMMR

◆ Name

std::string ArenaTeamMember::Name

◆ PersonalRating

◆ SeasonGames

◆ SeasonWins

◆ WeekGames

◆ WeekWins

uint16 ArenaTeamMember::WeekWins

The documentation for this struct was generated from the following files: