Clone of UAS2 @ https://github.com/drudgedance/uas2

classc_allegiance.html 66KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <title>UAS2: cAllegiance Class Reference</title>
  6. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  7. <link href="doxygen.css" rel="stylesheet" type="text/css"/>
  8. </head>
  9. <body>
  10. <!-- Generated by Doxygen 1.6.2 -->
  11. <div class="navigation" id="top">
  12. <div class="tabs">
  13. <ul>
  14. <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
  15. <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
  16. <li><a href="files.html"><span>Files</span></a></li>
  17. </ul>
  18. </div>
  19. <div class="tabs">
  20. <ul>
  21. <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
  22. <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
  23. <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  24. </ul>
  25. </div>
  26. </div>
  27. <div class="contents">
  28. <h1>cAllegiance Class Reference</h1><!-- doxytag: class="cAllegiance" -->
  29. <p><a href="classc_allegiance-members.html">List of all members.</a></p>
  30. <table border="0" cellpadding="0" cellspacing="0">
  31. <tr><td colspan="2"><h2>Public Types</h2></td></tr>
  32. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a38b2ec0838de6ea722222e1d79c54d"></a><!-- doxytag: member="cAllegiance::MemberList" ref="a7a38b2ec0838de6ea722222e1d79c54d" args="" -->
  33. typedef std::map&lt; DWORD, <a class="el" href="struct_member.html">Member</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>MemberList</b></td></tr>
  34. <tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
  35. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47e2d6621f04e42c29c5317a12471026"></a><!-- doxytag: member="cAllegiance::LoadAllegiance" ref="a47e2d6621f04e42c29c5317a12471026" args="(DWORD ID, DWORD leaderGUID, char name[40], char MOTD[255])" -->
  36. void&nbsp;</td><td class="memItemRight" valign="bottom"><b>LoadAllegiance</b> (DWORD ID, DWORD leaderGUID, char name[40], char MOTD[255])</td></tr>
  37. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad17361087b23d8393d874c86b991ce55"></a><!-- doxytag: member="cAllegiance::CreateAllegiance" ref="ad17361087b23d8393d874c86b991ce55" args="(DWORD leaderGUID)" -->
  38. void&nbsp;</td><td class="memItemRight" valign="bottom"><b>CreateAllegiance</b> (DWORD leaderGUID)</td></tr>
  39. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aece22760ef23ddeed77fcdbf2342b191"></a><!-- doxytag: member="cAllegiance::Disband" ref="aece22760ef23ddeed77fcdbf2342b191" args="()" -->
  40. void&nbsp;</td><td class="memItemRight" valign="bottom"><b>Disband</b> ()</td></tr>
  41. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ff5f50b3d0849328ce8afdb4656da69"></a><!-- doxytag: member="cAllegiance::FindMember" ref="a0ff5f50b3d0849328ce8afdb4656da69" args="(DWORD memberGUID)" -->
  42. <a class="el" href="struct_member.html">Member</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>FindMember</b> (DWORD memberGUID)</td></tr>
  43. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c2ed96c7ac82cb9eafadb7f5f7c3ae2"></a><!-- doxytag: member="cAllegiance::GetID" ref="a9c2ed96c7ac82cb9eafadb7f5f7c3ae2" args="()" -->
  44. DWORD&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetID</b> ()</td></tr>
  45. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5ca9a5fd9355f74ca1231761033970b"></a><!-- doxytag: member="cAllegiance::GetLeader" ref="aa5ca9a5fd9355f74ca1231761033970b" args="()" -->
  46. DWORD&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetLeader</b> ()</td></tr>
  47. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aacafa965bff28e827b92aed566766160"></a><!-- doxytag: member="cAllegiance::GetSize" ref="aacafa965bff28e827b92aed566766160" args="()" -->
  48. DWORD&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetSize</b> ()</td></tr>
  49. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06a349bb41a6be73925d24bff9e13360"></a><!-- doxytag: member="cAllegiance::GetName" ref="a06a349bb41a6be73925d24bff9e13360" args="()" -->
  50. std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetName</b> ()</td></tr>
  51. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35054218ad15f7af9a1869cf51d2ad7d"></a><!-- doxytag: member="cAllegiance::GetMOTD" ref="a35054218ad15f7af9a1869cf51d2ad7d" args="()" -->
  52. std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetMOTD</b> ()</td></tr>
  53. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#ad38bc8d0a79a3e1b45cfb6435ded503f">InsertMember</a> (<a class="el" href="struct_member.html">Member</a> member, DWORD dwPatronGUID)</td></tr>
  54. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#af9d9708943372baea909d5c848b74d92">EraseMember</a> (<a class="el" href="struct_member.html">Member</a> *member)</td></tr>
  55. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a5321deff520036639f000b8cec67c4fa">EraseMember</a> (DWORD dwMemberGUID)</td></tr>
  56. <tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a0ac0e517e7671fc9c222d7592dced02f">AddDirectVassal</a> (<a class="el" href="struct_member.html">Member</a> *memPatron, <a class="el" href="struct_member.html">Member</a> *memVassal)</td></tr>
  57. <tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#adf4f38788ed14e967c5f68436f64fe43">AddDirectVassal</a> (DWORD dwPatronGUID, DWORD dwVassalGUID)</td></tr>
  58. <tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a515878e8da9990f854d1b75fb8cf8aec">RemDirectVassal</a> (<a class="el" href="struct_member.html">Member</a> *memVassal)</td></tr>
  59. <tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a761d2eb409d56754ee62174498c6433c">RemDirectVassal</a> (DWORD dwVassalGUID)</td></tr>
  60. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b0ac275751a7046207385489e66180e"></a><!-- doxytag: member="cAllegiance::SetMOTD" ref="a2b0ac275751a7046207385489e66180e" args="(std::string motd)" -->
  61. void&nbsp;</td><td class="memItemRight" valign="bottom"><b>SetMOTD</b> (std::string motd)</td></tr>
  62. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3047e88949a8f1a30fec52dbda21e84"></a><!-- doxytag: member="cAllegiance::GetMemberName" ref="ad3047e88949a8f1a30fec52dbda21e84" args="(Member *member)" -->
  63. std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetMemberName</b> (<a class="el" href="struct_member.html">Member</a> *member)</td></tr>
  64. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a873aecf66463cf55b01f1557174ec3cf"></a><!-- doxytag: member="cAllegiance::GetMemberName" ref="a873aecf66463cf55b01f1557174ec3cf" args="(DWORD dwMemberGUID)" -->
  65. std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetMemberName</b> (DWORD dwMemberGUID)</td></tr>
  66. <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#aa1f552a312586083d46862ab5ae348c5">GetVassalCount</a> (<a class="el" href="struct_member.html">Member</a> *member)</td></tr>
  67. <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a948db2e6e02aeb09842f3ecaea892300">GetVassalCount</a> (DWORD dwMemberGUID)</td></tr>
  68. <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#ae91a3fc567aa4d543ee3ec5eccf70662">GetFollowerCount</a> (<a class="el" href="struct_member.html">Member</a> *member)</td></tr>
  69. <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#aa7d28ac4109375fe07a3d0bd62f02533">GetFollowerCount</a> (DWORD dwMemberGUID)</td></tr>
  70. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#adb2e82a95c03112dc265e31e16802569">UpdateFollowers</a> (<a class="el" href="struct_member.html">Member</a> *member, int numFollowers)</td></tr>
  71. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#af72e95af2371c231958692b1c99e4480">UpdateFollowers</a> (DWORD dwMemberGUID, int numFollowers)</td></tr>
  72. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#aef6b45d7d05edcb6e4d531a26c383750">UpdateRank</a> (<a class="el" href="struct_member.html">Member</a> *member)</td></tr>
  73. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a3c69aed61acd308363f07ff87a52f5c0">UpdateRank</a> (DWORD dwMemberGUID)</td></tr>
  74. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#adc5e09f86bcb46ab8949226a9795de93">VassalPassupXP</a> (<a class="el" href="struct_member.html">Member</a> *memVassal, UINT64 experience, bool isGrandVassal=false)</td></tr>
  75. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a2564663e0b24199cb65551181b7d6575">UpdateGeneratedXP</a> (<a class="el" href="struct_member.html">Member</a> *member, UINT64 experience)</td></tr>
  76. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a9202665caa0f6ed1eab35b5da35697c1">UpdateEarnedXP</a> (<a class="el" href="struct_member.html">Member</a> *member, UINT64 experience)</td></tr>
  77. <tr><td class="memItemLeft" align="right" valign="top">UINT64&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a3e7f8a4e98ad8114e20fee9e5bc37354">CalcVassalGeneratedXP</a> (<a class="el" href="struct_member.html">Member</a> *memVassal, UINT64 experience, bool isGrandPatron=false)</td></tr>
  78. <tr><td class="memItemLeft" align="right" valign="top">UINT64&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#aa846e330d70f8ca236857c724d23a5c7">CalcPatronReceivedXP</a> (<a class="el" href="struct_member.html">Member</a> *memPatron, UINT64 experience, bool isGrandPatron=false)</td></tr>
  79. <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a2ae364d6dd15cbcc0403a9693b94c531">UpdateAverageSwornTimeOfVassals</a> (<a class="el" href="struct_member.html">Member</a> *memPatron)</td></tr>
  80. <tr><td class="memItemLeft" align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a31788ce94c200be83b839fefc955e629">CalcVassalFactor</a> (int numVassals)</td></tr>
  81. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d93378446fe6edf26d2e4e6081a1cf6"></a><!-- doxytag: member="cAllegiance::GetAllegianceInfo" ref="a6d93378446fe6edf26d2e4e6081a1cf6" args="(DWORD avatarGUID)" -->
  82. <a class="el" href="classc_message.html">cMessage</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetAllegianceInfo</b> (DWORD avatarGUID)</td></tr>
  83. <tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
  84. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5568ca2b540202d8e8bb7befdbfe42c8"></a><!-- doxytag: member="cAllegiance::GetAllegianceByID" ref="a5568ca2b540202d8e8bb7befdbfe42c8" args="(DWORD AllegianceID)" -->
  85. static <a class="el" href="classc_allegiance.html">cAllegiance</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>GetAllegianceByID</b> (DWORD AllegianceID)</td></tr>
  86. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d498257b6b092395b5fa69e6f192847"></a><!-- doxytag: member="cAllegiance::SetLeader" ref="a8d498257b6b092395b5fa69e6f192847" args="(DWORD allegianceID, DWORD leaderGUID)" -->
  87. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>SetLeader</b> (DWORD allegianceID, DWORD leaderGUID)</td></tr>
  88. <tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a2cb872113459746d173326a5203a89de">AddNewMember</a> (DWORD dwAvatarGUID, DWORD dwPatronGUID, DWORD oldAllegianceID, DWORD newAllegianceID)</td></tr>
  89. <tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a3b5f61a7addf7830fb170d60b0dd2c0f">AddRemMember</a> (<a class="el" href="struct_member.html">Member</a> *member, DWORD oldAllegianceID, DWORD newAllegianceID)</td></tr>
  90. <tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a8489189443fed532b70de13eb33d707e">RemMember</a> (DWORD dwRemMemberGUID, DWORD oldAllegianceID, bool isDisbanding=false)</td></tr>
  91. <tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a9d7c20d2b5893388299105fee780fd8b">SwitchMonarchAndVassals</a> (<a class="el" href="struct_member.html">Member</a> *member, DWORD oldAllegianceID, DWORD newAllegianceID)</td></tr>
  92. <tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a9bfd51a6a51aef286986a4946b981064">SwitchNonMonarchVassals</a> (<a class="el" href="struct_member.html">Member</a> *member, DWORD oldAllegianceID, DWORD newAllegianceID)</td></tr>
  93. <tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a464ff146a68f29047907873bb60fd6f2">UpdatePlayerAllegID</a> (<a class="el" href="struct_member.html">Member</a> *member, DWORD newAllegianceID)</td></tr>
  94. <tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#a48a8521e49dcc149a460965f9be477f1">UpdatePlayerAllegID</a> (DWORD dwPlayerGUID, DWORD newAllegianceID)</td></tr>
  95. <tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#ad3b5d3b767597234cfddd541f28a2dfe">LoadMembersFromDB</a> (<a class="el" href="classc_allegiance.html">cAllegiance</a> *aAllegiance)</td></tr>
  96. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af8a2f759eede47dd91cb96e04d3657cc"></a><!-- doxytag: member="cAllegiance::UpdateAvatarAllegIDDB" ref="af8a2f759eede47dd91cb96e04d3657cc" args="(DWORD dwGUID, DWORD allegianceID)" -->
  97. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateAvatarAllegIDDB</b> (DWORD dwGUID, DWORD allegianceID)</td></tr>
  98. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac52314e03b981eb3726a021898672053"></a><!-- doxytag: member="cAllegiance::UpdateMemberAllegIDDB" ref="ac52314e03b981eb3726a021898672053" args="(DWORD dwGUID, DWORD allegianceID)" -->
  99. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberAllegIDDB</b> (DWORD dwGUID, DWORD allegianceID)</td></tr>
  100. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7477e4df9195167b0d799ab0ea878000"></a><!-- doxytag: member="cAllegiance::UpdateAvatarRecordDB" ref="a7477e4df9195167b0d799ab0ea878000" args="(DWORD dwAvatarGUID)" -->
  101. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateAvatarRecordDB</b> (DWORD dwAvatarGUID)</td></tr>
  102. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad95600385ee7dd1a0663873b08230cc7"></a><!-- doxytag: member="cAllegiance::AddMemberRecordDB" ref="ad95600385ee7dd1a0663873b08230cc7" args="(DWORD allegianceID, DWORD dwAvatarGUID, DWORD dwPatronGUID)" -->
  103. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>AddMemberRecordDB</b> (DWORD allegianceID, DWORD dwAvatarGUID, DWORD dwPatronGUID)</td></tr>
  104. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a975c099106ec31c5ad74f6c66215ec09"></a><!-- doxytag: member="cAllegiance::DeleteMemberRecordDB" ref="a975c099106ec31c5ad74f6c66215ec09" args="(DWORD allegianceID, DWORD dwMemberGUID)" -->
  105. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>DeleteMemberRecordDB</b> (DWORD allegianceID, DWORD dwMemberGUID)</td></tr>
  106. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c622e84ae07ddff1e8dfbccd3ad9432"></a><!-- doxytag: member="cAllegiance::UpdateMemberRecordDB" ref="a0c622e84ae07ddff1e8dfbccd3ad9432" args="(Member *member)" -->
  107. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberRecordDB</b> (<a class="el" href="struct_member.html">Member</a> *member)</td></tr>
  108. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b0af297e16b4f1161d94f0b662403f7"></a><!-- doxytag: member="cAllegiance::UpdateMemberXPPassupDB" ref="a2b0af297e16b4f1161d94f0b662403f7" args="(DWORD memberGUID, UINT64 passedXP)" -->
  109. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberXPPassupDB</b> (DWORD memberGUID, UINT64 passedXP)</td></tr>
  110. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8891b20d45e8ee02af1b5e4628b6d718"></a><!-- doxytag: member="cAllegiance::UpdateMemberXPPendingDB" ref="a8891b20d45e8ee02af1b5e4628b6d718" args="(DWORD memberGUID, UINT64 pendingXP)" -->
  111. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberXPPendingDB</b> (DWORD memberGUID, UINT64 pendingXP)</td></tr>
  112. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acedd27727c81d2e1278779cd8010b2a3"></a><!-- doxytag: member="cAllegiance::UpdateMemberFollowersDB" ref="acedd27727c81d2e1278779cd8010b2a3" args="(DWORD memberGUID, int numFollowers)" -->
  113. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberFollowersDB</b> (DWORD memberGUID, int numFollowers)</td></tr>
  114. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a4a0e73ed6720585a3e20d067e6b9d2"></a><!-- doxytag: member="cAllegiance::UpdateMemberRankDB" ref="a7a4a0e73ed6720585a3e20d067e6b9d2" args="(DWORD memberGUID, int rank)" -->
  115. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberRankDB</b> (DWORD memberGUID, int rank)</td></tr>
  116. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5315123ca40b6aeb1b00a9d340315bb0"></a><!-- doxytag: member="cAllegiance::UpdateMemberPatronDB" ref="a5315123ca40b6aeb1b00a9d340315bb0" args="(DWORD memberGUID, DWORD patronGUID)" -->
  117. static void&nbsp;</td><td class="memItemRight" valign="bottom"><b>UpdateMemberPatronDB</b> (DWORD memberGUID, DWORD patronGUID)</td></tr>
  118. <tr><td colspan="2"><h2>Public Attributes</h2></td></tr>
  119. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a36d54b737c61ed047575a443213d180c"></a><!-- doxytag: member="cAllegiance::members" ref="a36d54b737c61ed047575a443213d180c" args="" -->
  120. MemberList&nbsp;</td><td class="memItemRight" valign="bottom"><b>members</b></td></tr>
  121. <tr><td colspan="2"><h2>Protected Attributes</h2></td></tr>
  122. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf691f4d71ff40dc94f50be9c308095c"></a><!-- doxytag: member="cAllegiance::m_ID" ref="abf691f4d71ff40dc94f50be9c308095c" args="" -->
  123. DWORD&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_ID</b></td></tr>
  124. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71e4ff7e7a5f94c0cffd533d126f6ac9"></a><!-- doxytag: member="cAllegiance::m_Name" ref="a71e4ff7e7a5f94c0cffd533d126f6ac9" args="" -->
  125. std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_Name</b></td></tr>
  126. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b2128534a9ee293b560a6d97d8d863f"></a><!-- doxytag: member="cAllegiance::m_LeaderGUID" ref="a7b2128534a9ee293b560a6d97d8d863f" args="" -->
  127. DWORD&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_LeaderGUID</b></td></tr>
  128. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a73ee3030b3987722fb66c9171777f0d6"></a><!-- doxytag: member="cAllegiance::m_MOTD" ref="a73ee3030b3987722fb66c9171777f0d6" args="" -->
  129. std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_MOTD</b></td></tr>
  130. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ac2a6cb3926e6cbc846e42e8b7c4059"></a><!-- doxytag: member="cAllegiance::m_Size" ref="a6ac2a6cb3926e6cbc846e42e8b7c4059" args="" -->
  131. int&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_Size</b></td></tr>
  132. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95e3e9571b481533134e9ecbccfc1e8b"></a><!-- doxytag: member="cAllegiance::m_CreationTime" ref="a95e3e9571b481533134e9ecbccfc1e8b" args="" -->
  133. ULONG&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_CreationTime</b></td></tr>
  134. <tr><td colspan="2"><h2>Friends</h2></td></tr>
  135. <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9cf39fc065c0c9c6040c8d5849cbdce"></a><!-- doxytag: member="cAllegiance::cMasterServer" ref="af9cf39fc065c0c9c6040c8d5849cbdce" args="" -->
  136. class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classc_allegiance.html#af9cf39fc065c0c9c6040c8d5849cbdce">cMasterServer</a></td></tr>
  137. </table>
  138. <hr/><h2>Member Function Documentation</h2>
  139. <a class="anchor" id="adf4f38788ed14e967c5f68436f64fe43"></a><!-- doxytag: member="cAllegiance::AddDirectVassal" ref="adf4f38788ed14e967c5f68436f64fe43" args="(DWORD dwPatronGUID, DWORD dwVassalGUID)" -->
  140. <div class="memitem">
  141. <div class="memproto">
  142. <table class="memname">
  143. <tr>
  144. <td class="memname">bool cAllegiance::AddDirectVassal </td>
  145. <td>(</td>
  146. <td class="paramtype">DWORD&nbsp;</td>
  147. <td class="paramname"> <em>dwPatronGUID</em>, </td>
  148. </tr>
  149. <tr>
  150. <td class="paramkey"></td>
  151. <td></td>
  152. <td class="paramtype">DWORD&nbsp;</td>
  153. <td class="paramname"> <em>dwVassalGUID</em></td><td>&nbsp;</td>
  154. </tr>
  155. <tr>
  156. <td></td>
  157. <td>)</td>
  158. <td></td><td></td><td></td>
  159. </tr>
  160. </table>
  161. </div>
  162. <div class="memdoc">
  163. <p>Adds a vassal to the patron's vassal list.</p>
  164. <p>The patron's follower count and rank are both recaluated.</p>
  165. <dl><dt><b>Parameters:</b></dt><dd>
  166. <table border="0" cellspacing="2" cellpadding="0">
  167. <tr><td valign="top"></td><td valign="top"><em>memPatron</em>&nbsp;</td><td>- The GUID of the patron. </td></tr>
  168. <tr><td valign="top"></td><td valign="top"><em>memVassal</em>&nbsp;</td><td>- The GUID of the vassal to add to his/her patron's vassal list. </td></tr>
  169. </table>
  170. </dd>
  171. </dl>
  172. </div>
  173. </div>
  174. <a class="anchor" id="a0ac0e517e7671fc9c222d7592dced02f"></a><!-- doxytag: member="cAllegiance::AddDirectVassal" ref="a0ac0e517e7671fc9c222d7592dced02f" args="(Member *memPatron, Member *memVassal)" -->
  175. <div class="memitem">
  176. <div class="memproto">
  177. <table class="memname">
  178. <tr>
  179. <td class="memname">bool cAllegiance::AddDirectVassal </td>
  180. <td>(</td>
  181. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  182. <td class="paramname"> <em>memPatron</em>, </td>
  183. </tr>
  184. <tr>
  185. <td class="paramkey"></td>
  186. <td></td>
  187. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  188. <td class="paramname"> <em>memVassal</em></td><td>&nbsp;</td>
  189. </tr>
  190. <tr>
  191. <td></td>
  192. <td>)</td>
  193. <td></td><td></td><td></td>
  194. </tr>
  195. </table>
  196. </div>
  197. <div class="memdoc">
  198. <p>Adds a vassal to the patron's vassal list.</p>
  199. <p>The patron's follower count and rank are both recaluated.</p>
  200. <dl><dt><b>Parameters:</b></dt><dd>
  201. <table border="0" cellspacing="2" cellpadding="0">
  202. <tr><td valign="top"></td><td valign="top"><em>memPatron</em>&nbsp;</td><td>- A pointer to the member record of the patron. </td></tr>
  203. <tr><td valign="top"></td><td valign="top"><em>memVassal</em>&nbsp;</td><td>- A pointer to the member record of the vassal to add to his/her patron's vassal list. </td></tr>
  204. </table>
  205. </dd>
  206. </dl>
  207. </div>
  208. </div>
  209. <a class="anchor" id="a2cb872113459746d173326a5203a89de"></a><!-- doxytag: member="cAllegiance::AddNewMember" ref="a2cb872113459746d173326a5203a89de" args="(DWORD dwAvatarGUID, DWORD dwPatronGUID, DWORD oldAllegianceID, DWORD newAllegianceID)" -->
  210. <div class="memitem">
  211. <div class="memproto">
  212. <table class="memname">
  213. <tr>
  214. <td class="memname">bool cAllegiance::AddNewMember </td>
  215. <td>(</td>
  216. <td class="paramtype">DWORD&nbsp;</td>
  217. <td class="paramname"> <em>dwAvatarGUID</em>, </td>
  218. </tr>
  219. <tr>
  220. <td class="paramkey"></td>
  221. <td></td>
  222. <td class="paramtype">DWORD&nbsp;</td>
  223. <td class="paramname"> <em>dwPatronGUID</em>, </td>
  224. </tr>
  225. <tr>
  226. <td class="paramkey"></td>
  227. <td></td>
  228. <td class="paramtype">DWORD&nbsp;</td>
  229. <td class="paramname"> <em>oldAllegianceID</em>, </td>
  230. </tr>
  231. <tr>
  232. <td class="paramkey"></td>
  233. <td></td>
  234. <td class="paramtype">DWORD&nbsp;</td>
  235. <td class="paramname"> <em>newAllegianceID</em></td><td>&nbsp;</td>
  236. </tr>
  237. <tr>
  238. <td></td>
  239. <td>)</td>
  240. <td></td><td></td><td><code> [static]</code></td>
  241. </tr>
  242. </table>
  243. </div>
  244. <div class="memdoc">
  245. <p>Adds a player (and any vassals under him/her) to an allegiance.</p>
  246. <p>The function is used when a player pledges allegiance to a member of an allegiance. Each follower of that member should also be added to the allegiance. The "old" allegiance to which these members belonged should be deleted if the pledged member was the monarch.</p>
  247. <dl><dt><b>Parameters:</b></dt><dd>
  248. <table border="0" cellspacing="2" cellpadding="0">
  249. <tr><td valign="top"></td><td valign="top"><em>dwAvatarGUID</em>&nbsp;</td><td>- The GUID of the player to add. </td></tr>
  250. <tr><td valign="top"></td><td valign="top"><em>dwPatronGUID</em>&nbsp;</td><td>- The GUID of the new patron of the player to add. </td></tr>
  251. <tr><td valign="top"></td><td valign="top"><em>oldAllegianceID</em>&nbsp;</td><td>- The ID of player's former allegiance, if any. </td></tr>
  252. <tr><td valign="top"></td><td valign="top"><em>newAllegianceID</em>&nbsp;</td><td>- The ID of player's new allegiance. </td></tr>
  253. </table>
  254. </dd>
  255. </dl>
  256. </div>
  257. </div>
  258. <a class="anchor" id="a3b5f61a7addf7830fb170d60b0dd2c0f"></a><!-- doxytag: member="cAllegiance::AddRemMember" ref="a3b5f61a7addf7830fb170d60b0dd2c0f" args="(Member *member, DWORD oldAllegianceID, DWORD newAllegianceID)" -->
  259. <div class="memitem">
  260. <div class="memproto">
  261. <table class="memname">
  262. <tr>
  263. <td class="memname">bool cAllegiance::AddRemMember </td>
  264. <td>(</td>
  265. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  266. <td class="paramname"> <em>member</em>, </td>
  267. </tr>
  268. <tr>
  269. <td class="paramkey"></td>
  270. <td></td>
  271. <td class="paramtype">DWORD&nbsp;</td>
  272. <td class="paramname"> <em>oldAllegianceID</em>, </td>
  273. </tr>
  274. <tr>
  275. <td class="paramkey"></td>
  276. <td></td>
  277. <td class="paramtype">DWORD&nbsp;</td>
  278. <td class="paramname"> <em>newAllegianceID</em></td><td>&nbsp;</td>
  279. </tr>
  280. <tr>
  281. <td></td>
  282. <td>)</td>
  283. <td></td><td></td><td><code> [static]</code></td>
  284. </tr>
  285. </table>
  286. </div>
  287. <div class="memdoc">
  288. <p>Adds a removed player (and all of his/her followers) to a new allegiance.</p>
  289. <p>The player and the vassals under the player switching are switched.</p>
  290. <dl><dt><b>Parameters:</b></dt><dd>
  291. <table border="0" cellspacing="2" cellpadding="0">
  292. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- The member whose allegiance should be switched. </td></tr>
  293. <tr><td valign="top"></td><td valign="top"><em>oldAllegianceID</em>&nbsp;</td><td>- The ID of the member's former allegiance. </td></tr>
  294. <tr><td valign="top"></td><td valign="top"><em>newAllegianceID</em>&nbsp;</td><td>- The ID of the member's new allegiance. </td></tr>
  295. </table>
  296. </dd>
  297. </dl>
  298. </div>
  299. </div>
  300. <a class="anchor" id="aa846e330d70f8ca236857c724d23a5c7"></a><!-- doxytag: member="cAllegiance::CalcPatronReceivedXP" ref="aa846e330d70f8ca236857c724d23a5c7" args="(Member *memPatron, UINT64 experience, bool isGrandPatron=false)" -->
  301. <div class="memitem">
  302. <div class="memproto">
  303. <table class="memname">
  304. <tr>
  305. <td class="memname">UINT64 cAllegiance::CalcPatronReceivedXP </td>
  306. <td>(</td>
  307. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  308. <td class="paramname"> <em>memPatron</em>, </td>
  309. </tr>
  310. <tr>
  311. <td class="paramkey"></td>
  312. <td></td>
  313. <td class="paramtype">UINT64&nbsp;</td>
  314. <td class="paramname"> <em>receivedXP</em>, </td>
  315. </tr>
  316. <tr>
  317. <td class="paramkey"></td>
  318. <td></td>
  319. <td class="paramtype">bool&nbsp;</td>
  320. <td class="paramname"> <em>isGrandPatron</em> = <code>false</code></td><td>&nbsp;</td>
  321. </tr>
  322. <tr>
  323. <td></td>
  324. <td>)</td>
  325. <td></td><td></td><td></td>
  326. </tr>
  327. </table>
  328. </div>
  329. <div class="memdoc">
  330. <p>Calculates the percentage of experience received by a grand patron.</p>
  331. <p>Received % - % XP that patron will receive from his vassal's Generated XP.</p>
  332. <p>Old Patron Received % = 68 + (.35 * ALdr) (max 1.25) New Patron Received % = 50.0 + 22.5 * (BLdr / 291) * (1.0 + V * (RT2/730) * (IG2/720)) Old Grand Patron Received % = 68 + (.35 * ALdr) (max 1.25) New Grand Patron Received % = 16.0 + 8.0 * (BLdr / 291) * (1.0 + V * (RT2/730) * (IG2/720))</p>
  333. <p>Variables: ALdr = Adjusted Leadership (163 max) = BLrd + (((7.5 * V) / 100) * BLrd) + ((IG2 / 1200) * BLrd) BLdr = Buffed Leadership (291 max) RT2 = average real-time sworn to patron for all vassals in days (730 max) IG2 = average in-game time sworn to patron for all vassals in hours (720 max) V = vassal factor Old: number of vassals New: (1 = 0.25, 2 = 0.50, 3 = 0.75, 4+ = 1.00) (1.0 max)</p>
  334. <dl><dt><b>Parameters:</b></dt><dd>
  335. <table border="0" cellspacing="2" cellpadding="0">
  336. <tr><td valign="top"></td><td valign="top"><em>memPatron</em>&nbsp;</td><td>- A pointer to the member record of the patron to use for the calculations.</td></tr>
  337. </table>
  338. </dd>
  339. </dl>
  340. <dl class="return"><dt><b>Returns:</b></dt><dd>UIN - The amount of experience received. </dd></dl>
  341. </div>
  342. </div>
  343. <a class="anchor" id="a31788ce94c200be83b839fefc955e629"></a><!-- doxytag: member="cAllegiance::CalcVassalFactor" ref="a31788ce94c200be83b839fefc955e629" args="(int numVassals)" -->
  344. <div class="memitem">
  345. <div class="memproto">
  346. <table class="memname">
  347. <tr>
  348. <td class="memname">float cAllegiance::CalcVassalFactor </td>
  349. <td>(</td>
  350. <td class="paramtype">int&nbsp;</td>
  351. <td class="paramname"> <em>numVassals</em></td>
  352. <td>&nbsp;)&nbsp;</td>
  353. <td></td>
  354. </tr>
  355. </table>
  356. </div>
  357. <div class="memdoc">
  358. <p>Calculates the vassal factor based upon a patron's number of vassals.</p>
  359. <p>Used in the calculation of patron-received experience.</p>
  360. <dl><dt><b>Parameters:</b></dt><dd>
  361. <table border="0" cellspacing="2" cellpadding="0">
  362. <tr><td valign="top"></td><td valign="top"><em>numVassals</em>&nbsp;</td><td>- The number of vassals sworn to a given patron.</td></tr>
  363. </table>
  364. </dd>
  365. </dl>
  366. <dl class="return"><dt><b>Returns:</b></dt><dd>float - The vassal factor. </dd></dl>
  367. </div>
  368. </div>
  369. <a class="anchor" id="a3e7f8a4e98ad8114e20fee9e5bc37354"></a><!-- doxytag: member="cAllegiance::CalcVassalGeneratedXP" ref="a3e7f8a4e98ad8114e20fee9e5bc37354" args="(Member *memVassal, UINT64 experience, bool isGrandPatron=false)" -->
  370. <div class="memitem">
  371. <div class="memproto">
  372. <table class="memname">
  373. <tr>
  374. <td class="memname">UINT64 cAllegiance::CalcVassalGeneratedXP </td>
  375. <td>(</td>
  376. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  377. <td class="paramname"> <em>memVassal</em>, </td>
  378. </tr>
  379. <tr>
  380. <td class="paramkey"></td>
  381. <td></td>
  382. <td class="paramtype">UINT64&nbsp;</td>
  383. <td class="paramname"> <em>passedXP</em>, </td>
  384. </tr>
  385. <tr>
  386. <td class="paramkey"></td>
  387. <td></td>
  388. <td class="paramtype">bool&nbsp;</td>
  389. <td class="paramname"> <em>isGrandVassal</em> = <code>false</code></td><td>&nbsp;</td>
  390. </tr>
  391. <tr>
  392. <td></td>
  393. <td>)</td>
  394. <td></td><td></td><td></td>
  395. </tr>
  396. </table>
  397. </div>
  398. <div class="memdoc">
  399. <p>Calculates the percentage of experience passed up from a vassal.</p>
  400. <p>Generated % - % XP to patron of vassal's Earned (hunting) XP</p>
  401. <p>Old Vassal Generated % = 8.9 + (2 * 3.5 * (ALoy / 100)) New Vassal Generated % = 50.0 + 22.5 * (BLoy / 291) * (1.0 + (RT/730) * (IG/720)) Old Grand Vassal Generated % = 45 + (.15 * ALoy) New Grand Vassal Generated % = 16.0 + 8.0 * (BLoy / 291) * (1.0 + (RT/730) * (IG/720))</p>
  402. <p>Variables: ALoy = Adjusted Loyalty = BLoy + ((IG / 240) * BLoy) BLoy = Buffed Loyalty (291 max) RT = actual real-time sworn to patron in days (730 max) IG = actual in-game time sworn to patron in hours (720 max)</p>
  403. <dl><dt><b>Parameters:</b></dt><dd>
  404. <table border="0" cellspacing="2" cellpadding="0">
  405. <tr><td valign="top"></td><td valign="top"><em>memVassal</em>&nbsp;</td><td>- A pointer to the member record of the vassal to use for the calculations.</td></tr>
  406. </table>
  407. </dd>
  408. </dl>
  409. <dl class="return"><dt><b>Returns:</b></dt><dd>UINT - The amount of experience generated. </dd></dl>
  410. </div>
  411. </div>
  412. <a class="anchor" id="a5321deff520036639f000b8cec67c4fa"></a><!-- doxytag: member="cAllegiance::EraseMember" ref="a5321deff520036639f000b8cec67c4fa" args="(DWORD dwMemberGUID)" -->
  413. <div class="memitem">
  414. <div class="memproto">
  415. <table class="memname">
  416. <tr>
  417. <td class="memname">void cAllegiance::EraseMember </td>
  418. <td>(</td>
  419. <td class="paramtype">DWORD&nbsp;</td>
  420. <td class="paramname"> <em>dwMemberGUID</em></td>
  421. <td>&nbsp;)&nbsp;</td>
  422. <td></td>
  423. </tr>
  424. </table>
  425. </div>
  426. <div class="memdoc">
  427. <p>Erases a member from the allegiance.</p>
  428. <p>The function is used when a player should be deleted from an allegiance.</p>
  429. <dl><dt><b>Parameters:</b></dt><dd>
  430. <table border="0" cellspacing="2" cellpadding="0">
  431. <tr><td valign="top"></td><td valign="top"><em>dwMemberGUID</em>&nbsp;</td><td>- The GUID of the player whose member record should be deleted. </td></tr>
  432. </table>
  433. </dd>
  434. </dl>
  435. </div>
  436. </div>
  437. <a class="anchor" id="af9d9708943372baea909d5c848b74d92"></a><!-- doxytag: member="cAllegiance::EraseMember" ref="af9d9708943372baea909d5c848b74d92" args="(Member *member)" -->
  438. <div class="memitem">
  439. <div class="memproto">
  440. <table class="memname">
  441. <tr>
  442. <td class="memname">void cAllegiance::EraseMember </td>
  443. <td>(</td>
  444. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  445. <td class="paramname"> <em>member</em></td>
  446. <td>&nbsp;)&nbsp;</td>
  447. <td></td>
  448. </tr>
  449. </table>
  450. </div>
  451. <div class="memdoc">
  452. <p>Erases a member from the allegiance.</p>
  453. <p>The function is used when a player should be deleted from an allegiance.</p>
  454. <dl><dt><b>Parameters:</b></dt><dd>
  455. <table border="0" cellspacing="2" cellpadding="0">
  456. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- A pointer to the member record that should be deleted. </td></tr>
  457. </table>
  458. </dd>
  459. </dl>
  460. </div>
  461. </div>
  462. <a class="anchor" id="aa7d28ac4109375fe07a3d0bd62f02533"></a><!-- doxytag: member="cAllegiance::GetFollowerCount" ref="aa7d28ac4109375fe07a3d0bd62f02533" args="(DWORD dwMemberGUID)" -->
  463. <div class="memitem">
  464. <div class="memproto">
  465. <table class="memname">
  466. <tr>
  467. <td class="memname">int cAllegiance::GetFollowerCount </td>
  468. <td>(</td>
  469. <td class="paramtype">DWORD&nbsp;</td>
  470. <td class="paramname"> <em>dwMemberGUID</em></td>
  471. <td>&nbsp;)&nbsp;</td>
  472. <td></td>
  473. </tr>
  474. </table>
  475. </div>
  476. <div class="memdoc">
  477. <p>Calculates the number of followers under a given character.</p>
  478. <dl><dt><b>Parameters:</b></dt><dd>
  479. <table border="0" cellspacing="2" cellpadding="0">
  480. <tr><td valign="top"></td><td valign="top"><em>dwPatronGUID</em>&nbsp;</td><td>- The GUID of the member whose followers should be calculated.</td></tr>
  481. </table>
  482. </dd>
  483. </dl>
  484. <dl class="return"><dt><b>Returns:</b></dt><dd>int - The number of followers. </dd></dl>
  485. </div>
  486. </div>
  487. <a class="anchor" id="ae91a3fc567aa4d543ee3ec5eccf70662"></a><!-- doxytag: member="cAllegiance::GetFollowerCount" ref="ae91a3fc567aa4d543ee3ec5eccf70662" args="(Member *member)" -->
  488. <div class="memitem">
  489. <div class="memproto">
  490. <table class="memname">
  491. <tr>
  492. <td class="memname">int cAllegiance::GetFollowerCount </td>
  493. <td>(</td>
  494. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  495. <td class="paramname"> <em>member</em></td>
  496. <td>&nbsp;)&nbsp;</td>
  497. <td></td>
  498. </tr>
  499. </table>
  500. </div>
  501. <div class="memdoc">
  502. <p>Calculates the number of followers under a given character.</p>
  503. <dl><dt><b>Parameters:</b></dt><dd>
  504. <table border="0" cellspacing="2" cellpadding="0">
  505. <tr><td valign="top"></td><td valign="top"><em>memPatron</em>&nbsp;</td><td>- A pointer to the member record of the member whose followers should be calculated.</td></tr>
  506. </table>
  507. </dd>
  508. </dl>
  509. <dl class="return"><dt><b>Returns:</b></dt><dd>int - The number of followers. </dd></dl>
  510. </div>
  511. </div>
  512. <a class="anchor" id="a948db2e6e02aeb09842f3ecaea892300"></a><!-- doxytag: member="cAllegiance::GetVassalCount" ref="a948db2e6e02aeb09842f3ecaea892300" args="(DWORD dwMemberGUID)" -->
  513. <div class="memitem">
  514. <div class="memproto">
  515. <table class="memname">
  516. <tr>
  517. <td class="memname">int cAllegiance::GetVassalCount </td>
  518. <td>(</td>
  519. <td class="paramtype">DWORD&nbsp;</td>
  520. <td class="paramname"> <em>dwPatronGUID</em></td>
  521. <td>&nbsp;)&nbsp;</td>
  522. <td></td>
  523. </tr>
  524. </table>
  525. </div>
  526. <div class="memdoc">
  527. <p>Calculates the number of direct vassals sworn to a given character.</p>
  528. <dl><dt><b>Parameters:</b></dt><dd>
  529. <table border="0" cellspacing="2" cellpadding="0">
  530. <tr><td valign="top"></td><td valign="top"><em>dwPatronGUID</em>&nbsp;</td><td>- The GUID of the member whose direct vassals should be calculated.</td></tr>
  531. </table>
  532. </dd>
  533. </dl>
  534. <dl class="return"><dt><b>Returns:</b></dt><dd>int - The number of direct vassals. </dd></dl>
  535. </div>
  536. </div>
  537. <a class="anchor" id="aa1f552a312586083d46862ab5ae348c5"></a><!-- doxytag: member="cAllegiance::GetVassalCount" ref="aa1f552a312586083d46862ab5ae348c5" args="(Member *member)" -->
  538. <div class="memitem">
  539. <div class="memproto">
  540. <table class="memname">
  541. <tr>
  542. <td class="memname">int cAllegiance::GetVassalCount </td>
  543. <td>(</td>
  544. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  545. <td class="paramname"> <em>memPatron</em></td>
  546. <td>&nbsp;)&nbsp;</td>
  547. <td></td>
  548. </tr>
  549. </table>
  550. </div>
  551. <div class="memdoc">
  552. <p>Caclulates the number of direct vassals sworn to a given character.</p>
  553. <dl><dt><b>Parameters:</b></dt><dd>
  554. <table border="0" cellspacing="2" cellpadding="0">
  555. <tr><td valign="top"></td><td valign="top"><em>memPatron</em>&nbsp;</td><td>- A pointer to the member record of the member whose direct vassals should be calculated.</td></tr>
  556. </table>
  557. </dd>
  558. </dl>
  559. <dl class="return"><dt><b>Returns:</b></dt><dd>int - The number of direct vassals. </dd></dl>
  560. </div>
  561. </div>
  562. <a class="anchor" id="ad38bc8d0a79a3e1b45cfb6435ded503f"></a><!-- doxytag: member="cAllegiance::InsertMember" ref="ad38bc8d0a79a3e1b45cfb6435ded503f" args="(Member member, DWORD dwPatronGUID)" -->
  563. <div class="memitem">
  564. <div class="memproto">
  565. <table class="memname">
  566. <tr>
  567. <td class="memname">void cAllegiance::InsertMember </td>
  568. <td>(</td>
  569. <td class="paramtype"><a class="el" href="struct_member.html">Member</a>&nbsp;</td>
  570. <td class="paramname"> <em>member</em>, </td>
  571. </tr>
  572. <tr>
  573. <td class="paramkey"></td>
  574. <td></td>
  575. <td class="paramtype">DWORD&nbsp;</td>
  576. <td class="paramname"> <em>dwPatronGUID</em></td><td>&nbsp;</td>
  577. </tr>
  578. <tr>
  579. <td></td>
  580. <td>)</td>
  581. <td></td><td></td><td></td>
  582. </tr>
  583. </table>
  584. </div>
  585. <div class="memdoc">
  586. <p>Inserts a member into the allegiance.</p>
  587. <p>The function is used when a player should be inserted into an allegiance.</p>
  588. <dl><dt><b>Parameters:</b></dt><dd>
  589. <table border="0" cellspacing="2" cellpadding="0">
  590. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- The member record object for the member that should be inserted. </td></tr>
  591. <tr><td valign="top"></td><td valign="top"><em>dwPatronGUID</em>&nbsp;</td><td>- The GUID of the new member's patron. </td></tr>
  592. </table>
  593. </dd>
  594. </dl>
  595. </div>
  596. </div>
  597. <a class="anchor" id="ad3b5d3b767597234cfddd541f28a2dfe"></a><!-- doxytag: member="cAllegiance::LoadMembersFromDB" ref="ad3b5d3b767597234cfddd541f28a2dfe" args="(cAllegiance *aAllegiance)" -->
  598. <div class="memitem">
  599. <div class="memproto">
  600. <table class="memname">
  601. <tr>
  602. <td class="memname">void cAllegiance::LoadMembersFromDB </td>
  603. <td>(</td>
  604. <td class="paramtype"><a class="el" href="classc_allegiance.html">cAllegiance</a> *&nbsp;</td>
  605. <td class="paramname"> <em>aAllegiance</em></td>
  606. <td>&nbsp;)&nbsp;</td>
  607. <td><code> [static]</code></td>
  608. </tr>
  609. </table>
  610. </div>
  611. <div class="memdoc">
  612. <p>Loads the allegiance's members into memory.</p>
  613. <p>This function is called when the server is started. Loading this information at server boot reduces the impact of experience passing.</p>
  614. <p>Allegiance members are loaded into a map with their GUID as key. Each member is a struct containing pertinent allegiance information. </p>
  615. </div>
  616. </div>
  617. <a class="anchor" id="a761d2eb409d56754ee62174498c6433c"></a><!-- doxytag: member="cAllegiance::RemDirectVassal" ref="a761d2eb409d56754ee62174498c6433c" args="(DWORD dwVassalGUID)" -->
  618. <div class="memitem">
  619. <div class="memproto">
  620. <table class="memname">
  621. <tr>
  622. <td class="memname">bool cAllegiance::RemDirectVassal </td>
  623. <td>(</td>
  624. <td class="paramtype">DWORD&nbsp;</td>
  625. <td class="paramname"> <em>dwVassalGUID</em></td>
  626. <td>&nbsp;)&nbsp;</td>
  627. <td></td>
  628. </tr>
  629. </table>
  630. </div>
  631. <div class="memdoc">
  632. <p>Removes a vassal from the patron's vassal list.</p>
  633. <p>The patron's follower count and rank are both recaluated.</p>
  634. <dl><dt><b>Parameters:</b></dt><dd>
  635. <table border="0" cellspacing="2" cellpadding="0">
  636. <tr><td valign="top"></td><td valign="top"><em>memVassal</em>&nbsp;</td><td>- The GUID of the vassal to remove from his/her patron's vassal list. </td></tr>
  637. </table>
  638. </dd>
  639. </dl>
  640. </div>
  641. </div>
  642. <a class="anchor" id="a515878e8da9990f854d1b75fb8cf8aec"></a><!-- doxytag: member="cAllegiance::RemDirectVassal" ref="a515878e8da9990f854d1b75fb8cf8aec" args="(Member *memVassal)" -->
  643. <div class="memitem">
  644. <div class="memproto">
  645. <table class="memname">
  646. <tr>
  647. <td class="memname">bool cAllegiance::RemDirectVassal </td>
  648. <td>(</td>
  649. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  650. <td class="paramname"> <em>memVassal</em></td>
  651. <td>&nbsp;)&nbsp;</td>
  652. <td></td>
  653. </tr>
  654. </table>
  655. </div>
  656. <div class="memdoc">
  657. <p>Removes a vassal from the patron's vassal list.</p>
  658. <p>The patron's follower count and rank are both recaluated.</p>
  659. <dl><dt><b>Parameters:</b></dt><dd>
  660. <table border="0" cellspacing="2" cellpadding="0">
  661. <tr><td valign="top"></td><td valign="top"><em>memVassal</em>&nbsp;</td><td>- A pointer to the member record of the vassal to remove from his/her patron's vassal list. </td></tr>
  662. </table>
  663. </dd>
  664. </dl>
  665. </div>
  666. </div>
  667. <a class="anchor" id="a8489189443fed532b70de13eb33d707e"></a><!-- doxytag: member="cAllegiance::RemMember" ref="a8489189443fed532b70de13eb33d707e" args="(DWORD dwRemMemberGUID, DWORD oldAllegianceID, bool isDisbanding=false)" -->
  668. <div class="memitem">
  669. <div class="memproto">
  670. <table class="memname">
  671. <tr>
  672. <td class="memname">bool cAllegiance::RemMember </td>
  673. <td>(</td>
  674. <td class="paramtype">DWORD&nbsp;</td>
  675. <td class="paramname"> <em>dwRemMemberGUID</em>, </td>
  676. </tr>
  677. <tr>
  678. <td class="paramkey"></td>
  679. <td></td>
  680. <td class="paramtype">DWORD&nbsp;</td>
  681. <td class="paramname"> <em>oldAllegianceID</em>, </td>
  682. </tr>
  683. <tr>
  684. <td class="paramkey"></td>
  685. <td></td>
  686. <td class="paramtype">bool&nbsp;</td>
  687. <td class="paramname"> <em>isDisbanding</em> = <code>false</code></td><td>&nbsp;</td>
  688. </tr>
  689. <tr>
  690. <td></td>
  691. <td>)</td>
  692. <td></td><td></td><td><code> [static]</code></td>
  693. </tr>
  694. </table>
  695. </div>
  696. <div class="memdoc">
  697. <p>Removes a player (and any vassals under him/her) from an allegiance.</p>
  698. <p>The function is used when a player breaks or is kicked/booted/banned from the allegiance. Each follower of that member should also be removed from the allegiance.</p>
  699. <dl><dt><b>Parameters:</b></dt><dd>
  700. <table border="0" cellspacing="2" cellpadding="0">
  701. <tr><td valign="top"></td><td valign="top"><em>dwRemMemberGUID</em>&nbsp;</td><td>- The GUID of the player to remove. </td></tr>
  702. <tr><td valign="top"></td><td valign="top"><em>isDisbanding</em>&nbsp;</td><td>- A boolean value representing whether to disband the allegiance. </td></tr>
  703. </table>
  704. </dd>
  705. </dl>
  706. </div>
  707. </div>
  708. <a class="anchor" id="a9d7c20d2b5893388299105fee780fd8b"></a><!-- doxytag: member="cAllegiance::SwitchMonarchAndVassals" ref="a9d7c20d2b5893388299105fee780fd8b" args="(Member *member, DWORD oldAllegianceID, DWORD newAllegianceID)" -->
  709. <div class="memitem">
  710. <div class="memproto">
  711. <table class="memname">
  712. <tr>
  713. <td class="memname">bool cAllegiance::SwitchMonarchAndVassals </td>
  714. <td>(</td>
  715. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  716. <td class="paramname"> <em>member</em>, </td>
  717. </tr>
  718. <tr>
  719. <td class="paramkey"></td>
  720. <td></td>
  721. <td class="paramtype">DWORD&nbsp;</td>
  722. <td class="paramname"> <em>oldAllegianceID</em>, </td>
  723. </tr>
  724. <tr>
  725. <td class="paramkey"></td>
  726. <td></td>
  727. <td class="paramtype">DWORD&nbsp;</td>
  728. <td class="paramname"> <em>newAllegianceID</em></td><td>&nbsp;</td>
  729. </tr>
  730. <tr>
  731. <td></td>
  732. <td>)</td>
  733. <td></td><td></td><td><code> [static]</code></td>
  734. </tr>
  735. </table>
  736. </div>
  737. <div class="memdoc">
  738. <p>Switches a player's (and all of his/her followers') allegiance.</p>
  739. <p>It is prefered over the non-monarch implementation, as it iterates rather than searches through the member map.</p>
  740. <dl><dt><b>Parameters:</b></dt><dd>
  741. <table border="0" cellspacing="2" cellpadding="0">
  742. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- The monach whose allegiance should be switched. </td></tr>
  743. <tr><td valign="top"></td><td valign="top"><em>oldAllegianceID</em>&nbsp;</td><td>- The ID of the monarch's former allegiance. </td></tr>
  744. <tr><td valign="top"></td><td valign="top"><em>newAllegianceID</em>&nbsp;</td><td>- The ID of the allegiance to which the monarch and his/her followers should be switched. </td></tr>
  745. </table>
  746. </dd>
  747. </dl>
  748. </div>
  749. </div>
  750. <a class="anchor" id="a9bfd51a6a51aef286986a4946b981064"></a><!-- doxytag: member="cAllegiance::SwitchNonMonarchVassals" ref="a9bfd51a6a51aef286986a4946b981064" args="(Member *member, DWORD oldAllegianceID, DWORD newAllegianceID)" -->
  751. <div class="memitem">
  752. <div class="memproto">
  753. <table class="memname">
  754. <tr>
  755. <td class="memname">bool cAllegiance::SwitchNonMonarchVassals </td>
  756. <td>(</td>
  757. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  758. <td class="paramname"> <em>member</em>, </td>
  759. </tr>
  760. <tr>
  761. <td class="paramkey"></td>
  762. <td></td>
  763. <td class="paramtype">DWORD&nbsp;</td>
  764. <td class="paramname"> <em>oldAllegianceID</em>, </td>
  765. </tr>
  766. <tr>
  767. <td class="paramkey"></td>
  768. <td></td>
  769. <td class="paramtype">DWORD&nbsp;</td>
  770. <td class="paramname"> <em>newAllegianceID</em></td><td>&nbsp;</td>
  771. </tr>
  772. <tr>
  773. <td></td>
  774. <td>)</td>
  775. <td></td><td></td><td><code> [static]</code></td>
  776. </tr>
  777. </table>
  778. </div>
  779. <div class="memdoc">
  780. <p>Switches a player's followers' allegiance.</p>
  781. <p>Only the vassals under the player switching are switched.</p>
  782. <dl><dt><b>Parameters:</b></dt><dd>
  783. <table border="0" cellspacing="2" cellpadding="0">
  784. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- The member whose allegiance should be switched. </td></tr>
  785. <tr><td valign="top"></td><td valign="top"><em>oldAllegianceID</em>&nbsp;</td><td>- The ID of the member's former allegiance. </td></tr>
  786. <tr><td valign="top"></td><td valign="top"><em>newAllegianceID</em>&nbsp;</td><td>- The ID of the member's new allegiance. </td></tr>
  787. </table>
  788. </dd>
  789. </dl>
  790. </div>
  791. </div>
  792. <a class="anchor" id="a2ae364d6dd15cbcc0403a9693b94c531"></a><!-- doxytag: member="cAllegiance::UpdateAverageSwornTimeOfVassals" ref="a2ae364d6dd15cbcc0403a9693b94c531" args="(Member *memPatron)" -->
  793. <div class="memitem">
  794. <div class="memproto">
  795. <table class="memname">
  796. <tr>
  797. <td class="memname">void cAllegiance::UpdateAverageSwornTimeOfVassals </td>
  798. <td>(</td>
  799. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  800. <td class="paramname"> <em>memPatron</em></td>
  801. <td>&nbsp;)&nbsp;</td>
  802. <td></td>
  803. </tr>
  804. </table>
  805. </div>
  806. <div class="memdoc">
  807. <p>Calculates the average sworn time for a patron's vassals and updates the patron's member record.</p>
  808. <p>This function calculates both the average in-game and average real-time sworn time for a patron's vassals. These values are used in the calculation of vassal experience pass-up to a patron.</p>
  809. <dl><dt><b>Parameters:</b></dt><dd>
  810. <table border="0" cellspacing="2" cellpadding="0">
  811. <tr><td valign="top"></td><td valign="top"><em>memPatron</em>&nbsp;</td><td>- A pointer to the member record of the patron to use for the calculations. </td></tr>
  812. </table>
  813. </dd>
  814. </dl>
  815. </div>
  816. </div>
  817. <a class="anchor" id="a9202665caa0f6ed1eab35b5da35697c1"></a><!-- doxytag: member="cAllegiance::UpdateEarnedXP" ref="a9202665caa0f6ed1eab35b5da35697c1" args="(Member *member, UINT64 experience)" -->
  818. <div class="memitem">
  819. <div class="memproto">
  820. <table class="memname">
  821. <tr>
  822. <td class="memname">void cAllegiance::UpdateEarnedXP </td>
  823. <td>(</td>
  824. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  825. <td class="paramname"> <em>member</em>, </td>
  826. </tr>
  827. <tr>
  828. <td class="paramkey"></td>
  829. <td></td>
  830. <td class="paramtype">UINT64&nbsp;</td>
  831. <td class="paramname"> <em>experience</em></td><td>&nbsp;</td>
  832. </tr>
  833. <tr>
  834. <td></td>
  835. <td>)</td>
  836. <td></td><td></td><td></td>
  837. </tr>
  838. </table>
  839. </div>
  840. <div class="memdoc">
  841. <p>Updates the member's earned experience.</p>
  842. <p>The member may be logged-on or logged-off: If the member is logged-on, the experience is added directly to the avatar's unassigned experience. If the member is logged-off, the experience is added to the avatar's pending experience.</p>
  843. <dl><dt><b>Parameters:</b></dt><dd>
  844. <table border="0" cellspacing="2" cellpadding="0">
  845. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- A pointer to the member record of the member whose experience should be updated. </td></tr>
  846. <tr><td valign="top"></td><td valign="top"><em>experience</em>&nbsp;</td><td>- The amount of experience earned. </td></tr>
  847. </table>
  848. </dd>
  849. </dl>
  850. </div>
  851. </div>
  852. <a class="anchor" id="af72e95af2371c231958692b1c99e4480"></a><!-- doxytag: member="cAllegiance::UpdateFollowers" ref="af72e95af2371c231958692b1c99e4480" args="(DWORD dwMemberGUID, int numFollowers)" -->
  853. <div class="memitem">
  854. <div class="memproto">
  855. <table class="memname">
  856. <tr>
  857. <td class="memname">void cAllegiance::UpdateFollowers </td>
  858. <td>(</td>
  859. <td class="paramtype">DWORD&nbsp;</td>
  860. <td class="paramname"> <em>dwMemberGUID</em>, </td>
  861. </tr>
  862. <tr>
  863. <td class="paramkey"></td>
  864. <td></td>
  865. <td class="paramtype">int&nbsp;</td>
  866. <td class="paramname"> <em>numFollowers</em></td><td>&nbsp;</td>
  867. </tr>
  868. <tr>
  869. <td></td>
  870. <td>)</td>
  871. <td></td><td></td><td></td>
  872. </tr>
  873. </table>
  874. </div>
  875. <div class="memdoc">
  876. <p>Updates the follower count for a branch of the allegiance tree.</p>
  877. <p>The function is used to update the tree when a member is added or removed. Each follower of that member must be added/removed to/from the follower count for each allegiance member higher in the tree.</p>
  878. <dl><dt><b>Parameters:</b></dt><dd>
  879. <table border="0" cellspacing="2" cellpadding="0">
  880. <tr><td valign="top"></td><td valign="top"><em>memberGUID</em>&nbsp;</td><td>- The GUID of the base member from whom to start. </td></tr>
  881. <tr><td valign="top"></td><td valign="top"><em>numFollowers</em>&nbsp;</td><td>- The number of followers added or removed. </td></tr>
  882. </table>
  883. </dd>
  884. </dl>
  885. </div>
  886. </div>
  887. <a class="anchor" id="adb2e82a95c03112dc265e31e16802569"></a><!-- doxytag: member="cAllegiance::UpdateFollowers" ref="adb2e82a95c03112dc265e31e16802569" args="(Member *member, int numFollowers)" -->
  888. <div class="memitem">
  889. <div class="memproto">
  890. <table class="memname">
  891. <tr>
  892. <td class="memname">void cAllegiance::UpdateFollowers </td>
  893. <td>(</td>
  894. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  895. <td class="paramname"> <em>member</em>, </td>
  896. </tr>
  897. <tr>
  898. <td class="paramkey"></td>
  899. <td></td>
  900. <td class="paramtype">int&nbsp;</td>
  901. <td class="paramname"> <em>numFollowers</em></td><td>&nbsp;</td>
  902. </tr>
  903. <tr>
  904. <td></td>
  905. <td>)</td>
  906. <td></td><td></td><td></td>
  907. </tr>
  908. </table>
  909. </div>
  910. <div class="memdoc">
  911. <p>Updates the follower count for a branch of the allegiance tree.</p>
  912. <p>The function is used to update the tree when a member is added or removed. Each follower of that member must be added/removed to/from the follower count for each allegiance member higher in the tree.</p>
  913. <dl><dt><b>Parameters:</b></dt><dd>
  914. <table border="0" cellspacing="2" cellpadding="0">
  915. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- A pointer to the member record of the base member from whom to start. </td></tr>
  916. <tr><td valign="top"></td><td valign="top"><em>numFollowers</em>&nbsp;</td><td>- The number of followers added or removed. </td></tr>
  917. </table>
  918. </dd>
  919. </dl>
  920. </div>
  921. </div>
  922. <a class="anchor" id="a2564663e0b24199cb65551181b7d6575"></a><!-- doxytag: member="cAllegiance::UpdateGeneratedXP" ref="a2564663e0b24199cb65551181b7d6575" args="(Member *member, UINT64 experience)" -->
  923. <div class="memitem">
  924. <div class="memproto">
  925. <table class="memname">
  926. <tr>
  927. <td class="memname">void cAllegiance::UpdateGeneratedXP </td>
  928. <td>(</td>
  929. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  930. <td class="paramname"> <em>member</em>, </td>
  931. </tr>
  932. <tr>
  933. <td class="paramkey"></td>
  934. <td></td>
  935. <td class="paramtype">UINT64&nbsp;</td>
  936. <td class="paramname"> <em>experience</em></td><td>&nbsp;</td>
  937. </tr>
  938. <tr>
  939. <td></td>
  940. <td>)</td>
  941. <td></td><td></td><td></td>
  942. </tr>
  943. </table>
  944. </div>
  945. <div class="memdoc">
  946. <p>Updates the member's generated experience.</p>
  947. <dl><dt><b>Parameters:</b></dt><dd>
  948. <table border="0" cellspacing="2" cellpadding="0">
  949. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- A pointer to the member record of the member whose generated experience should be updated. </td></tr>
  950. <tr><td valign="top"></td><td valign="top"><em>experience</em>&nbsp;</td><td>- The amount of experience generated. </td></tr>
  951. </table>
  952. </dd>
  953. </dl>
  954. </div>
  955. </div>
  956. <a class="anchor" id="a48a8521e49dcc149a460965f9be477f1"></a><!-- doxytag: member="cAllegiance::UpdatePlayerAllegID" ref="a48a8521e49dcc149a460965f9be477f1" args="(DWORD dwPlayerGUID, DWORD newAllegianceID)" -->
  957. <div class="memitem">
  958. <div class="memproto">
  959. <table class="memname">
  960. <tr>
  961. <td class="memname">void cAllegiance::UpdatePlayerAllegID </td>
  962. <td>(</td>
  963. <td class="paramtype">DWORD&nbsp;</td>
  964. <td class="paramname"> <em>dwPlayerGUID</em>, </td>
  965. </tr>
  966. <tr>
  967. <td class="paramkey"></td>
  968. <td></td>
  969. <td class="paramtype">DWORD&nbsp;</td>
  970. <td class="paramname"> <em>newAllegianceID</em></td><td>&nbsp;</td>
  971. </tr>
  972. <tr>
  973. <td></td>
  974. <td>)</td>
  975. <td></td><td></td><td><code> [static]</code></td>
  976. </tr>
  977. </table>
  978. </div>
  979. <div class="memdoc">
  980. <p>Updates the allegiance ID for a player.</p>
  981. <p>The function is used to update a player's allegiance ID when he/she joins an allegiance or his/her allegiance is switched.</p>
  982. <dl><dt><b>Parameters:</b></dt><dd>
  983. <table border="0" cellspacing="2" cellpadding="0">
  984. <tr><td valign="top"></td><td valign="top"><em>dwPlayerGUID</em>&nbsp;</td><td>- The GUID of the player whose allegiance ID should be changed. </td></tr>
  985. <tr><td valign="top"></td><td valign="top"><em>newAllegianceID</em>&nbsp;</td><td>- The player's new allegiance ID. </td></tr>
  986. </table>
  987. </dd>
  988. </dl>
  989. </div>
  990. </div>
  991. <a class="anchor" id="a464ff146a68f29047907873bb60fd6f2"></a><!-- doxytag: member="cAllegiance::UpdatePlayerAllegID" ref="a464ff146a68f29047907873bb60fd6f2" args="(Member *member, DWORD newAllegianceID)" -->
  992. <div class="memitem">
  993. <div class="memproto">
  994. <table class="memname">
  995. <tr>
  996. <td class="memname">void cAllegiance::UpdatePlayerAllegID </td>
  997. <td>(</td>
  998. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  999. <td class="paramname"> <em>member</em>, </td>
  1000. </tr>
  1001. <tr>
  1002. <td class="paramkey"></td>
  1003. <td></td>
  1004. <td class="paramtype">DWORD&nbsp;</td>
  1005. <td class="paramname"> <em>newAllegianceID</em></td><td>&nbsp;</td>
  1006. </tr>
  1007. <tr>
  1008. <td></td>
  1009. <td>)</td>
  1010. <td></td><td></td><td><code> [static]</code></td>
  1011. </tr>
  1012. </table>
  1013. </div>
  1014. <div class="memdoc">
  1015. <p>Updates the allegiance ID for a player.</p>
  1016. <p>The function is used to update a player's allegiance ID when he/she joins an allegiance or his/her allegiance is switched.</p>
  1017. <dl><dt><b>Parameters:</b></dt><dd>
  1018. <table border="0" cellspacing="2" cellpadding="0">
  1019. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- A pointer to the member record of the player whose allegiance ID should be changed. </td></tr>
  1020. <tr><td valign="top"></td><td valign="top"><em>newAllegianceID</em>&nbsp;</td><td>- The player's new allegiance ID. </td></tr>
  1021. </table>
  1022. </dd>
  1023. </dl>
  1024. </div>
  1025. </div>
  1026. <a class="anchor" id="a3c69aed61acd308363f07ff87a52f5c0"></a><!-- doxytag: member="cAllegiance::UpdateRank" ref="a3c69aed61acd308363f07ff87a52f5c0" args="(DWORD dwMemberGUID)" -->
  1027. <div class="memitem">
  1028. <div class="memproto">
  1029. <table class="memname">
  1030. <tr>
  1031. <td class="memname">void cAllegiance::UpdateRank </td>
  1032. <td>(</td>
  1033. <td class="paramtype">DWORD&nbsp;</td>
  1034. <td class="paramname"> <em>dwMemberGUID</em></td>
  1035. <td>&nbsp;)&nbsp;</td>
  1036. <td></td>
  1037. </tr>
  1038. </table>
  1039. </div>
  1040. <div class="memdoc">
  1041. <p>Updates the rank of a member.</p>
  1042. <p>A patron's rank is equal to the rank of the highest vassal or one higher than the two highest vassals of equal rank, whichever is greater. A patron's rank may change if he/she gains/loses a vassal, or if a vassal's rank changes. If a member's rank has changed, his/her patron's rank is also recalculated. The minimum rank is 1.</p>
  1043. <dl><dt><b>Parameters:</b></dt><dd>
  1044. <table border="0" cellspacing="2" cellpadding="0">
  1045. <tr><td valign="top"></td><td valign="top"><em>memberGUID</em>&nbsp;</td><td>- The GUID of the base member/patron from whom to start. </td></tr>
  1046. </table>
  1047. </dd>
  1048. </dl>
  1049. </div>
  1050. </div>
  1051. <a class="anchor" id="aef6b45d7d05edcb6e4d531a26c383750"></a><!-- doxytag: member="cAllegiance::UpdateRank" ref="aef6b45d7d05edcb6e4d531a26c383750" args="(Member *member)" -->
  1052. <div class="memitem">
  1053. <div class="memproto">
  1054. <table class="memname">
  1055. <tr>
  1056. <td class="memname">void cAllegiance::UpdateRank </td>
  1057. <td>(</td>
  1058. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  1059. <td class="paramname"> <em>member</em></td>
  1060. <td>&nbsp;)&nbsp;</td>
  1061. <td></td>
  1062. </tr>
  1063. </table>
  1064. </div>
  1065. <div class="memdoc">
  1066. <p>Updates the rank of a member.</p>
  1067. <p>A patron's rank is equal to the rank of the highest vassal or one higher than the two highest vassals of equal rank, whichever is greater. A patron's rank may change if he/she gains/loses a vassal, or if a vassal's rank changes. If a member's rank has changed, his/her patron's rank is also recalculated. The minimum rank is 1.</p>
  1068. <dl><dt><b>Parameters:</b></dt><dd>
  1069. <table border="0" cellspacing="2" cellpadding="0">
  1070. <tr><td valign="top"></td><td valign="top"><em>member</em>&nbsp;</td><td>- A pointer to the member record of the base member/patron from whom to start. </td></tr>
  1071. </table>
  1072. </dd>
  1073. </dl>
  1074. </div>
  1075. </div>
  1076. <a class="anchor" id="adc5e09f86bcb46ab8949226a9795de93"></a><!-- doxytag: member="cAllegiance::VassalPassupXP" ref="adc5e09f86bcb46ab8949226a9795de93" args="(Member *memVassal, UINT64 experience, bool isGrandVassal=false)" -->
  1077. <div class="memitem">
  1078. <div class="memproto">
  1079. <table class="memname">
  1080. <tr>
  1081. <td class="memname">void cAllegiance::VassalPassupXP </td>
  1082. <td>(</td>
  1083. <td class="paramtype"><a class="el" href="struct_member.html">Member</a> *&nbsp;</td>
  1084. <td class="paramname"> <em>memVassal</em>, </td>
  1085. </tr>
  1086. <tr>
  1087. <td class="paramkey"></td>
  1088. <td></td>
  1089. <td class="paramtype">UINT64&nbsp;</td>
  1090. <td class="paramname"> <em>experience</em>, </td>
  1091. </tr>
  1092. <tr>
  1093. <td class="paramkey"></td>
  1094. <td></td>
  1095. <td class="paramtype">bool&nbsp;</td>
  1096. <td class="paramname"> <em>isGrandVassal</em> = <code>false</code></td><td>&nbsp;</td>
  1097. </tr>
  1098. <tr>
  1099. <td></td>
  1100. <td>)</td>
  1101. <td></td><td></td><td></td>
  1102. </tr>
  1103. </table>
  1104. </div>
  1105. <div class="memdoc">
  1106. <p>Calculates the percentage of experience passed up from a vassal.</p>
  1107. <dl><dt><b>Parameters:</b></dt><dd>
  1108. <table border="0" cellspacing="2" cellpadding="0">
  1109. <tr><td valign="top"></td><td valign="top"><em>memVassal</em>&nbsp;</td><td>- A pointer to the member record of the vassal to use for the calculations. </td></tr>
  1110. <tr><td valign="top"></td><td valign="top"><em>experience</em>&nbsp;</td><td>- The amount of experience from which to calculate pass-up. </td></tr>
  1111. <tr><td valign="top"></td><td valign="top"><em>isGrandVassal</em>&nbsp;</td><td>- Is a grand vassal (a non-originator of the experience). </td></tr>
  1112. </table>
  1113. </dd>
  1114. </dl>
  1115. </div>
  1116. </div>
  1117. <hr/>The documentation for this class was generated from the following files:<ul>
  1118. <li>E:/uas2/Server/<a class="el" href="_allegiance_8h_source.html">Allegiance.h</a></li>
  1119. <li>E:/uas2/Server/<a class="el" href="_allegiance_8cpp.html">Allegiance.cpp</a></li>
  1120. </ul>
  1121. </div>
  1122. <hr size="1"/><address style="text-align: right;"><small>Generated by&nbsp;
  1123. <a href="http://www.doxygen.org/index.html">
  1124. <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
  1125. </body>
  1126. </html>