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

_object_8h_source.html 313KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316
  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: E:/uas2/Server/Object.h Source File</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><a href="annotated.html"><span>Classes</span></a></li>
  16. <li class="current"><a href="files.html"><span>Files</span></a></li>
  17. </ul>
  18. </div>
  19. <div class="tabs">
  20. <ul>
  21. <li><a href="files.html"><span>File&nbsp;List</span></a></li>
  22. <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
  23. </ul>
  24. </div>
  25. <h1>E:/uas2/Server/Object.h</h1><a href="_object_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
  26. <a name="l00002"></a>00002 <span class="comment">* This file is part of UAS2.</span>
  27. <a name="l00003"></a>00003 <span class="comment">*</span>
  28. <a name="l00004"></a>00004 <span class="comment">* UAS2 is free software; you can redistribute it and/or modify</span>
  29. <a name="l00005"></a>00005 <span class="comment">* it under the terms of the GNU General Public License as published by</span>
  30. <a name="l00006"></a>00006 <span class="comment">* the Free Software Foundation; either version 2 of the License, or</span>
  31. <a name="l00007"></a>00007 <span class="comment">* (at your option) any later version.</span>
  32. <a name="l00008"></a>00008 <span class="comment">*</span>
  33. <a name="l00009"></a>00009 <span class="comment">* UAS2 is distributed in the hope that it will be useful,</span>
  34. <a name="l00010"></a>00010 <span class="comment">* but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
  35. <a name="l00011"></a>00011 <span class="comment">* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
  36. <a name="l00012"></a>00012 <span class="comment">* GNU General Public License for more details.</span>
  37. <a name="l00013"></a>00013 <span class="comment"></span>
  38. <a name="l00014"></a>00014 <span class="comment">* You should have received a copy of the GNU General Public License</span>
  39. <a name="l00015"></a>00015 <span class="comment">* along with UASv1; if not, write to the Free Software</span>
  40. <a name="l00016"></a>00016 <span class="comment">* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</span>
  41. <a name="l00017"></a>00017 <span class="comment">*/</span>
  42. <a name="l00018"></a>00018
  43. <a name="l00025"></a>00025 <span class="preprocessor">#ifndef __OBJECT_H</span>
  44. <a name="l00026"></a>00026 <span class="preprocessor"></span><span class="preprocessor">#define __OBJECT_H</span>
  45. <a name="l00027"></a>00027 <span class="preprocessor"></span>
  46. <a name="l00028"></a>00028 <span class="preprocessor">#include &lt;string&gt;</span>
  47. <a name="l00029"></a>00029 <span class="preprocessor">#include &quot;math.h&quot;</span>
  48. <a name="l00030"></a>00030 <span class="preprocessor">#include &lt;algorithm&gt;</span>
  49. <a name="l00031"></a>00031 <span class="preprocessor">#include &quot;stdio.h&quot;</span>
  50. <a name="l00032"></a>00032 <span class="preprocessor">#include &quot;stdlib.h&quot;</span>
  51. <a name="l00033"></a>00033
  52. <a name="l00034"></a>00034 <span class="preprocessor">#include &quot;<a class="code" href="_message_8h.html">Message.h</a>&quot;</span>
  53. <a name="l00035"></a>00035 <span class="preprocessor">#include &quot;<a class="code" href="c_models_8h.html">cModels.h</a>&quot;</span>
  54. <a name="l00036"></a>00036 <span class="preprocessor">#include &quot;cMagicModels.h&quot;</span>
  55. <a name="l00037"></a>00037 <span class="preprocessor">#include &quot;<a class="code" href="c_item_models_8h.html">cItemModels.h</a>&quot;</span>
  56. <a name="l00038"></a>00038
  57. <a name="l00039"></a>00039 <span class="comment">/*</span>
  58. <a name="l00040"></a>00040 <span class="comment">* **Item Types**</span>
  59. <a name="l00041"></a>00041 <span class="comment">* 0 - General Items (Calling stone, Wasp wings, etc)</span>
  60. <a name="l00042"></a>00042 <span class="comment">* 1 - Weapons*</span>
  61. <a name="l00043"></a>00043 <span class="comment">* 2 - Food*</span>
  62. <a name="l00044"></a>00044 <span class="comment">* 3 - Armor*</span>
  63. <a name="l00045"></a>00045 <span class="comment">* 4 - Books*</span>
  64. <a name="l00046"></a>00046 <span class="comment">* 5 - Scrolls*</span>
  65. <a name="l00047"></a>00047 <span class="comment">* 6 - Healing Kits*</span>
  66. <a name="l00048"></a>00048 <span class="comment">* 7 - Lock Picks/Keys*</span>
  67. <a name="l00049"></a>00049 <span class="comment">* 8 - Wands/Casting items*</span>
  68. <a name="l00050"></a>00050 <span class="comment">* 9 - Pyreals*</span>
  69. <a name="l00051"></a>00051 <span class="comment">* 10 - Mana Stones*</span>
  70. <a name="l00052"></a>00052 <span class="comment">* 11 - Missile Weapon/Ammo*</span>
  71. <a name="l00053"></a>00053 <span class="comment">* 12 - Shield*</span>
  72. <a name="l00054"></a>00054 <span class="comment">* 13 - Spell Components*</span>
  73. <a name="l00055"></a>00055 <span class="comment">* 14 - Gems*</span>
  74. <a name="l00056"></a>00056 <span class="comment">* 15 - Trade Notes*</span>
  75. <a name="l00057"></a>00057 <span class="comment">* 16 - Trade Skill Items*</span>
  76. <a name="l00058"></a>00058 <span class="comment">* 17 - Plants*</span>
  77. <a name="l00059"></a>00059 <span class="comment">* 18 - Clothes*</span>
  78. <a name="l00060"></a>00060 <span class="comment">* 19 - Jewelry*</span>
  79. <a name="l00061"></a>00061 <span class="comment">* 20 - Containers/packs*</span>
  80. <a name="l00062"></a>00062 <span class="comment">* 21 - Salvage*</span>
  81. <a name="l00063"></a>00063 <span class="comment">* 22 - Foci*</span>
  82. <a name="l00064"></a>00064 <span class="comment">*/</span>
  83. <a name="l00065"></a>00065
  84. <a name="l00066"></a>00066 <span class="comment">//Cubem0j0: Apparently added as skill IDs </span>
  85. <a name="l00067"></a>00067 <span class="preprocessor">#define SKILL_AXE 0x01</span>
  86. <a name="l00068"></a>00068 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_BOW 0x02</span>
  87. <a name="l00069"></a>00069 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_CROSSBOW 0x03</span>
  88. <a name="l00070"></a>00070 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_DAGGER 0x04</span>
  89. <a name="l00071"></a>00071 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_MACE 0x05</span>
  90. <a name="l00072"></a>00072 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_MELEE_DEFENSE 0x06</span>
  91. <a name="l00073"></a>00073 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_MISSLE_DEFENSE 0x07</span>
  92. <a name="l00074"></a>00074 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_SPEAR 0x09</span>
  93. <a name="l00075"></a>00075 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_STAFF 0x0A</span>
  94. <a name="l00076"></a>00076 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_SWORD 0x0B</span>
  95. <a name="l00077"></a>00077 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_THROWN_WEAPONS 0x0C</span>
  96. <a name="l00078"></a>00078 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_UNARMED_COMBAT 0x0D</span>
  97. <a name="l00079"></a>00079 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ARCANE_LORE 0x0E</span>
  98. <a name="l00080"></a>00080 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_MAGIC_DEFENSE 0x0F</span>
  99. <a name="l00081"></a>00081 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_MANA_CONVERSION 0x10</span>
  100. <a name="l00082"></a>00082 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ITEM_TINKERING 0x12</span>
  101. <a name="l00083"></a>00083 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ASSESS_PERSON 0x13</span>
  102. <a name="l00084"></a>00084 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_DECEPTION 0x14</span>
  103. <a name="l00085"></a>00085 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_HEALING 0x15</span>
  104. <a name="l00086"></a>00086 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_JUMP 0x16</span>
  105. <a name="l00087"></a>00087 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_LOCKPICK 0x17</span>
  106. <a name="l00088"></a>00088 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_RUN 0x18</span>
  107. <a name="l00089"></a>00089 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ASSESS_CREATURE 0x1B</span>
  108. <a name="l00090"></a>00090 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_WEAPON_TINKERING 0x1C</span>
  109. <a name="l00091"></a>00091 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ARMOR_TINKERING 0x1D</span>
  110. <a name="l00092"></a>00092 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_MAGIC_ITEM_TINKERING 0x1E</span>
  111. <a name="l00093"></a>00093 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_CREATURE_ENCHANTMENT 0x1F</span>
  112. <a name="l00094"></a>00094 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ITEM_ENCHANTMENT 0x20</span>
  113. <a name="l00095"></a>00095 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_LIFE_MAGIC 0x21</span>
  114. <a name="l00096"></a>00096 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_WAR_MAGIC 0x22</span>
  115. <a name="l00097"></a>00097 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_LEADERSHIP 0x23</span>
  116. <a name="l00098"></a>00098 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_LOYALTY 0x24</span>
  117. <a name="l00099"></a>00099 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_FLETCHING 0x25</span>
  118. <a name="l00100"></a>00100 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_ALCHEMY 0x26</span>
  119. <a name="l00101"></a>00101 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_COOKING 0x27</span>
  120. <a name="l00102"></a>00102 <span class="preprocessor"></span><span class="preprocessor">#define SKILL_SALVAGE 0x28</span>
  121. <a name="l00103"></a>00103 <span class="preprocessor"></span><span class="preprocessor">#define PAI 3.14159265</span>
  122. <a name="l00104"></a>00104 <span class="preprocessor"></span>
  123. <a name="l00105"></a>00105 <span class="keyword">class </span><a class="code" href="classc_weapon.html">cWeapon</a>;
  124. <a name="l00106"></a>00106 <span class="keyword">class </span>cWand;
  125. <a name="l00107"></a>00107 <span class="keyword">class </span><a class="code" href="classc_armor.html">cArmor</a>;
  126. <a name="l00108"></a>00108 <span class="keyword">class </span><a class="code" href="classc_door.html">cDoor</a>;
  127. <a name="l00109"></a>00109 <span class="keyword">class </span><a class="code" href="classc_chest.html">cChest</a>;
  128. <a name="l00110"></a>00110 <span class="keyword">class </span><a class="code" href="classc_food.html">cFood</a>;
  129. <a name="l00111"></a>00111
  130. <a name="l00112"></a><a class="code" href="structc_vital.html">00112</a> <span class="keyword">struct </span><a class="code" href="structc_vital.html">cVital</a> {
  131. <a name="l00113"></a>00113 WORD m_wID; <span class="comment">//Store in database.</span>
  132. <a name="l00114"></a>00114 DWORD m_dwIncreases; <span class="comment">//Store in database.</span>
  133. <a name="l00115"></a>00115 DWORD m_dwCurrent; <span class="comment">//Do not store in database. Can be calculated from m_dwIncreases.</span>
  134. <a name="l00116"></a>00116 DWORD m_dwXP; <span class="comment">//Do not store in database. Can be calculated from m_dwIncreases.</span>
  135. <a name="l00117"></a>00117 <span class="keywordtype">long</span> m_lTrueCurrent;
  136. <a name="l00118"></a>00118
  137. <a name="l00119"></a>00119 <span class="keyword">inline</span> <a class="code" href="structc_vital.html">cVital</a>&amp; operator=( DWORD dw )
  138. <a name="l00120"></a>00120 {
  139. <a name="l00121"></a>00121 <span class="keywordtype">long</span> lDiff = dw - m_dwCurrent;
  140. <a name="l00122"></a>00122 m_dwCurrent = dw;
  141. <a name="l00123"></a>00123 m_dwIncreases += lDiff;
  142. <a name="l00124"></a>00124 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
  143. <a name="l00125"></a>00125 }
  144. <a name="l00126"></a>00126 };
  145. <a name="l00127"></a>00127
  146. <a name="l00128"></a><a class="code" href="structc_obj_stats.html">00128</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structc_obj_stats.html">cObjStats</a>
  147. <a name="l00129"></a>00129 {
  148. <a name="l00130"></a>00130 DWORD m_dwLevel;
  149. <a name="l00131"></a>00131 DWORD m_dwStr;
  150. <a name="l00132"></a>00132 DWORD m_dwEnd;
  151. <a name="l00133"></a>00133 DWORD m_dwQuick;
  152. <a name="l00134"></a>00134 DWORD m_dwCoord;
  153. <a name="l00135"></a>00135 DWORD m_dwFocus;
  154. <a name="l00136"></a>00136 DWORD m_dwSelf;
  155. <a name="l00137"></a>00137 DWORD m_dwSpecies;
  156. <a name="l00138"></a>00138
  157. <a name="l00139"></a>00139 <a class="code" href="structc_obj_stats.html">cObjStats</a>( )
  158. <a name="l00140"></a>00140 {
  159. <a name="l00141"></a>00141 m_dwLevel = 0x1;
  160. <a name="l00142"></a>00142 m_dwStr = 0x0;
  161. <a name="l00143"></a>00143 m_dwEnd = 0x0;
  162. <a name="l00144"></a>00144 m_dwQuick = 0x0;
  163. <a name="l00145"></a>00145 m_dwCoord = 0x0;
  164. <a name="l00146"></a>00146 m_dwFocus = 0x0;
  165. <a name="l00147"></a>00147 m_dwSelf = 0x0;
  166. <a name="l00148"></a>00148 m_dwSpecies = 0x28;
  167. <a name="l00149"></a>00149 }
  168. <a name="l00150"></a>00150 } <a class="code" href="structc_obj_stats.html">cObjStats</a>;
  169. <a name="l00151"></a>00151
  170. <a name="l00152"></a><a class="code" href="structc_attribute.html">00152</a> <span class="keyword">struct </span><a class="code" href="structc_attribute.html">cAttribute</a> {
  171. <a name="l00153"></a>00153 WORD m_wID; <span class="comment">//Store in database.</span>
  172. <a name="l00154"></a>00154 DWORD m_dwIncrement; <span class="comment">//Store in database.</span>
  173. <a name="l00155"></a>00155 DWORD m_dwCurrent; <span class="comment">//Store in database.</span>
  174. <a name="l00156"></a>00156 DWORD m_dwXP; <span class="comment">//Store in database.</span>
  175. <a name="l00157"></a>00157
  176. <a name="l00158"></a>00158 <span class="keyword">inline</span> <a class="code" href="structc_attribute.html">cAttribute</a>&amp; operator=( DWORD dw )
  177. <a name="l00159"></a>00159 {
  178. <a name="l00160"></a>00160 m_dwCurrent = dw;
  179. <a name="l00161"></a>00161 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
  180. <a name="l00162"></a>00162 }
  181. <a name="l00163"></a>00163
  182. <a name="l00164"></a>00164 <span class="keyword">inline</span> DWORD operator+( <a class="code" href="structc_attribute.html">cAttribute</a>&amp; rhv )
  183. <a name="l00165"></a>00165 {
  184. <a name="l00166"></a>00166 <span class="keywordflow">return</span> m_dwCurrent + rhv.m_dwCurrent;
  185. <a name="l00167"></a>00167 }
  186. <a name="l00168"></a>00168
  187. <a name="l00169"></a>00169 <span class="keyword">inline</span> DWORD operator/( DWORD dw )
  188. <a name="l00170"></a>00170 {
  189. <a name="l00171"></a>00171 <span class="keywordflow">return</span> m_dwCurrent / dw;
  190. <a name="l00172"></a>00172 }
  191. <a name="l00173"></a>00173 };
  192. <a name="l00174"></a>00174
  193. <a name="l00175"></a><a class="code" href="structc_skill.html">00175</a> <span class="keyword">struct </span><a class="code" href="structc_skill.html">cSkill</a> {
  194. <a name="l00176"></a>00176 WORD m_wID; <span class="comment">// Store in database.</span>
  195. <a name="l00177"></a>00177 WORD m_wStatus; <span class="comment">// Store in database.</span>
  196. <a name="l00178"></a>00178 DWORD m_dwIncreases; <span class="comment">// Store in database.</span>
  197. <a name="l00179"></a>00179 DWORD m_dwTotal; <span class="comment">// Do not store in database.</span>
  198. <a name="l00180"></a>00180 DWORD m_dwBase; <span class="comment">// Do not store in database.</span>
  199. <a name="l00181"></a>00181 DWORD m_dwBonus; <span class="comment">// Do not store in database.</span>
  200. <a name="l00182"></a>00182 DWORD m_dwXP; <span class="comment">// Do not store in database. Can be calculated from m_dwStatus and m_dwIncreases.</span>
  201. <a name="l00183"></a>00183 DWORD m_dwFreeXP; <span class="comment">// Do not store in database. Can be calculated from m_dwStatus.</span>
  202. <a name="l00184"></a>00184
  203. <a name="l00185"></a>00185 <span class="keyword">inline</span> <a class="code" href="structc_skill.html">cSkill</a>&amp; operator=( DWORD dw )
  204. <a name="l00186"></a>00186 {
  205. <a name="l00187"></a>00187 m_dwIncreases = dw;
  206. <a name="l00188"></a>00188 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
  207. <a name="l00189"></a>00189 }
  208. <a name="l00190"></a>00190 <span class="keyword">inline</span> <a class="code" href="structc_skill.html">cSkill</a>&amp; operator=( <a class="code" href="structc_attribute.html">cAttribute</a>&amp; rhv )
  209. <a name="l00191"></a>00191 {
  210. <a name="l00192"></a>00192 m_dwIncreases = rhv.m_dwCurrent;
  211. <a name="l00193"></a>00193 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
  212. <a name="l00194"></a>00194 }
  213. <a name="l00195"></a>00195 };
  214. <a name="l00196"></a>00196
  215. <a name="l00197"></a><a class="code" href="structc_stats.html">00197</a> <span class="keyword">struct </span><a class="code" href="structc_stats.html">cStats</a> {
  216. <a name="l00198"></a>00198 DWORD m_dwLevel;
  217. <a name="l00199"></a>00199 <a class="code" href="structc_attribute.html">cAttribute</a> m_lpcAttributes[6];
  218. <a name="l00200"></a>00200 <a class="code" href="structc_vital.html">cVital</a> m_lpcVitals[3];
  219. <a name="l00201"></a>00201 <a class="code" href="structc_skill.html">cSkill</a> m_lpcSkills[40];
  220. <a name="l00202"></a>00202 };
  221. <a name="l00203"></a>00203
  222. <a name="l00204"></a>00204 <span class="keywordtype">int</span> calc_vec_to_deg(<span class="keywordtype">int</span> vx, <span class="keywordtype">int</span> vy);
  223. <a name="l00205"></a>00205
  224. <a name="l00206"></a><a class="code" href="classc_object.html">00206</a> <span class="keyword">class </span><a class="code" href="classc_object.html">cObject</a>
  225. <a name="l00207"></a>00207 {
  226. <a name="l00208"></a>00208 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_database.html">cDatabase</a>;
  227. <a name="l00209"></a>00209 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_portal_dat.html">cPortalDat</a>;
  228. <a name="l00210"></a>00210 <span class="keyword">public</span>:
  229. <a name="l00214"></a><a class="code" href="classc_object.html#a880a13339708597d53cfed35471dd9af">00214</a> <a class="code" href="classc_object.html#ae98752182985569372cc076132432d78">cObject</a> ( <a class="code" href="structc_location.html">cLocation</a> *pcLoc )
  230. <a name="l00215"></a>00215 {
  231. <a name="l00216"></a>00216 <span class="keywordflow">if</span> ( pcLoc )
  232. <a name="l00217"></a>00217 SetLocation( pcLoc );
  233. <a name="l00218"></a>00218 m_bInventorySequence = -1;
  234. <a name="l00219"></a>00219 m_wPositionSequence = 0;
  235. <a name="l00220"></a>00220 m_wNumPortals = 0;
  236. <a name="l00221"></a>00221 m_wNumLogins = 0x3C;
  237. <a name="l00222"></a>00222 m_fEquipped = 0;
  238. <a name="l00223"></a>00223 m_fIsOwned = FALSE;
  239. <a name="l00224"></a>00224 m_fIsCasting = FALSE;
  240. <a name="l00225"></a>00225 m_wModelSeq = 0x0;
  241. <a name="l00226"></a>00226 m_bWearSeq = 0x0;
  242. <a name="l00227"></a>00227 m_wNumAnims = 0x0000;
  243. <a name="l00228"></a>00228 m_wCurAnim = 0x0000;
  244. <a name="l00229"></a>00229 m_wMeleeSequence = 0x0000;
  245. <a name="l00230"></a>00230 m_dwF7B0Sequence = 0x00000000;
  246. <a name="l00231"></a>00231 m_bStatSequence = 0x00;
  247. <a name="l00232"></a>00232 m_fDeadOrAlive = <span class="keyword">true</span>;
  248. <a name="l00233"></a>00233 }
  249. <a name="l00237"></a><a class="code" href="classc_object.html#ae98752182985569372cc076132432d78">00237</a> <a class="code" href="classc_object.html#ae98752182985569372cc076132432d78">cObject</a>( )
  250. <a name="l00238"></a>00238 {
  251. <a name="l00239"></a>00239 m_bInventorySequence = -1;
  252. <a name="l00240"></a>00240 m_wPositionSequence = 0;
  253. <a name="l00241"></a>00241 m_wNumLogins = 0x3C;
  254. <a name="l00242"></a>00242 m_fEquipped = 0;
  255. <a name="l00243"></a>00243 m_fIsOwned = FALSE;
  256. <a name="l00244"></a>00244 m_fIsCasting = FALSE;
  257. <a name="l00245"></a>00245 m_wNumAnims = 0x0000;
  258. <a name="l00246"></a>00246 m_wCurAnim = 0x0000;
  259. <a name="l00247"></a>00247 m_wMeleeSequence = 0x0000;
  260. <a name="l00248"></a>00248 m_dwF7B0Sequence = 0x00000000;
  261. <a name="l00249"></a>00249 m_bStatSequence = 0x00;
  262. <a name="l00250"></a>00250 m_fDeadOrAlive = <span class="keyword">true</span>;
  263. <a name="l00251"></a>00251 }
  264. <a name="l00252"></a>00252 <span class="keyword">virtual</span> ~<a class="code" href="classc_object.html">cObject</a>( ) {}
  265. <a name="l00253"></a>00253
  266. <a name="l00254"></a>00254 <span class="keywordtype">void</span> SetLocation( <span class="keywordtype">double</span> dNS, <span class="keywordtype">double</span> dEW );
  267. <a name="l00255"></a>00255 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLocation( <a class="code" href="structc_location.html">cLocation</a>&amp; Loc )
  268. <a name="l00256"></a>00256 {
  269. <a name="l00257"></a>00257 m_Location.m_dwLandBlock = Loc.m_dwLandBlock;
  270. <a name="l00258"></a>00258 m_Location.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> = Loc.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a>;
  271. <a name="l00259"></a>00259 m_Location.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> = Loc.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a>;
  272. <a name="l00260"></a>00260 m_Location.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> = Loc.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a>;
  273. <a name="l00261"></a>00261 m_Location.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a> = Loc.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a>;
  274. <a name="l00262"></a>00262 m_Location.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a> = Loc.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a>;
  275. <a name="l00263"></a>00263 m_Location.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a> = Loc.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a>;
  276. <a name="l00264"></a>00264 m_Location.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a> = Loc.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a>;
  277. <a name="l00265"></a>00265 }
  278. <a name="l00266"></a>00266 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLocation( <a class="code" href="structc_location.html">cLocation</a> *pcLoc )
  279. <a name="l00267"></a>00267 {
  280. <a name="l00268"></a>00268 m_Location.m_dwLandBlock = pcLoc-&gt;m_dwLandBlock;
  281. <a name="l00269"></a>00269 m_Location.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a>;
  282. <a name="l00270"></a>00270 m_Location.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> = pcLoc-&gt;<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a>;
  283. <a name="l00271"></a>00271 m_Location.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a>;
  284. <a name="l00272"></a>00272 m_Location.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a>;
  285. <a name="l00273"></a>00273 m_Location.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a>;
  286. <a name="l00274"></a>00274 m_Location.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a> = pcLoc-&gt;<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a>;
  287. <a name="l00275"></a>00275 m_Location.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a>;
  288. <a name="l00276"></a>00276 }
  289. <a name="l00277"></a>00277 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLocation( DWORD dwLandBlock, <span class="keywordtype">float</span> flX, <span class="keywordtype">float</span> flY, <span class="keywordtype">float</span> flZ, <span class="keywordtype">float</span> flA, <span class="keywordtype">float</span> flW )
  290. <a name="l00278"></a>00278 {
  291. <a name="l00279"></a>00279 m_Location.m_dwLandBlock = dwLandBlock;
  292. <a name="l00280"></a>00280 m_Location.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> = flX;
  293. <a name="l00281"></a>00281 m_Location.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> = flY;
  294. <a name="l00282"></a>00282 m_Location.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> = flZ;
  295. <a name="l00283"></a>00283 m_Location.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a> = flA;
  296. <a name="l00284"></a>00284 m_Location.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a> = flW;
  297. <a name="l00285"></a>00285 }
  298. <a name="l00286"></a>00286
  299. <a name="l00287"></a>00287 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetSpawnLoc( <a class="code" href="structc_location.html">cLocation</a> *pcLoc )
  300. <a name="l00288"></a>00288 {
  301. <a name="l00289"></a>00289 m_SpawnLoc.m_dwLandBlock = pcLoc-&gt;m_dwLandBlock;
  302. <a name="l00290"></a>00290 m_SpawnLoc.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a>;
  303. <a name="l00291"></a>00291 m_SpawnLoc.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> = pcLoc-&gt;<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a>;
  304. <a name="l00292"></a>00292 m_SpawnLoc.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a>;
  305. <a name="l00293"></a>00293 m_SpawnLoc.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a>;
  306. <a name="l00294"></a>00294 m_SpawnLoc.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a>;
  307. <a name="l00295"></a>00295 m_SpawnLoc.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a> = pcLoc-&gt;<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a>;
  308. <a name="l00296"></a>00296 m_SpawnLoc.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a>;
  309. <a name="l00297"></a>00297 }
  310. <a name="l00298"></a>00298 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetSpawnLoc( <a class="code" href="structc_location.html">cLocation</a>&amp; Loc )
  311. <a name="l00299"></a>00299 {
  312. <a name="l00300"></a>00300 m_SpawnLoc.m_dwLandBlock = Loc.m_dwLandBlock;
  313. <a name="l00301"></a>00301 m_SpawnLoc.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> = Loc.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a>;
  314. <a name="l00302"></a>00302 m_SpawnLoc.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> = Loc.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a>;
  315. <a name="l00303"></a>00303 m_SpawnLoc.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> = Loc.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a>;
  316. <a name="l00304"></a>00304 m_SpawnLoc.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a> = Loc.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a>;
  317. <a name="l00305"></a>00305 m_SpawnLoc.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a> = Loc.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a>;
  318. <a name="l00306"></a>00306 m_SpawnLoc.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a> = Loc.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a>;
  319. <a name="l00307"></a>00307 m_SpawnLoc.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a> = Loc.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a>;
  320. <a name="l00308"></a>00308 }
  321. <a name="l00309"></a>00309
  322. <a name="l00310"></a>00310 <span class="comment">//Cube: No longer need this.</span>
  323. <a name="l00311"></a>00311 <span class="comment">//cItemModels *cfim;</span>
  324. <a name="l00312"></a>00312
  325. <a name="l00313"></a>00313 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> LocationPacket ( );
  326. <a name="l00314"></a>00314 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> CreatePacket ( ) = 0;
  327. <a name="l00315"></a>00315 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed );
  328. <a name="l00316"></a>00316 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed, BYTE bActivity );
  329. <a name="l00317"></a>00317 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Assess ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser ){}
  330. <a name="l00318"></a>00318 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Action ( <a class="code" href="classc_client.html">cClient</a> *pcActioner ) = 0;
  331. <a name="l00319"></a>00319 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Attack ( <a class="code" href="classc_client.html">cClient</a> *pcAttacker, <span class="keywordtype">float</span> flDamageSlider, DWORD F7B0Sequence );
  332. <a name="l00320"></a>00320 <span class="keyword">virtual</span> <span class="keywordtype">void</span> SpellAttack ( <a class="code" href="classc_client.html">cClient</a> *pcAttacker, <a class="code" href="classc_object.html">cObject</a> *pcWarSpell, DWORD F7B0Sequence );
  333. <a name="l00321"></a>00321 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> AdjustBar ( DWORD dwGUID, DWORD F7B0Sequence );
  334. <a name="l00322"></a>00322
  335. <a name="l00323"></a>00323 <span class="comment">// Remove the object</span>
  336. <a name="l00324"></a>00324 <span class="keyword">static</span> <a class="code" href="classc_message.html">cMessage</a> RemoveObj ( DWORD dwGUID );
  337. <a name="l00325"></a>00325
  338. <a name="l00326"></a>00326 <span class="comment">//Enters/exits combat stance</span>
  339. <a name="l00327"></a>00327 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> ChangeCombatMode( <span class="keywordtype">bool</span> fMode );
  340. <a name="l00328"></a>00328 <span class="comment">// Chooses a combat animation</span>
  341. <a name="l00329"></a>00329 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> CombatAnimation ( DWORD dwTarget, WORD wAttackAnim );
  342. <a name="l00330"></a>00330 <span class="comment">// Calculates objects melee damage</span>
  343. <a name="l00331"></a>00331 <span class="keyword">virtual</span> DWORD CalculateDamage ( <span class="keywordtype">int</span> strength, <span class="keywordtype">float</span> flPower, <span class="keywordtype">float</span> flResistance );
  344. <a name="l00332"></a>00332 <span class="comment">// Turn to Face Target</span>
  345. <a name="l00333"></a>00333 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> TurnToTarget ( <span class="keywordtype">float</span> flHeading, DWORD dwTargetGUID );
  346. <a name="l00334"></a>00334 <span class="keyword">virtual</span> <span class="keywordtype">float</span> GetRange ( DWORD dwTargetLandblock, <span class="keywordtype">float</span> flTarX, <span class="keywordtype">float</span> flTarY, <span class="keywordtype">float</span> flTarZ);
  347. <a name="l00335"></a>00335 <span class="keyword">virtual</span> <span class="keywordtype">float</span> GetHeadingTarget( DWORD dwTargetLandblock, <span class="keywordtype">float</span> flTarX, <span class="keywordtype">float</span> flTarY, <span class="keywordtype">float</span> flTarZ );
  348. <a name="l00336"></a>00336 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> MoveToTarget ( <a class="code" href="classc_client.html">cClient</a> *pcWho );
  349. <a name="l00337"></a>00337 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> MoveTarget ( <a class="code" href="classc_client.html">cClient</a> *pcWho );
  350. <a name="l00338"></a>00338 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> ReturnToSpawn ( );
  351. <a name="l00339"></a>00339 <span class="keyword">virtual</span> <span class="keywordtype">void</span> ReSpawn ( <a class="code" href="classc_object.html">cObject</a> *pcObject );
  352. <a name="l00340"></a>00340 <span class="keyword">virtual</span> <a class="code" href="structc_location.html">cLocation</a> CoordLoc ( <span class="keywordtype">float</span> dNS, <span class="keywordtype">float</span> dEW );
  353. <a name="l00341"></a>00341
  354. <a name="l00342"></a>00342 <a class="code" href="structc_location.html">cLocation</a> EstimateLoc ( <span class="keywordtype">float</span> flHeading, <span class="keywordtype">float</span> flSpeed, <span class="keywordtype">float</span> flDistToTarget,<span class="keywordtype">float</span> flTime );
  355. <a name="l00343"></a>00343 <span class="keyword">virtual</span> <a class="code" href="classc_message.html">cMessage</a> SetPosition ( );
  356. <a name="l00344"></a>00344
  357. <a name="l00345"></a>00345 <span class="comment">// virtual void Split ( cClient* who, DWORD item_guid, DWORD slot, DWORD value );</span>
  358. <a name="l00346"></a>00346
  359. <a name="l00347"></a>00347 <span class="keyword">virtual</span> <span class="keyword">inline</span> DWORD GetMonsterModelID( )
  360. <a name="l00348"></a>00348 {
  361. <a name="l00349"></a>00349 <span class="keywordflow">return</span> m_dwMonsterModel;
  362. <a name="l00350"></a>00350 }
  363. <a name="l00351"></a>00351
  364. <a name="l00352"></a>00352 <span class="keyword">virtual</span> <span class="keyword">inline</span> DWORD GetItemModelID()
  365. <a name="l00353"></a>00353 {
  366. <a name="l00354"></a>00354 <span class="keywordflow">return</span> m_dwItemModelID;
  367. <a name="l00355"></a>00355 }
  368. <a name="l00356"></a>00356
  369. <a name="l00357"></a>00357 <span class="comment">// Returns the GUID of the object</span>
  370. <a name="l00358"></a>00358 <span class="keyword">inline</span> DWORD GetGUID()
  371. <a name="l00359"></a>00359 {
  372. <a name="l00360"></a>00360 <span class="keywordflow">return</span> m_dwGUID;
  373. <a name="l00361"></a>00361 }
  374. <a name="l00362"></a>00362
  375. <a name="l00363"></a>00363 <span class="keyword">inline</span> DWORD SetGUID(<a class="code" href="classc_object.html">cObject</a> *pcObj, DWORD nGUID)
  376. <a name="l00364"></a>00364 {
  377. <a name="l00365"></a>00365 pcObj-&gt;m_dwGUID = nGUID;
  378. <a name="l00366"></a>00366 <span class="keywordflow">return</span> pcObj-&gt;m_dwGUID;
  379. <a name="l00367"></a>00367 }
  380. <a name="l00368"></a>00368
  381. <a name="l00369"></a>00369 <span class="comment">// Returns Container ID</span>
  382. <a name="l00370"></a>00370 <span class="keyword">inline</span> DWORD GetContainer(DWORD dwGUID)
  383. <a name="l00371"></a>00371 {
  384. <a name="l00372"></a>00372 <span class="keywordflow">return</span> m_dwContainer;
  385. <a name="l00373"></a>00373 }
  386. <a name="l00374"></a>00374 <span class="comment">// Object name</span>
  387. <a name="l00375"></a>00375 <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *Name()
  388. <a name="l00376"></a>00376 {
  389. <a name="l00377"></a>00377 <span class="keywordflow">return</span> m_strName.c_str();
  390. <a name="l00378"></a>00378 }
  391. <a name="l00379"></a>00379
  392. <a name="l00380"></a>00380 <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *TokenlessName()
  393. <a name="l00381"></a>00381 {
  394. <a name="l00382"></a>00382 <span class="keyword">const</span> <span class="keywordtype">char</span> *szName = m_strName.c_str();
  395. <a name="l00383"></a>00383
  396. <a name="l00384"></a>00384 <span class="keywordflow">if</span> ( *szName == <span class="charliteral">&#39;+&#39;</span> ) <span class="keywordflow">return</span> szName + 1;
  397. <a name="l00385"></a>00385 <span class="keywordflow">else</span> <span class="keywordflow">return</span> szName;
  398. <a name="l00386"></a>00386 }
  399. <a name="l00387"></a>00387
  400. <a name="l00388"></a>00388
  401. <a name="l00389"></a>00389 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetStatic( BOOL state )
  402. <a name="l00390"></a>00390 {
  403. <a name="l00391"></a>00391 m_fStatic = state;
  404. <a name="l00392"></a>00392 }
  405. <a name="l00393"></a>00393
  406. <a name="l00394"></a>00394 <span class="keyword">inline</span> BOOL IsStatic()
  407. <a name="l00395"></a>00395 {
  408. <a name="l00396"></a>00396 <span class="keywordflow">return</span> m_fStatic;
  409. <a name="l00397"></a>00397 }
  410. <a name="l00398"></a>00398
  411. <a name="l00399"></a>00399 <span class="comment">/*</span>
  412. <a name="l00400"></a>00400 <span class="comment"> Cubem0j0: Had to add this. Objects need a type. Before I added this when you used an object it</span>
  413. <a name="l00401"></a>00401 <span class="comment"> looked for the landblock info. If it was not there (that item was in a container) then the program </span>
  414. <a name="l00402"></a>00402 <span class="comment"> crashed.</span>
  415. <a name="l00403"></a>00403 <span class="comment"></span>
  416. <a name="l00404"></a>00404 <span class="comment"> Object types:</span>
  417. <a name="l00405"></a>00405 <span class="comment"> 2 = Stamina food</span>
  418. <a name="l00406"></a>00406 <span class="comment"></span>
  419. <a name="l00407"></a>00407 <span class="comment"> */</span>
  420. <a name="l00408"></a>00408 <span class="keywordtype">void</span> SetType(<span class="keywordtype">int</span> type)
  421. <a name="l00409"></a>00409 {
  422. <a name="l00410"></a>00410 item_type = type;
  423. <a name="l00411"></a>00411 }
  424. <a name="l00412"></a>00412 <span class="keywordtype">int</span> GetType()
  425. <a name="l00413"></a>00413 {
  426. <a name="l00414"></a>00414 <span class="keywordflow">return</span> item_type;
  427. <a name="l00415"></a>00415 }
  428. <a name="l00416"></a>00416
  429. <a name="l00417"></a>00417 <span class="comment">//Cubem0j0: Adding a way to set a state on an object..currently used in corpses</span>
  430. <a name="l00418"></a>00418 <span class="keywordtype">void</span> SetState(<span class="keywordtype">int</span> state)
  431. <a name="l00419"></a>00419 {
  432. <a name="l00420"></a>00420 m_wState = state;
  433. <a name="l00421"></a>00421 }
  434. <a name="l00422"></a>00422 <span class="keywordtype">int</span> GetState()
  435. <a name="l00423"></a>00423 {
  436. <a name="l00424"></a>00424 <span class="keywordflow">return</span> m_wState;
  437. <a name="l00425"></a>00425 }
  438. <a name="l00426"></a>00426
  439. <a name="l00427"></a>00427 <a class="code" href="structc_location.html">cLocation</a> m_Location;
  440. <a name="l00428"></a>00428 <a class="code" href="structc_location.html">cLocation</a> m_SpawnLoc;
  441. <a name="l00429"></a>00429
  442. <a name="l00430"></a>00430 BYTE m_bInventorySequence;
  443. <a name="l00431"></a>00431 WORD m_wPositionSequence;
  444. <a name="l00432"></a>00432 WORD m_wNumLogins;
  445. <a name="l00433"></a>00433 WORD m_wNumPortals;
  446. <a name="l00434"></a>00434 <span class="keywordtype">int</span> m_fEquipped;
  447. <a name="l00435"></a>00435 BOOL m_fIsOwned;
  448. <a name="l00436"></a>00436 BOOL m_fIsCasting;
  449. <a name="l00437"></a>00437 DWORD m_dwContainer;
  450. <a name="l00438"></a>00438 WORD m_wModelSeq;
  451. <a name="l00439"></a>00439 BYTE m_bWearSeq;
  452. <a name="l00440"></a>00440 WORD m_wNumEquips;
  453. <a name="l00441"></a>00441 WORD m_wState;
  454. <a name="l00442"></a>00442 WORD m_wNumAnims;
  455. <a name="l00443"></a>00443 DWORD m_dwDoorState;
  456. <a name="l00444"></a>00444 WORD m_wPortalMode;
  457. <a name="l00445"></a>00445 DWORD m_dwObjectFlags1;
  458. <a name="l00446"></a>00446 DWORD m_dwObjectFlags2;
  459. <a name="l00447"></a>00447 <a class="code" href="structc_location.html">cLocation</a> m_LSLoc;
  460. <a name="l00448"></a>00448 <a class="code" href="structc_location.html">cLocation</a> m_HRLoc;
  461. <a name="l00449"></a>00449 std::string m_strName;
  462. <a name="l00450"></a>00450 std::string m_strDescription;
  463. <a name="l00451"></a>00451 WORD m_wCurAnim;
  464. <a name="l00452"></a>00452 WORD m_wMeleeSequence;
  465. <a name="l00453"></a>00453 DWORD m_dwF7B0Sequence;
  466. <a name="l00454"></a>00454 DWORD m_dwConfirmSequence;
  467. <a name="l00455"></a>00455 BYTE m_bStatSequence;
  468. <a name="l00456"></a>00456 <span class="keywordtype">bool</span> m_fCombatMode;
  469. <a name="l00457"></a>00457 BYTE m_bIdleAnim;
  470. <a name="l00458"></a>00458 <a class="code" href="structc_velocity.html">cVelocity</a> m_Velocity;
  471. <a name="l00459"></a>00459 DWORD m_dwReSpawn;
  472. <a name="l00460"></a>00460 DWORD m_dwDecay;
  473. <a name="l00461"></a>00461 DWORD m_dwChase;
  474. <a name="l00462"></a>00462 DWORD m_dwInfluence;
  475. <a name="l00463"></a>00463 DWORD m_dwExp_Value;
  476. <a name="l00464"></a>00464 <span class="keywordtype">bool</span> m_fDeadOrAlive;
  477. <a name="l00465"></a>00465 DWORD m_dwSpellModel;
  478. <a name="l00466"></a>00466 DWORD m_dwSpellID;
  479. <a name="l00467"></a>00467 DWORD m_dwFlagCount;
  480. <a name="l00468"></a>00468 <span class="keywordtype">int</span> item_type;
  481. <a name="l00469"></a>00469 WORD m_wUses;
  482. <a name="l00470"></a>00470 DWORD m_dwItemModelID;
  483. <a name="l00471"></a>00471 <span class="keywordtype">float</span> m_fApproachDistance;
  484. <a name="l00472"></a>00472 <span class="comment">// DWORD m_dwHouseType;</span>
  485. <a name="l00473"></a>00473 DWORD m_dwHouseGUID;
  486. <a name="l00474"></a>00474 DWORD m_dwOwnerID;
  487. <a name="l00475"></a>00475 DWORD m_dwQuantity;
  488. <a name="l00476"></a>00476
  489. <a name="l00477"></a>00477 <span class="comment">//k109: Item specific stuff</span>
  490. <a name="l00478"></a>00478 <span class="comment">//Food</span>
  491. <a name="l00479"></a>00479 DWORD m_dwVitalID;
  492. <a name="l00480"></a>00480 DWORD m_dwAmount;
  493. <a name="l00481"></a>00481 <span class="comment">//Armor</span>
  494. <a name="l00482"></a>00482 DWORD m_dwActivate_Req_SkillID;
  495. <a name="l00483"></a>00483 DWORD m_dwActivate_Req_Skill_Level;
  496. <a name="l00484"></a>00484 DWORD m_dwArmor_Level;
  497. <a name="l00485"></a>00485 <span class="keywordtype">float</span> m_fProt_Slashing;
  498. <a name="l00486"></a>00486 <span class="keywordtype">float</span> m_fProt_Piercing;
  499. <a name="l00487"></a>00487 <span class="keywordtype">float</span> m_fProt_Bludgeon;
  500. <a name="l00488"></a>00488 <span class="keywordtype">float</span> m_fProt_Fire;
  501. <a name="l00489"></a>00489 <span class="keywordtype">float</span> m_fProt_Cold;
  502. <a name="l00490"></a>00490 <span class="keywordtype">float</span> m_fProt_Acid;
  503. <a name="l00491"></a>00491 <span class="keywordtype">float</span> m_fProt_Electric;
  504. <a name="l00492"></a>00492 <span class="comment">//Pyreals</span>
  505. <a name="l00493"></a>00493 DWORD m_dwValue;
  506. <a name="l00494"></a>00494 WORD m_wStack;
  507. <a name="l00495"></a>00495 WORD m_wStackLimit;
  508. <a name="l00496"></a>00496
  509. <a name="l00497"></a>00497 <span class="comment">/* Palettes are unique to each apparel item */</span>
  510. <a name="l00498"></a>00498 <span class="comment">//(Texture and model information is constant and populated to the item model)</span>
  511. <a name="l00499"></a>00499 <span class="comment">// Item palette vectors</span>
  512. <a name="l00500"></a>00500 <span class="keywordtype">int</span> m_intColor;
  513. <a name="l00501"></a>00501
  514. <a name="l00502"></a>00502 BYTE m_bPaletteChange;
  515. <a name="l00503"></a>00503 DWORD m_wPaletteVector;
  516. <a name="l00504"></a>00504 <a class="code" href="structs_palette_change.html">sPaletteChange</a> m_vectorPal[255];
  517. <a name="l00505"></a>00505 <span class="comment">// Item clothing palette vectors</span>
  518. <a name="l00506"></a>00506 BYTE m_bWearPaletteChange;
  519. <a name="l00507"></a>00507 DWORD m_wWearPaletteVector;
  520. <a name="l00508"></a>00508 <a class="code" href="structs_palette_change.html">sPaletteChange</a> m_WearVectorPal[255];
  521. <a name="l00509"></a>00509
  522. <a name="l00510"></a>00510 <span class="comment">//the object&#39;s enchantment list</span>
  523. <a name="l00511"></a>00511 std::list&lt; cEnchantment * &gt; m_lstEnchantments;
  524. <a name="l00512"></a>00512
  525. <a name="l00513"></a>00513 <span class="keyword">protected</span>:
  526. <a name="l00514"></a>00514 DWORD m_dwGUID;
  527. <a name="l00515"></a>00515 DWORD m_dwModel;
  528. <a name="l00516"></a>00516 WORD m_wIcon;
  529. <a name="l00517"></a>00517 BOOL m_fSelectable;
  530. <a name="l00518"></a>00518 <span class="keywordtype">float</span> m_flScale;
  531. <a name="l00519"></a>00519 BOOL m_fStatic;
  532. <a name="l00520"></a>00520 DWORD m_dwMode;
  533. <a name="l00521"></a>00521 DWORD m_dwMonsterModel;
  534. <a name="l00522"></a>00522 };
  535. <a name="l00523"></a>00523
  536. <a name="l00524"></a><a class="code" href="classc_biotic.html">00524</a> <span class="keyword">class </span><a class="code" href="classc_biotic.html">cBiotic</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  537. <a name="l00525"></a>00525 {
  538. <a name="l00526"></a>00526 <span class="keyword">public</span>:
  539. <a name="l00527"></a>00527 <a class="code" href="classc_biotic.html">cBiotic</a> ( <a class="code" href="structc_location.html">cLocation</a> *pcLoc )
  540. <a name="l00528"></a>00528 : <a class="code" href="classc_object.html#ae98752182985569372cc076132432d78">cObject</a>( pcLoc )
  541. <a name="l00529"></a>00529 {
  542. <a name="l00530"></a>00530 m_bInventorySequence = -1;
  543. <a name="l00531"></a>00531 m_wPositionSequence = 0;
  544. <a name="l00532"></a>00532 m_wNumPortals = 0;
  545. <a name="l00533"></a>00533 m_wNumLogins = 0x3C;
  546. <a name="l00534"></a>00534 m_fIsOwned = FALSE;
  547. <a name="l00535"></a>00535 }
  548. <a name="l00536"></a>00536
  549. <a name="l00537"></a>00537 <a class="code" href="classc_biotic.html">cBiotic</a>( )
  550. <a name="l00538"></a>00538 {
  551. <a name="l00539"></a>00539 m_bInventorySequence = -1;
  552. <a name="l00540"></a>00540 m_wPositionSequence = 0;
  553. <a name="l00541"></a>00541 m_wNumPortals = 0;
  554. <a name="l00542"></a>00542 m_wNumLogins = 0x3C;
  555. <a name="l00543"></a>00543 }
  556. <a name="l00544"></a>00544 <span class="keyword">virtual</span> ~<a class="code" href="classc_biotic.html">cBiotic</a>( ) {}
  557. <a name="l00545"></a>00545 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Action( <a class="code" href="classc_client.html">cClient</a> *pcClient ) {}
  558. <a name="l00546"></a>00546
  559. <a name="l00547"></a>00547 <span class="keyword">protected</span>:
  560. <a name="l00548"></a>00548 <a class="code" href="structc_stats.html">cStats</a> m_Stats;
  561. <a name="l00549"></a>00549 };
  562. <a name="l00550"></a>00550
  563. <a name="l00551"></a>00551 <span class="preprocessor">#define NPCMODE_SINGLE 1</span>
  564. <a name="l00552"></a>00552 <span class="preprocessor"></span><span class="preprocessor">#define NPCMODE_MULTI 2</span>
  565. <a name="l00553"></a>00553 <span class="preprocessor"></span><span class="preprocessor">#define NPCMODE_RANDOM 3</span>
  566. <a name="l00554"></a>00554 <span class="preprocessor"></span>
  567. <a name="l00555"></a><a class="code" href="classc_n_p_c.html">00555</a> <span class="keyword">class </span><a class="code" href="classc_n_p_c.html">cNPC</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  568. <a name="l00556"></a>00556 {
  569. <a name="l00557"></a>00557 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  570. <a name="l00558"></a>00558
  571. <a name="l00559"></a>00559 <span class="keyword">public</span>:
  572. <a name="l00560"></a>00560 <a class="code" href="classc_n_p_c.html">cNPC</a>();
  573. <a name="l00566"></a>00566 <a class="code" href="classc_n_p_c.html">cNPC</a>(DWORD dwGUID, DWORD dwNPCModelID, <span class="keywordtype">char</span> *szName, WORD wGender, <a class="code" href="structc_location.html">cLocation</a> *pcLoc = NULL, DWORD dwSellCategories = 0x00000000 );
  574. <a name="l00567"></a>00567
  575. <a name="l00568"></a>00568 <span class="keywordtype">void</span> <a class="code" href="classc_n_p_c.html#aff84ba84869ebc47b6d727d0b15f4852">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  576. <a name="l00569"></a>00569 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_n_p_c.html#a67987a957464ec75a37695730392ba9a">CreatePacket</a> ( );
  577. <a name="l00570"></a>00570 <span class="keywordtype">void</span> <a class="code" href="classc_n_p_c.html#aa7d2b201f5748dde41e4efa34a50bd80">Action</a> (<a class="code" href="classc_client.html">cClient</a>* who);
  578. <a name="l00571"></a>00571 <span class="comment">//Cube: Give item, for quests, etc.</span>
  579. <a name="l00572"></a>00572 <span class="keywordtype">void</span> <a class="code" href="classc_n_p_c.html#a4bdcca339e30885b30ed03831045e6df">GiveItem</a> (<a class="code" href="classc_client.html">cClient</a> *who, DWORD itemid, DWORD npcid);
  580. <a name="l00573"></a>00573 <span class="comment">//Cube: Buy Item from Vendor</span>
  581. <a name="l00574"></a>00574 <span class="keywordtype">void</span> <a class="code" href="classc_n_p_c.html#ac00059ece799718927f3554821bd490e">BuyItem</a> (<a class="code" href="classc_client.html">cClient</a> *who, DWORD VendorID, DWORD ItemID);
  582. <a name="l00575"></a>00575
  583. <a name="l00576"></a>00576 <span class="comment">//Cube: Splitting out the Approach Vendor message into its own function</span>
  584. <a name="l00577"></a>00577 <span class="keywordtype">void</span> <a class="code" href="classc_n_p_c.html#afc4acca273355983b86d63a38aa70cda">ApproachVendor</a> (<a class="code" href="classc_client.html">cClient</a> *who);
  585. <a name="l00578"></a>00578
  586. <a name="l00579"></a>00579 DWORD m_dwNPCModelID;
  587. <a name="l00580"></a>00580
  588. <a name="l00581"></a>00581 <span class="comment">//Cube: This is to add digit grouping to experience award messages. There is probably a better way of doing this :p</span>
  589. <a name="l00582"></a>00582 <span class="comment">/*</span>
  590. <a name="l00583"></a>00583 <span class="comment"> char* c_exp_reward(DWORD exp_r)</span>
  591. <a name="l00584"></a>00584 <span class="comment"> {</span>
  592. <a name="l00585"></a>00585 <span class="comment"> //Set up </span>
  593. <a name="l00586"></a>00586 <span class="comment"> char message[30];</span>
  594. <a name="l00587"></a>00587 <span class="comment"> char comma[] = &quot;,&quot;;</span>
  595. <a name="l00588"></a>00588 <span class="comment"> </span>
  596. <a name="l00589"></a>00589 <span class="comment"> itoa(exp_r,message,10);</span>
  597. <a name="l00590"></a>00590 <span class="comment"> </span>
  598. <a name="l00591"></a>00591 <span class="comment"> if (strlen(message) &gt; 3 &amp;&amp; strlen(message) &lt; 6)</span>
  599. <a name="l00592"></a>00592 <span class="comment"> {</span>
  600. <a name="l00593"></a>00593 <span class="comment"> //copy a comma into the current string</span>
  601. <a name="l00594"></a>00594 <span class="comment"> memcpy(message,comma,1);</span>
  602. <a name="l00595"></a>00595 <span class="comment"> }</span>
  603. <a name="l00596"></a>00596 <span class="comment"> if (strlen(message) &gt; 6 &amp;&amp; strlen(message) &lt; 9)</span>
  604. <a name="l00597"></a>00597 <span class="comment"> {</span>
  605. <a name="l00598"></a>00598 <span class="comment"> memcpy(message,comma,1);</span>
  606. <a name="l00599"></a>00599 <span class="comment"> memcpy(message,comma,1);</span>
  607. <a name="l00600"></a>00600 <span class="comment"> }</span>
  608. <a name="l00601"></a>00601 <span class="comment"> if (strlen(message) &gt; 9)</span>
  609. <a name="l00602"></a>00602 <span class="comment"> {</span>
  610. <a name="l00603"></a>00603 <span class="comment"> memcpy(message,comma,1);</span>
  611. <a name="l00604"></a>00604 <span class="comment"> memcpy(message,comma,1);</span>
  612. <a name="l00605"></a>00605 <span class="comment"> memcpy(message,comma,1);</span>
  613. <a name="l00606"></a>00606 <span class="comment"> }</span>
  614. <a name="l00607"></a>00607 <span class="comment"> return message;</span>
  615. <a name="l00608"></a>00608 <span class="comment"> }</span>
  616. <a name="l00609"></a>00609 <span class="comment"> */</span>
  617. <a name="l00610"></a>00610
  618. <a name="l00611"></a>00611 <span class="keyword">virtual</span> ~<a class="code" href="classc_n_p_c.html">cNPC</a>( ) {}
  619. <a name="l00612"></a>00612 <span class="keywordtype">void</span> SetMode(DWORD mode)
  620. <a name="l00613"></a>00613 {
  621. <a name="l00614"></a>00614 m_dwMode = mode;
  622. <a name="l00615"></a>00615 }
  623. <a name="l00616"></a>00616 <span class="keywordtype">void</span> SetModel(WORD wNPCModel)
  624. <a name="l00617"></a>00617 {
  625. <a name="l00618"></a>00618 m_wNPCModel = wNPCModel;
  626. <a name="l00619"></a>00619 }
  627. <a name="l00620"></a>00620 <span class="keywordtype">void</span> SetNumMessages(<span class="keywordtype">int</span> num)
  628. <a name="l00621"></a>00621 {
  629. <a name="l00622"></a>00622 iNumMessages = num;
  630. <a name="l00623"></a>00623 }
  631. <a name="l00624"></a>00624 <span class="keywordtype">int</span> GetNumMessages()
  632. <a name="l00625"></a>00625 {
  633. <a name="l00626"></a>00626 <span class="keywordflow">return</span> iNumMessages;
  634. <a name="l00627"></a>00627 }
  635. <a name="l00628"></a>00628 DWORD GetMode()
  636. <a name="l00629"></a>00629 {
  637. <a name="l00630"></a>00630 <span class="keywordflow">return</span> m_dwMode;
  638. <a name="l00631"></a>00631 }
  639. <a name="l00632"></a>00632
  640. <a name="l00633"></a>00633 <span class="comment">//Cubem0j0: Is NPC a vendor?</span>
  641. <a name="l00634"></a>00634 <span class="keywordtype">void</span> SetIsVendor(<span class="keywordtype">int</span> vend)
  642. <a name="l00635"></a>00635 {
  643. <a name="l00636"></a>00636 IsVendor = vend;
  644. <a name="l00637"></a>00637 }
  645. <a name="l00638"></a>00638 <span class="keywordtype">int</span> GetIsVendor()
  646. <a name="l00639"></a>00639 {
  647. <a name="l00640"></a>00640 <span class="keywordflow">return</span> IsVendor;
  648. <a name="l00641"></a>00641 }
  649. <a name="l00642"></a>00642
  650. <a name="l00643"></a>00643 <span class="comment">//Cubem0j0: Get/Set npc_id variable</span>
  651. <a name="l00644"></a>00644 <span class="keywordtype">void</span> Set_npc_id(<span class="keywordtype">int</span> npcid)
  652. <a name="l00645"></a>00645 {
  653. <a name="l00646"></a>00646 npc_id = npcid;
  654. <a name="l00647"></a>00647 }
  655. <a name="l00648"></a>00648 <span class="keywordtype">int</span> Get_npc_id()
  656. <a name="l00649"></a>00649 {
  657. <a name="l00650"></a>00650 <span class="keywordflow">return</span> npc_id;
  658. <a name="l00651"></a>00651 }
  659. <a name="l00652"></a>00652
  660. <a name="l00653"></a>00653 <span class="keywordtype">void</span> SetString(std::string str,<span class="keywordtype">int</span> index)
  661. <a name="l00654"></a>00654 {
  662. <a name="l00655"></a>00655 <span class="keywordflow">if</span>(index&lt;0||index&gt;15)
  663. <a name="l00656"></a>00656 {
  664. <a name="l00657"></a>00657 <span class="keywordflow">return</span>;
  665. <a name="l00658"></a>00658 }
  666. <a name="l00659"></a>00659 vsMessages[index] = str;
  667. <a name="l00660"></a>00660 }
  668. <a name="l00661"></a>00661
  669. <a name="l00662"></a>00662 <span class="comment">//Cubem0j0: Need a way to find the GUIDs of items in a vendors inventory</span>
  670. <a name="l00663"></a>00663 <span class="comment">// inline void SetVendorListID(DWORD ID)</span>
  671. <a name="l00664"></a>00664 <span class="comment">// {</span>
  672. <a name="l00665"></a>00665 <span class="comment">// vendor_item_ids.push_back(ID);</span>
  673. <a name="l00666"></a>00666 <span class="comment">// }</span>
  674. <a name="l00667"></a>00667
  675. <a name="l00668"></a>00668 <span class="comment">//CubeM0j0: Inventory stuff...</span>
  676. <a name="l00669"></a>00669
  677. <a name="l00670"></a>00670 <span class="keyword">inline</span> <span class="keywordtype">void</span> AddInventory( <a class="code" href="classc_object.html">cObject</a> *pcObject )
  678. <a name="l00671"></a>00671 {
  679. <a name="l00672"></a>00672 m_NPC_lstInventory.push_back( pcObject );
  680. <a name="l00673"></a>00673 pcObject-&gt;m_fIsOwned = TRUE;
  681. <a name="l00674"></a>00674 pcObject-&gt;m_dwContainer = m_dwGUID;
  682. <a name="l00675"></a>00675 }
  683. <a name="l00676"></a>00676
  684. <a name="l00677"></a>00677 <span class="keyword">inline</span> <span class="keywordtype">void</span> RemoveInventory( <a class="code" href="classc_object.html">cObject</a> *pcObject )
  685. <a name="l00678"></a>00678 {
  686. <a name="l00679"></a>00679 iterObject_lst itObject = std::find( m_NPC_lstInventory.begin( ), m_NPC_lstInventory.end( ), pcObject );
  687. <a name="l00680"></a>00680
  688. <a name="l00681"></a>00681 <span class="keywordflow">if</span> ( itObject != m_NPC_lstInventory.end( ) )
  689. <a name="l00682"></a>00682 m_NPC_lstInventory.erase( itObject );
  690. <a name="l00683"></a>00683 pcObject-&gt;m_fIsOwned = FALSE;
  691. <a name="l00684"></a>00684 pcObject-&gt;m_dwContainer = NULL;
  692. <a name="l00685"></a>00685 }
  693. <a name="l00686"></a>00686
  694. <a name="l00687"></a>00687 <span class="keyword">inline</span> <a class="code" href="classc_object.html">cObject</a> *FindInventory( DWORD dwGUID )
  695. <a name="l00688"></a>00688 {
  696. <a name="l00689"></a>00689 <span class="keywordflow">for</span> ( iterObject_lst itObject = m_NPC_lstInventory.begin( ); itObject != m_NPC_lstInventory.end( ); ++itObject )
  697. <a name="l00690"></a>00690 {
  698. <a name="l00691"></a>00691 <span class="keywordflow">if</span> ( dwGUID == (*itObject)-&gt;GetGUID( ) )
  699. <a name="l00692"></a>00692 <span class="keywordflow">return</span> *itObject;
  700. <a name="l00693"></a>00693 }
  701. <a name="l00694"></a>00694 <span class="keywordflow">return</span> NULL;
  702. <a name="l00695"></a>00695 }
  703. <a name="l00696"></a>00696
  704. <a name="l00697"></a>00697 <span class="keyword">inline</span> <span class="keywordtype">void</span> DeleteFromInventory( <a class="code" href="classc_object.html">cObject</a> *pcObject )
  705. <a name="l00698"></a>00698 {
  706. <a name="l00699"></a>00699 iterObject_lst itObject = std::find( m_NPC_lstInventory.begin( ), m_NPC_lstInventory.end( ), pcObject );
  707. <a name="l00700"></a>00700
  708. <a name="l00701"></a>00701 <span class="keywordflow">if</span> ( itObject != m_NPC_lstInventory.end( ) )
  709. <a name="l00702"></a>00702 m_NPC_lstInventory.erase( itObject );
  710. <a name="l00703"></a>00703 }
  711. <a name="l00704"></a>00704
  712. <a name="l00705"></a>00705 <a class="code" href="structc_obj_stats.html">cObjStats</a> m_NPCStats;
  713. <a name="l00706"></a>00706 DWORD m_qitem_id1;
  714. <a name="l00707"></a>00707
  715. <a name="l00708"></a>00708 <span class="comment">//k109: Added this to try and get the items in vendor inventory to ID.</span>
  716. <a name="l00709"></a>00709 DWORD m_npc_target_id;
  717. <a name="l00710"></a>00710
  718. <a name="l00711"></a>00711 <span class="comment">//This may work better, an array for vendor item id&#39;s</span>
  719. <a name="l00712"></a>00712 DWORD v_guids[255];
  720. <a name="l00713"></a>00713 std::list&lt; cNPC * &gt; npc_ids;
  721. <a name="l00714"></a>00714
  722. <a name="l00715"></a>00715
  723. <a name="l00716"></a>00716 <span class="keyword">private</span>:
  724. <a name="l00717"></a>00717 <span class="keywordtype">int</span> npc_id;
  725. <a name="l00718"></a>00718 <span class="keywordtype">int</span> IsVendor;
  726. <a name="l00719"></a>00719 <span class="keywordtype">int</span> iNumMessages;
  727. <a name="l00720"></a>00720 WORD m_wGender;
  728. <a name="l00721"></a>00721 std::string vsMessages[32];
  729. <a name="l00722"></a>00722 DWORD m_dwMode;
  730. <a name="l00723"></a>00723 WORD m_wNPCModel;
  731. <a name="l00724"></a>00724 DWORD m_dwSellCategories;
  732. <a name="l00725"></a>00725
  733. <a name="l00726"></a>00726
  734. <a name="l00727"></a>00727 <span class="comment">//Cubem0j0: Add NPC Inventory...</span>
  735. <a name="l00728"></a>00728 std::list&lt; cObject * &gt; m_NPC_lstInventory;
  736. <a name="l00729"></a>00729
  737. <a name="l00730"></a>00730
  738. <a name="l00731"></a>00731 };
  739. <a name="l00732"></a>00732
  740. <a name="l00733"></a><a class="code" href="classc_lifestone.html">00733</a> <span class="keyword">class </span><a class="code" href="classc_lifestone.html">cLifestone</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  741. <a name="l00734"></a>00734 {
  742. <a name="l00735"></a>00735 <span class="keyword">public</span>:
  743. <a name="l00736"></a>00736 <a class="code" href="classc_lifestone.html">cLifestone</a>();
  744. <a name="l00742"></a>00742 <a class="code" href="classc_lifestone.html">cLifestone</a>(WORD type, DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDesc);
  745. <a name="l00743"></a>00743 <span class="keyword">virtual</span> ~<a class="code" href="classc_lifestone.html">cLifestone</a>() {}
  746. <a name="l00744"></a>00744
  747. <a name="l00745"></a>00745 <span class="keywordtype">void</span> <a class="code" href="classc_lifestone.html#ae254ffa5cf4e6a14e0dbd4ccf2e5790e">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  748. <a name="l00746"></a>00746 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_lifestone.html#a895eb40c60646cccf2d19e8442f2c555">CreatePacket</a>();
  749. <a name="l00747"></a>00747 <span class="keywordtype">void</span> <a class="code" href="classc_lifestone.html#a355b9a8eda41a0754743856504828590">Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  750. <a name="l00748"></a>00748 <span class="keywordtype">void</span> SetMode(DWORD mode)
  751. <a name="l00749"></a>00749 {
  752. <a name="l00750"></a>00750 m_dwMode = mode;
  753. <a name="l00751"></a>00751 }
  754. <a name="l00752"></a>00752 DWORD GetMode()
  755. <a name="l00753"></a>00753 {
  756. <a name="l00754"></a>00754 <span class="keywordflow">return</span> m_dwMode;
  757. <a name="l00755"></a>00755 }
  758. <a name="l00756"></a>00756 <span class="keywordtype">void</span> SetData(WORD wAnimConfig, WORD wSoundSet,WORD wModel,WORD wIcon, DWORD dwObject1, DWORD dwObject2)
  759. <a name="l00757"></a>00757 {
  760. <a name="l00758"></a>00758 m_wAnimConfig = wAnimConfig;
  761. <a name="l00759"></a>00759 m_wSoundSet = wSoundSet;
  762. <a name="l00760"></a>00760 m_wModel = wModel;
  763. <a name="l00761"></a>00761 m_wIcon = wIcon;
  764. <a name="l00762"></a>00762 m_dwObjectsFlag1 = dwObject1;
  765. <a name="l00763"></a>00763 m_dwObjectsFlag2 = dwObject2;
  766. <a name="l00764"></a>00764 }
  767. <a name="l00765"></a>00765 <span class="keyword">private</span>:
  768. <a name="l00766"></a>00766
  769. <a name="l00767"></a>00767 DWORD m_dwMode;
  770. <a name="l00768"></a>00768 DWORD m_dwType;
  771. <a name="l00769"></a>00769 WORD m_wModel;
  772. <a name="l00770"></a>00770 WORD m_wIcon;
  773. <a name="l00771"></a>00771 WORD m_wSoundSet;
  774. <a name="l00772"></a>00772 WORD m_wPortalMode;
  775. <a name="l00773"></a>00773 WORD m_wAnimConfig;
  776. <a name="l00774"></a>00774 DWORD m_dwObjectsFlag1;
  777. <a name="l00775"></a>00775 DWORD m_dwObjectsFlag2;
  778. <a name="l00776"></a>00776
  779. <a name="l00777"></a>00777 };
  780. <a name="l00778"></a>00778
  781. <a name="l00779"></a><a class="code" href="classc_portal.html">00779</a> <span class="keyword">class </span><a class="code" href="classc_portal.html">cPortal</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  782. <a name="l00780"></a>00780 {
  783. <a name="l00781"></a>00781 <span class="keyword">public</span>:
  784. <a name="l00782"></a>00782 <a class="code" href="classc_portal.html">cPortal</a> ( );
  785. <a name="l00788"></a>00788 <a class="code" href="classc_portal.html">cPortal</a> ( DWORD dwGUID, DWORD dwColor, <a class="code" href="structc_location.html">cLocation</a> *Loc, <a class="code" href="structc_location.html">cLocation</a> *destLoc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDescription, DWORD dwLowerRestrict, DWORD dwHigherRestrict );
  786. <a name="l00789"></a>00789 <span class="comment">//cPortal ( DWORD dwGUID, cLocation&amp; Loc, DOUBLE dNS, DOUBLE dEW, char *szName, DWORD dwLowerRestrict, DWORD dwHigherRestrict );</span>
  787. <a name="l00790"></a>00790 <span class="keyword">virtual</span> ~<a class="code" href="classc_portal.html">cPortal</a> ( ) {}
  788. <a name="l00791"></a>00791
  789. <a name="l00792"></a>00792 <span class="keywordtype">void</span> <a class="code" href="classc_portal.html#ab335f307a6901ad0a6442de0d2b98527">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  790. <a name="l00793"></a>00793 <span class="keywordtype">void</span> Use ( <a class="code" href="classc_client.html">cClient</a> *pcUser );
  791. <a name="l00794"></a>00794 <span class="keywordtype">void</span> <a class="code" href="classc_portal.html#a35e0e82f29cd79266cea0320d73b6d99">Action</a> ( <a class="code" href="classc_client.html">cClient</a> *who );
  792. <a name="l00795"></a>00795 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_portal.html#a368f27f380ffa2aa53d2c72673bcf418">CreatePacket</a>( );
  793. <a name="l00796"></a>00796
  794. <a name="l00797"></a>00797 <span class="keyword">inline</span> <span class="keywordtype">void</span> SetDestination( <a class="code" href="structc_location.html">cLocation</a> *pcLoc )
  795. <a name="l00798"></a>00798 {
  796. <a name="l00799"></a>00799 m_cDestination.m_dwLandBlock = pcLoc-&gt;m_dwLandBlock;
  797. <a name="l00800"></a>00800 m_cDestination.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a>;
  798. <a name="l00801"></a>00801 m_cDestination.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> = pcLoc-&gt;<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a>;
  799. <a name="l00802"></a>00802 m_cDestination.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a>;
  800. <a name="l00803"></a>00803 m_cDestination.<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a4aa33ff4c5c6cf2a25060663068ef45f" title="cartesian position (relative to landblock)">m_flA</a>;
  801. <a name="l00804"></a>00804 m_cDestination.<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a85787eb9a3db54fdb1071512fb1eb899" title="quaternion orientation">m_flB</a>;
  802. <a name="l00805"></a>00805 m_cDestination.<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a> = pcLoc-&gt;<a class="code" href="structc_location.html#ab313f3fe510baf118c4135660c768a59" title="quaternion orientation">m_flC</a>;
  803. <a name="l00806"></a>00806 m_cDestination.<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a> = pcLoc-&gt;<a class="code" href="structc_location.html#a3422de1b9aaff686f6c8735e90ff1d2c" title="quaternion orientation">m_flW</a>;
  804. <a name="l00807"></a>00807 }
  805. <a name="l00808"></a>00808 <span class="keyword">private</span>:
  806. <a name="l00809"></a>00809 <a class="code" href="structc_location.html">cLocation</a> m_cWorldLoc;
  807. <a name="l00810"></a>00810 <a class="code" href="structc_location.html">cLocation</a> m_cDestination;
  808. <a name="l00811"></a>00811 <span class="comment">//DWORD m_dwLandblock;</span>
  809. <a name="l00812"></a>00812 <span class="comment">//float m_flX;</span>
  810. <a name="l00813"></a>00813 <span class="comment">//float m_flY;</span>
  811. <a name="l00814"></a>00814 <span class="comment">//float m_flZ;</span>
  812. <a name="l00815"></a>00815 <span class="comment">//float m_fHeading;</span>
  813. <a name="l00816"></a>00816 DWORD m_dwLowerRestriction;
  814. <a name="l00817"></a>00817 DWORD m_dwHigherRestriction;
  815. <a name="l00818"></a>00818 DWORD m_dwType;
  816. <a name="l00819"></a>00819 WORD m_wModel;
  817. <a name="l00820"></a>00820 WORD m_wIcon;
  818. <a name="l00821"></a>00821 WORD m_wPortalMode;
  819. <a name="l00822"></a>00822 WORD m_wAnimConfig;
  820. <a name="l00823"></a>00823 DWORD m_dwObjectsFlag1;
  821. <a name="l00824"></a>00824 DWORD m_dwObjectsFlag2;
  822. <a name="l00825"></a>00825 };
  823. <a name="l00826"></a>00826
  824. <a name="l00827"></a><a class="code" href="classc_abiotic.html">00827</a> <span class="keyword">class </span><a class="code" href="classc_abiotic.html">cAbiotic</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  825. <a name="l00828"></a>00828 {
  826. <a name="l00829"></a>00829 <span class="keyword">public</span>:
  827. <a name="l00830"></a>00830 <a class="code" href="classc_abiotic.html">cAbiotic</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwWeight, DWORD dwValue, BOOL fSelectable = TRUE, BOOL fEquippable = TRUE, BOOL fStackable = FALSE, BOOL fIsOwned = FALSE, DWORD dwContainer = 0 )
  828. <a name="l00831"></a>00831 {
  829. <a name="l00832"></a>00832 m_dwGUID = dwGUID;
  830. <a name="l00833"></a>00833 m_dwModel = dwModel;
  831. <a name="l00834"></a>00834 m_flScale = flScale;
  832. <a name="l00835"></a>00835 m_wIcon = dwIcon;
  833. <a name="l00836"></a>00836 m_strName = strName;
  834. <a name="l00837"></a>00837 m_strDescription = strDescription;
  835. <a name="l00838"></a>00838 m_fSelectable = fSelectable;
  836. <a name="l00839"></a>00839 m_dwWeight = dwWeight;
  837. <a name="l00840"></a>00840 m_dwValue = dwValue;
  838. <a name="l00841"></a>00841 m_fIsOwned = fIsOwned;
  839. <a name="l00842"></a>00842 m_dwContainer = dwContainer;
  840. <a name="l00843"></a>00843 m_fEquippable = fEquippable;
  841. <a name="l00844"></a>00844 m_fIsStackable = fStackable;
  842. <a name="l00845"></a>00845 m_fIsSolid = fSolid;
  843. <a name="l00846"></a>00846 m_fIsOwned = FALSE;
  844. <a name="l00847"></a>00847 m_wState = 0;
  845. <a name="l00848"></a>00848 m_dwDoorState = 0x0CL;
  846. <a name="l00849"></a>00849
  847. <a name="l00850"></a>00850 m_bInventorySequence= -1;
  848. <a name="l00851"></a>00851 m_wPositionSequence = 0;
  849. <a name="l00852"></a>00852 m_wNumPortals = 0;
  850. <a name="l00853"></a>00853 m_wNumLogins = 0x3C;
  851. <a name="l00854"></a>00854 m_fEquipped = 0;
  852. <a name="l00855"></a>00855
  853. <a name="l00856"></a>00856 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  854. <a name="l00857"></a>00857 }
  855. <a name="l00858"></a>00858 <a class="code" href="classc_abiotic.html">cAbiotic</a>( ) {}
  856. <a name="l00859"></a>00859 <span class="keyword">virtual</span> ~<a class="code" href="classc_abiotic.html">cAbiotic</a>( ) {}
  857. <a name="l00860"></a>00860
  858. <a name="l00861"></a>00861 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_abiotic.html#ae25ed940216c6fa67d278a2774b7f1c5">CreatePacket</a> ( );
  859. <a name="l00862"></a>00862 <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed ) { <span class="keywordflow">return</span> *((<a class="code" href="classc_message.html">cMessage</a> *)NULL); }
  860. <a name="l00863"></a>00863 <span class="keywordtype">void</span> <a class="code" href="classc_abiotic.html#a4eb6163c84a3dee8e8dfb4493e9895fa">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  861. <a name="l00864"></a>00864 <span class="keywordtype">void</span> Use ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser ) {}
  862. <a name="l00865"></a>00865 <span class="keywordtype">void</span> Action ( <a class="code" href="classc_client.html">cClient</a> *pcClient ) {}
  863. <a name="l00866"></a>00866
  864. <a name="l00867"></a>00867 <span class="keywordtype">void</span> SetContainer( DWORD dwGUID );
  865. <a name="l00868"></a>00868
  866. <a name="l00869"></a>00869 <span class="keyword">protected</span>:
  867. <a name="l00870"></a>00870 DWORD m_dwWeight;
  868. <a name="l00871"></a>00871 DWORD m_dwValue;
  869. <a name="l00872"></a>00872 BOOL m_fIsStackable;
  870. <a name="l00873"></a>00873 BOOL m_fEquippable;
  871. <a name="l00874"></a>00874 BOOL m_fIsSolid;
  872. <a name="l00875"></a>00875
  873. <a name="l00876"></a>00876 std::string m_strDescription;
  874. <a name="l00877"></a>00877 };
  875. <a name="l00878"></a>00878
  876. <a name="l00879"></a>00879 <span class="comment">/************************************</span>
  877. <a name="l00880"></a>00880 <span class="comment">* Cubem0j0: ITEM CLASSES</span>
  878. <a name="l00881"></a>00881 <span class="comment">*</span>
  879. <a name="l00882"></a>00882 <span class="comment">* These classes define items.</span>
  880. <a name="l00883"></a>00883 <span class="comment">************************************/</span>
  881. <a name="l00884"></a>00884
  882. <a name="l00885"></a>00885 <span class="comment">/************************************</span>
  883. <a name="l00886"></a>00886 <span class="comment">* Cubem0j0: item class - Misc</span>
  884. <a name="l00887"></a>00887 <span class="comment">************************************/</span>
  885. <a name="l00888"></a><a class="code" href="classc_misc.html">00888</a> <span class="keyword">class </span><a class="code" href="classc_misc.html">cMisc</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  886. <a name="l00889"></a>00889 {
  887. <a name="l00890"></a>00890 <span class="keyword">public</span>:
  888. <a name="l00896"></a><a class="code" href="classc_misc.html#a88e0d3797f573d7d6f6d86480e167aef">00896</a> <a class="code" href="classc_misc.html">cMisc</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  889. <a name="l00897"></a>00897 {
  890. <a name="l00898"></a>00898 m_dwGUID = dwGUID;
  891. <a name="l00899"></a>00899 m_dwModel = dwModel;
  892. <a name="l00900"></a>00900 m_flScale = flScale;
  893. <a name="l00901"></a>00901 m_wIcon = dwIcon;
  894. <a name="l00902"></a>00902 m_strName = strName;
  895. <a name="l00903"></a>00903 m_strDescription = strDescription;
  896. <a name="l00904"></a>00904
  897. <a name="l00905"></a>00905 m_bInventorySequence= -1;
  898. <a name="l00906"></a>00906 m_wPositionSequence = 0;
  899. <a name="l00907"></a>00907 m_wNumPortals = 0;
  900. <a name="l00908"></a>00908 m_wNumLogins = 0x3C;
  901. <a name="l00909"></a>00909 m_fEquipped = 0;
  902. <a name="l00910"></a>00910
  903. <a name="l00911"></a>00911 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  904. <a name="l00912"></a>00912 }
  905. <a name="l00918"></a><a class="code" href="classc_misc.html#a6fa2bbc91e12ec56bc0585e9a585c6d4">00918</a> <a class="code" href="classc_misc.html">cMisc</a>( DWORD dwGUID, DWORD Container, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  906. <a name="l00919"></a>00919 {
  907. <a name="l00920"></a>00920 m_dwGUID = dwGUID;
  908. <a name="l00921"></a>00921 m_dwModel = dwModel;
  909. <a name="l00922"></a>00922 m_flScale = flScale;
  910. <a name="l00923"></a>00923 m_wIcon = dwIcon;
  911. <a name="l00924"></a>00924 m_strName = strName;
  912. <a name="l00925"></a>00925 m_strDescription = strDescription;
  913. <a name="l00926"></a>00926
  914. <a name="l00927"></a>00927 m_bInventorySequence= -1;
  915. <a name="l00928"></a>00928 m_wPositionSequence = 0;
  916. <a name="l00929"></a>00929 m_wNumPortals = 0;
  917. <a name="l00930"></a>00930 m_wNumLogins = 0x3C;
  918. <a name="l00931"></a>00931 m_fEquipped = 0;
  919. <a name="l00932"></a>00932 }
  920. <a name="l00933"></a>00933
  921. <a name="l00934"></a>00934 <a class="code" href="classc_misc.html">cMisc</a>( ) {}
  922. <a name="l00935"></a>00935 <span class="keyword">virtual</span> ~<a class="code" href="classc_misc.html">cMisc</a>( ) {}
  923. <a name="l00936"></a>00936
  924. <a name="l00937"></a>00937 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_misc.html#ab05d8951759f2843b40166b2c211af8d">CreatePacket</a> ( );
  925. <a name="l00938"></a>00938 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_misc.html#a72e571d1ffff10b538efcd9bfb638ff1">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  926. <a name="l00939"></a>00939 <span class="keywordtype">void</span> <a class="code" href="classc_misc.html#a03941298cb2e636ceded6d532121e7d4">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  927. <a name="l00940"></a>00940 <span class="keywordtype">void</span> <a class="code" href="classc_misc.html#a620dd960361d89735e362fb5fc67a56e">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  928. <a name="l00941"></a>00941
  929. <a name="l00942"></a>00942 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  930. <a name="l00943"></a>00943 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  931. <a name="l00944"></a>00944
  932. <a name="l00945"></a>00945 DWORD m_dwItemModelID;
  933. <a name="l00946"></a>00946
  934. <a name="l00947"></a>00947 <span class="keyword">protected</span>:
  935. <a name="l00948"></a>00948 DWORD m_dwWeight;
  936. <a name="l00949"></a>00949 DWORD m_dwValue;
  937. <a name="l00950"></a>00950 BOOL m_fIsStackable;
  938. <a name="l00951"></a>00951 BOOL m_fEquippable;
  939. <a name="l00952"></a>00952 BOOL m_fIsSolid;
  940. <a name="l00953"></a>00953
  941. <a name="l00954"></a>00954 std::string m_strDescription;
  942. <a name="l00955"></a>00955 };
  943. <a name="l00956"></a>00956
  944. <a name="l00957"></a>00957 <span class="comment">/************************************</span>
  945. <a name="l00958"></a>00958 <span class="comment">* Cubem0j0: item class - Food</span>
  946. <a name="l00959"></a>00959 <span class="comment">************************************/</span>
  947. <a name="l00960"></a><a class="code" href="classc_food.html">00960</a> <span class="keyword">class </span><a class="code" href="classc_food.html">cFood</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  948. <a name="l00961"></a>00961 {
  949. <a name="l00962"></a>00962 <span class="keyword">public</span>:
  950. <a name="l00968"></a><a class="code" href="classc_food.html#ae7dead4e00530dbb4501839000e55753">00968</a> <a class="code" href="classc_food.html">cFood</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wBurden, DWORD dwVitalID, DWORD dwAmount ) : m_dwItemModelID( dwModel )
  951. <a name="l00969"></a>00969 {
  952. <a name="l00970"></a>00970 m_dwGUID = dwGUID;
  953. <a name="l00971"></a>00971 m_dwModel = dwModel;
  954. <a name="l00972"></a>00972 m_wIcon = dwIcon;
  955. <a name="l00973"></a>00973 m_strName = strName;
  956. <a name="l00974"></a>00974 m_strDescription = strDescription;
  957. <a name="l00975"></a>00975 m_wBurden = wBurden;
  958. <a name="l00976"></a>00976 m_dwValue = dwValue;
  959. <a name="l00977"></a>00977 m_dwVitalID = dwVitalID;
  960. <a name="l00978"></a>00978 m_dwAmount = dwAmount;
  961. <a name="l00979"></a>00979
  962. <a name="l00980"></a>00980 m_bInventorySequence= -1;
  963. <a name="l00981"></a>00981 m_wPositionSequence = 0;
  964. <a name="l00982"></a>00982 m_wNumPortals = 0;
  965. <a name="l00983"></a>00983 m_wNumLogins = 0x3C;
  966. <a name="l00984"></a>00984 m_fEquipped = 0;
  967. <a name="l00985"></a>00985
  968. <a name="l00986"></a>00986 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  969. <a name="l00987"></a>00987 }
  970. <a name="l00993"></a><a class="code" href="classc_food.html#a126fb4d251e376f5da5e88d68382dafd">00993</a> <a class="code" href="classc_food.html">cFood</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wStack, WORD wBurden, DWORD dwVitalID, DWORD dwVitalAffect) : m_dwItemModelID( dwModel )
  971. <a name="l00994"></a>00994 {
  972. <a name="l00995"></a>00995 m_dwGUID = dwGUID;
  973. <a name="l00996"></a>00996 m_dwModel = dwModel;
  974. <a name="l00997"></a>00997 m_wIcon = dwIcon;
  975. <a name="l00998"></a>00998 m_strName = strName;
  976. <a name="l00999"></a>00999 m_strDescription = strDescription;
  977. <a name="l01000"></a>01000 m_wBurden = wBurden;
  978. <a name="l01001"></a>01001 m_dwValue = dwValue;
  979. <a name="l01002"></a>01002 m_dwVitalID = dwVitalID;
  980. <a name="l01003"></a>01003 m_wStack = wStack;
  981. <a name="l01004"></a>01004 m_dwContainer = dwContainer;
  982. <a name="l01005"></a>01005 m_dwVitalAffect = dwVitalAffect;
  983. <a name="l01006"></a>01006
  984. <a name="l01007"></a>01007 m_bInventorySequence= -1;
  985. <a name="l01008"></a>01008 m_wPositionSequence = 0;
  986. <a name="l01009"></a>01009 m_wNumPortals = 0;
  987. <a name="l01010"></a>01010 m_wNumLogins = 0x3C;
  988. <a name="l01011"></a>01011 m_fEquipped = 0;
  989. <a name="l01012"></a>01012 }
  990. <a name="l01013"></a>01013
  991. <a name="l01014"></a>01014 <a class="code" href="classc_food.html">cFood</a>( ) {}
  992. <a name="l01015"></a>01015 <span class="keyword">virtual</span> ~<a class="code" href="classc_food.html">cFood</a>( ) {}
  993. <a name="l01016"></a>01016
  994. <a name="l01017"></a>01017 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_food.html#a0ccdb0a5404a7c2000b048c253ab7bfb">CreatePacket</a> ( );
  995. <a name="l01018"></a>01018 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_food.html#a6615b7f8ffd2b1d4b12e21fbe0d59fac">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  996. <a name="l01019"></a>01019 <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed ) { <span class="keywordflow">return</span> *((<a class="code" href="classc_message.html">cMessage</a> *)NULL); }
  997. <a name="l01020"></a>01020 <span class="keywordtype">void</span> <a class="code" href="classc_food.html#a8b1aa8ded9d15fed60767b78c3824d06">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  998. <a name="l01021"></a>01021 <span class="keywordtype">void</span> <a class="code" href="classc_food.html#a353692bfc33945be58faf884b9b7dbe2">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  999. <a name="l01022"></a>01022
  1000. <a name="l01023"></a>01023 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1001. <a name="l01024"></a>01024 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1002. <a name="l01025"></a>01025
  1003. <a name="l01026"></a>01026 DWORD m_dwItemModelID;
  1004. <a name="l01027"></a>01027
  1005. <a name="l01028"></a>01028 <span class="keyword">protected</span>:
  1006. <a name="l01029"></a>01029 DWORD m_dwValue;
  1007. <a name="l01030"></a>01030 WORD m_wBurden;
  1008. <a name="l01031"></a>01031 DWORD m_dwVitalID;
  1009. <a name="l01032"></a>01032 WORD m_wStack;
  1010. <a name="l01033"></a>01033 DWORD m_dwVitalAffect;
  1011. <a name="l01034"></a>01034
  1012. <a name="l01035"></a>01035 std::string m_strDescription;
  1013. <a name="l01036"></a>01036 };
  1014. <a name="l01037"></a>01037
  1015. <a name="l01038"></a>01038 <span class="comment">/************************************</span>
  1016. <a name="l01039"></a>01039 <span class="comment">* Cubem0j0: item class - Armor</span>
  1017. <a name="l01040"></a>01040 <span class="comment">************************************/</span>
  1018. <a name="l01041"></a><a class="code" href="classc_armor.html">01041</a> <span class="keyword">class </span><a class="code" href="classc_armor.html">cArmor</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1019. <a name="l01042"></a>01042 {
  1020. <a name="l01043"></a>01043 <span class="keyword">public</span>:
  1021. <a name="l01049"></a><a class="code" href="classc_armor.html#acd85a10ae3b78f408f1d47b2b180c01b">01049</a> <a class="code" href="classc_armor.html">cArmor</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1022. <a name="l01050"></a>01050 {
  1023. <a name="l01051"></a>01051 m_dwGUID = dwGUID;
  1024. <a name="l01052"></a>01052 m_dwModel = dwModel;
  1025. <a name="l01053"></a>01053 m_flScale = flScale;
  1026. <a name="l01054"></a>01054 m_wIcon = dwIcon;
  1027. <a name="l01055"></a>01055 m_strName = strName;
  1028. <a name="l01056"></a>01056 m_strDescription = strDescription;
  1029. <a name="l01057"></a>01057 <span class="comment">// m_wWeight = wWeight;</span>
  1030. <a name="l01058"></a>01058 <span class="comment">// m_dwValue = dwValue;</span>
  1031. <a name="l01059"></a>01059
  1032. <a name="l01060"></a>01060 m_bInventorySequence= -1;
  1033. <a name="l01061"></a>01061 m_wPositionSequence = 0;
  1034. <a name="l01062"></a>01062 m_wNumPortals = 0;
  1035. <a name="l01063"></a>01063 m_wNumLogins = 0x3C;
  1036. <a name="l01064"></a>01064 m_fEquipped = 0;
  1037. <a name="l01065"></a>01065 m_bWearPaletteChange= 0;
  1038. <a name="l01066"></a>01066
  1039. <a name="l01067"></a>01067 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1040. <a name="l01068"></a>01068 }
  1041. <a name="l01074"></a><a class="code" href="classc_armor.html#aea11da34fa495228e01701c65673bff9">01074</a> <a class="code" href="classc_armor.html">cArmor</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wBurden, DWORD dwArmor_Level, <span class="keywordtype">float</span> fProt_Slashing, <span class="keywordtype">float</span> fProt_Piercing, <span class="keywordtype">float</span> fProt_Bludgeon, <span class="keywordtype">float</span> fProt_Fire, <span class="keywordtype">float</span> fProt_Cold, <span class="keywordtype">float</span> fProt_Acid, <span class="keywordtype">float</span> fProt_Electric) : m_dwItemModelID( dwModel )
  1042. <a name="l01075"></a>01075 <span class="comment">//BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE</span>
  1043. <a name="l01076"></a>01076 {
  1044. <a name="l01077"></a>01077 m_dwGUID = dwGUID;
  1045. <a name="l01078"></a>01078 m_dwModel = dwModel;
  1046. <a name="l01079"></a>01079 m_flScale = flScale;
  1047. <a name="l01080"></a>01080 m_wIcon = dwIcon;
  1048. <a name="l01081"></a>01081 m_strName = strName;
  1049. <a name="l01082"></a>01082 m_strDescription = strDescription;
  1050. <a name="l01083"></a>01083 <span class="comment">// m_fSelectable = fSelectable;</span>
  1051. <a name="l01084"></a>01084 m_wBurden = wBurden;
  1052. <a name="l01085"></a>01085 m_dwValue = dwValue;
  1053. <a name="l01086"></a>01086 <span class="comment">// m_fIsOwned = fIsOwned;</span>
  1054. <a name="l01087"></a>01087 m_dwContainer = dwContainer;
  1055. <a name="l01088"></a>01088 <span class="comment">// m_fEquippable = fEquippable;</span>
  1056. <a name="l01089"></a>01089 <span class="comment">// m_fIsStackable = fStackable;</span>
  1057. <a name="l01090"></a>01090 m_fIsSolid = fSolid;
  1058. <a name="l01091"></a>01091 m_fIsOwned = TRUE;
  1059. <a name="l01092"></a>01092 m_dwArmor_Level = dwArmor_Level;
  1060. <a name="l01093"></a>01093 m_fProt_Slashing = fProt_Slashing;
  1061. <a name="l01094"></a>01094 m_fProt_Piercing = fProt_Piercing;
  1062. <a name="l01095"></a>01095 m_fProt_Bludgeon = fProt_Bludgeon;
  1063. <a name="l01096"></a>01096 m_fProt_Fire = fProt_Fire;
  1064. <a name="l01097"></a>01097 m_fProt_Cold = fProt_Cold;
  1065. <a name="l01098"></a>01098 m_fProt_Acid = fProt_Acid;
  1066. <a name="l01099"></a>01099 m_fProt_Electric = fProt_Electric;
  1067. <a name="l01100"></a>01100
  1068. <a name="l01101"></a>01101 m_bInventorySequence= -1;
  1069. <a name="l01102"></a>01102 m_wPositionSequence = 0;
  1070. <a name="l01103"></a>01103 m_wNumPortals = 0;
  1071. <a name="l01104"></a>01104 m_wNumLogins = 0x3C;
  1072. <a name="l01105"></a>01105 m_fEquipped = 0;
  1073. <a name="l01106"></a>01106 m_bWearPaletteChange= 0;
  1074. <a name="l01107"></a>01107 }
  1075. <a name="l01108"></a>01108 <a class="code" href="classc_armor.html">cArmor</a>( ) {}
  1076. <a name="l01109"></a>01109 <span class="keyword">virtual</span> ~<a class="code" href="classc_armor.html">cArmor</a>( ) {}
  1077. <a name="l01110"></a>01110
  1078. <a name="l01111"></a>01111 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_armor.html#a5490ab3dea4a78fdf05b976e045b9c1a">CreatePacket</a> ( );
  1079. <a name="l01112"></a>01112 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_armor.html#a0f32d2315cb7d907f79b4a70015db629">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1080. <a name="l01113"></a>01113 <span class="keywordtype">void</span> <a class="code" href="classc_armor.html#af795db61380698b03bc2f512736124a9">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1081. <a name="l01114"></a>01114 <span class="keywordtype">void</span> <a class="code" href="classc_armor.html#a7a6e63b43797a8b13a41d1ed641556d9">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1082. <a name="l01115"></a>01115
  1083. <a name="l01116"></a>01116 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1084. <a name="l01117"></a>01117 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1085. <a name="l01118"></a>01118
  1086. <a name="l01119"></a>01119 <span class="keyword">inline</span> DWORD GetSlashProt ( ) { <span class="keywordflow">return</span> m_fProt_Slashing; }
  1087. <a name="l01120"></a>01120
  1088. <a name="l01121"></a>01121 DWORD m_dwItemModelID;
  1089. <a name="l01122"></a>01122
  1090. <a name="l01123"></a>01123 <span class="keyword">protected</span>:
  1091. <a name="l01124"></a>01124 DWORD m_dwValue;
  1092. <a name="l01125"></a>01125 WORD m_wBurden;
  1093. <a name="l01126"></a>01126
  1094. <a name="l01127"></a>01127 BOOL m_fIsStackable;
  1095. <a name="l01128"></a>01128 BOOL m_fEquippable;
  1096. <a name="l01129"></a>01129 BOOL m_fIsSolid;
  1097. <a name="l01130"></a>01130
  1098. <a name="l01131"></a>01131 DWORD m_dwActivate_Req_SkillID;
  1099. <a name="l01132"></a>01132 DWORD m_dwActivate_Req_Skill_Level;
  1100. <a name="l01133"></a>01133 DWORD m_dwArmor_Level;
  1101. <a name="l01134"></a>01134 <span class="keywordtype">float</span> m_fProt_Slashing;
  1102. <a name="l01135"></a>01135 <span class="keywordtype">float</span> m_fProt_Piercing;
  1103. <a name="l01136"></a>01136 <span class="keywordtype">float</span> m_fProt_Bludgeon;
  1104. <a name="l01137"></a>01137 <span class="keywordtype">float</span> m_fProt_Fire;
  1105. <a name="l01138"></a>01138 <span class="keywordtype">float</span> m_fProt_Cold;
  1106. <a name="l01139"></a>01139 <span class="keywordtype">float</span> m_fProt_Acid;
  1107. <a name="l01140"></a>01140 <span class="keywordtype">float</span> m_fProt_Electric;
  1108. <a name="l01141"></a>01141
  1109. <a name="l01142"></a>01142 std::string m_strDescription;
  1110. <a name="l01143"></a>01143 };
  1111. <a name="l01144"></a>01144
  1112. <a name="l01145"></a>01145 <span class="comment">/************************************</span>
  1113. <a name="l01146"></a>01146 <span class="comment">* Cubem0j0: item class - Scrolls</span>
  1114. <a name="l01147"></a>01147 <span class="comment">************************************/</span>
  1115. <a name="l01148"></a><a class="code" href="classc_scrolls.html">01148</a> <span class="keyword">class </span><a class="code" href="classc_scrolls.html">cScrolls</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1116. <a name="l01149"></a>01149 {
  1117. <a name="l01150"></a>01150 <span class="keyword">public</span>:
  1118. <a name="l01156"></a><a class="code" href="classc_scrolls.html#a243331d90851ce7a197428559af49ff1">01156</a> <a class="code" href="classc_scrolls.html">cScrolls</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1119. <a name="l01157"></a>01157 {
  1120. <a name="l01158"></a>01158 m_dwGUID = dwGUID;
  1121. <a name="l01159"></a>01159 m_dwModel = dwModel;
  1122. <a name="l01160"></a>01160 m_flScale = flScale;
  1123. <a name="l01161"></a>01161 m_wIcon = dwIcon;
  1124. <a name="l01162"></a>01162 m_strName = strName;
  1125. <a name="l01163"></a>01163 m_strDescription = strDescription;
  1126. <a name="l01164"></a>01164
  1127. <a name="l01165"></a>01165 m_bInventorySequence= -1;
  1128. <a name="l01166"></a>01166 m_wPositionSequence = 0;
  1129. <a name="l01167"></a>01167 m_wNumPortals = 0;
  1130. <a name="l01168"></a>01168 m_wNumLogins = 0x3C;
  1131. <a name="l01169"></a>01169 m_fEquipped = 0;
  1132. <a name="l01170"></a>01170
  1133. <a name="l01171"></a>01171 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1134. <a name="l01172"></a>01172 }
  1135. <a name="l01178"></a><a class="code" href="classc_scrolls.html#a5747c876c0f35af12ed594f32a0c99d5">01178</a> <a class="code" href="classc_scrolls.html">cScrolls</a>( DWORD dwGUID, DWORD Container, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1136. <a name="l01179"></a>01179 {
  1137. <a name="l01180"></a>01180 m_dwGUID = dwGUID;
  1138. <a name="l01181"></a>01181 m_dwModel = dwModel;
  1139. <a name="l01182"></a>01182 m_flScale = flScale;
  1140. <a name="l01183"></a>01183 m_wIcon = dwIcon;
  1141. <a name="l01184"></a>01184 m_strName = strName;
  1142. <a name="l01185"></a>01185 m_strDescription = strDescription;
  1143. <a name="l01186"></a>01186
  1144. <a name="l01187"></a>01187 m_bInventorySequence= -1;
  1145. <a name="l01188"></a>01188 m_wPositionSequence = 0;
  1146. <a name="l01189"></a>01189 m_wNumPortals = 0;
  1147. <a name="l01190"></a>01190 m_wNumLogins = 0x3C;
  1148. <a name="l01191"></a>01191 m_fEquipped = 0;
  1149. <a name="l01192"></a>01192 }
  1150. <a name="l01193"></a>01193
  1151. <a name="l01194"></a>01194 <a class="code" href="classc_scrolls.html">cScrolls</a>( ) {}
  1152. <a name="l01195"></a>01195 <span class="keyword">virtual</span> ~<a class="code" href="classc_scrolls.html">cScrolls</a>( ) {}
  1153. <a name="l01196"></a>01196
  1154. <a name="l01197"></a>01197 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_scrolls.html#af703d42585d28116840af9f6981b5a5a">CreatePacket</a> ( );
  1155. <a name="l01198"></a>01198 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_scrolls.html#add9f95f2c0c83746d0e1decb8d1b95fa">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1156. <a name="l01199"></a>01199 <span class="keywordtype">void</span> <a class="code" href="classc_scrolls.html#a8865ea39e17cba9a4cc4e10d7c1f2e6b">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1157. <a name="l01200"></a>01200 <span class="keywordtype">void</span> <a class="code" href="classc_scrolls.html#ae5c35c6b858303e0248a0772ef228f6d">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1158. <a name="l01201"></a>01201
  1159. <a name="l01202"></a>01202 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1160. <a name="l01203"></a>01203 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1161. <a name="l01204"></a>01204
  1162. <a name="l01205"></a>01205 DWORD m_dwItemModelID;
  1163. <a name="l01206"></a>01206
  1164. <a name="l01207"></a>01207 <span class="keyword">protected</span>:
  1165. <a name="l01208"></a>01208 DWORD m_dwWeight;
  1166. <a name="l01209"></a>01209 DWORD m_dwValue;
  1167. <a name="l01210"></a>01210 BOOL m_fIsStackable;
  1168. <a name="l01211"></a>01211 BOOL m_fEquippable;
  1169. <a name="l01212"></a>01212 BOOL m_fIsSolid;
  1170. <a name="l01213"></a>01213
  1171. <a name="l01214"></a>01214 std::string m_strDescription;
  1172. <a name="l01215"></a>01215 };
  1173. <a name="l01216"></a>01216
  1174. <a name="l01217"></a>01217 <span class="comment">/************************************</span>
  1175. <a name="l01218"></a>01218 <span class="comment">* Cubem0j0: item class - Healing Kits</span>
  1176. <a name="l01219"></a>01219 <span class="comment">************************************/</span>
  1177. <a name="l01220"></a><a class="code" href="classc_healing_kits.html">01220</a> <span class="keyword">class </span><a class="code" href="classc_healing_kits.html">cHealingKits</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1178. <a name="l01221"></a>01221 {
  1179. <a name="l01222"></a>01222 <span class="keyword">public</span>:
  1180. <a name="l01228"></a><a class="code" href="classc_healing_kits.html#a643cba292fce6c581ae68e5cfd3ec4fe">01228</a> <a class="code" href="classc_healing_kits.html">cHealingKits</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, WORD wUses, WORD wUseLimit) : m_dwItemModelID( dwModel )
  1181. <a name="l01229"></a>01229 {
  1182. <a name="l01230"></a>01230 m_dwGUID = dwGUID;
  1183. <a name="l01231"></a>01231 m_dwModel = dwModel;
  1184. <a name="l01232"></a>01232 m_flScale = flScale;
  1185. <a name="l01233"></a>01233 m_wIcon = dwIcon;
  1186. <a name="l01234"></a>01234 m_strName = strName;
  1187. <a name="l01235"></a>01235 m_strDescription = strDescription;
  1188. <a name="l01236"></a>01236 dwValue = m_dwValue;
  1189. <a name="l01237"></a>01237 wWeight = m_wWeight;
  1190. <a name="l01238"></a>01238 m_wUses = wUses;
  1191. <a name="l01239"></a>01239 m_wUseLimit = wUseLimit;
  1192. <a name="l01240"></a>01240
  1193. <a name="l01241"></a>01241 m_bInventorySequence= -1;
  1194. <a name="l01242"></a>01242 m_wPositionSequence = 0;
  1195. <a name="l01243"></a>01243 m_wNumPortals = 0;
  1196. <a name="l01244"></a>01244 m_wNumLogins = 0x3C;
  1197. <a name="l01245"></a>01245 m_fEquipped = 0;
  1198. <a name="l01246"></a>01246
  1199. <a name="l01247"></a>01247 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1200. <a name="l01248"></a>01248 }
  1201. <a name="l01249"></a>01249 <a class="code" href="classc_healing_kits.html">cHealingKits</a>( ) {}
  1202. <a name="l01250"></a>01250 <span class="keyword">virtual</span> ~<a class="code" href="classc_healing_kits.html">cHealingKits</a>( ) {}
  1203. <a name="l01251"></a>01251
  1204. <a name="l01252"></a>01252 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_healing_kits.html#a202123662e64bf7b91e71636b613634f">CreatePacket</a> ( );
  1205. <a name="l01253"></a>01253 <span class="keywordtype">void</span> <a class="code" href="classc_healing_kits.html#af1aaaa03464b1041de5240dfa3cac5ce">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1206. <a name="l01254"></a>01254 <span class="keywordtype">void</span> <a class="code" href="classc_healing_kits.html#a3cd8e5ccb307ff7705435590ca0bba6b">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1207. <a name="l01255"></a>01255
  1208. <a name="l01256"></a>01256 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1209. <a name="l01257"></a>01257 DWORD m_dwItemModelID;
  1210. <a name="l01258"></a>01258
  1211. <a name="l01259"></a>01259 <span class="keyword">protected</span>:
  1212. <a name="l01260"></a>01260 WORD m_wWeight;
  1213. <a name="l01261"></a>01261 DWORD m_dwValue;
  1214. <a name="l01262"></a>01262 DWORD m_wUses;
  1215. <a name="l01263"></a>01263 DWORD m_wUseLimit;
  1216. <a name="l01264"></a>01264 BOOL m_fIsStackable;
  1217. <a name="l01265"></a>01265 BOOL m_fEquippable;
  1218. <a name="l01266"></a>01266 BOOL m_fIsSolid;
  1219. <a name="l01267"></a>01267
  1220. <a name="l01268"></a>01268 std::string m_strDescription;
  1221. <a name="l01269"></a>01269 };
  1222. <a name="l01270"></a>01270
  1223. <a name="l01271"></a>01271 <span class="comment">/************************************</span>
  1224. <a name="l01272"></a>01272 <span class="comment">* Cubem0j0: item class - Gems</span>
  1225. <a name="l01273"></a>01273 <span class="comment">************************************/</span>
  1226. <a name="l01274"></a><a class="code" href="classc_gems.html">01274</a> <span class="keyword">class </span><a class="code" href="classc_gems.html">cGems</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1227. <a name="l01275"></a>01275 {
  1228. <a name="l01276"></a>01276 <span class="keyword">public</span>:
  1229. <a name="l01282"></a><a class="code" href="classc_gems.html#aa049755d72016f212e5c9cc6d67cf92f">01282</a> <a class="code" href="classc_gems.html">cGems</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1230. <a name="l01283"></a>01283 {
  1231. <a name="l01284"></a>01284 m_dwGUID = dwGUID;
  1232. <a name="l01285"></a>01285 m_dwModel = dwModel;
  1233. <a name="l01286"></a>01286 m_wIcon = wIcon;
  1234. <a name="l01287"></a>01287 m_strName = strName;
  1235. <a name="l01288"></a>01288 m_strDescription = strDescription;
  1236. <a name="l01289"></a>01289
  1237. <a name="l01290"></a>01290 m_bInventorySequence= -1;
  1238. <a name="l01291"></a>01291 m_wPositionSequence = 0;
  1239. <a name="l01292"></a>01292 m_wNumPortals = 0;
  1240. <a name="l01293"></a>01293 m_wNumLogins = 0x3C;
  1241. <a name="l01294"></a>01294 m_fEquipped = 0;
  1242. <a name="l01295"></a>01295
  1243. <a name="l01296"></a>01296 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1244. <a name="l01297"></a>01297 }
  1245. <a name="l01303"></a><a class="code" href="classc_gems.html#aeca76388de65c049559d63c9ee8e0b35">01303</a> <a class="code" href="classc_gems.html">cGems</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight) : m_dwItemModelID( dwModel )
  1246. <a name="l01304"></a>01304 {
  1247. <a name="l01305"></a>01305 m_dwGUID = dwGUID;
  1248. <a name="l01306"></a>01306 m_dwModel = dwModel;
  1249. <a name="l01307"></a>01307 m_wIcon = wIcon;
  1250. <a name="l01308"></a>01308 m_strName = strName;
  1251. <a name="l01309"></a>01309 m_strDescription = strDescription;
  1252. <a name="l01310"></a>01310 m_dwValue = dwValue;
  1253. <a name="l01311"></a>01311 m_wWeight = wWeight;
  1254. <a name="l01312"></a>01312
  1255. <a name="l01313"></a>01313 m_bInventorySequence= -1;
  1256. <a name="l01314"></a>01314 m_wPositionSequence = 0;
  1257. <a name="l01315"></a>01315 m_wNumPortals = 0;
  1258. <a name="l01316"></a>01316 m_wNumLogins = 0x3C;
  1259. <a name="l01317"></a>01317 m_fEquipped = 0;
  1260. <a name="l01318"></a>01318 }
  1261. <a name="l01319"></a>01319
  1262. <a name="l01320"></a>01320 <a class="code" href="classc_gems.html">cGems</a>( ) {}
  1263. <a name="l01321"></a>01321 <span class="keyword">virtual</span> ~<a class="code" href="classc_gems.html">cGems</a>( ) {}
  1264. <a name="l01322"></a>01322
  1265. <a name="l01323"></a>01323 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_gems.html#a64ed8898c8451c3095f9c7f87bab79a5">CreatePacket</a> ( );
  1266. <a name="l01324"></a>01324 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_gems.html#a93d2da1cd382d4b4af58a49b32ebf0e1">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1267. <a name="l01325"></a>01325 <span class="keywordtype">void</span> <a class="code" href="classc_gems.html#a0961bea6bd7d8aafd57b9cc0dc32342b">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1268. <a name="l01326"></a>01326 <span class="keywordtype">void</span> <a class="code" href="classc_gems.html#a9368553848bd5e0a8b4e0767650c4f5e">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1269. <a name="l01327"></a>01327
  1270. <a name="l01328"></a>01328 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1271. <a name="l01329"></a>01329 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1272. <a name="l01330"></a>01330 DWORD m_dwItemModelID;
  1273. <a name="l01331"></a>01331
  1274. <a name="l01332"></a>01332 <span class="keyword">protected</span>:
  1275. <a name="l01333"></a>01333 WORD m_wWeight;
  1276. <a name="l01334"></a>01334 DWORD m_dwValue;
  1277. <a name="l01335"></a>01335 BOOL m_fIsStackable;
  1278. <a name="l01336"></a>01336 BOOL m_fEquippable;
  1279. <a name="l01337"></a>01337 BOOL m_fIsSolid;
  1280. <a name="l01338"></a>01338
  1281. <a name="l01339"></a>01339 std::string m_strDescription;
  1282. <a name="l01340"></a>01340 };
  1283. <a name="l01341"></a>01341
  1284. <a name="l01342"></a>01342 <span class="comment">/************************************</span>
  1285. <a name="l01343"></a>01343 <span class="comment">* Cubem0j0: item class - Books</span>
  1286. <a name="l01344"></a>01344 <span class="comment">************************************/</span>
  1287. <a name="l01345"></a><a class="code" href="classc_books.html">01345</a> <span class="keyword">class </span><a class="code" href="classc_books.html">cBooks</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1288. <a name="l01346"></a>01346 {
  1289. <a name="l01347"></a>01347 <span class="keyword">public</span>:
  1290. <a name="l01353"></a><a class="code" href="classc_books.html#af3383046cf9fba77af3d4f98e6867fdd">01353</a> <a class="code" href="classc_books.html">cBooks</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1291. <a name="l01354"></a>01354 {
  1292. <a name="l01355"></a>01355 m_dwGUID = dwGUID;
  1293. <a name="l01356"></a>01356 m_dwModel = dwModel;
  1294. <a name="l01357"></a>01357 m_wIcon = wIcon;
  1295. <a name="l01358"></a>01358 m_strName = strName;
  1296. <a name="l01359"></a>01359 m_strDescription = strDescription;
  1297. <a name="l01360"></a>01360
  1298. <a name="l01361"></a>01361 m_bInventorySequence= -1;
  1299. <a name="l01362"></a>01362 m_wPositionSequence = 0;
  1300. <a name="l01363"></a>01363 m_wNumPortals = 0;
  1301. <a name="l01364"></a>01364 m_wNumLogins = 0x3C;
  1302. <a name="l01365"></a>01365 m_fEquipped = 0;
  1303. <a name="l01366"></a>01366
  1304. <a name="l01367"></a>01367 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1305. <a name="l01368"></a>01368 }
  1306. <a name="l01374"></a><a class="code" href="classc_books.html#ab1e4f9db06ee8332b56cf3e67a4bc0f9">01374</a> <a class="code" href="classc_books.html">cBooks</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wBurden) : m_dwItemModelID( dwModel )
  1307. <a name="l01375"></a>01375
  1308. <a name="l01376"></a>01376 <span class="comment">/*</span>
  1309. <a name="l01377"></a>01377 <span class="comment"> , DWORD ContentPages, DWORD UsedPages, DWORD TotalPages, </span>
  1310. <a name="l01378"></a>01378 <span class="comment"> std::string strAuthor, std::string strTitle, std::string strComment, std::string strCommentAuthor, std::string strPage1, std::string strPage2, std::string strPage3, std::string strPage4, std::string strPage5,</span>
  1311. <a name="l01379"></a>01379 <span class="comment"> std::string strPage6, std::string strPage7, std::string strPage8, std::string strPage9) : m_dwItemModelID( dwModel )</span>
  1312. <a name="l01380"></a>01380 <span class="comment"> */</span>
  1313. <a name="l01381"></a>01381 {
  1314. <a name="l01382"></a>01382 m_dwGUID = dwGUID;
  1315. <a name="l01383"></a>01383 m_dwModel = dwModel;
  1316. <a name="l01384"></a>01384 m_wIcon = wIcon;
  1317. <a name="l01385"></a>01385 m_strName = strName;
  1318. <a name="l01386"></a>01386 m_strDescription = strDescription;
  1319. <a name="l01387"></a>01387 m_wBurden = wBurden;
  1320. <a name="l01388"></a>01388 m_dwValue = dwValue;
  1321. <a name="l01389"></a>01389
  1322. <a name="l01390"></a>01390 m_bInventorySequence= -1;
  1323. <a name="l01391"></a>01391 m_wPositionSequence = 0;
  1324. <a name="l01392"></a>01392 m_wNumPortals = 0;
  1325. <a name="l01393"></a>01393 m_wNumLogins = 0x3C;
  1326. <a name="l01394"></a>01394 m_fEquipped = 0;
  1327. <a name="l01395"></a>01395 }
  1328. <a name="l01396"></a>01396
  1329. <a name="l01397"></a>01397 <a class="code" href="classc_books.html">cBooks</a>( ) {}
  1330. <a name="l01398"></a>01398 <span class="keyword">virtual</span> ~<a class="code" href="classc_books.html">cBooks</a>( ) {}
  1331. <a name="l01399"></a>01399
  1332. <a name="l01400"></a>01400 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_books.html#a9376afe31c1a47b613aee60d64fd5baa">CreatePacket</a> ( );
  1333. <a name="l01401"></a>01401 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_books.html#a607b564dd7512863e8d036556a1262bd">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1334. <a name="l01402"></a>01402 <span class="keywordtype">void</span> <a class="code" href="classc_books.html#a3a3c64348af1972aca69d182b2c7f779">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1335. <a name="l01403"></a>01403 <span class="keywordtype">void</span> <a class="code" href="classc_books.html#abb2a47a0b494927930729deef92dfe4c">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1336. <a name="l01404"></a>01404 <span class="keywordtype">void</span> Read ( <a class="code" href="classc_client.html">cClient</a>* who, DWORD GUID, DWORD PageNumber );
  1337. <a name="l01405"></a>01405
  1338. <a name="l01406"></a>01406 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1339. <a name="l01407"></a>01407 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1340. <a name="l01408"></a>01408 DWORD m_dwItemModelID;
  1341. <a name="l01409"></a>01409
  1342. <a name="l01410"></a>01410
  1343. <a name="l01411"></a>01411
  1344. <a name="l01412"></a>01412 <span class="keyword">protected</span>:
  1345. <a name="l01413"></a>01413 WORD m_wBurden;
  1346. <a name="l01414"></a>01414 DWORD m_dwValue;
  1347. <a name="l01415"></a>01415 BOOL m_fIsStackable;
  1348. <a name="l01416"></a>01416 BOOL m_fEquippable;
  1349. <a name="l01417"></a>01417 BOOL m_fIsSolid;
  1350. <a name="l01418"></a>01418
  1351. <a name="l01419"></a>01419
  1352. <a name="l01420"></a>01420
  1353. <a name="l01421"></a>01421
  1354. <a name="l01422"></a>01422 std::string m_strDescription;
  1355. <a name="l01423"></a>01423 };
  1356. <a name="l01424"></a>01424
  1357. <a name="l01425"></a>01425 <span class="comment">/************************************</span>
  1358. <a name="l01426"></a>01426 <span class="comment">* Cubem0j0: item class - Manastones</span>
  1359. <a name="l01427"></a>01427 <span class="comment">************************************/</span>
  1360. <a name="l01428"></a><a class="code" href="classc_mana_stones.html">01428</a> <span class="keyword">class </span><a class="code" href="classc_mana_stones.html">cManaStones</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1361. <a name="l01429"></a>01429 {
  1362. <a name="l01430"></a>01430 <span class="keyword">public</span>:
  1363. <a name="l01436"></a><a class="code" href="classc_mana_stones.html#a6a4963778e9c302752bc7472b5b5214b">01436</a> <a class="code" href="classc_mana_stones.html">cManaStones</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1364. <a name="l01437"></a>01437 {
  1365. <a name="l01438"></a>01438 m_dwGUID = dwGUID;
  1366. <a name="l01439"></a>01439 m_dwModel = dwModel;
  1367. <a name="l01440"></a>01440 m_wIcon = dwIcon;
  1368. <a name="l01441"></a>01441 m_strName = strName;
  1369. <a name="l01442"></a>01442 m_strDescription = strDescription;
  1370. <a name="l01443"></a>01443
  1371. <a name="l01444"></a>01444 m_bInventorySequence= -1;
  1372. <a name="l01445"></a>01445 m_wPositionSequence = 0;
  1373. <a name="l01446"></a>01446 m_wNumPortals = 0;
  1374. <a name="l01447"></a>01447 m_wNumLogins = 0x3C;
  1375. <a name="l01448"></a>01448 m_fEquipped = 0;
  1376. <a name="l01449"></a>01449
  1377. <a name="l01450"></a>01450 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1378. <a name="l01451"></a>01451 }
  1379. <a name="l01457"></a><a class="code" href="classc_mana_stones.html#ae4d1d3e8aed99cd13aed2ef383d5231e">01457</a> <a class="code" href="classc_mana_stones.html">cManaStones</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight) : m_dwItemModelID( dwModel )
  1380. <a name="l01458"></a>01458 {
  1381. <a name="l01459"></a>01459 m_dwGUID = dwGUID;
  1382. <a name="l01460"></a>01460 m_dwModel = dwModel;
  1383. <a name="l01461"></a>01461 m_wIcon = dwIcon;
  1384. <a name="l01462"></a>01462 m_strName = strName;
  1385. <a name="l01463"></a>01463 m_strDescription = strDescription;
  1386. <a name="l01464"></a>01464 m_wWeight = wWeight;
  1387. <a name="l01465"></a>01465 m_dwValue = dwValue;
  1388. <a name="l01466"></a>01466 m_dwContainer = dwContainer;
  1389. <a name="l01467"></a>01467
  1390. <a name="l01468"></a>01468 <span class="comment">// m_bInventorySequence= -1;</span>
  1391. <a name="l01469"></a>01469 m_wPositionSequence = 0;
  1392. <a name="l01470"></a>01470 m_wNumPortals = 0;
  1393. <a name="l01471"></a>01471 m_wNumLogins = 0x0;
  1394. <a name="l01472"></a>01472 m_fEquipped = 0;
  1395. <a name="l01473"></a>01473 }
  1396. <a name="l01474"></a>01474 <a class="code" href="classc_mana_stones.html">cManaStones</a>( ) {}
  1397. <a name="l01475"></a>01475 <span class="keyword">virtual</span> ~<a class="code" href="classc_mana_stones.html">cManaStones</a>( ) {}
  1398. <a name="l01476"></a>01476
  1399. <a name="l01477"></a>01477 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_mana_stones.html#a4129e92dba9bb8af633d9e2a6d9e74ad">CreatePacket</a> ( );
  1400. <a name="l01478"></a>01478 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_mana_stones.html#a06a227e69dfc8e1eda253e6d0f87822f">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1401. <a name="l01479"></a>01479 <span class="keywordtype">void</span> <a class="code" href="classc_mana_stones.html#ad4f75a9e334f4ad5e0667025f0899293">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1402. <a name="l01480"></a>01480 <span class="keywordtype">void</span> <a class="code" href="classc_mana_stones.html#a96f10b991478788393cdd5a81037ca9a">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1403. <a name="l01481"></a>01481
  1404. <a name="l01482"></a>01482 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1405. <a name="l01483"></a>01483 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1406. <a name="l01484"></a>01484 DWORD m_dwItemModelID;
  1407. <a name="l01485"></a>01485
  1408. <a name="l01486"></a>01486 <span class="keyword">protected</span>:
  1409. <a name="l01487"></a>01487 WORD m_wWeight;
  1410. <a name="l01488"></a>01488 DWORD m_dwValue;
  1411. <a name="l01489"></a>01489
  1412. <a name="l01490"></a>01490 std::string m_strDescription;
  1413. <a name="l01491"></a>01491 };
  1414. <a name="l01492"></a>01492
  1415. <a name="l01493"></a>01493 <span class="comment">/************************************</span>
  1416. <a name="l01494"></a>01494 <span class="comment">* Cubem0j0: item class - Lockpicks</span>
  1417. <a name="l01495"></a>01495 <span class="comment">************************************/</span>
  1418. <a name="l01496"></a><a class="code" href="classc_lockpicks.html">01496</a> <span class="keyword">class </span><a class="code" href="classc_lockpicks.html">cLockpicks</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1419. <a name="l01497"></a>01497 {
  1420. <a name="l01498"></a>01498 <span class="keyword">public</span>:
  1421. <a name="l01504"></a><a class="code" href="classc_lockpicks.html#aa6636f9fce983a526ff900de14bad2f2">01504</a> <a class="code" href="classc_lockpicks.html">cLockpicks</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1422. <a name="l01505"></a>01505 {
  1423. <a name="l01506"></a>01506 m_dwGUID = dwGUID;
  1424. <a name="l01507"></a>01507 m_dwModel = dwModel;
  1425. <a name="l01508"></a>01508 m_flScale = flScale;
  1426. <a name="l01509"></a>01509 m_wIcon = dwIcon;
  1427. <a name="l01510"></a>01510 m_strName = strName;
  1428. <a name="l01511"></a>01511 m_strDescription = strDescription;
  1429. <a name="l01512"></a>01512
  1430. <a name="l01513"></a>01513 m_bInventorySequence= -1;
  1431. <a name="l01514"></a>01514 m_wPositionSequence = 0;
  1432. <a name="l01515"></a>01515 m_wNumPortals = 0;
  1433. <a name="l01516"></a>01516 m_wNumLogins = 0x3C;
  1434. <a name="l01517"></a>01517 m_fEquipped = 0;
  1435. <a name="l01518"></a>01518
  1436. <a name="l01519"></a>01519 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1437. <a name="l01520"></a>01520 }
  1438. <a name="l01526"></a><a class="code" href="classc_lockpicks.html#aec42a0d25d33b01a5645a620f23965d9">01526</a> <a class="code" href="classc_lockpicks.html">cLockpicks</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, WORD wUses, WORD wUseLimit) : m_dwItemModelID( dwModel )
  1439. <a name="l01527"></a>01527 {
  1440. <a name="l01528"></a>01528 m_dwGUID = dwGUID;
  1441. <a name="l01529"></a>01529 m_dwModel = dwModel;
  1442. <a name="l01530"></a>01530 m_flScale = flScale;
  1443. <a name="l01531"></a>01531 m_wIcon = dwIcon;
  1444. <a name="l01532"></a>01532 m_strName = strName;
  1445. <a name="l01533"></a>01533 m_strDescription = strDescription;
  1446. <a name="l01534"></a>01534 m_dwContainer = dwContainer;
  1447. <a name="l01535"></a>01535 m_wUses = wUses;
  1448. <a name="l01536"></a>01536 m_wUseLimit = wUseLimit;
  1449. <a name="l01537"></a>01537
  1450. <a name="l01538"></a>01538 m_bInventorySequence= -1;
  1451. <a name="l01539"></a>01539 m_wPositionSequence = 0;
  1452. <a name="l01540"></a>01540 m_wNumPortals = 0;
  1453. <a name="l01541"></a>01541 m_wNumLogins = 0x3C;
  1454. <a name="l01542"></a>01542 m_fEquipped = 0;
  1455. <a name="l01543"></a>01543 }
  1456. <a name="l01544"></a>01544 <a class="code" href="classc_lockpicks.html">cLockpicks</a>( ) {}
  1457. <a name="l01545"></a>01545 <span class="keyword">virtual</span> ~<a class="code" href="classc_lockpicks.html">cLockpicks</a>( ) {}
  1458. <a name="l01546"></a>01546
  1459. <a name="l01547"></a>01547 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_lockpicks.html#a7952611d976150722d129a7ea6b3f391">CreatePacket</a> ( );
  1460. <a name="l01548"></a>01548 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_lockpicks.html#a192650b1993116b1296e46b5f4a6d7c7">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1461. <a name="l01549"></a>01549 <span class="keywordtype">void</span> <a class="code" href="classc_lockpicks.html#a33be7472b72433846dfba52bd640d463">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1462. <a name="l01550"></a>01550 <span class="keywordtype">void</span> <a class="code" href="classc_lockpicks.html#a08ccc5e641c9b8137738b90e0c7798b8">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1463. <a name="l01551"></a>01551
  1464. <a name="l01552"></a>01552 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1465. <a name="l01553"></a>01553 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1466. <a name="l01554"></a>01554 DWORD m_dwItemModelID;
  1467. <a name="l01555"></a>01555
  1468. <a name="l01556"></a>01556 <span class="keyword">protected</span>:
  1469. <a name="l01557"></a>01557 DWORD m_dwWeight;
  1470. <a name="l01558"></a>01558 DWORD m_dwValue;
  1471. <a name="l01559"></a>01559 BOOL m_fIsStackable;
  1472. <a name="l01560"></a>01560 BOOL m_fEquippable;
  1473. <a name="l01561"></a>01561 BOOL m_fIsSolid;
  1474. <a name="l01562"></a>01562 WORD m_wUses;
  1475. <a name="l01563"></a>01563 WORD m_wUseLimit;
  1476. <a name="l01564"></a>01564
  1477. <a name="l01565"></a>01565 std::string m_strDescription;
  1478. <a name="l01566"></a>01566 };
  1479. <a name="l01567"></a>01567
  1480. <a name="l01568"></a>01568 <span class="comment">/************************************</span>
  1481. <a name="l01569"></a>01569 <span class="comment">* Cubem0j0: item class - TradeSkillMats</span>
  1482. <a name="l01570"></a>01570 <span class="comment">************************************/</span>
  1483. <a name="l01571"></a><a class="code" href="classc_trade_skill_mats.html">01571</a> <span class="keyword">class </span><a class="code" href="classc_trade_skill_mats.html">cTradeSkillMats</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1484. <a name="l01572"></a>01572 {
  1485. <a name="l01573"></a>01573 <span class="keyword">public</span>:
  1486. <a name="l01579"></a><a class="code" href="classc_trade_skill_mats.html#a6cfb42574c46a880891865443375614b">01579</a> <a class="code" href="classc_trade_skill_mats.html">cTradeSkillMats</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1487. <a name="l01580"></a>01580 {
  1488. <a name="l01581"></a>01581 m_dwGUID = dwGUID;
  1489. <a name="l01582"></a>01582 m_dwModel = dwModel;
  1490. <a name="l01583"></a>01583 m_flScale = flScale;
  1491. <a name="l01584"></a>01584 m_wIcon = dwIcon;
  1492. <a name="l01585"></a>01585 m_strName = strName;
  1493. <a name="l01586"></a>01586 m_strDescription = strDescription;
  1494. <a name="l01587"></a>01587
  1495. <a name="l01588"></a>01588 m_bInventorySequence= -1;
  1496. <a name="l01589"></a>01589 m_wPositionSequence = 0;
  1497. <a name="l01590"></a>01590 m_wNumPortals = 0;
  1498. <a name="l01591"></a>01591 m_wNumLogins = 0x3C;
  1499. <a name="l01592"></a>01592 m_fEquipped = 0;
  1500. <a name="l01593"></a>01593
  1501. <a name="l01594"></a>01594 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1502. <a name="l01595"></a>01595 }
  1503. <a name="l01601"></a><a class="code" href="classc_trade_skill_mats.html#a19cab02105b856b9609f70c39b2f3c45">01601</a> <a class="code" href="classc_trade_skill_mats.html">cTradeSkillMats</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE ) : m_dwItemModelID( dwModel )
  1504. <a name="l01602"></a>01602 {
  1505. <a name="l01603"></a>01603 m_dwGUID = dwGUID;
  1506. <a name="l01604"></a>01604 m_dwModel = dwModel;
  1507. <a name="l01605"></a>01605 m_flScale = flScale;
  1508. <a name="l01606"></a>01606 m_wIcon = dwIcon;
  1509. <a name="l01607"></a>01607 m_strName = strName;
  1510. <a name="l01608"></a>01608 m_strDescription = strDescription;
  1511. <a name="l01609"></a>01609 m_fSelectable = fSelectable;
  1512. <a name="l01610"></a>01610 m_wWeight = wWeight;
  1513. <a name="l01611"></a>01611 m_dwValue = dwValue;
  1514. <a name="l01612"></a>01612 m_fIsOwned = fIsOwned;
  1515. <a name="l01613"></a>01613 m_dwContainer = dwContainer;
  1516. <a name="l01614"></a>01614 m_fEquippable = fEquippable;
  1517. <a name="l01615"></a>01615 m_fIsStackable = fStackable;
  1518. <a name="l01616"></a>01616 m_fIsSolid = fSolid;
  1519. <a name="l01617"></a>01617 m_fIsOwned = TRUE;
  1520. <a name="l01618"></a>01618
  1521. <a name="l01619"></a>01619 m_bInventorySequence= -1;
  1522. <a name="l01620"></a>01620 m_wPositionSequence = 0;
  1523. <a name="l01621"></a>01621 m_wNumPortals = 0;
  1524. <a name="l01622"></a>01622 m_wNumLogins = 0x3C;
  1525. <a name="l01623"></a>01623 m_fEquipped = 0;
  1526. <a name="l01624"></a>01624 }
  1527. <a name="l01625"></a>01625 <a class="code" href="classc_trade_skill_mats.html">cTradeSkillMats</a>( ) {}
  1528. <a name="l01626"></a>01626 <span class="keyword">virtual</span> ~<a class="code" href="classc_trade_skill_mats.html">cTradeSkillMats</a>( ) {}
  1529. <a name="l01627"></a>01627
  1530. <a name="l01628"></a>01628 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_trade_skill_mats.html#a58a8ba78dac6c16fd69d7ed2fc52283e">CreatePacket</a> ( );
  1531. <a name="l01629"></a>01629 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_trade_skill_mats.html#ad5f5412323936799b138a79a33d38f91">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1532. <a name="l01630"></a>01630 <span class="keywordtype">void</span> <a class="code" href="classc_trade_skill_mats.html#ad565fd8a3fe75e93d6a077aa976e9473">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1533. <a name="l01631"></a>01631 <span class="keywordtype">void</span> <a class="code" href="classc_trade_skill_mats.html#aac8477f73f07a56f9aa5203e6e2214dc">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1534. <a name="l01632"></a>01632
  1535. <a name="l01633"></a>01633 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1536. <a name="l01634"></a>01634 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1537. <a name="l01635"></a>01635 DWORD m_dwItemModelID;
  1538. <a name="l01636"></a>01636
  1539. <a name="l01637"></a>01637 <span class="keyword">protected</span>:
  1540. <a name="l01638"></a>01638 WORD m_wWeight;
  1541. <a name="l01639"></a>01639 DWORD m_dwValue;
  1542. <a name="l01640"></a>01640 BOOL m_fIsStackable;
  1543. <a name="l01641"></a>01641 BOOL m_fEquippable;
  1544. <a name="l01642"></a>01642 BOOL m_fIsSolid;
  1545. <a name="l01643"></a>01643
  1546. <a name="l01644"></a>01644 std::string m_strDescription;
  1547. <a name="l01645"></a>01645 };
  1548. <a name="l01646"></a>01646
  1549. <a name="l01647"></a>01647 <span class="comment">/************************************</span>
  1550. <a name="l01648"></a>01648 <span class="comment">* Cubem0j0: item class - Casting Items (Wands, Orbs, etc)</span>
  1551. <a name="l01649"></a>01649 <span class="comment">************************************/</span>
  1552. <a name="l01650"></a><a class="code" href="classc_wands.html">01650</a> <span class="keyword">class </span><a class="code" href="classc_wands.html">cWands</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1553. <a name="l01651"></a>01651 {
  1554. <a name="l01652"></a>01652 <span class="keyword">public</span>:
  1555. <a name="l01658"></a><a class="code" href="classc_wands.html#aaae4a6ac2d7007f4c336a0d15e3546b7">01658</a> <a class="code" href="classc_wands.html">cWands</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1556. <a name="l01659"></a>01659 {
  1557. <a name="l01660"></a>01660 m_dwGUID = dwGUID;
  1558. <a name="l01661"></a>01661 m_dwModel = dwModel;
  1559. <a name="l01662"></a>01662 m_flScale = flScale;
  1560. <a name="l01663"></a>01663 m_wIcon = dwIcon;
  1561. <a name="l01664"></a>01664 m_strName = strName;
  1562. <a name="l01665"></a>01665 m_strDescription = strDescription;
  1563. <a name="l01666"></a>01666
  1564. <a name="l01667"></a>01667 m_bInventorySequence= -1;
  1565. <a name="l01668"></a>01668 m_wPositionSequence = 0;
  1566. <a name="l01669"></a>01669 m_wNumPortals = 0;
  1567. <a name="l01670"></a>01670 m_wNumLogins = 0x3C;
  1568. <a name="l01671"></a>01671 m_fEquipped = 0;
  1569. <a name="l01672"></a>01672
  1570. <a name="l01673"></a>01673 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1571. <a name="l01674"></a>01674 }
  1572. <a name="l01680"></a><a class="code" href="classc_wands.html#a482f12129820a3c6a70c92ef524d3a40">01680</a> <a class="code" href="classc_wands.html">cWands</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE ) : m_dwItemModelID( dwModel )
  1573. <a name="l01681"></a>01681 {
  1574. <a name="l01682"></a>01682 m_dwGUID = dwGUID;
  1575. <a name="l01683"></a>01683 m_dwModel = dwModel;
  1576. <a name="l01684"></a>01684 m_flScale = flScale;
  1577. <a name="l01685"></a>01685 m_wIcon = dwIcon;
  1578. <a name="l01686"></a>01686 m_strName = strName;
  1579. <a name="l01687"></a>01687 m_strDescription = strDescription;
  1580. <a name="l01688"></a>01688 m_fSelectable = fSelectable;
  1581. <a name="l01689"></a>01689 m_wWeight = wWeight;
  1582. <a name="l01690"></a>01690 m_dwValue = dwValue;
  1583. <a name="l01691"></a>01691 m_fIsOwned = fIsOwned;
  1584. <a name="l01692"></a>01692 m_dwContainer = dwContainer;
  1585. <a name="l01693"></a>01693 m_fEquippable = fEquippable;
  1586. <a name="l01694"></a>01694 m_fIsStackable = fStackable;
  1587. <a name="l01695"></a>01695 m_fIsSolid = fSolid;
  1588. <a name="l01696"></a>01696 m_fIsOwned = TRUE;
  1589. <a name="l01697"></a>01697
  1590. <a name="l01698"></a>01698 m_bInventorySequence= -1;
  1591. <a name="l01699"></a>01699 m_wPositionSequence = 0;
  1592. <a name="l01700"></a>01700 m_wNumPortals = 0;
  1593. <a name="l01701"></a>01701 m_wNumLogins = 0x3C;
  1594. <a name="l01702"></a>01702 m_fEquipped = 0;
  1595. <a name="l01703"></a>01703 }
  1596. <a name="l01704"></a>01704 <a class="code" href="classc_wands.html">cWands</a>( ) {}
  1597. <a name="l01705"></a>01705 <span class="keyword">virtual</span> ~<a class="code" href="classc_wands.html">cWands</a>( ) {}
  1598. <a name="l01706"></a>01706
  1599. <a name="l01707"></a>01707 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_wands.html#abcd957fbc6eb79a32307a6b33767ced6">CreatePacket</a> ( );
  1600. <a name="l01708"></a>01708 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_wands.html#a47b8ef08e8974a2103af9ccbaf943334">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1601. <a name="l01709"></a>01709 <span class="keywordtype">void</span> <a class="code" href="classc_wands.html#a889f402bdbf15a71f7a5132ee5e923cf">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1602. <a name="l01710"></a>01710 <span class="keywordtype">void</span> <a class="code" href="classc_wands.html#a92e371eb11a675de6efd7b698a82e931">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1603. <a name="l01711"></a>01711
  1604. <a name="l01712"></a>01712 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1605. <a name="l01713"></a>01713 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1606. <a name="l01714"></a>01714 DWORD m_dwItemModelID;
  1607. <a name="l01715"></a>01715
  1608. <a name="l01716"></a>01716 <span class="keyword">protected</span>:
  1609. <a name="l01717"></a>01717 WORD m_wWeight;
  1610. <a name="l01718"></a>01718 DWORD m_dwValue;
  1611. <a name="l01719"></a>01719 BOOL m_fIsStackable;
  1612. <a name="l01720"></a>01720 BOOL m_fEquippable;
  1613. <a name="l01721"></a>01721 BOOL m_fIsSolid;
  1614. <a name="l01722"></a>01722
  1615. <a name="l01723"></a>01723 std::string m_strDescription;
  1616. <a name="l01724"></a>01724 };
  1617. <a name="l01725"></a>01725
  1618. <a name="l01726"></a>01726 <span class="comment">/************************************</span>
  1619. <a name="l01727"></a>01727 <span class="comment">* Cubem0j0: item class - Spell Components</span>
  1620. <a name="l01728"></a>01728 <span class="comment">************************************/</span>
  1621. <a name="l01729"></a><a class="code" href="classc_spell_comps.html">01729</a> <span class="keyword">class </span><a class="code" href="classc_spell_comps.html">cSpellComps</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1622. <a name="l01730"></a>01730 {
  1623. <a name="l01731"></a>01731 <span class="keyword">public</span>:
  1624. <a name="l01737"></a><a class="code" href="classc_spell_comps.html#ac83bf59d907fc1a7ab5ea4a3f80f764e">01737</a> <a class="code" href="classc_spell_comps.html">cSpellComps</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1625. <a name="l01738"></a>01738 {
  1626. <a name="l01739"></a>01739 m_dwGUID = dwGUID;
  1627. <a name="l01740"></a>01740 m_dwModel = dwModel;
  1628. <a name="l01741"></a>01741 m_flScale = flScale;
  1629. <a name="l01742"></a>01742 m_wIcon = dwIcon;
  1630. <a name="l01743"></a>01743 m_strName = strName;
  1631. <a name="l01744"></a>01744 m_strDescription = strDescription;
  1632. <a name="l01745"></a>01745
  1633. <a name="l01746"></a>01746 m_bInventorySequence= -1;
  1634. <a name="l01747"></a>01747 m_wPositionSequence = 0;
  1635. <a name="l01748"></a>01748 m_wNumPortals = 0;
  1636. <a name="l01749"></a>01749 m_wNumLogins = 0x3C;
  1637. <a name="l01750"></a>01750 m_fEquipped = 0;
  1638. <a name="l01751"></a>01751
  1639. <a name="l01752"></a>01752 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1640. <a name="l01753"></a>01753 }
  1641. <a name="l01759"></a><a class="code" href="classc_spell_comps.html#a82459e7a97881d1bea0ffbf11286ee40">01759</a> <a class="code" href="classc_spell_comps.html">cSpellComps</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wStack, WORD wWeight ) : m_dwItemModelID( dwModel )
  1642. <a name="l01760"></a>01760 {
  1643. <a name="l01761"></a>01761 m_dwGUID = dwGUID;
  1644. <a name="l01762"></a>01762 m_dwModel = dwModel;
  1645. <a name="l01763"></a>01763 m_wIcon = dwIcon;
  1646. <a name="l01764"></a>01764 m_strName = strName;
  1647. <a name="l01765"></a>01765 m_strDescription = strDescription;
  1648. <a name="l01766"></a>01766 m_wWeight = wWeight;
  1649. <a name="l01767"></a>01767 m_dwValue = dwValue;
  1650. <a name="l01768"></a>01768 m_dwContainer = dwContainer;
  1651. <a name="l01769"></a>01769 m_wStack = wStack;
  1652. <a name="l01770"></a>01770
  1653. <a name="l01771"></a>01771 m_bInventorySequence= -1;
  1654. <a name="l01772"></a>01772 m_wPositionSequence = 0;
  1655. <a name="l01773"></a>01773 m_wNumPortals = 0;
  1656. <a name="l01774"></a>01774 m_wNumLogins = 0x3C;
  1657. <a name="l01775"></a>01775 m_fEquipped = 0;
  1658. <a name="l01776"></a>01776 }
  1659. <a name="l01777"></a>01777
  1660. <a name="l01778"></a>01778 <a class="code" href="classc_spell_comps.html">cSpellComps</a>( ) {}
  1661. <a name="l01779"></a>01779 <span class="keyword">virtual</span> ~<a class="code" href="classc_spell_comps.html">cSpellComps</a>( ) {}
  1662. <a name="l01780"></a>01780
  1663. <a name="l01781"></a>01781 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_spell_comps.html#a0da78670ab3ef6a3aa2ef2c5f21e8362">CreatePacket</a> ( );
  1664. <a name="l01782"></a>01782 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_spell_comps.html#acfa1abea8a8c83cd8a0679c1b1832196">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1665. <a name="l01783"></a>01783 <span class="keywordtype">void</span> <a class="code" href="classc_spell_comps.html#a3956c03c527b8c82c8420fe7a61c865f">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1666. <a name="l01784"></a>01784 <span class="keywordtype">void</span> <a class="code" href="classc_spell_comps.html#a2938751a312804522db723e8120808c1">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1667. <a name="l01785"></a>01785
  1668. <a name="l01786"></a>01786 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1669. <a name="l01787"></a>01787 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1670. <a name="l01788"></a>01788
  1671. <a name="l01789"></a>01789 DWORD m_dwItemModelID;
  1672. <a name="l01790"></a>01790
  1673. <a name="l01791"></a>01791 <span class="keyword">protected</span>:
  1674. <a name="l01792"></a>01792 WORD m_wWeight;
  1675. <a name="l01793"></a>01793 WORD m_wStack;
  1676. <a name="l01794"></a>01794 DWORD m_dwValue;
  1677. <a name="l01795"></a>01795
  1678. <a name="l01796"></a>01796 std::string m_strDescription;
  1679. <a name="l01797"></a>01797 };
  1680. <a name="l01798"></a>01798
  1681. <a name="l01799"></a>01799 <span class="comment">/************************************</span>
  1682. <a name="l01800"></a>01800 <span class="comment">* Cubem0j0: item class - Plants</span>
  1683. <a name="l01801"></a>01801 <span class="comment">************************************/</span>
  1684. <a name="l01802"></a><a class="code" href="classc_plants.html">01802</a> <span class="keyword">class </span><a class="code" href="classc_plants.html">cPlants</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1685. <a name="l01803"></a>01803 {
  1686. <a name="l01804"></a>01804 <span class="keyword">public</span>:
  1687. <a name="l01810"></a><a class="code" href="classc_plants.html#a40302d42029d6756e28ccf666c893dc3">01810</a> <a class="code" href="classc_plants.html">cPlants</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1688. <a name="l01811"></a>01811 {
  1689. <a name="l01812"></a>01812 m_dwGUID = dwGUID;
  1690. <a name="l01813"></a>01813 m_dwModel = dwModel;
  1691. <a name="l01814"></a>01814 m_flScale = flScale;
  1692. <a name="l01815"></a>01815 m_wIcon = dwIcon;
  1693. <a name="l01816"></a>01816 m_strName = strName;
  1694. <a name="l01817"></a>01817 m_strDescription = strDescription;
  1695. <a name="l01818"></a>01818
  1696. <a name="l01819"></a>01819 m_bInventorySequence= -1;
  1697. <a name="l01820"></a>01820 m_wPositionSequence = 0;
  1698. <a name="l01821"></a>01821 m_wNumPortals = 0;
  1699. <a name="l01822"></a>01822 m_wNumLogins = 0x3C;
  1700. <a name="l01823"></a>01823 m_fEquipped = 0;
  1701. <a name="l01824"></a>01824
  1702. <a name="l01825"></a>01825 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1703. <a name="l01826"></a>01826 }
  1704. <a name="l01832"></a><a class="code" href="classc_plants.html#a4c6e74b830de45f53bd8f8a79dd7bc9e">01832</a> <a class="code" href="classc_plants.html">cPlants</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, DWORD wWeight ) : m_dwItemModelID( dwModel )
  1705. <a name="l01833"></a>01833 {
  1706. <a name="l01834"></a>01834 m_dwGUID = dwGUID;
  1707. <a name="l01835"></a>01835 m_dwModel = dwModel;
  1708. <a name="l01836"></a>01836 m_flScale = flScale;
  1709. <a name="l01837"></a>01837 m_wIcon = dwIcon;
  1710. <a name="l01838"></a>01838 m_strName = strName;
  1711. <a name="l01839"></a>01839 m_strDescription = strDescription;
  1712. <a name="l01840"></a>01840 m_wWeight = wWeight;
  1713. <a name="l01841"></a>01841 m_dwValue = dwValue;
  1714. <a name="l01842"></a>01842 m_dwContainer = dwContainer;
  1715. <a name="l01843"></a>01843
  1716. <a name="l01844"></a>01844
  1717. <a name="l01845"></a>01845 m_bInventorySequence= -1;
  1718. <a name="l01846"></a>01846 m_wPositionSequence = 0;
  1719. <a name="l01847"></a>01847 m_wNumPortals = 0;
  1720. <a name="l01848"></a>01848 m_wNumLogins = 0x3C;
  1721. <a name="l01849"></a>01849 m_fEquipped = 0;
  1722. <a name="l01850"></a>01850 }
  1723. <a name="l01851"></a>01851
  1724. <a name="l01852"></a>01852 <a class="code" href="classc_plants.html">cPlants</a>( ) {}
  1725. <a name="l01853"></a>01853 <span class="keyword">virtual</span> ~<a class="code" href="classc_plants.html">cPlants</a>( ) {}
  1726. <a name="l01854"></a>01854
  1727. <a name="l01855"></a>01855 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_plants.html#aa77f3470a38c125773462ec6678f4eee">CreatePacket</a> ( );
  1728. <a name="l01856"></a>01856 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_plants.html#a8f4a096c6c68ab04c76e7c31158c026d">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1729. <a name="l01857"></a>01857 <span class="keywordtype">void</span> <a class="code" href="classc_plants.html#ac939d98e92f70be83472ac03d65eca3a">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1730. <a name="l01858"></a>01858 <span class="keywordtype">void</span> <a class="code" href="classc_plants.html#a444db123f7305a3f34715293e5b49e16">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1731. <a name="l01859"></a>01859
  1732. <a name="l01860"></a>01860 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1733. <a name="l01861"></a>01861 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1734. <a name="l01862"></a>01862
  1735. <a name="l01863"></a>01863 DWORD m_dwItemModelID;
  1736. <a name="l01864"></a>01864
  1737. <a name="l01865"></a>01865 <span class="keyword">protected</span>:
  1738. <a name="l01866"></a>01866 WORD m_wWeight;
  1739. <a name="l01867"></a>01867 DWORD m_dwValue;
  1740. <a name="l01868"></a>01868
  1741. <a name="l01869"></a>01869 std::string m_strDescription;
  1742. <a name="l01870"></a>01870 };
  1743. <a name="l01871"></a>01871
  1744. <a name="l01872"></a>01872 <span class="comment">/************************************</span>
  1745. <a name="l01873"></a>01873 <span class="comment">* Cubem0j0: item class - Ammunition</span>
  1746. <a name="l01874"></a>01874 <span class="comment">************************************/</span>
  1747. <a name="l01875"></a><a class="code" href="classc_ammo.html">01875</a> <span class="keyword">class </span><a class="code" href="classc_ammo.html">cAmmo</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1748. <a name="l01876"></a>01876 {
  1749. <a name="l01877"></a>01877 <span class="keyword">public</span>:
  1750. <a name="l01883"></a><a class="code" href="classc_ammo.html#a1c1cdf907d5eacc268181275ccb8ad63">01883</a> <a class="code" href="classc_ammo.html">cAmmo</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1751. <a name="l01884"></a>01884 {
  1752. <a name="l01885"></a>01885 m_dwGUID = dwGUID;
  1753. <a name="l01886"></a>01886 m_dwModel = dwModel;
  1754. <a name="l01887"></a>01887 m_flScale = flScale;
  1755. <a name="l01888"></a>01888 m_wIcon = dwIcon;
  1756. <a name="l01889"></a>01889 m_strName = strName;
  1757. <a name="l01890"></a>01890 m_strDescription = strDescription;
  1758. <a name="l01891"></a>01891
  1759. <a name="l01892"></a>01892 m_bInventorySequence= -1;
  1760. <a name="l01893"></a>01893 m_wPositionSequence = 0;
  1761. <a name="l01894"></a>01894 m_wNumPortals = 0;
  1762. <a name="l01895"></a>01895 m_wNumLogins = 0x3C;
  1763. <a name="l01896"></a>01896 m_fEquipped = 0;
  1764. <a name="l01897"></a>01897
  1765. <a name="l01898"></a>01898 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1766. <a name="l01899"></a>01899 }
  1767. <a name="l01905"></a><a class="code" href="classc_ammo.html#a481dbfe842f32fed68311f69a0f3b619">01905</a> <a class="code" href="classc_ammo.html">cAmmo</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, WORD wStack, WORD wStackLimit ) : m_dwItemModelID( dwModel )
  1768. <a name="l01906"></a>01906 {
  1769. <a name="l01907"></a>01907 m_dwGUID = dwGUID;
  1770. <a name="l01908"></a>01908 m_dwModel = dwModel;
  1771. <a name="l01909"></a>01909 m_wIcon = dwIcon;
  1772. <a name="l01910"></a>01910 m_strName = strName;
  1773. <a name="l01911"></a>01911 m_strDescription = strDescription;
  1774. <a name="l01912"></a>01912 m_wWeight = wWeight;
  1775. <a name="l01913"></a>01913 m_dwValue = dwValue;
  1776. <a name="l01914"></a>01914 m_dwContainer = dwContainer;
  1777. <a name="l01915"></a>01915 m_wStack = wStack;
  1778. <a name="l01916"></a>01916 m_wStackLimit = wStackLimit;
  1779. <a name="l01917"></a>01917 m_bInventorySequence= -1;
  1780. <a name="l01918"></a>01918 m_wPositionSequence = 0;
  1781. <a name="l01919"></a>01919 m_wNumPortals = 0;
  1782. <a name="l01920"></a>01920 m_wNumLogins = 0x3C;
  1783. <a name="l01921"></a>01921 m_fEquipped = 0;
  1784. <a name="l01922"></a>01922 }
  1785. <a name="l01923"></a>01923 <a class="code" href="classc_ammo.html">cAmmo</a>( ) {}
  1786. <a name="l01924"></a>01924 <span class="keyword">virtual</span> ~<a class="code" href="classc_ammo.html">cAmmo</a>( ) {}
  1787. <a name="l01925"></a>01925
  1788. <a name="l01926"></a>01926 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_ammo.html#aa645fea4a41f2be0b6341d55cc63ce80">CreatePacket</a> ( );
  1789. <a name="l01927"></a>01927 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_ammo.html#a4c71bea5cab4405901490492b82a5f28">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1790. <a name="l01928"></a>01928 <span class="keywordtype">void</span> <a class="code" href="classc_ammo.html#a6618e41c242faee81415a37db088248d">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1791. <a name="l01929"></a>01929 <span class="keywordtype">void</span> <a class="code" href="classc_ammo.html#a68086277799a01cea572be4d83d429fd">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1792. <a name="l01930"></a>01930
  1793. <a name="l01931"></a>01931 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1794. <a name="l01932"></a>01932 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1795. <a name="l01933"></a>01933 DWORD m_dwItemModelID;
  1796. <a name="l01934"></a>01934
  1797. <a name="l01935"></a>01935 <span class="keyword">protected</span>:
  1798. <a name="l01936"></a>01936 WORD m_wWeight;
  1799. <a name="l01937"></a>01937 DWORD m_dwValue;
  1800. <a name="l01938"></a>01938 BOOL m_fIsStackable;
  1801. <a name="l01939"></a>01939 BOOL m_fEquippable;
  1802. <a name="l01940"></a>01940 BOOL m_fIsSolid;
  1803. <a name="l01941"></a>01941 WORD m_wStack;
  1804. <a name="l01942"></a>01942 WORD m_wStackLimit;
  1805. <a name="l01943"></a>01943
  1806. <a name="l01944"></a>01944 std::string m_strDescription;
  1807. <a name="l01945"></a>01945 };
  1808. <a name="l01946"></a>01946
  1809. <a name="l01947"></a>01947 <span class="comment">/************************************</span>
  1810. <a name="l01948"></a>01948 <span class="comment"> * Cubem0j0: item class - Weapon</span>
  1811. <a name="l01949"></a>01949 <span class="comment"> ************************************/</span>
  1812. <a name="l01950"></a><a class="code" href="classc_weapon.html">01950</a> <span class="keyword">class </span><a class="code" href="classc_weapon.html">cWeapon</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1813. <a name="l01951"></a>01951 {
  1814. <a name="l01952"></a>01952 <span class="keyword">public</span>:
  1815. <a name="l01958"></a><a class="code" href="classc_weapon.html#a01ba0c2af9cd902c91b830c50efee8f7">01958</a> <a class="code" href="classc_weapon.html">cWeapon</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription,
  1816. <a name="l01959"></a>01959 DWORD dwValue, WORD wWeight, BYTE bWieldType, DWORD dwIconHighlight, <span class="keywordtype">float</span> fWorkmanship, DWORD dwMaterialType, DWORD dwWeaponDamage,
  1817. <a name="l01960"></a>01960 DWORD dwWeaponSpeed, DWORD dwWeaponSkill, DWORD dwDamageType, <span class="keywordtype">double</span> dWeaponVariance, <span class="keywordtype">double</span> dWeaponModifier, <span class="keywordtype">double</span> dWeaponPower,
  1818. <a name="l01961"></a>01961 <span class="keywordtype">double</span> dWeaponAttack) : m_dwItemModelID( dwModel )
  1819. <a name="l01962"></a>01962 {
  1820. <a name="l01963"></a>01963 m_dwGUID = dwGUID;
  1821. <a name="l01964"></a>01964 m_dwModel = dwModel;
  1822. <a name="l01965"></a>01965 m_flScale = flScale;
  1823. <a name="l01966"></a>01966 m_wIcon = dwIcon;
  1824. <a name="l01967"></a>01967 m_strName = strName;
  1825. <a name="l01968"></a>01968 m_strDescription = strDescription;
  1826. <a name="l01969"></a>01969 m_wWeight = wWeight;
  1827. <a name="l01970"></a>01970 m_dwValue = dwValue;
  1828. <a name="l01971"></a>01971 m_bWieldType = bWieldType;
  1829. <a name="l01972"></a>01972 m_wIconHighlight = dwIconHighlight;
  1830. <a name="l01973"></a>01973 m_fWorkmanShip = fWorkmanship;
  1831. <a name="l01974"></a>01974 m_dwMaterialType = dwMaterialType;
  1832. <a name="l01975"></a>01975 m_dwWeaponDamage = dwWeaponDamage;
  1833. <a name="l01976"></a>01976 m_dwWeaponSpeed = dwWeaponSpeed;
  1834. <a name="l01977"></a>01977 m_dwWeaponSkill = dwWeaponSkill;
  1835. <a name="l01978"></a>01978 m_dwDamageType = dwDamageType;
  1836. <a name="l01979"></a>01979 m_dWeaponVariance = dWeaponVariance;
  1837. <a name="l01980"></a>01980 m_dWeaponModifier = dWeaponModifier;
  1838. <a name="l01981"></a>01981 m_dWeaponPower = dWeaponPower;
  1839. <a name="l01982"></a>01982 m_dWeaponAttack = dWeaponAttack;
  1840. <a name="l01983"></a>01983
  1841. <a name="l01984"></a>01984 m_bInventorySequence= -1;
  1842. <a name="l01985"></a>01985 m_wPositionSequence = 0;
  1843. <a name="l01986"></a>01986 m_wNumPortals = 0;
  1844. <a name="l01987"></a>01987 m_wNumLogins = 0x3C;
  1845. <a name="l01988"></a>01988 m_fEquipped = 0;
  1846. <a name="l01989"></a>01989
  1847. <a name="l01990"></a>01990 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1848. <a name="l01991"></a>01991 }
  1849. <a name="l01997"></a><a class="code" href="classc_weapon.html#a1292e45fe461658af7701fcf7fa4f850">01997</a> <a class="code" href="classc_weapon.html">cWeapon</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription,
  1850. <a name="l01998"></a>01998 DWORD dwValue, WORD wWeight, BYTE bWieldType, DWORD dwIconHighlight, <span class="keywordtype">float</span> fWorkmanship, DWORD dwMaterialType, DWORD dwWeaponDamage,
  1851. <a name="l01999"></a>01999 DWORD dwWeaponSpeed, DWORD dwWeaponSkill, DWORD dwDamageType, <span class="keywordtype">double</span> dWeaponVariance, <span class="keywordtype">double</span> dWeaponModifier, <span class="keywordtype">double</span> dWeaponPower,
  1852. <a name="l02000"></a>02000 <span class="keywordtype">double</span> dWeaponAttack ) : m_dwItemModelID( dwModel )
  1853. <a name="l02001"></a>02001 {
  1854. <a name="l02002"></a>02002 m_dwGUID = dwGUID;
  1855. <a name="l02003"></a>02003 m_dwModel = dwModel;
  1856. <a name="l02004"></a>02004 m_flScale = flScale;
  1857. <a name="l02005"></a>02005 m_wIcon = dwIcon;
  1858. <a name="l02006"></a>02006 m_strName = strName;
  1859. <a name="l02007"></a>02007 m_strDescription = strDescription;
  1860. <a name="l02008"></a>02008 <span class="comment">// m_fSelectable = fSelectable;</span>
  1861. <a name="l02009"></a>02009 m_wWeight = wWeight;
  1862. <a name="l02010"></a>02010 m_dwValue = dwValue;
  1863. <a name="l02011"></a>02011 m_bWieldType = bWieldType;
  1864. <a name="l02012"></a>02012 m_wIconHighlight = dwIconHighlight;
  1865. <a name="l02013"></a>02013 m_fWorkmanShip = fWorkmanship;
  1866. <a name="l02014"></a>02014 m_dwMaterialType = dwMaterialType;
  1867. <a name="l02015"></a>02015 m_dwWeaponDamage = dwWeaponDamage;
  1868. <a name="l02016"></a>02016 m_dwWeaponSpeed = dwWeaponSpeed;
  1869. <a name="l02017"></a>02017 m_dwWeaponSkill = dwWeaponSkill;
  1870. <a name="l02018"></a>02018 m_dwDamageType = dwDamageType;
  1871. <a name="l02019"></a>02019
  1872. <a name="l02020"></a>02020 m_dWeaponVariance = dWeaponVariance;
  1873. <a name="l02021"></a>02021 m_dWeaponModifier = dWeaponModifier;
  1874. <a name="l02022"></a>02022 m_dWeaponPower = dWeaponPower;
  1875. <a name="l02023"></a>02023 m_dWeaponAttack = dWeaponAttack;
  1876. <a name="l02024"></a>02024 <span class="comment">// m_fIsOwned = fIsOwned;</span>
  1877. <a name="l02025"></a>02025 <span class="comment">// m_dwContainer = dwContainer;</span>
  1878. <a name="l02026"></a>02026 <span class="comment">// m_fEquippable = fEquippable;</span>
  1879. <a name="l02027"></a>02027 <span class="comment">// m_fIsStackable = fStackable;</span>
  1880. <a name="l02028"></a>02028 <span class="comment">// m_fIsSolid = fSolid;</span>
  1881. <a name="l02029"></a>02029 <span class="comment">// m_fIsOwned = TRUE;</span>
  1882. <a name="l02030"></a>02030
  1883. <a name="l02031"></a>02031 m_bInventorySequence= -1;
  1884. <a name="l02032"></a>02032 m_wPositionSequence = 0;
  1885. <a name="l02033"></a>02033 m_wNumPortals = 0;
  1886. <a name="l02034"></a>02034 m_wNumLogins = 0x3C;
  1887. <a name="l02035"></a>02035 m_fEquipped = 0;
  1888. <a name="l02036"></a>02036 }
  1889. <a name="l02037"></a>02037 <a class="code" href="classc_weapon.html">cWeapon</a>( ) {}
  1890. <a name="l02038"></a>02038 <span class="keyword">virtual</span> ~<a class="code" href="classc_weapon.html">cWeapon</a>( ) {}
  1891. <a name="l02039"></a>02039
  1892. <a name="l02040"></a>02040 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_weapon.html#a19d96aaa6be648ec79d3fd073eab1c3e">CreatePacket</a> ( );
  1893. <a name="l02041"></a>02041 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_weapon.html#acfe58cfdc9bcd1d72396cacebf970653">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1894. <a name="l02042"></a>02042 <span class="keywordtype">void</span> <a class="code" href="classc_weapon.html#ac5e977b298c211870beb8c0681885649">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1895. <a name="l02043"></a>02043 <span class="keywordtype">void</span> <a class="code" href="classc_weapon.html#ac8a02d4f71745412f9f3100d735f1032">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1896. <a name="l02044"></a>02044
  1897. <a name="l02045"></a>02045 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1898. <a name="l02046"></a>02046 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1899. <a name="l02047"></a>02047
  1900. <a name="l02048"></a>02048 <span class="keyword">inline</span> DWORD GetItemValue ( ) { <span class="keywordflow">return</span> m_dwValue; }
  1901. <a name="l02049"></a>02049
  1902. <a name="l02050"></a>02050 <span class="keywordtype">int</span> GetIsUAWeapon()
  1903. <a name="l02051"></a>02051 {
  1904. <a name="l02052"></a>02052 <span class="keywordflow">return</span> isUAWeapon;
  1905. <a name="l02053"></a>02053 }
  1906. <a name="l02054"></a>02054
  1907. <a name="l02055"></a>02055 DWORD m_dwItemModelID;
  1908. <a name="l02056"></a>02056 BYTE m_bWieldType;
  1909. <a name="l02057"></a>02057 <span class="keywordtype">int</span> isUAWeapon;
  1910. <a name="l02058"></a>02058 DWORD m_dwDamageType;
  1911. <a name="l02059"></a>02059
  1912. <a name="l02060"></a>02060 <span class="keyword">protected</span>:
  1913. <a name="l02061"></a>02061 WORD m_wWeight;
  1914. <a name="l02062"></a>02062 DWORD m_dwValue;
  1915. <a name="l02063"></a>02063
  1916. <a name="l02064"></a>02064 DWORD m_wIconHighlight;
  1917. <a name="l02065"></a>02065 <span class="keywordtype">float</span> m_fWorkmanShip;
  1918. <a name="l02066"></a>02066 DWORD m_dwMaterialType;
  1919. <a name="l02067"></a>02067
  1920. <a name="l02068"></a>02068 DWORD m_dwWeaponDamage;
  1921. <a name="l02069"></a>02069 DWORD m_dwWeaponSpeed;
  1922. <a name="l02070"></a>02070 DWORD m_dwWeaponSkill;
  1923. <a name="l02071"></a>02071
  1924. <a name="l02072"></a>02072
  1925. <a name="l02073"></a>02073 <span class="keywordtype">double</span> m_dWeaponVariance;
  1926. <a name="l02074"></a>02074 <span class="keywordtype">double</span> m_dWeaponModifier;
  1927. <a name="l02075"></a>02075 <span class="keywordtype">double</span> m_dWeaponPower;
  1928. <a name="l02076"></a>02076 <span class="keywordtype">double</span> m_dWeaponAttack;
  1929. <a name="l02077"></a>02077
  1930. <a name="l02078"></a>02078 BOOL m_fIsStackable;
  1931. <a name="l02079"></a>02079 BOOL m_fEquippable;
  1932. <a name="l02080"></a>02080 BOOL m_fIsSolid;
  1933. <a name="l02081"></a>02081
  1934. <a name="l02082"></a>02082 std::string m_strDescription;
  1935. <a name="l02083"></a>02083 };
  1936. <a name="l02084"></a>02084
  1937. <a name="l02085"></a>02085 <span class="comment">/************************************</span>
  1938. <a name="l02086"></a>02086 <span class="comment">* Cubem0j0: item class - Salvage</span>
  1939. <a name="l02087"></a>02087 <span class="comment">************************************/</span>
  1940. <a name="l02088"></a><a class="code" href="classc_salvage.html">02088</a> <span class="keyword">class </span><a class="code" href="classc_salvage.html">cSalvage</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  1941. <a name="l02089"></a>02089 {
  1942. <a name="l02090"></a>02090 <span class="keyword">public</span>:
  1943. <a name="l02096"></a><a class="code" href="classc_salvage.html#a9af13b1628fc709cbf5258b986e2ed89">02096</a> <a class="code" href="classc_salvage.html">cSalvage</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  1944. <a name="l02097"></a>02097 {
  1945. <a name="l02098"></a>02098 m_dwGUID = dwGUID;
  1946. <a name="l02099"></a>02099 m_dwModel = dwModel;
  1947. <a name="l02100"></a>02100 m_flScale = flScale;
  1948. <a name="l02101"></a>02101 m_wIcon = dwIcon;
  1949. <a name="l02102"></a>02102 m_strName = strName;
  1950. <a name="l02103"></a>02103 m_strDescription = strDescription;
  1951. <a name="l02104"></a>02104
  1952. <a name="l02105"></a>02105 m_bInventorySequence= -1;
  1953. <a name="l02106"></a>02106 m_wPositionSequence = 0;
  1954. <a name="l02107"></a>02107 m_wNumPortals = 0;
  1955. <a name="l02108"></a>02108 m_wNumLogins = 0x3C;
  1956. <a name="l02109"></a>02109 m_fEquipped = 0;
  1957. <a name="l02110"></a>02110
  1958. <a name="l02111"></a>02111 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  1959. <a name="l02112"></a>02112 }
  1960. <a name="l02118"></a><a class="code" href="classc_salvage.html#a00bc460e32f6591da1b50747de1d8fe9">02118</a> <a class="code" href="classc_salvage.html">cSalvage</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight) : m_dwItemModelID( dwModel )
  1961. <a name="l02119"></a>02119 {
  1962. <a name="l02120"></a>02120 m_dwGUID = dwGUID;
  1963. <a name="l02121"></a>02121 m_dwModel = dwModel;
  1964. <a name="l02122"></a>02122 m_flScale = flScale;
  1965. <a name="l02123"></a>02123 m_wIcon = dwIcon;
  1966. <a name="l02124"></a>02124 m_strName = strName;
  1967. <a name="l02125"></a>02125 m_strDescription = strDescription;
  1968. <a name="l02126"></a>02126 m_wWeight = wWeight;
  1969. <a name="l02127"></a>02127 m_dwValue = dwValue;
  1970. <a name="l02128"></a>02128
  1971. <a name="l02129"></a>02129 m_bInventorySequence= -1;
  1972. <a name="l02130"></a>02130 m_wPositionSequence = 0;
  1973. <a name="l02131"></a>02131 m_wNumPortals = 0;
  1974. <a name="l02132"></a>02132 m_wNumLogins = 0x3C;
  1975. <a name="l02133"></a>02133 m_fEquipped = 0;
  1976. <a name="l02134"></a>02134 }
  1977. <a name="l02135"></a>02135
  1978. <a name="l02136"></a>02136 <a class="code" href="classc_salvage.html">cSalvage</a>( ) {}
  1979. <a name="l02137"></a>02137 <span class="keyword">virtual</span> ~<a class="code" href="classc_salvage.html">cSalvage</a>( ) {}
  1980. <a name="l02138"></a>02138
  1981. <a name="l02139"></a>02139 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_salvage.html#a87c3efcc600646e700e14b3612a5885d">CreatePacket</a> ( );
  1982. <a name="l02140"></a>02140 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_salvage.html#a21bb331c721b50e24baa56ddc7040427">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  1983. <a name="l02141"></a>02141 <span class="keywordtype">void</span> <a class="code" href="classc_salvage.html#a869c04ddb90a9a1b2205fa6e667dc5c6">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  1984. <a name="l02142"></a>02142 <span class="keywordtype">void</span> <a class="code" href="classc_salvage.html#a3ff775c40eda9786afed8d6e6d2794bb">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  1985. <a name="l02143"></a>02143
  1986. <a name="l02144"></a>02144 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  1987. <a name="l02145"></a>02145 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  1988. <a name="l02146"></a>02146
  1989. <a name="l02147"></a>02147 DWORD m_dwItemModelID;
  1990. <a name="l02148"></a>02148
  1991. <a name="l02149"></a>02149 <span class="keyword">protected</span>:
  1992. <a name="l02150"></a>02150 WORD m_wWeight;
  1993. <a name="l02151"></a>02151 DWORD m_dwValue;
  1994. <a name="l02152"></a>02152 BOOL m_fIsStackable;
  1995. <a name="l02153"></a>02153 BOOL m_fEquippable;
  1996. <a name="l02154"></a>02154 BOOL m_fIsSolid;
  1997. <a name="l02155"></a>02155
  1998. <a name="l02156"></a>02156 std::string m_strDescription;
  1999. <a name="l02157"></a>02157 };
  2000. <a name="l02158"></a>02158
  2001. <a name="l02159"></a>02159 <span class="comment">/************************************</span>
  2002. <a name="l02160"></a>02160 <span class="comment">* Cubem0j0: item class - Pyreals</span>
  2003. <a name="l02161"></a>02161 <span class="comment">************************************/</span>
  2004. <a name="l02162"></a><a class="code" href="classc_pyreals.html">02162</a> <span class="keyword">class </span><a class="code" href="classc_pyreals.html">cPyreals</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2005. <a name="l02163"></a>02163 {
  2006. <a name="l02164"></a>02164 <span class="keyword">public</span>:
  2007. <a name="l02170"></a><a class="code" href="classc_pyreals.html#afc454bc8f820e543d62077cedd1fe410">02170</a> <a class="code" href="classc_pyreals.html">cPyreals</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wStack, WORD wStackLimit) : m_dwItemModelID( dwModel )
  2008. <a name="l02171"></a>02171 {
  2009. <a name="l02172"></a>02172 m_dwGUID = dwGUID;
  2010. <a name="l02173"></a>02173 m_dwModel = dwModel;
  2011. <a name="l02174"></a>02174 m_wIcon = wIcon;
  2012. <a name="l02175"></a>02175
  2013. <a name="l02176"></a>02176 m_strName = strName;
  2014. <a name="l02177"></a>02177 m_strDescription = strDescription;
  2015. <a name="l02178"></a>02178 m_dwValue = dwValue;
  2016. <a name="l02179"></a>02179 m_wStack = wStack;
  2017. <a name="l02180"></a>02180 m_wStackLimit = wStackLimit;
  2018. <a name="l02181"></a>02181
  2019. <a name="l02182"></a>02182 m_bInventorySequence= -1;
  2020. <a name="l02183"></a>02183 m_wPositionSequence = 0;
  2021. <a name="l02184"></a>02184 m_wNumPortals = 0;
  2022. <a name="l02185"></a>02185 m_wNumLogins = 0x3C;
  2023. <a name="l02186"></a>02186 m_fEquipped = 0;
  2024. <a name="l02187"></a>02187
  2025. <a name="l02188"></a>02188 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2026. <a name="l02189"></a>02189 }
  2027. <a name="l02195"></a><a class="code" href="classc_pyreals.html#a27dfa7353f363f984ad4832aa9fdd736">02195</a> <a class="code" href="classc_pyreals.html">cPyreals</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wStack, WORD wStackLimit) : m_dwItemModelID( dwModel )
  2028. <a name="l02196"></a>02196 {
  2029. <a name="l02197"></a>02197 m_dwGUID = dwGUID;
  2030. <a name="l02198"></a>02198 m_dwModel = dwModel;
  2031. <a name="l02199"></a>02199 m_wIcon = wIcon;
  2032. <a name="l02200"></a>02200 m_strName = strName;
  2033. <a name="l02201"></a>02201 m_strDescription = strDescription;
  2034. <a name="l02202"></a>02202 m_dwValue = dwValue;
  2035. <a name="l02203"></a>02203 m_wStack = wStack;
  2036. <a name="l02204"></a>02204 m_wStackLimit = wStackLimit;
  2037. <a name="l02205"></a>02205
  2038. <a name="l02206"></a>02206 m_bInventorySequence= -1;
  2039. <a name="l02207"></a>02207 m_wPositionSequence = 0;
  2040. <a name="l02208"></a>02208 m_wNumPortals = 0;
  2041. <a name="l02209"></a>02209 m_wNumLogins = 0x3C;
  2042. <a name="l02210"></a>02210 m_fEquipped = 0;
  2043. <a name="l02211"></a>02211 }
  2044. <a name="l02212"></a>02212
  2045. <a name="l02213"></a>02213 <a class="code" href="classc_pyreals.html">cPyreals</a>( ) {}
  2046. <a name="l02214"></a>02214 <span class="keyword">virtual</span> ~<a class="code" href="classc_pyreals.html">cPyreals</a>( ) {}
  2047. <a name="l02215"></a>02215
  2048. <a name="l02216"></a>02216 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_pyreals.html#a7c7a11e0035c654d04bb79694181e95a">CreatePacket</a> ( );
  2049. <a name="l02217"></a>02217 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_pyreals.html#a0fec7f279454348a6c62b5a4e9eb6a93">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2050. <a name="l02218"></a>02218 <span class="keywordtype">void</span> <a class="code" href="classc_pyreals.html#a8193e4f41d0e3d23b42215fde687f632">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2051. <a name="l02219"></a>02219 <span class="keywordtype">void</span> <a class="code" href="classc_pyreals.html#ae9053831f9c679223302a2409619c4e9">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2052. <a name="l02220"></a>02220 <span class="keywordtype">void</span> <a class="code" href="classc_pyreals.html#ac801f957cd589597b34aa02fd88928ea">Stack</a> ( <a class="code" href="classc_client.html">cClient</a>* who, DWORD item1, DWORD item2, DWORD amount);
  2053. <a name="l02221"></a>02221 <span class="keywordtype">void</span> <a class="code" href="classc_pyreals.html#ae8c6fd2d8458f76e62bf3e005f2a62c2">Split</a> ( <a class="code" href="classc_client.html">cClient</a>* who, DWORD item_guid, DWORD slot, DWORD value );
  2054. <a name="l02222"></a>02222
  2055. <a name="l02223"></a>02223 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2056. <a name="l02224"></a>02224 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2057. <a name="l02225"></a>02225 DWORD m_dwItemModelID;
  2058. <a name="l02226"></a>02226
  2059. <a name="l02227"></a>02227 WORD GetStack()
  2060. <a name="l02228"></a>02228 {
  2061. <a name="l02229"></a>02229 <span class="keywordflow">return</span> m_wStack;
  2062. <a name="l02230"></a>02230 }
  2063. <a name="l02231"></a>02231
  2064. <a name="l02232"></a>02232 WORD SetStack(WORD amount)
  2065. <a name="l02233"></a>02233 {
  2066. <a name="l02234"></a>02234 m_wStack = amount;
  2067. <a name="l02235"></a>02235 }
  2068. <a name="l02236"></a>02236
  2069. <a name="l02237"></a>02237 <span class="keyword">protected</span>:
  2070. <a name="l02238"></a>02238 WORD m_wStack;
  2071. <a name="l02239"></a>02239 WORD m_wStackLimit;
  2072. <a name="l02240"></a>02240 DWORD m_dwWeight;
  2073. <a name="l02241"></a>02241 DWORD m_dwValue;
  2074. <a name="l02242"></a>02242 BOOL m_fIsStackable;
  2075. <a name="l02243"></a>02243 BOOL m_fEquippable;
  2076. <a name="l02244"></a>02244 BOOL m_fIsSolid;
  2077. <a name="l02245"></a>02245
  2078. <a name="l02246"></a>02246 std::string m_strDescription;
  2079. <a name="l02247"></a>02247 };
  2080. <a name="l02248"></a>02248
  2081. <a name="l02249"></a>02249 <span class="comment">/************************************</span>
  2082. <a name="l02250"></a>02250 <span class="comment">* Cubem0j0: item class - Trade Notes</span>
  2083. <a name="l02251"></a>02251 <span class="comment">************************************/</span>
  2084. <a name="l02252"></a><a class="code" href="classc_trade_notes.html">02252</a> <span class="keyword">class </span><a class="code" href="classc_trade_notes.html">cTradeNotes</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2085. <a name="l02253"></a>02253 {
  2086. <a name="l02254"></a>02254 <span class="keyword">public</span>:
  2087. <a name="l02260"></a><a class="code" href="classc_trade_notes.html#a487203d474f918e90abd3d99ce30c547">02260</a> <a class="code" href="classc_trade_notes.html">cTradeNotes</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight) : m_dwItemModelID( dwModel )
  2088. <a name="l02261"></a>02261 {
  2089. <a name="l02262"></a>02262 m_dwGUID = dwGUID;
  2090. <a name="l02263"></a>02263 m_dwModel = dwModel;
  2091. <a name="l02264"></a>02264 m_flScale = flScale;
  2092. <a name="l02265"></a>02265 m_wIcon = wIcon;
  2093. <a name="l02266"></a>02266 m_strName = strName;
  2094. <a name="l02267"></a>02267 m_strDescription = strDescription;
  2095. <a name="l02268"></a>02268 m_wWeight = wWeight;
  2096. <a name="l02269"></a>02269 m_dwValue = dwValue;
  2097. <a name="l02270"></a>02270 m_bInventorySequence= -1;
  2098. <a name="l02271"></a>02271 m_wPositionSequence = 0;
  2099. <a name="l02272"></a>02272 m_wNumPortals = 0;
  2100. <a name="l02273"></a>02273 m_wNumLogins = 0x3C;
  2101. <a name="l02274"></a>02274 m_fEquipped = 0;
  2102. <a name="l02275"></a>02275
  2103. <a name="l02276"></a>02276 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2104. <a name="l02277"></a>02277 }
  2105. <a name="l02283"></a><a class="code" href="classc_trade_notes.html#a47f7c75c2db12c8ce6785b42b81fbdda">02283</a> <a class="code" href="classc_trade_notes.html">cTradeNotes</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight) : m_dwItemModelID( dwModel )
  2106. <a name="l02284"></a>02284 {
  2107. <a name="l02285"></a>02285 m_dwGUID = dwGUID;
  2108. <a name="l02286"></a>02286 m_dwModel = dwModel;
  2109. <a name="l02287"></a>02287 m_flScale = flScale;
  2110. <a name="l02288"></a>02288 m_wIcon = dwIcon;
  2111. <a name="l02289"></a>02289 m_strName = strName;
  2112. <a name="l02290"></a>02290 m_strDescription = strDescription;
  2113. <a name="l02291"></a>02291 m_wWeight = wWeight;
  2114. <a name="l02292"></a>02292 m_dwValue = dwValue;
  2115. <a name="l02293"></a>02293
  2116. <a name="l02294"></a>02294 m_bInventorySequence= -1;
  2117. <a name="l02295"></a>02295 m_wPositionSequence = 0;
  2118. <a name="l02296"></a>02296 m_wNumPortals = 0;
  2119. <a name="l02297"></a>02297 m_wNumLogins = 0x3C;
  2120. <a name="l02298"></a>02298 m_fEquipped = 0;
  2121. <a name="l02299"></a>02299 }
  2122. <a name="l02300"></a>02300
  2123. <a name="l02301"></a>02301 <a class="code" href="classc_trade_notes.html">cTradeNotes</a>( ) {}
  2124. <a name="l02302"></a>02302 <span class="keyword">virtual</span> ~<a class="code" href="classc_trade_notes.html">cTradeNotes</a>( ) {}
  2125. <a name="l02303"></a>02303
  2126. <a name="l02304"></a>02304 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_trade_notes.html#a8bf74eb38db44d0bca026ab5102830a1">CreatePacket</a> ( );
  2127. <a name="l02305"></a>02305 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_trade_notes.html#a108a1b32677e2f74c256012f2c0c346a">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2128. <a name="l02306"></a>02306 <span class="keywordtype">void</span> <a class="code" href="classc_trade_notes.html#ab748e9e39e49f1b93e58f995f12ad4b2">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2129. <a name="l02307"></a>02307 <span class="keywordtype">void</span> <a class="code" href="classc_trade_notes.html#a0f95699209d067900e65e1762fae1bdc">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2130. <a name="l02308"></a>02308
  2131. <a name="l02309"></a>02309 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2132. <a name="l02310"></a>02310 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2133. <a name="l02311"></a>02311 DWORD m_dwItemModelID;
  2134. <a name="l02312"></a>02312
  2135. <a name="l02313"></a>02313 <span class="keyword">protected</span>:
  2136. <a name="l02314"></a>02314 WORD m_wWeight;
  2137. <a name="l02315"></a>02315 DWORD m_dwValue;
  2138. <a name="l02316"></a>02316 BOOL m_fIsStackable;
  2139. <a name="l02317"></a>02317 BOOL m_fEquippable;
  2140. <a name="l02318"></a>02318 BOOL m_fIsSolid;
  2141. <a name="l02319"></a>02319
  2142. <a name="l02320"></a>02320 std::string m_strDescription;
  2143. <a name="l02321"></a>02321 };
  2144. <a name="l02322"></a>02322
  2145. <a name="l02323"></a>02323 <span class="comment">/************************************</span>
  2146. <a name="l02324"></a>02324 <span class="comment">* Cubem0j0: item class - Jewelry</span>
  2147. <a name="l02325"></a>02325 <span class="comment">************************************/</span>
  2148. <a name="l02326"></a><a class="code" href="classc_jewelry.html">02326</a> <span class="keyword">class </span><a class="code" href="classc_jewelry.html">cJewelry</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2149. <a name="l02327"></a>02327 {
  2150. <a name="l02328"></a>02328 <span class="keyword">public</span>:
  2151. <a name="l02334"></a><a class="code" href="classc_jewelry.html#abcf11d71b72254af06be2896edf811e0">02334</a> <a class="code" href="classc_jewelry.html">cJewelry</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  2152. <a name="l02335"></a>02335 {
  2153. <a name="l02336"></a>02336 m_dwGUID = dwGUID;
  2154. <a name="l02337"></a>02337 m_dwModel = dwModel;
  2155. <a name="l02338"></a>02338 m_flScale = flScale;
  2156. <a name="l02339"></a>02339 m_wIcon = dwIcon;
  2157. <a name="l02340"></a>02340 m_strName = strName;
  2158. <a name="l02341"></a>02341 m_strDescription = strDescription;
  2159. <a name="l02342"></a>02342
  2160. <a name="l02343"></a>02343 m_bInventorySequence= -1;
  2161. <a name="l02344"></a>02344 m_wPositionSequence = 0;
  2162. <a name="l02345"></a>02345 m_wNumPortals = 0;
  2163. <a name="l02346"></a>02346 m_wNumLogins = 0x3C;
  2164. <a name="l02347"></a>02347 m_fEquipped = 0;
  2165. <a name="l02348"></a>02348
  2166. <a name="l02349"></a>02349 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2167. <a name="l02350"></a>02350 }
  2168. <a name="l02356"></a><a class="code" href="classc_jewelry.html#a5296d07cc67501589053dda928b8baaf">02356</a> <a class="code" href="classc_jewelry.html">cJewelry</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight) : m_dwItemModelID( dwModel )
  2169. <a name="l02357"></a>02357 {
  2170. <a name="l02358"></a>02358 m_dwGUID = dwGUID;
  2171. <a name="l02359"></a>02359 m_dwModel = dwModel;
  2172. <a name="l02360"></a>02360 m_flScale = flScale;
  2173. <a name="l02361"></a>02361 m_wIcon = dwIcon;
  2174. <a name="l02362"></a>02362 m_strName = strName;
  2175. <a name="l02363"></a>02363 m_strDescription = strDescription;
  2176. <a name="l02364"></a>02364 m_wWeight = wWeight;
  2177. <a name="l02365"></a>02365 m_dwValue = dwValue;
  2178. <a name="l02366"></a>02366
  2179. <a name="l02367"></a>02367 m_bInventorySequence= -1;
  2180. <a name="l02368"></a>02368 m_wPositionSequence = 0;
  2181. <a name="l02369"></a>02369 m_wNumPortals = 0;
  2182. <a name="l02370"></a>02370 m_wNumLogins = 0x3C;
  2183. <a name="l02371"></a>02371 m_fEquipped = 0;
  2184. <a name="l02372"></a>02372 }
  2185. <a name="l02373"></a>02373
  2186. <a name="l02374"></a>02374 <a class="code" href="classc_jewelry.html">cJewelry</a>( ) {}
  2187. <a name="l02375"></a>02375 <span class="keyword">virtual</span> ~<a class="code" href="classc_jewelry.html">cJewelry</a>( ) {}
  2188. <a name="l02376"></a>02376
  2189. <a name="l02377"></a>02377 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_jewelry.html#a415987cebea6fb8ae87e6f20f70d80db">CreatePacket</a> ( );
  2190. <a name="l02378"></a>02378 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_jewelry.html#a6ae29817a3e44affb2094fb71530cdc5">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2191. <a name="l02379"></a>02379 <span class="keywordtype">void</span> <a class="code" href="classc_jewelry.html#ab877230e7990286fa6c5f693263fd34b">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2192. <a name="l02380"></a>02380 <span class="keywordtype">void</span> <a class="code" href="classc_jewelry.html#ad3019eb1f29f51421e6d6e78d9ab763b">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2193. <a name="l02381"></a>02381
  2194. <a name="l02382"></a>02382 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2195. <a name="l02383"></a>02383 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2196. <a name="l02384"></a>02384 DWORD m_dwItemModelID;
  2197. <a name="l02385"></a>02385
  2198. <a name="l02386"></a>02386 <span class="keyword">protected</span>:
  2199. <a name="l02387"></a>02387 WORD m_wWeight;
  2200. <a name="l02388"></a>02388 DWORD m_dwValue;
  2201. <a name="l02389"></a>02389 BOOL m_fIsStackable;
  2202. <a name="l02390"></a>02390 BOOL m_fEquippable;
  2203. <a name="l02391"></a>02391 BOOL m_fIsSolid;
  2204. <a name="l02392"></a>02392
  2205. <a name="l02393"></a>02393 std::string m_strDescription;
  2206. <a name="l02394"></a>02394 };
  2207. <a name="l02395"></a>02395
  2208. <a name="l02396"></a>02396 <span class="comment">/************************************</span>
  2209. <a name="l02397"></a>02397 <span class="comment">* Cubem0j0: item class - Foci</span>
  2210. <a name="l02398"></a>02398 <span class="comment">************************************/</span>
  2211. <a name="l02399"></a><a class="code" href="classc_foci.html">02399</a> <span class="keyword">class </span><a class="code" href="classc_foci.html">cFoci</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2212. <a name="l02400"></a>02400 {
  2213. <a name="l02401"></a>02401 <span class="keyword">public</span>:
  2214. <a name="l02407"></a><a class="code" href="classc_foci.html#a41f243574a1d553ceec220e6340705c5">02407</a> <a class="code" href="classc_foci.html">cFoci</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  2215. <a name="l02408"></a>02408 {
  2216. <a name="l02409"></a>02409 m_dwGUID = dwGUID;
  2217. <a name="l02410"></a>02410 m_dwModel = dwModel;
  2218. <a name="l02411"></a>02411 m_flScale = flScale;
  2219. <a name="l02412"></a>02412 m_wIcon = dwIcon;
  2220. <a name="l02413"></a>02413 m_strName = strName;
  2221. <a name="l02414"></a>02414 m_strDescription = strDescription;
  2222. <a name="l02415"></a>02415 <span class="comment">// m_wWeight = wWeight;</span>
  2223. <a name="l02416"></a>02416 <span class="comment">// m_dwValue = dwValue;</span>
  2224. <a name="l02417"></a>02417
  2225. <a name="l02418"></a>02418 m_bInventorySequence= -1;
  2226. <a name="l02419"></a>02419 m_wPositionSequence = 0;
  2227. <a name="l02420"></a>02420 m_wNumPortals = 0;
  2228. <a name="l02421"></a>02421 m_wNumLogins = 0x3C;
  2229. <a name="l02422"></a>02422 m_fEquipped = 0;
  2230. <a name="l02423"></a>02423
  2231. <a name="l02424"></a>02424 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2232. <a name="l02425"></a>02425 }
  2233. <a name="l02431"></a><a class="code" href="classc_foci.html#a7d2ce50fcb0fd2ea29100a298f605d41">02431</a> <a class="code" href="classc_foci.html">cFoci</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE ) : m_dwItemModelID( dwModel )
  2234. <a name="l02432"></a>02432 {
  2235. <a name="l02433"></a>02433 m_dwGUID = dwGUID;
  2236. <a name="l02434"></a>02434 m_dwModel = dwModel;
  2237. <a name="l02435"></a>02435 m_flScale = flScale;
  2238. <a name="l02436"></a>02436 m_wIcon = dwIcon;
  2239. <a name="l02437"></a>02437 m_strName = strName;
  2240. <a name="l02438"></a>02438 m_strDescription = strDescription;
  2241. <a name="l02439"></a>02439 m_fSelectable = fSelectable;
  2242. <a name="l02440"></a>02440 m_wWeight = wWeight;
  2243. <a name="l02441"></a>02441 m_dwValue = dwValue;
  2244. <a name="l02442"></a>02442 m_fIsOwned = fIsOwned;
  2245. <a name="l02443"></a>02443 m_dwContainer = dwContainer;
  2246. <a name="l02444"></a>02444 m_fEquippable = fEquippable;
  2247. <a name="l02445"></a>02445 m_fIsStackable = fStackable;
  2248. <a name="l02446"></a>02446 m_fIsSolid = fSolid;
  2249. <a name="l02447"></a>02447 m_fIsOwned = TRUE;
  2250. <a name="l02448"></a>02448
  2251. <a name="l02449"></a>02449 m_bInventorySequence= -1;
  2252. <a name="l02450"></a>02450 m_wPositionSequence = 0;
  2253. <a name="l02451"></a>02451 m_wNumPortals = 0;
  2254. <a name="l02452"></a>02452 m_wNumLogins = 0x3C;
  2255. <a name="l02453"></a>02453 m_fEquipped = 0;
  2256. <a name="l02454"></a>02454 }
  2257. <a name="l02455"></a>02455 <a class="code" href="classc_foci.html">cFoci</a>( ) {}
  2258. <a name="l02456"></a>02456 <span class="keyword">virtual</span> ~<a class="code" href="classc_foci.html">cFoci</a>( ) {}
  2259. <a name="l02457"></a>02457
  2260. <a name="l02458"></a>02458 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_foci.html#a3bc1269885b79029363ac5aef3e3ab42">CreatePacket</a> ( );
  2261. <a name="l02459"></a>02459 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_foci.html#a975187acbcd68a5eea4da58699cd8459">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2262. <a name="l02460"></a>02460 <span class="keywordtype">void</span> <a class="code" href="classc_foci.html#aaff209edaf2b89126ada579f2340c3d4">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2263. <a name="l02461"></a>02461 <span class="keywordtype">void</span> <a class="code" href="classc_foci.html#a549837928abee7411c3801917fe9ddb4">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2264. <a name="l02462"></a>02462
  2265. <a name="l02463"></a>02463 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2266. <a name="l02464"></a>02464 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2267. <a name="l02465"></a>02465 DWORD m_dwItemModelID;
  2268. <a name="l02466"></a>02466
  2269. <a name="l02467"></a>02467 <span class="keyword">protected</span>:
  2270. <a name="l02468"></a>02468 WORD m_wWeight;
  2271. <a name="l02469"></a>02469 DWORD m_dwValue;
  2272. <a name="l02470"></a>02470 BOOL m_fIsStackable;
  2273. <a name="l02471"></a>02471 BOOL m_fEquippable;
  2274. <a name="l02472"></a>02472 BOOL m_fIsSolid;
  2275. <a name="l02473"></a>02473
  2276. <a name="l02474"></a>02474 std::string m_strDescription;
  2277. <a name="l02475"></a>02475 };
  2278. <a name="l02476"></a>02476
  2279. <a name="l02477"></a>02477 <span class="comment">/************************************</span>
  2280. <a name="l02478"></a>02478 <span class="comment">* Cubem0j0: item class - Packs</span>
  2281. <a name="l02479"></a>02479 <span class="comment">************************************/</span>
  2282. <a name="l02480"></a><a class="code" href="classc_pack.html">02480</a> <span class="keyword">class </span><a class="code" href="classc_pack.html">cPack</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2283. <a name="l02481"></a>02481 {
  2284. <a name="l02482"></a>02482 <span class="keyword">public</span>:
  2285. <a name="l02488"></a><a class="code" href="classc_pack.html#a3ef41df51cd179101362ac59c827883e">02488</a> <a class="code" href="classc_pack.html">cPack</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  2286. <a name="l02489"></a>02489 {
  2287. <a name="l02490"></a>02490 m_dwGUID = dwGUID;
  2288. <a name="l02491"></a>02491 m_dwModel = dwModel;
  2289. <a name="l02492"></a>02492 m_flScale = flScale;
  2290. <a name="l02493"></a>02493 m_wIcon = dwIcon;
  2291. <a name="l02494"></a>02494 m_strName = strName;
  2292. <a name="l02495"></a>02495 m_strDescription = strDescription;
  2293. <a name="l02496"></a>02496 <span class="comment">// m_wWeight = wWeight;</span>
  2294. <a name="l02497"></a>02497 <span class="comment">// m_dwValue = dwValue;</span>
  2295. <a name="l02498"></a>02498
  2296. <a name="l02499"></a>02499 m_bInventorySequence= -1;
  2297. <a name="l02500"></a>02500 m_wPositionSequence = 0;
  2298. <a name="l02501"></a>02501 m_wNumPortals = 0;
  2299. <a name="l02502"></a>02502 m_wNumLogins = 0x3C;
  2300. <a name="l02503"></a>02503 m_fEquipped = 0;
  2301. <a name="l02504"></a>02504
  2302. <a name="l02505"></a>02505 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2303. <a name="l02506"></a>02506 }
  2304. <a name="l02512"></a><a class="code" href="classc_pack.html#a8314ae21268c0e3b3f95ce23068dd315">02512</a> <a class="code" href="classc_pack.html">cPack</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE ) : m_dwItemModelID( dwModel )
  2305. <a name="l02513"></a>02513 {
  2306. <a name="l02514"></a>02514 m_dwGUID = dwGUID;
  2307. <a name="l02515"></a>02515 m_dwModel = dwModel;
  2308. <a name="l02516"></a>02516 m_flScale = flScale;
  2309. <a name="l02517"></a>02517 m_wIcon = dwIcon;
  2310. <a name="l02518"></a>02518 m_strName = strName;
  2311. <a name="l02519"></a>02519 m_strDescription = strDescription;
  2312. <a name="l02520"></a>02520 m_fSelectable = fSelectable;
  2313. <a name="l02521"></a>02521 m_wWeight = wWeight;
  2314. <a name="l02522"></a>02522 m_dwValue = dwValue;
  2315. <a name="l02523"></a>02523 m_fIsOwned = fIsOwned;
  2316. <a name="l02524"></a>02524 m_dwContainer = dwContainer;
  2317. <a name="l02525"></a>02525 m_fEquippable = fEquippable;
  2318. <a name="l02526"></a>02526 m_fIsStackable = fStackable;
  2319. <a name="l02527"></a>02527 m_fIsSolid = fSolid;
  2320. <a name="l02528"></a>02528 m_fIsOwned = TRUE;
  2321. <a name="l02529"></a>02529
  2322. <a name="l02530"></a>02530 m_bInventorySequence= -1;
  2323. <a name="l02531"></a>02531 m_wPositionSequence = 0;
  2324. <a name="l02532"></a>02532 m_wNumPortals = 0;
  2325. <a name="l02533"></a>02533 m_wNumLogins = 0x3C;
  2326. <a name="l02534"></a>02534 m_fEquipped = 0;
  2327. <a name="l02535"></a>02535 }
  2328. <a name="l02536"></a>02536
  2329. <a name="l02537"></a>02537 <a class="code" href="classc_pack.html">cPack</a>( ) {}
  2330. <a name="l02538"></a>02538 <span class="keyword">virtual</span> ~<a class="code" href="classc_pack.html">cPack</a>( ) {}
  2331. <a name="l02539"></a>02539
  2332. <a name="l02540"></a>02540 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_pack.html#afc04ceeae2a224359c227069d9507677">CreatePacket</a> ( );
  2333. <a name="l02541"></a>02541 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_pack.html#ac56985ea71eca0101ab5ec3abcbd8d9e">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2334. <a name="l02542"></a>02542 <span class="keywordtype">void</span> <a class="code" href="classc_pack.html#a64f8f314b80920027626729f2a6f0449">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2335. <a name="l02543"></a>02543 <span class="keywordtype">void</span> <a class="code" href="classc_pack.html#ac80e65d8df3b4052be416f058b00e6de">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2336. <a name="l02544"></a>02544
  2337. <a name="l02545"></a>02545 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2338. <a name="l02546"></a>02546 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2339. <a name="l02547"></a>02547 DWORD m_dwItemModelID;
  2340. <a name="l02548"></a>02548
  2341. <a name="l02549"></a>02549 <span class="keyword">protected</span>:
  2342. <a name="l02550"></a>02550 WORD m_wWeight;
  2343. <a name="l02551"></a>02551 DWORD m_dwValue;
  2344. <a name="l02552"></a>02552 BOOL m_fIsStackable;
  2345. <a name="l02553"></a>02553 BOOL m_fEquippable;
  2346. <a name="l02554"></a>02554 BOOL m_fIsSolid;
  2347. <a name="l02555"></a>02555
  2348. <a name="l02556"></a>02556 std::string m_strDescription;
  2349. <a name="l02557"></a>02557 };
  2350. <a name="l02558"></a>02558
  2351. <a name="l02559"></a>02559 <span class="comment">/************************************</span>
  2352. <a name="l02560"></a>02560 <span class="comment">* Cubem0j0: item class - Clothes</span>
  2353. <a name="l02561"></a>02561 <span class="comment">************************************/</span>
  2354. <a name="l02562"></a><a class="code" href="classc_clothes.html">02562</a> <span class="keyword">class </span><a class="code" href="classc_clothes.html">cClothes</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2355. <a name="l02563"></a>02563 {
  2356. <a name="l02564"></a>02564 <span class="keyword">public</span>:
  2357. <a name="l02570"></a><a class="code" href="classc_clothes.html#a0eca27dc9c4a1a2c9f2f2a81f8fbe2b8">02570</a> <a class="code" href="classc_clothes.html">cClothes</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription) : m_dwItemModelID( dwModel )
  2358. <a name="l02571"></a>02571 {
  2359. <a name="l02572"></a>02572 m_dwGUID = dwGUID;
  2360. <a name="l02573"></a>02573 m_dwModel = dwModel;
  2361. <a name="l02574"></a>02574 m_flScale = flScale;
  2362. <a name="l02575"></a>02575 m_wIcon = dwIcon;
  2363. <a name="l02576"></a>02576 m_strName = strName;
  2364. <a name="l02577"></a>02577 m_strDescription = strDescription;
  2365. <a name="l02578"></a>02578 <span class="comment">// m_wWeight = wWeight;</span>
  2366. <a name="l02579"></a>02579 <span class="comment">// m_dwValue = dwValue;</span>
  2367. <a name="l02580"></a>02580
  2368. <a name="l02581"></a>02581 m_bInventorySequence= -1;
  2369. <a name="l02582"></a>02582 m_wPositionSequence = 0;
  2370. <a name="l02583"></a>02583 m_wNumPortals = 0;
  2371. <a name="l02584"></a>02584 m_wNumLogins = 0x3C;
  2372. <a name="l02585"></a>02585 m_fEquipped = 0;
  2373. <a name="l02586"></a>02586 m_bWearPaletteChange= 0;
  2374. <a name="l02587"></a>02587
  2375. <a name="l02588"></a>02588 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2376. <a name="l02589"></a>02589 }
  2377. <a name="l02595"></a><a class="code" href="classc_clothes.html#a1fb367b0880b298cb51bca052f28c85c">02595</a> <a class="code" href="classc_clothes.html">cClothes</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wWeight, BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE ) : m_dwItemModelID( dwModel )
  2378. <a name="l02596"></a>02596 {
  2379. <a name="l02597"></a>02597 m_dwGUID = dwGUID;
  2380. <a name="l02598"></a>02598 m_dwModel = dwModel;
  2381. <a name="l02599"></a>02599 m_flScale = flScale;
  2382. <a name="l02600"></a>02600 m_wIcon = dwIcon;
  2383. <a name="l02601"></a>02601 m_strName = strName;
  2384. <a name="l02602"></a>02602 m_strDescription = strDescription;
  2385. <a name="l02603"></a>02603 m_fSelectable = fSelectable;
  2386. <a name="l02604"></a>02604 m_wWeight = wWeight;
  2387. <a name="l02605"></a>02605 m_dwValue = dwValue;
  2388. <a name="l02606"></a>02606 m_fIsOwned = fIsOwned;
  2389. <a name="l02607"></a>02607 m_dwContainer = dwContainer;
  2390. <a name="l02608"></a>02608 m_fEquippable = fEquippable;
  2391. <a name="l02609"></a>02609 m_fIsStackable = fStackable;
  2392. <a name="l02610"></a>02610 m_fIsSolid = fSolid;
  2393. <a name="l02611"></a>02611 m_fIsOwned = TRUE;
  2394. <a name="l02612"></a>02612 <span class="comment">// m_dwArmorLevel = dwArmor_Level;</span>
  2395. <a name="l02613"></a>02613 <span class="comment">// m_fProt_Slashing = fProt_Slashing;</span>
  2396. <a name="l02614"></a>02614 <span class="comment">// m_fProt_Piercing = fProt_Piercing;</span>
  2397. <a name="l02615"></a>02615 <span class="comment">// m_fProt_Bludgeon = fProt_Bludgeon;</span>
  2398. <a name="l02616"></a>02616 <span class="comment">// m_fProt_Fire = fProt_Fire;</span>
  2399. <a name="l02617"></a>02617 <span class="comment">// m_fProt_Cold = fProt_Cold;</span>
  2400. <a name="l02618"></a>02618 <span class="comment">// m_fProt_Acid = fProt_Acid;</span>
  2401. <a name="l02619"></a>02619 <span class="comment">// m_fProt_Electric = fProt_Electric;</span>
  2402. <a name="l02620"></a>02620
  2403. <a name="l02621"></a>02621 m_bInventorySequence= -1;
  2404. <a name="l02622"></a>02622 m_wPositionSequence = 0;
  2405. <a name="l02623"></a>02623 m_wNumPortals = 0;
  2406. <a name="l02624"></a>02624 m_wNumLogins = 0x3C;
  2407. <a name="l02625"></a>02625 m_fEquipped = 0;
  2408. <a name="l02626"></a>02626 m_bWearPaletteChange= 0;
  2409. <a name="l02627"></a>02627 }
  2410. <a name="l02628"></a>02628 <a class="code" href="classc_clothes.html">cClothes</a>( ) {}
  2411. <a name="l02629"></a>02629 <span class="keyword">virtual</span> ~<a class="code" href="classc_clothes.html">cClothes</a>( ) {}
  2412. <a name="l02630"></a>02630
  2413. <a name="l02631"></a>02631 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_clothes.html#a891aae989f3cf9adeb004cde29147c05">CreatePacket</a> ( );
  2414. <a name="l02632"></a>02632 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_clothes.html#ae380f416558abbc9b99802b7cca5fd43">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2415. <a name="l02633"></a>02633 <span class="keywordtype">void</span> <a class="code" href="classc_clothes.html#af62e2f63e8947cbd30d01924fa451890">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2416. <a name="l02634"></a>02634 <span class="keywordtype">void</span> <a class="code" href="classc_clothes.html#ab3093909c0d8089496fde4eb99a97dd3">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2417. <a name="l02635"></a>02635
  2418. <a name="l02636"></a>02636 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2419. <a name="l02637"></a>02637 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2420. <a name="l02638"></a>02638 DWORD m_dwItemModelID;
  2421. <a name="l02639"></a>02639
  2422. <a name="l02640"></a>02640 <span class="keyword">protected</span>:
  2423. <a name="l02641"></a>02641 WORD m_wWeight;
  2424. <a name="l02642"></a>02642 DWORD m_dwValue;
  2425. <a name="l02643"></a>02643 BOOL m_fIsStackable;
  2426. <a name="l02644"></a>02644 BOOL m_fEquippable;
  2427. <a name="l02645"></a>02645 BOOL m_fIsSolid;
  2428. <a name="l02646"></a>02646
  2429. <a name="l02647"></a>02647 DWORD m_dwActivate_Req_SkillID;
  2430. <a name="l02648"></a>02648 DWORD m_dwActivate_Req_Skill_Level;
  2431. <a name="l02649"></a>02649 DWORD m_dwArmor_Level;
  2432. <a name="l02650"></a>02650 <span class="keywordtype">float</span> m_fProt_Slashing;
  2433. <a name="l02651"></a>02651 <span class="keywordtype">float</span> m_fProt_Piercing;
  2434. <a name="l02652"></a>02652 <span class="keywordtype">float</span> m_fProt_Bludgeon;
  2435. <a name="l02653"></a>02653 <span class="keywordtype">float</span> m_fProt_Fire;
  2436. <a name="l02654"></a>02654 <span class="keywordtype">float</span> m_fProt_Cold;
  2437. <a name="l02655"></a>02655 <span class="keywordtype">float</span> m_fProt_Acid;
  2438. <a name="l02656"></a>02656 <span class="keywordtype">float</span> m_fProt_Electric;
  2439. <a name="l02657"></a>02657
  2440. <a name="l02658"></a>02658 std::string m_strDescription;
  2441. <a name="l02659"></a>02659 };
  2442. <a name="l02660"></a>02660
  2443. <a name="l02661"></a>02661 <span class="comment">/************************************</span>
  2444. <a name="l02662"></a>02662 <span class="comment">* Cubem0j0: item class - Shields</span>
  2445. <a name="l02663"></a>02663 <span class="comment">************************************/</span>
  2446. <a name="l02664"></a><a class="code" href="classc_shield.html">02664</a> <span class="keyword">class </span><a class="code" href="classc_shield.html">cShield</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2447. <a name="l02665"></a>02665 {
  2448. <a name="l02666"></a>02666 <span class="keyword">public</span>:
  2449. <a name="l02672"></a><a class="code" href="classc_shield.html#ae65776185ba5797c05d4d5cdf6ed8278">02672</a> <a class="code" href="classc_shield.html">cShield</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wBurden, DWORD ArmorLevel) : m_dwItemModelID( dwModel )
  2450. <a name="l02673"></a>02673 {
  2451. <a name="l02674"></a>02674 m_dwGUID = dwGUID;
  2452. <a name="l02675"></a>02675 m_dwModel = dwModel;
  2453. <a name="l02676"></a>02676 m_wIcon = wIcon;
  2454. <a name="l02677"></a>02677 m_strName = strName;
  2455. <a name="l02678"></a>02678 m_strDescription = strDescription;
  2456. <a name="l02679"></a>02679 m_wBurden = wBurden;
  2457. <a name="l02680"></a>02680 m_dwValue = dwValue;
  2458. <a name="l02681"></a>02681 m_dwArmorLevel = ArmorLevel;
  2459. <a name="l02682"></a>02682 m_bInventorySequence= -1;
  2460. <a name="l02683"></a>02683 m_wPositionSequence = 0;
  2461. <a name="l02684"></a>02684 m_wNumPortals = 0;
  2462. <a name="l02685"></a>02685 m_wNumLogins = 0x3C;
  2463. <a name="l02686"></a>02686 m_fEquipped = 0;
  2464. <a name="l02687"></a>02687
  2465. <a name="l02688"></a>02688 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2466. <a name="l02689"></a>02689 }
  2467. <a name="l02695"></a><a class="code" href="classc_shield.html#a784383fb3b285dd86d0bf9452a384801">02695</a> <a class="code" href="classc_shield.html">cShield</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, WORD wIcon, std::string strName, std::string strDescription, DWORD dwValue, WORD wBurden, DWORD ArmorLevel) : m_dwItemModelID( dwModel )
  2468. <a name="l02696"></a>02696 {
  2469. <a name="l02697"></a>02697 m_dwGUID = dwGUID;
  2470. <a name="l02698"></a>02698 m_dwModel = dwModel;
  2471. <a name="l02699"></a>02699 m_wIcon = wIcon;
  2472. <a name="l02700"></a>02700 m_strName = strName;
  2473. <a name="l02701"></a>02701 m_strDescription = strDescription;
  2474. <a name="l02702"></a>02702 m_wBurden = wBurden;
  2475. <a name="l02703"></a>02703 m_dwValue = dwValue;
  2476. <a name="l02704"></a>02704 m_dwContainer = dwContainer;
  2477. <a name="l02705"></a>02705 m_dwArmorLevel = ArmorLevel;
  2478. <a name="l02706"></a>02706
  2479. <a name="l02707"></a>02707 m_bInventorySequence= -1;
  2480. <a name="l02708"></a>02708 m_wPositionSequence = 0;
  2481. <a name="l02709"></a>02709 m_wNumPortals = 0;
  2482. <a name="l02710"></a>02710 m_wNumLogins = 0x3C;
  2483. <a name="l02711"></a>02711 m_fEquipped = 0;
  2484. <a name="l02712"></a>02712 }
  2485. <a name="l02713"></a>02713
  2486. <a name="l02714"></a>02714 <a class="code" href="classc_shield.html">cShield</a>( ) {}
  2487. <a name="l02715"></a>02715 <span class="keyword">virtual</span> ~<a class="code" href="classc_shield.html">cShield</a>( ) {}
  2488. <a name="l02716"></a>02716
  2489. <a name="l02717"></a>02717 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_shield.html#a8b3d10921f1e7f723f272d1dc6ca6c6f">CreatePacket</a> ( );
  2490. <a name="l02718"></a>02718 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_shield.html#abee9a0166338b75ba5c3c48fd1d31c3a">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2491. <a name="l02719"></a>02719 <span class="keywordtype">void</span> <a class="code" href="classc_shield.html#af52a983d66703cd09873aa954f9d2a4e">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2492. <a name="l02720"></a>02720 <span class="keywordtype">void</span> <a class="code" href="classc_shield.html#a77a6a56858a9ca2f1cda670f10b19290">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2493. <a name="l02721"></a>02721
  2494. <a name="l02722"></a>02722 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2495. <a name="l02723"></a>02723 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2496. <a name="l02724"></a>02724 DWORD m_dwItemModelID;
  2497. <a name="l02725"></a>02725 DWORD m_dwArmorLevel;
  2498. <a name="l02726"></a>02726 <span class="keyword">protected</span>:
  2499. <a name="l02727"></a>02727 WORD m_wBurden;
  2500. <a name="l02728"></a>02728 DWORD m_dwValue;
  2501. <a name="l02729"></a>02729 BOOL m_fIsStackable;
  2502. <a name="l02730"></a>02730 BOOL m_fEquippable;
  2503. <a name="l02731"></a>02731 BOOL m_fIsSolid;
  2504. <a name="l02732"></a>02732
  2505. <a name="l02733"></a>02733 std::string m_strDescription;
  2506. <a name="l02734"></a>02734 };
  2507. <a name="l02735"></a>02735
  2508. <a name="l02736"></a>02736 <span class="comment">/************************************</span>
  2509. <a name="l02737"></a>02737 <span class="comment">* Cubem0j0: Container Classes</span>
  2510. <a name="l02738"></a>02738 <span class="comment">*</span>
  2511. <a name="l02739"></a>02739 <span class="comment">* These classes spawn items in containers</span>
  2512. <a name="l02740"></a>02740 <span class="comment">* I needed these for healing kits, etc.</span>
  2513. <a name="l02741"></a>02741 <span class="comment">* Anything that uses the 0x0035 as its use</span>
  2514. <a name="l02742"></a>02742 <span class="comment">* message.</span>
  2515. <a name="l02743"></a>02743 <span class="comment">************************************/</span>
  2516. <a name="l02744"></a>02744 <span class="comment">/************************************</span>
  2517. <a name="l02745"></a>02745 <span class="comment">* Cubem0j0: cHealingCon</span>
  2518. <a name="l02746"></a>02746 <span class="comment">************************************/</span>
  2519. <a name="l02747"></a><a class="code" href="classc_healing_con.html">02747</a> <span class="keyword">class </span><a class="code" href="classc_healing_con.html">cHealingCon</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2520. <a name="l02748"></a>02748 {
  2521. <a name="l02749"></a>02749 <span class="keyword">public</span>:
  2522. <a name="l02755"></a><a class="code" href="classc_healing_con.html#a8111b42321f7273149a8816d6cddf51a">02755</a> <a class="code" href="classc_healing_con.html">cHealingCon</a>( DWORD dwGUID, DWORD dwContainer, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwWeight, DWORD dwValue, WORD wUses, WORD wUseLimit, BOOL fSelectable = TRUE, BOOL fEquippable = FALSE, BOOL fStackable = TRUE, BOOL fIsOwned = TRUE ) : m_dwItemModelID( dwModel )
  2523. <a name="l02756"></a>02756 {
  2524. <a name="l02757"></a>02757 m_dwGUID = dwGUID;
  2525. <a name="l02758"></a>02758 m_dwModel = dwModel;
  2526. <a name="l02759"></a>02759 m_flScale = flScale;
  2527. <a name="l02760"></a>02760 m_wIcon = dwIcon;
  2528. <a name="l02761"></a>02761 m_strName = strName;
  2529. <a name="l02762"></a>02762 m_strDescription = strDescription;
  2530. <a name="l02763"></a>02763 m_fSelectable = fSelectable;
  2531. <a name="l02764"></a>02764 m_dwWeight = dwWeight;
  2532. <a name="l02765"></a>02765 m_dwValue = dwValue;
  2533. <a name="l02766"></a>02766 m_wUses = wUses;
  2534. <a name="l02767"></a>02767 m_wUseLimit = wUseLimit;
  2535. <a name="l02768"></a>02768 m_fIsOwned = fIsOwned;
  2536. <a name="l02769"></a>02769 m_dwContainer = dwContainer;
  2537. <a name="l02770"></a>02770 m_fEquippable = fEquippable;
  2538. <a name="l02771"></a>02771 m_fIsStackable = fStackable;
  2539. <a name="l02772"></a>02772 m_fIsSolid = fSolid;
  2540. <a name="l02773"></a>02773 m_fIsOwned = TRUE;
  2541. <a name="l02774"></a>02774
  2542. <a name="l02775"></a>02775 m_bInventorySequence= -1;
  2543. <a name="l02776"></a>02776 m_wPositionSequence = 0;
  2544. <a name="l02777"></a>02777 m_wNumPortals = 0;
  2545. <a name="l02778"></a>02778 m_wNumLogins = 0x3C;
  2546. <a name="l02779"></a>02779 m_fEquipped = 0;
  2547. <a name="l02780"></a>02780 }
  2548. <a name="l02781"></a>02781 <a class="code" href="classc_healing_con.html">cHealingCon</a>( ) {}
  2549. <a name="l02782"></a>02782 <span class="keyword">virtual</span> ~<a class="code" href="classc_healing_con.html">cHealingCon</a>( ) {}
  2550. <a name="l02783"></a>02783
  2551. <a name="l02784"></a>02784 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_healing_con.html#a06603289b12c37d4bd22585eab6cc401">CreatePacket</a>();
  2552. <a name="l02785"></a>02785
  2553. <a name="l02786"></a>02786 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_healing_con.html#a248ed8ab590d1e73a7bd2cfe2257b3ff">CreatePacketContainer</a> ( DWORD Container, DWORD ItemModelID );
  2554. <a name="l02787"></a>02787 <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed ) { <span class="keywordflow">return</span> *((<a class="code" href="classc_message.html">cMessage</a> *)NULL); }
  2555. <a name="l02788"></a>02788 <span class="keywordtype">void</span> <a class="code" href="classc_healing_con.html#abc9f6483b59dad3929fbfd541cf37f3b">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2556. <a name="l02789"></a>02789 <span class="keywordtype">void</span> <a class="code" href="classc_healing_con.html#a293cf8c0d0acb8246dc41576e6634239">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2557. <a name="l02790"></a>02790
  2558. <a name="l02791"></a>02791 <span class="keywordtype">void</span> SetContainer( DWORD dwGUID );
  2559. <a name="l02792"></a>02792
  2560. <a name="l02793"></a>02793 <span class="keyword">inline</span> DWORD GetItemModelID ( ) { <span class="keywordflow">return</span> m_dwItemModelID; }
  2561. <a name="l02794"></a>02794 <span class="keyword">inline</span> DWORD GetContainerID ( ) { <span class="keywordflow">return</span> m_dwContainer; }
  2562. <a name="l02795"></a>02795 DWORD m_dwItemModelID;
  2563. <a name="l02796"></a>02796
  2564. <a name="l02797"></a>02797 <span class="keyword">protected</span>:
  2565. <a name="l02798"></a>02798 DWORD m_dwWeight;
  2566. <a name="l02799"></a>02799 DWORD m_dwValue;
  2567. <a name="l02800"></a>02800 WORD m_wUses;
  2568. <a name="l02801"></a>02801 WORD m_wUseLimit;
  2569. <a name="l02802"></a>02802 BOOL m_fIsStackable;
  2570. <a name="l02803"></a>02803 BOOL m_fEquippable;
  2571. <a name="l02804"></a>02804 BOOL m_fIsSolid;
  2572. <a name="l02805"></a>02805
  2573. <a name="l02806"></a>02806 std::string m_strDescription;
  2574. <a name="l02807"></a>02807 };
  2575. <a name="l02808"></a>02808
  2576. <a name="l02809"></a><a class="code" href="classc_equipment.html">02809</a> <span class="keyword">class </span><a class="code" href="classc_equipment.html">cEquipment</a>
  2577. <a name="l02810"></a>02810 {
  2578. <a name="l02811"></a>02811 <span class="keyword">public</span>:
  2579. <a name="l02812"></a>02812 <a class="code" href="classc_armor.html">cArmor</a>* ca_Shield;
  2580. <a name="l02813"></a>02813 <a class="code" href="classc_armor.html">cArmor</a>* ca_Helmet;
  2581. <a name="l02814"></a>02814 <a class="code" href="classc_armor.html">cArmor</a>* ca_UpperArm;
  2582. <a name="l02815"></a>02815 <a class="code" href="classc_armor.html">cArmor</a>* ca_LowerArm;
  2583. <a name="l02816"></a>02816 <a class="code" href="classc_armor.html">cArmor</a>* ca_Breastplate;
  2584. <a name="l02817"></a>02817 <a class="code" href="classc_armor.html">cArmor</a>* ca_Girth;
  2585. <a name="l02818"></a>02818 <a class="code" href="classc_armor.html">cArmor</a>* ca_UpperLegs;
  2586. <a name="l02819"></a>02819 <a class="code" href="classc_armor.html">cArmor</a>* ca_LowerLegs;
  2587. <a name="l02820"></a>02820 <span class="comment">// cJewerly* cj_Neck;</span>
  2588. <a name="l02821"></a>02821 <span class="comment">// cJewerly* cj_LeftRing;</span>
  2589. <a name="l02822"></a>02822 <span class="comment">// cJewerly* cj_RightRing;</span>
  2590. <a name="l02823"></a>02823 <span class="comment">// cJewerly* cj_LeftBracelet;</span>
  2591. <a name="l02824"></a>02824 <span class="comment">// cJewerly* cj_RightBracelet;</span>
  2592. <a name="l02825"></a>02825 <a class="code" href="classc_weapon.html">cWeapon</a>* cw_Weapon;
  2593. <a name="l02826"></a>02826 };
  2594. <a name="l02827"></a>02827
  2595. <a name="l02828"></a><a class="code" href="classc_inventory.html">02828</a> <span class="keyword">class </span><a class="code" href="classc_inventory.html">cInventory</a>
  2596. <a name="l02829"></a>02829 {
  2597. <a name="l02830"></a>02830 <span class="keyword">public</span>:
  2598. <a name="l02831"></a>02831 std::vector&lt; cObject * &gt; m_vInventoryObjects;
  2599. <a name="l02832"></a>02832 <a class="code" href="classc_equipment.html">cEquipment</a> *m_cEquipment;
  2600. <a name="l02833"></a>02833 };
  2601. <a name="l02834"></a>02834
  2602. <a name="l02835"></a>02835 <span class="preprocessor">#define PK_ALTAR 1</span>
  2603. <a name="l02836"></a>02836 <span class="preprocessor"></span><span class="preprocessor">#define NPK_ALTAR 0</span>
  2604. <a name="l02837"></a>02837 <span class="preprocessor"></span><span class="comment">//857</span>
  2605. <a name="l02838"></a>02838 <span class="comment">//846</span>
  2606. <a name="l02839"></a>02839
  2607. <a name="l02840"></a>02840 <span class="comment">//************************************</span>
  2608. <a name="l02841"></a>02841 <span class="comment">//* Object class - Altars</span>
  2609. <a name="l02842"></a>02842 <span class="comment">//************************************</span>
  2610. <a name="l02843"></a><a class="code" href="classc_altar.html">02843</a> <span class="keyword">class </span><a class="code" href="classc_altar.html">cAltar</a>: <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2611. <a name="l02844"></a>02844 {
  2612. <a name="l02845"></a>02845 <span class="keyword">public</span>:
  2613. <a name="l02846"></a>02846 <a class="code" href="classc_altar.html">cAltar</a> ();
  2614. <a name="l02852"></a>02852 <a class="code" href="classc_altar.html">cAltar</a> (DWORD dwType, DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc, <span class="keywordtype">char</span>* strName, <span class="keywordtype">char</span>* strDesc);<span class="comment">// :</span>
  2615. <a name="l02853"></a>02853 <span class="comment">/*cAbiotic( dwGUID, *pcLoc,(type ? 857 : 846), 1, TRUE, 2323, </span>
  2616. <a name="l02854"></a>02854 <span class="comment"> (type ? &quot;Altar to Bael&#39;Zharon&quot; : &quot;Altar to Asheron&quot;), </span>
  2617. <a name="l02855"></a>02855 <span class="comment"> (type ? &quot;Double click to go PK&quot; : &quot;Double Click to go NPK&quot;)</span>
  2618. <a name="l02856"></a>02856 <span class="comment"> , 1000, 1000, TRUE, FALSE, FALSE, FALSE), dwType(type ? 1:0)</span>
  2619. <a name="l02857"></a>02857 <span class="comment"> {</span>
  2620. <a name="l02858"></a>02858 <span class="comment"> m_fStatic = TRUE;</span>
  2621. <a name="l02859"></a>02859 <span class="comment"> }</span>
  2622. <a name="l02860"></a>02860 <span class="comment"> */</span>
  2623. <a name="l02861"></a>02861 <span class="keyword">virtual</span> ~<a class="code" href="classc_altar.html">cAltar</a> (){}
  2624. <a name="l02862"></a>02862 <span class="keywordtype">void</span> <a class="code" href="classc_altar.html#aa78ecb9379bcd8a6ef0f2f268ae702cc">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2625. <a name="l02863"></a>02863 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_altar.html#a65904cec23221df41aac5b85972432d3">CreatePacket</a>();
  2626. <a name="l02864"></a>02864 <span class="keywordtype">void</span> <a class="code" href="classc_altar.html#ad3e9354851e8c18e3ce5b9acd1908be9">Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  2627. <a name="l02865"></a>02865
  2628. <a name="l02866"></a>02866 <span class="keywordtype">void</span> SetMode(DWORD mode)
  2629. <a name="l02867"></a>02867 {
  2630. <a name="l02868"></a>02868 m_dwMode = mode;
  2631. <a name="l02869"></a>02869 }
  2632. <a name="l02870"></a>02870 DWORD GetMode()
  2633. <a name="l02871"></a>02871 {
  2634. <a name="l02872"></a>02872 <span class="keywordflow">return</span> m_dwMode;
  2635. <a name="l02873"></a>02873 }
  2636. <a name="l02874"></a>02874 <span class="keywordtype">void</span> SetData(WORD wAnimConfig, WORD wSoundSet,WORD wModel,WORD wIcon, DWORD dwObject)
  2637. <a name="l02875"></a>02875 {
  2638. <a name="l02876"></a>02876 m_wAnimConfig = wAnimConfig;
  2639. <a name="l02877"></a>02877 m_wSoundSet = wSoundSet;
  2640. <a name="l02878"></a>02878 m_wModel = wModel;
  2641. <a name="l02879"></a>02879 m_wIcon = wIcon;
  2642. <a name="l02880"></a>02880 }
  2643. <a name="l02881"></a>02881 <span class="keyword">private</span>:
  2644. <a name="l02882"></a>02882 DWORD m_dwType;
  2645. <a name="l02883"></a>02883 WORD m_wModel;
  2646. <a name="l02884"></a>02884 WORD m_wIcon;
  2647. <a name="l02885"></a>02885 WORD m_wSoundSet;
  2648. <a name="l02886"></a>02886 WORD m_wAnimConfig;
  2649. <a name="l02887"></a>02887 DWORD dwType; <span class="comment">//0 = NPK 1 = PK </span>
  2650. <a name="l02888"></a>02888 };
  2651. <a name="l02889"></a>02889
  2652. <a name="l02890"></a>02890 <span class="preprocessor">#define DOOR_OPEN 1</span>
  2653. <a name="l02891"></a>02891 <span class="preprocessor"></span><span class="preprocessor">#define DOOR_CLOSED 0</span>
  2654. <a name="l02892"></a>02892 <span class="preprocessor"></span>
  2655. <a name="l02893"></a>02893 <span class="comment">//************************************</span>
  2656. <a name="l02894"></a>02894 <span class="comment">//* Object class - Doors</span>
  2657. <a name="l02895"></a>02895 <span class="comment">//************************************</span>
  2658. <a name="l02896"></a><a class="code" href="classc_door.html">02896</a> <span class="keyword">class </span><a class="code" href="classc_door.html">cDoor</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2659. <a name="l02897"></a>02897 {
  2660. <a name="l02898"></a>02898 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  2661. <a name="l02899"></a>02899 <span class="keyword">public</span>:
  2662. <a name="l02900"></a>02900 <a class="code" href="classc_door.html">cDoor</a> ();
  2663. <a name="l02906"></a>02906 <a class="code" href="classc_door.html">cDoor</a> ( WORD type, DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDesc );
  2664. <a name="l02907"></a>02907 <span class="keyword">virtual</span> ~<a class="code" href="classc_door.html">cDoor</a> ( ) {}
  2665. <a name="l02908"></a>02908
  2666. <a name="l02909"></a>02909 <span class="keywordtype">void</span> <a class="code" href="classc_door.html#a634ee6583b15965592935cc8257f0116">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2667. <a name="l02910"></a>02910 <span class="keywordtype">void</span> <a class="code" href="classc_door.html#a83db7d1c83bf6b297d38e50f84dcc81c">Action</a> (<a class="code" href="classc_client.html">cClient</a>* who);
  2668. <a name="l02911"></a>02911 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_door.html#aa09a77810ff9e12106400b22136d33cf">CreatePacket</a>( );
  2669. <a name="l02912"></a>02912
  2670. <a name="l02913"></a>02913 <span class="keywordtype">void</span> SetMode(DWORD mode)
  2671. <a name="l02914"></a>02914 {
  2672. <a name="l02915"></a>02915 m_dwMode = mode;
  2673. <a name="l02916"></a>02916 }
  2674. <a name="l02917"></a>02917 DWORD GetMode()
  2675. <a name="l02918"></a>02918 {
  2676. <a name="l02919"></a>02919 <span class="keywordflow">return</span> m_dwMode;
  2677. <a name="l02920"></a>02920 }
  2678. <a name="l02921"></a>02921 <span class="keywordtype">void</span> SetData(WORD wAnimConfig, WORD wSoundSet,WORD wModel,WORD wIcon)
  2679. <a name="l02922"></a>02922 {
  2680. <a name="l02923"></a>02923 m_wAnimConfig = wAnimConfig;
  2681. <a name="l02924"></a>02924 m_wSoundSet = wSoundSet;
  2682. <a name="l02925"></a>02925 m_wModel = wModel;
  2683. <a name="l02926"></a>02926 m_wIcon = wIcon;
  2684. <a name="l02927"></a>02927 }
  2685. <a name="l02928"></a>02928 <span class="keyword">private</span>:
  2686. <a name="l02929"></a>02929
  2687. <a name="l02930"></a>02930 DWORD m_dwMode;
  2688. <a name="l02931"></a>02931 DWORD m_dwType;
  2689. <a name="l02932"></a>02932 WORD m_wModel;
  2690. <a name="l02933"></a>02933 WORD m_wIcon;
  2691. <a name="l02934"></a>02934 WORD m_wSoundSet;
  2692. <a name="l02935"></a>02935 WORD m_wPortalMode;
  2693. <a name="l02936"></a>02936 WORD m_wAnimConfig;
  2694. <a name="l02937"></a>02937 };
  2695. <a name="l02938"></a>02938
  2696. <a name="l02939"></a>02939 <span class="comment">//************************************</span>
  2697. <a name="l02940"></a>02940 <span class="comment">//* Object class - World Objects (town signs, wells, etc)</span>
  2698. <a name="l02941"></a>02941 <span class="comment">//************************************</span>
  2699. <a name="l02942"></a><a class="code" href="classc_world_object.html">02942</a> <span class="keyword">class </span><a class="code" href="classc_world_object.html">cWorldObject</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2700. <a name="l02943"></a>02943 {
  2701. <a name="l02944"></a>02944 <span class="keyword">public</span>:
  2702. <a name="l02945"></a>02945 <a class="code" href="classc_world_object.html">cWorldObject</a>();
  2703. <a name="l02951"></a>02951 <a class="code" href="classc_world_object.html">cWorldObject</a>(WORD type, DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDesc);
  2704. <a name="l02952"></a>02952 <span class="keyword">virtual</span> ~<a class="code" href="classc_world_object.html">cWorldObject</a>() {}
  2705. <a name="l02953"></a>02953
  2706. <a name="l02954"></a>02954 <span class="keywordtype">void</span> <a class="code" href="classc_world_object.html#ac78145de7b595fa3a9d790e9eebe06da">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2707. <a name="l02955"></a>02955 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_world_object.html#af2b860b304d703ffd2913adba3242030">CreatePacket</a>();
  2708. <a name="l02956"></a>02956 <span class="keywordtype">void</span> <a class="code" href="classc_world_object.html#a11e449a60903779a43461c08c652c338">Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  2709. <a name="l02957"></a>02957
  2710. <a name="l02958"></a>02958 <span class="comment">// * Cubem0j0: Set the type of object</span>
  2711. <a name="l02959"></a>02959 <span class="comment">// * 0 = Unselectable</span>
  2712. <a name="l02960"></a>02960 <span class="comment">// * 1 = Selectable</span>
  2713. <a name="l02961"></a>02961 <span class="comment">// * 2 = Well/Fountain</span>
  2714. <a name="l02962"></a>02962
  2715. <a name="l02963"></a>02963 <span class="keywordtype">void</span> SetObjectType(<span class="keywordtype">int</span> ot)
  2716. <a name="l02964"></a>02964 {
  2717. <a name="l02965"></a>02965 iObjectType = ot;
  2718. <a name="l02966"></a>02966 }
  2719. <a name="l02967"></a>02967 <span class="keywordtype">int</span> GetObjectType()
  2720. <a name="l02968"></a>02968 {
  2721. <a name="l02969"></a>02969 <span class="keywordflow">return</span> iObjectType;
  2722. <a name="l02970"></a>02970 }
  2723. <a name="l02971"></a>02971
  2724. <a name="l02972"></a>02972 <span class="keywordtype">void</span> SetData(WORD wModel,WORD wIcon)
  2725. <a name="l02973"></a>02973
  2726. <a name="l02974"></a>02974 {
  2727. <a name="l02975"></a>02975 m_wModel = wModel;
  2728. <a name="l02976"></a>02976 m_wIcon = wIcon;
  2729. <a name="l02977"></a>02977 }
  2730. <a name="l02978"></a>02978 <span class="keyword">private</span>:
  2731. <a name="l02979"></a>02979 <span class="keywordtype">int</span> iObjectType;
  2732. <a name="l02980"></a>02980 DWORD m_dwMode;
  2733. <a name="l02981"></a>02981 DWORD m_dwType;
  2734. <a name="l02982"></a>02982 WORD m_wModel;
  2735. <a name="l02983"></a>02983 WORD m_wIcon;
  2736. <a name="l02984"></a>02984 WORD m_wPortalMode;
  2737. <a name="l02985"></a>02985 };
  2738. <a name="l02986"></a>02986
  2739. <a name="l02987"></a>02987 <span class="comment">//************************************</span>
  2740. <a name="l02988"></a>02988 <span class="comment">//* Object class - Merchant Signs</span>
  2741. <a name="l02989"></a>02989 <span class="comment">//************************************</span>
  2742. <a name="l02990"></a><a class="code" href="classc_merchant_sign.html">02990</a> <span class="keyword">class </span><a class="code" href="classc_merchant_sign.html">cMerchantSign</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2743. <a name="l02991"></a>02991 {
  2744. <a name="l02992"></a>02992 <span class="keyword">public</span>:
  2745. <a name="l02998"></a><a class="code" href="classc_merchant_sign.html#a33ba91238604d87682a0f5c1375ce132">02998</a> <a class="code" href="classc_merchant_sign.html">cMerchantSign</a>( DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, DWORD dwModel, <span class="keywordtype">float</span> flScale, BOOL fSolid, DWORD dwIcon, std::string strName, std::string strDescription, DWORD dwWeight, DWORD dwValue, BOOL fSelectable = TRUE, BOOL fEquippable = TRUE, BOOL fStackable = FALSE, BOOL fIsOwned = FALSE, DWORD dwContainer = 0 ) : m_dwWOModelID( dwModel )
  2746. <a name="l02999"></a>02999 {
  2747. <a name="l03000"></a>03000 m_dwGUID = dwGUID;
  2748. <a name="l03001"></a>03001 m_dwModel = dwModel;
  2749. <a name="l03002"></a>03002 m_flScale = flScale;
  2750. <a name="l03003"></a>03003 m_wIcon = dwIcon;
  2751. <a name="l03004"></a>03004 m_strName = strName;
  2752. <a name="l03005"></a>03005 m_strDescription = strDescription;
  2753. <a name="l03006"></a>03006 m_fSelectable = fSelectable;
  2754. <a name="l03007"></a>03007 m_dwWeight = dwWeight;
  2755. <a name="l03008"></a>03008 m_dwValue = dwValue;
  2756. <a name="l03009"></a>03009 m_fIsOwned = fIsOwned;
  2757. <a name="l03010"></a>03010 m_dwContainer = dwContainer;
  2758. <a name="l03011"></a>03011 m_fEquippable = fEquippable;
  2759. <a name="l03012"></a>03012 m_fIsStackable = fStackable;
  2760. <a name="l03013"></a>03013 m_fIsSolid = fSolid;
  2761. <a name="l03014"></a>03014 <span class="comment">// m_fIsOwned = FALSE;</span>
  2762. <a name="l03015"></a>03015 <span class="comment">// m_wState = 0;</span>
  2763. <a name="l03016"></a>03016 <span class="comment">// m_dwDoorState = 0x0CL;</span>
  2764. <a name="l03017"></a>03017
  2765. <a name="l03018"></a>03018 m_bInventorySequence= -1;
  2766. <a name="l03019"></a>03019 m_wPositionSequence = 0;
  2767. <a name="l03020"></a>03020 m_wNumPortals = 0;
  2768. <a name="l03021"></a>03021 m_wNumLogins = 0x3C;
  2769. <a name="l03022"></a>03022 m_fEquipped = 0;
  2770. <a name="l03023"></a>03023
  2771. <a name="l03024"></a>03024 CopyMemory( &amp;m_Location, &amp;Loc, <span class="keyword">sizeof</span>( <a class="code" href="structc_location.html">cLocation</a> ) );
  2772. <a name="l03025"></a>03025 }
  2773. <a name="l03026"></a>03026 <a class="code" href="classc_merchant_sign.html">cMerchantSign</a>( ) {}
  2774. <a name="l03027"></a>03027 <span class="keyword">virtual</span> ~<a class="code" href="classc_merchant_sign.html">cMerchantSign</a>( ) {}
  2775. <a name="l03028"></a>03028
  2776. <a name="l03029"></a>03029 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_merchant_sign.html#a3e6da8dac0a91dbdfc79d76aaffbdc7e">CreatePacket</a> ( );
  2777. <a name="l03030"></a>03030 <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed ) { <span class="keywordflow">return</span> *((<a class="code" href="classc_message.html">cMessage</a> *)NULL); }
  2778. <a name="l03031"></a>03031 <span class="keywordtype">void</span> <a class="code" href="classc_merchant_sign.html#a4139eeed33bb33fe3dd8ade902d6094c">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2779. <a name="l03032"></a>03032 <span class="keywordtype">void</span> <a class="code" href="classc_merchant_sign.html#a3df1a0e086eefceddd3eda3372dcc1ad">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  2780. <a name="l03033"></a>03033
  2781. <a name="l03034"></a>03034 <span class="comment">// void SetContainer( DWORD dwGUID );</span>
  2782. <a name="l03035"></a>03035
  2783. <a name="l03036"></a>03036 <span class="keyword">inline</span> DWORD GetWorldObject ( ) { <span class="keywordflow">return</span> m_dwWOModelID; }
  2784. <a name="l03037"></a>03037
  2785. <a name="l03038"></a>03038 <span class="keywordtype">void</span> SetObjectType(<span class="keywordtype">int</span> ot)
  2786. <a name="l03039"></a>03039 {
  2787. <a name="l03040"></a>03040 iObjectType = ot;
  2788. <a name="l03041"></a>03041 }
  2789. <a name="l03042"></a>03042 <span class="keywordtype">int</span> GetObjectType()
  2790. <a name="l03043"></a>03043 {
  2791. <a name="l03044"></a>03044 <span class="keywordflow">return</span> iObjectType;
  2792. <a name="l03045"></a>03045 }
  2793. <a name="l03046"></a>03046
  2794. <a name="l03047"></a>03047 <span class="keyword">protected</span>:
  2795. <a name="l03048"></a>03048 <span class="keywordtype">int</span> iObjectType;
  2796. <a name="l03049"></a>03049 DWORD m_dwWOModelID;
  2797. <a name="l03050"></a>03050 DWORD m_dwWeight;
  2798. <a name="l03051"></a>03051 DWORD m_dwValue;
  2799. <a name="l03052"></a>03052 BOOL m_fIsStackable;
  2800. <a name="l03053"></a>03053 BOOL m_fEquippable;
  2801. <a name="l03054"></a>03054 BOOL m_fIsSolid;
  2802. <a name="l03055"></a>03055
  2803. <a name="l03056"></a>03056 std::string m_strDescription;
  2804. <a name="l03057"></a>03057 };
  2805. <a name="l03058"></a>03058
  2806. <a name="l03059"></a>03059 <span class="comment">//************************************</span>
  2807. <a name="l03060"></a>03060 <span class="comment">//* World objects - Chest Containers</span>
  2808. <a name="l03061"></a>03061 <span class="comment">//************************************</span>
  2809. <a name="l03062"></a><a class="code" href="classc_chest.html">03062</a> <span class="keyword">class </span><a class="code" href="classc_chest.html">cChest</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2810. <a name="l03063"></a>03063 {
  2811. <a name="l03064"></a>03064 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  2812. <a name="l03065"></a>03065 <span class="keyword">public</span>:
  2813. <a name="l03066"></a>03066 <a class="code" href="classc_chest.html">cChest</a> ();
  2814. <a name="l03072"></a>03072 <a class="code" href="classc_chest.html">cChest</a> ( WORD type, DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDesc );
  2815. <a name="l03073"></a>03073 <span class="keyword">virtual</span> ~<a class="code" href="classc_chest.html">cChest</a> ( ) {}
  2816. <a name="l03074"></a>03074
  2817. <a name="l03075"></a>03075 <span class="keywordtype">void</span> <a class="code" href="classc_chest.html#adec724122854427177b17cfa9a9d6485">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2818. <a name="l03076"></a>03076 <span class="keywordtype">void</span> <a class="code" href="classc_chest.html#a2c3c696710e7159d16b95148b3dacaea">Action</a> (<a class="code" href="classc_client.html">cClient</a>* who);
  2819. <a name="l03077"></a>03077 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_chest.html#a63a38a85d2ee504411da88522f9b3a8f">CreatePacket</a>( );
  2820. <a name="l03078"></a>03078
  2821. <a name="l03079"></a>03079 <span class="keywordtype">void</span> SetMode(DWORD mode)
  2822. <a name="l03080"></a>03080 {
  2823. <a name="l03081"></a>03081 m_dwMode = mode;
  2824. <a name="l03082"></a>03082 }
  2825. <a name="l03083"></a>03083 DWORD GetMode()
  2826. <a name="l03084"></a>03084 {
  2827. <a name="l03085"></a>03085 <span class="keywordflow">return</span> m_dwMode;
  2828. <a name="l03086"></a>03086 }
  2829. <a name="l03087"></a>03087
  2830. <a name="l03088"></a>03088 <span class="comment">//Cubem0j0: Set locked status based on database</span>
  2831. <a name="l03089"></a>03089 <span class="keywordtype">void</span> SetIsLocked(<span class="keywordtype">int</span> locked)
  2832. <a name="l03090"></a>03090 {
  2833. <a name="l03091"></a>03091 IsLocked = locked;
  2834. <a name="l03092"></a>03092 }
  2835. <a name="l03093"></a>03093 <span class="keywordtype">int</span> GetIsLocked()
  2836. <a name="l03094"></a>03094 {
  2837. <a name="l03095"></a>03095 <span class="keywordflow">return</span> IsLocked;
  2838. <a name="l03096"></a>03096 }
  2839. <a name="l03097"></a>03097
  2840. <a name="l03098"></a>03098 <span class="comment">//Cubem0j0: If this object is locked, how hard is it to open.</span>
  2841. <a name="l03099"></a>03099 <span class="keywordtype">void</span> SetLDiff(<span class="keywordtype">int</span> ldiff)
  2842. <a name="l03100"></a>03100 {
  2843. <a name="l03101"></a>03101 LockDiff = ldiff;
  2844. <a name="l03102"></a>03102 }
  2845. <a name="l03103"></a>03103 <span class="keywordtype">int</span> GetLDiff()
  2846. <a name="l03104"></a>03104 {
  2847. <a name="l03105"></a>03105 <span class="keywordflow">return</span> LockDiff;
  2848. <a name="l03106"></a>03106 }
  2849. <a name="l03107"></a>03107
  2850. <a name="l03108"></a>03108 <span class="keywordtype">void</span> SetData(WORD wAnimConfig, WORD wSoundSet,WORD wModel,WORD wIcon, DWORD dwObject1, DWORD dwObject2)
  2851. <a name="l03109"></a>03109 {
  2852. <a name="l03110"></a>03110 m_wAnimConfig = wAnimConfig;
  2853. <a name="l03111"></a>03111 m_wSoundSet = wSoundSet;
  2854. <a name="l03112"></a>03112 m_wModel = wModel;
  2855. <a name="l03113"></a>03113 m_wIcon = wIcon;
  2856. <a name="l03114"></a>03114 m_dwObjectsFlag1 = dwObject1;
  2857. <a name="l03115"></a>03115 m_dwObjectsFlag2 = dwObject2;
  2858. <a name="l03116"></a>03116 }
  2859. <a name="l03117"></a>03117 <span class="keyword">private</span>:
  2860. <a name="l03118"></a>03118
  2861. <a name="l03119"></a>03119 DWORD m_dwMode;
  2862. <a name="l03120"></a>03120 DWORD m_dwType;
  2863. <a name="l03121"></a>03121 WORD m_wModel;
  2864. <a name="l03122"></a>03122 WORD m_wIcon;
  2865. <a name="l03123"></a>03123 WORD m_wSoundSet;
  2866. <a name="l03124"></a>03124 WORD m_wPortalMode;
  2867. <a name="l03125"></a>03125 WORD m_wAnimConfig;
  2868. <a name="l03126"></a>03126 DWORD m_dwObjectsFlag1;
  2869. <a name="l03127"></a>03127 DWORD m_dwObjectsFlag2;
  2870. <a name="l03128"></a>03128 <span class="keywordtype">int</span> IsLocked;
  2871. <a name="l03129"></a>03129 <span class="keywordtype">int</span> LockDiff;
  2872. <a name="l03130"></a>03130 };
  2873. <a name="l03131"></a>03131
  2874. <a name="l03132"></a>03132 <span class="comment">//************************************</span>
  2875. <a name="l03133"></a>03133 <span class="comment">//* World objects - Corpse Containers</span>
  2876. <a name="l03134"></a>03134 <span class="comment">//************************************</span>
  2877. <a name="l03135"></a><a class="code" href="classc_corpse.html">03135</a> <span class="keyword">class </span><a class="code" href="classc_corpse.html">cCorpse</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2878. <a name="l03136"></a>03136 {
  2879. <a name="l03137"></a>03137 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  2880. <a name="l03138"></a>03138 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_monster.html">cMonster</a>;
  2881. <a name="l03139"></a>03139
  2882. <a name="l03140"></a>03140 <span class="keyword">public</span>:
  2883. <a name="l03141"></a>03141 <a class="code" href="classc_corpse.html">cCorpse</a> () {};
  2884. <a name="l03147"></a>03147 <a class="code" href="classc_corpse.html">cCorpse</a> ( WORD type, DWORD dwGUID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDesc );
  2885. <a name="l03148"></a>03148 <span class="keyword">virtual</span> ~<a class="code" href="classc_corpse.html">cCorpse</a> ( ) {}
  2886. <a name="l03149"></a>03149
  2887. <a name="l03150"></a>03150 <span class="keywordtype">void</span> <a class="code" href="classc_corpse.html#a9d1dda20f29f74eb8fb38b13db576799">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2888. <a name="l03151"></a>03151 <span class="keywordtype">void</span> <a class="code" href="classc_corpse.html#a652f2531f36ad6b631b87dc9ae3500ec">Action</a> (<a class="code" href="classc_client.html">cClient</a>* who);
  2889. <a name="l03152"></a>03152 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_corpse.html#a13f810400c09f72cecb3172935cf5fd2">CreatePacket</a> ( );
  2890. <a name="l03153"></a>03153
  2891. <a name="l03154"></a>03154 <span class="comment">//Returns the GUID of the object</span>
  2892. <a name="l03155"></a>03155 <span class="keyword">inline</span> DWORD GetCorpseGUID( )
  2893. <a name="l03156"></a>03156 {
  2894. <a name="l03157"></a>03157 <span class="keywordflow">return</span> m_dwGUID;
  2895. <a name="l03158"></a>03158 }
  2896. <a name="l03159"></a>03159
  2897. <a name="l03160"></a>03160 <span class="comment">//Cube: This is the MonsterModelID for the corpse.</span>
  2898. <a name="l03161"></a>03161 <span class="keyword">inline</span> DWORD GetType()
  2899. <a name="l03162"></a>03162 {
  2900. <a name="l03163"></a>03163 <span class="keywordflow">return</span> m_dwType;
  2901. <a name="l03164"></a>03164 }
  2902. <a name="l03165"></a>03165
  2903. <a name="l03166"></a>03166 <span class="keywordtype">void</span> SetMode(DWORD mode)
  2904. <a name="l03167"></a>03167 {
  2905. <a name="l03168"></a>03168 m_dwMode = mode;
  2906. <a name="l03169"></a>03169 }
  2907. <a name="l03170"></a>03170 DWORD GetMode()
  2908. <a name="l03171"></a>03171 {
  2909. <a name="l03172"></a>03172 <span class="keywordflow">return</span> m_dwMode;
  2910. <a name="l03173"></a>03173 }
  2911. <a name="l03174"></a>03174 <span class="keywordtype">void</span> SetData(WORD wAnimConfig, WORD wSoundSet,WORD wModel,WORD wIcon, DWORD MonsterModelID, <span class="keywordtype">float</span> flScale)
  2912. <a name="l03175"></a>03175 {
  2913. <a name="l03176"></a>03176 m_wAnimConfig = wAnimConfig;
  2914. <a name="l03177"></a>03177 m_wSoundSet = wSoundSet;
  2915. <a name="l03178"></a>03178 m_wModel = wModel;
  2916. <a name="l03179"></a>03179 m_wIcon = wIcon;
  2917. <a name="l03180"></a>03180 m_MonsterModelID = MonsterModelID;
  2918. <a name="l03181"></a>03181 m_flScale = flScale;
  2919. <a name="l03182"></a>03182 }
  2920. <a name="l03183"></a>03183
  2921. <a name="l03184"></a>03184 <span class="comment">//CubeM0j0: Inventory stuff...</span>
  2922. <a name="l03185"></a>03185
  2923. <a name="l03186"></a>03186 <span class="keyword">inline</span> <span class="keywordtype">void</span> AddInventory( <a class="code" href="classc_object.html">cObject</a> *pcObject )
  2924. <a name="l03187"></a>03187 {
  2925. <a name="l03188"></a>03188 m_cor_lstInventory.push_back( pcObject );
  2926. <a name="l03189"></a>03189 pcObject-&gt;m_fIsOwned = TRUE;
  2927. <a name="l03190"></a>03190 pcObject-&gt;m_dwContainer = m_dwGUID;
  2928. <a name="l03191"></a>03191 }
  2929. <a name="l03192"></a>03192
  2930. <a name="l03193"></a>03193 <span class="keyword">inline</span> <span class="keywordtype">void</span> RemoveInventory( <a class="code" href="classc_object.html">cObject</a> *pcObject )
  2931. <a name="l03194"></a>03194 {
  2932. <a name="l03195"></a>03195 iterObject_lst itObject = std::find( m_cor_lstInventory.begin( ), m_cor_lstInventory.end( ), pcObject );
  2933. <a name="l03196"></a>03196
  2934. <a name="l03197"></a>03197 <span class="keywordflow">if</span> ( itObject != m_cor_lstInventory.end( ) )
  2935. <a name="l03198"></a>03198 m_cor_lstInventory.erase( itObject );
  2936. <a name="l03199"></a>03199 pcObject-&gt;m_fIsOwned = FALSE;
  2937. <a name="l03200"></a>03200 pcObject-&gt;m_dwContainer = NULL;
  2938. <a name="l03201"></a>03201 }
  2939. <a name="l03202"></a>03202
  2940. <a name="l03203"></a>03203 <span class="keyword">inline</span> <a class="code" href="classc_object.html">cObject</a> *FindInventory( DWORD dwGUID )
  2941. <a name="l03204"></a>03204 {
  2942. <a name="l03205"></a>03205 <span class="keywordflow">for</span> ( iterObject_lst itObject = m_cor_lstInventory.begin( ); itObject != m_cor_lstInventory.end( ); ++itObject )
  2943. <a name="l03206"></a>03206 {
  2944. <a name="l03207"></a>03207 <span class="keywordflow">if</span> ( dwGUID == (*itObject)-&gt;GetGUID( ) )
  2945. <a name="l03208"></a>03208 <span class="keywordflow">return</span> *itObject;
  2946. <a name="l03209"></a>03209 }
  2947. <a name="l03210"></a>03210 <span class="keywordflow">return</span> NULL;
  2948. <a name="l03211"></a>03211 }
  2949. <a name="l03212"></a>03212
  2950. <a name="l03213"></a>03213 <span class="keyword">inline</span> <span class="keywordtype">void</span> DeleteFromInventory( <a class="code" href="classc_object.html">cObject</a> *pcObject )
  2951. <a name="l03214"></a>03214 {
  2952. <a name="l03215"></a>03215 iterObject_lst itObject = std::find( m_cor_lstInventory.begin( ), m_cor_lstInventory.end( ), pcObject );
  2953. <a name="l03216"></a>03216
  2954. <a name="l03217"></a>03217 <span class="keywordflow">if</span> ( itObject != m_cor_lstInventory.end( ) )
  2955. <a name="l03218"></a>03218 m_cor_lstInventory.erase( itObject );
  2956. <a name="l03219"></a>03219 }
  2957. <a name="l03220"></a>03220
  2958. <a name="l03221"></a>03221 <span class="comment">//Cubem0j0: Add Corpse Inventory...</span>
  2959. <a name="l03222"></a>03222
  2960. <a name="l03223"></a>03223 <span class="keyword">private</span>:
  2961. <a name="l03224"></a>03224
  2962. <a name="l03225"></a>03225 DWORD m_dwMode;
  2963. <a name="l03226"></a>03226 DWORD m_dwType;
  2964. <a name="l03227"></a>03227 WORD m_wModel;
  2965. <a name="l03228"></a>03228 WORD m_wIcon;
  2966. <a name="l03229"></a>03229 WORD m_wSoundSet;
  2967. <a name="l03230"></a>03230 WORD m_wPortalMode;
  2968. <a name="l03231"></a>03231 WORD m_wAnimConfig;
  2969. <a name="l03232"></a>03232 DWORD m_MonsterModelID;
  2970. <a name="l03233"></a>03233 <span class="keywordtype">float</span> m_flScale;
  2971. <a name="l03234"></a>03234
  2972. <a name="l03235"></a>03235 <span class="comment">//the corpse&#39;s inventory list</span>
  2973. <a name="l03236"></a>03236 std::list&lt; cObject * &gt; m_cor_lstInventory;
  2974. <a name="l03237"></a>03237 };
  2975. <a name="l03238"></a>03238
  2976. <a name="l03239"></a>03239 <span class="comment">//************************************</span>
  2977. <a name="l03240"></a>03240 <span class="comment">//* World objects - Covenant Crystals</span>
  2978. <a name="l03241"></a>03241 <span class="comment">//************************************</span>
  2979. <a name="l03242"></a><a class="code" href="classc_covenant.html">03242</a> <span class="keyword">class </span><a class="code" href="classc_covenant.html">cCovenant</a>: <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  2980. <a name="l03243"></a>03243 {
  2981. <a name="l03244"></a>03244 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  2982. <a name="l03245"></a>03245 <span class="keyword">public</span>:
  2983. <a name="l03246"></a>03246 <a class="code" href="classc_covenant.html">cCovenant</a>();
  2984. <a name="l03252"></a>03252 <a class="code" href="classc_covenant.html">cCovenant</a>( WORD type, DWORD dwGUID, DWORD houseID, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDescription, <a class="code" href="structc_location.html">cLocation</a> *pcLoc = NULL );
  2985. <a name="l03253"></a>03253
  2986. <a name="l03254"></a>03254 <span class="keywordtype">void</span> <a class="code" href="classc_covenant.html#a227c13f7db128d072e4cd3ce36cbc5ba">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  2987. <a name="l03255"></a>03255 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_covenant.html#a3f976d181ff11e2c41d6bf6185802f32">CreatePacket</a>( );
  2988. <a name="l03256"></a>03256 <span class="keywordtype">void</span> <a class="code" href="classc_covenant.html#a7b037e07846fc17dd2a08b70dca5ec08">Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  2989. <a name="l03257"></a>03257
  2990. <a name="l03258"></a>03258 <span class="keyword">virtual</span> ~<a class="code" href="classc_covenant.html">cCovenant</a>( ) {}
  2991. <a name="l03259"></a>03259
  2992. <a name="l03260"></a>03260 <span class="keywordtype">void</span> SetMode(DWORD mode)
  2993. <a name="l03261"></a>03261 {
  2994. <a name="l03262"></a>03262 m_dwMode = mode;
  2995. <a name="l03263"></a>03263 }
  2996. <a name="l03264"></a>03264 <span class="keywordtype">void</span> SetGUID(DWORD GUID)
  2997. <a name="l03265"></a>03265 {
  2998. <a name="l03266"></a>03266 m_dwGUID = GUID;
  2999. <a name="l03267"></a>03267 }
  3000. <a name="l03268"></a>03268 <span class="keywordtype">void</span> SetOwner(DWORD ownerID)
  3001. <a name="l03269"></a>03269 {
  3002. <a name="l03270"></a>03270 m_dwOwnerID = ownerID;
  3003. <a name="l03271"></a>03271 }
  3004. <a name="l03272"></a>03272 <span class="keywordtype">void</span> SetData(DWORD wAnimConfig,WORD wModel,WORD wIcon)
  3005. <a name="l03273"></a>03273 {
  3006. <a name="l03274"></a>03274 m_wAnimConfig = wAnimConfig;
  3007. <a name="l03275"></a>03275 m_wModel = wModel;
  3008. <a name="l03276"></a>03276 m_wIcon = wIcon;
  3009. <a name="l03277"></a>03277 }
  3010. <a name="l03278"></a>03278
  3011. <a name="l03279"></a>03279 <span class="keyword">private</span>:
  3012. <a name="l03280"></a>03280 DWORD m_dwType; <span class="comment">//0 = Open, 1 = Closed</span>
  3013. <a name="l03281"></a>03281 DWORD m_dwHouseID;
  3014. <a name="l03282"></a>03282 WORD m_wModel;
  3015. <a name="l03283"></a>03283 WORD m_wIcon;
  3016. <a name="l03284"></a>03284 WORD m_wAnimConfig;
  3017. <a name="l03285"></a>03285 DWORD m_dwHouseType;
  3018. <a name="l03286"></a>03286 };
  3019. <a name="l03287"></a>03287
  3020. <a name="l03288"></a>03288 <span class="preprocessor">#define HOUSE_FORSALE 1</span>
  3021. <a name="l03289"></a>03289 <span class="preprocessor"></span><span class="preprocessor">#define HOUSE_OWNED 2</span>
  3022. <a name="l03290"></a>03290 <span class="preprocessor"></span><span class="preprocessor">#define HOUSE_OPEN 3</span>
  3023. <a name="l03291"></a>03291 <span class="preprocessor"></span><span class="preprocessor">#define HOUSE_CLOSED 4</span>
  3024. <a name="l03292"></a>03292 <span class="preprocessor"></span>
  3025. <a name="l03293"></a>03293 <span class="comment">//************************************</span>
  3026. <a name="l03294"></a>03294 <span class="comment">//* World objects - House Objects</span>
  3027. <a name="l03295"></a>03295 <span class="comment">//************************************</span>
  3028. <a name="l03296"></a><a class="code" href="classc_house.html">03296</a> <span class="keyword">class </span><a class="code" href="classc_house.html">cHouse</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  3029. <a name="l03297"></a>03297 {
  3030. <a name="l03298"></a>03298 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  3031. <a name="l03299"></a>03299
  3032. <a name="l03300"></a>03300 <span class="keyword">public</span>:
  3033. <a name="l03301"></a>03301 <a class="code" href="classc_house.html">cHouse</a>();
  3034. <a name="l03307"></a>03307 <a class="code" href="classc_house.html">cHouse</a>( <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDescription, WORD type, DWORD GUID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc = NULL );
  3035. <a name="l03308"></a>03308 <span class="keyword">virtual</span> ~<a class="code" href="classc_house.html">cHouse</a>( ) {}
  3036. <a name="l03309"></a>03309
  3037. <a name="l03310"></a>03310 <span class="keywordtype">void</span> <a class="code" href="classc_house.html#add6330dfe0a1915c8c52c3a9f90f6b6a">cHouse::Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  3038. <a name="l03311"></a>03311 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_house.html#a5d61720fe1037b01843af8f500c21a8e">cHouse::CreatePacket</a>();
  3039. <a name="l03312"></a>03312 <span class="keywordtype">void</span> <a class="code" href="classc_house.html#a1d23dc324192cad49a26fa115f37c12d">cHouse::Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  3040. <a name="l03313"></a>03313
  3041. <a name="l03314"></a>03314 <span class="keywordtype">void</span> SetGUID(DWORD GUID)
  3042. <a name="l03315"></a>03315 {
  3043. <a name="l03316"></a>03316 m_dwGUID = GUID;
  3044. <a name="l03317"></a>03317 }
  3045. <a name="l03318"></a>03318 <span class="keywordtype">void</span> SetOwner(DWORD ownerID)
  3046. <a name="l03319"></a>03319 {
  3047. <a name="l03320"></a>03320 m_dwOwnerID = ownerID;
  3048. <a name="l03321"></a>03321 }
  3049. <a name="l03322"></a>03322 <span class="keywordtype">void</span> SetData(WORD wModel,WORD wIcon)
  3050. <a name="l03323"></a>03323 {
  3051. <a name="l03324"></a>03324 m_wModel = wModel;
  3052. <a name="l03325"></a>03325 m_wIcon = wIcon;
  3053. <a name="l03326"></a>03326 }
  3054. <a name="l03327"></a>03327 <span class="keywordtype">void</span> SetIsOpen(DWORD open)
  3055. <a name="l03328"></a>03328 {
  3056. <a name="l03329"></a>03329 IsOpen = open;
  3057. <a name="l03330"></a>03330 }
  3058. <a name="l03331"></a>03331
  3059. <a name="l03332"></a>03332 <span class="keyword">private</span>:
  3060. <a name="l03333"></a>03333 WORD m_wModel;
  3061. <a name="l03334"></a>03334 WORD m_wIcon;
  3062. <a name="l03335"></a>03335 DWORD IsOpen;
  3063. <a name="l03336"></a>03336
  3064. <a name="l03337"></a>03337 };
  3065. <a name="l03338"></a>03338
  3066. <a name="l03339"></a>03339 <span class="comment">//************************************</span>
  3067. <a name="l03340"></a>03340 <span class="comment">//* World objects - Housing Hooks</span>
  3068. <a name="l03341"></a>03341 <span class="comment">//************************************</span>
  3069. <a name="l03342"></a><a class="code" href="classc_hooks.html">03342</a> <span class="keyword">class </span><a class="code" href="classc_hooks.html">cHooks</a>: <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  3070. <a name="l03343"></a>03343 {
  3071. <a name="l03344"></a>03344 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  3072. <a name="l03345"></a>03345 <span class="keyword">public</span>:
  3073. <a name="l03346"></a>03346 <a class="code" href="classc_hooks.html">cHooks</a>();
  3074. <a name="l03352"></a>03352 <a class="code" href="classc_hooks.html">cHooks</a>( WORD type, DWORD dwGUID, DWORD houseID, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDescription, <a class="code" href="structc_location.html">cLocation</a> *pcLoc = NULL );
  3075. <a name="l03353"></a>03353
  3076. <a name="l03354"></a>03354 <span class="keywordtype">void</span> <a class="code" href="classc_hooks.html#afa54251d389ffa1ef1915290417e7b65">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  3077. <a name="l03355"></a>03355 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_hooks.html#ae5517cb7019583fb98b88f02c264be82">CreatePacket</a>( );
  3078. <a name="l03356"></a>03356 <span class="keywordtype">void</span> <a class="code" href="classc_hooks.html#a61318e41fa0e79b479f03c8301868c7a">Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  3079. <a name="l03357"></a>03357
  3080. <a name="l03358"></a>03358 <span class="keyword">virtual</span> ~<a class="code" href="classc_hooks.html">cHooks</a>( ) {}
  3081. <a name="l03359"></a>03359
  3082. <a name="l03360"></a>03360 <span class="keywordtype">void</span> SetMode(DWORD mode)
  3083. <a name="l03361"></a>03361 {
  3084. <a name="l03362"></a>03362 m_dwMode = mode;
  3085. <a name="l03363"></a>03363 }
  3086. <a name="l03364"></a>03364 <span class="keywordtype">void</span> SetGUID(DWORD GUID)
  3087. <a name="l03365"></a>03365 {
  3088. <a name="l03366"></a>03366 m_dwGUID = GUID;
  3089. <a name="l03367"></a>03367 }
  3090. <a name="l03368"></a>03368
  3091. <a name="l03369"></a>03369 <span class="keywordtype">void</span> Set_hook_id(<span class="keywordtype">int</span> hookid)
  3092. <a name="l03370"></a>03370 {
  3093. <a name="l03371"></a>03371 hook_id = hookid;
  3094. <a name="l03372"></a>03372 }
  3095. <a name="l03373"></a>03373 <span class="keywordtype">int</span> Get_hook_id()
  3096. <a name="l03374"></a>03374 {
  3097. <a name="l03375"></a>03375 <span class="keywordflow">return</span> hook_id;
  3098. <a name="l03376"></a>03376 }
  3099. <a name="l03377"></a>03377 <span class="comment">/*</span>
  3100. <a name="l03378"></a>03378 <span class="comment"> inline void SetItem( cObject *pcObject ) </span>
  3101. <a name="l03379"></a>03379 <span class="comment"> { </span>
  3102. <a name="l03380"></a>03380 <span class="comment"> m_hook_item = pcObject;</span>
  3103. <a name="l03381"></a>03381 <span class="comment"> m_hook_item-&gt;m_fIsOwned = TRUE;</span>
  3104. <a name="l03382"></a>03382 <span class="comment"> m_hook_item-&gt;m_dwContainer = m_dwGUID; </span>
  3105. <a name="l03383"></a>03383 <span class="comment"> }</span>
  3106. <a name="l03384"></a>03384 <span class="comment"></span>
  3107. <a name="l03385"></a>03385 <span class="comment"> inline void RemoveItem()</span>
  3108. <a name="l03386"></a>03386 <span class="comment"> {</span>
  3109. <a name="l03387"></a>03387 <span class="comment"> m_hook_item = NULL;</span>
  3110. <a name="l03388"></a>03388 <span class="comment"> m_hook_item-&gt;m_fIsOwned = FALSE;</span>
  3111. <a name="l03389"></a>03389 <span class="comment"> m_hook_item-&gt;m_dwContainer = NULL;</span>
  3112. <a name="l03390"></a>03390 <span class="comment"> }</span>
  3113. <a name="l03391"></a>03391 <span class="comment"></span>
  3114. <a name="l03392"></a>03392 <span class="comment"> void SetIsUsed(int used)</span>
  3115. <a name="l03393"></a>03393 <span class="comment"> {</span>
  3116. <a name="l03394"></a>03394 <span class="comment"> IsUsed = used;</span>
  3117. <a name="l03395"></a>03395 <span class="comment"> }</span>
  3118. <a name="l03396"></a>03396 <span class="comment"> int GetIsUsed()</span>
  3119. <a name="l03397"></a>03397 <span class="comment"> {</span>
  3120. <a name="l03398"></a>03398 <span class="comment"> return IsUsed;</span>
  3121. <a name="l03399"></a>03399 <span class="comment"> }</span>
  3122. <a name="l03400"></a>03400 <span class="comment">*/</span>
  3123. <a name="l03401"></a>03401 <span class="keywordtype">void</span> SetData(WORD wAnimConfig,WORD wSoundSet,WORD wModel,WORD wIcon)
  3124. <a name="l03402"></a>03402 {
  3125. <a name="l03403"></a>03403 m_wAnimConfig = wAnimConfig;
  3126. <a name="l03404"></a>03404 m_wSoundSet = wSoundSet;
  3127. <a name="l03405"></a>03405 m_wModel = wModel;
  3128. <a name="l03406"></a>03406 m_wIcon = wIcon;
  3129. <a name="l03407"></a>03407 }
  3130. <a name="l03408"></a>03408
  3131. <a name="l03409"></a>03409 DWORD v_guids[255];
  3132. <a name="l03410"></a>03410 DWORD m_dwHouseID;
  3133. <a name="l03411"></a>03411
  3134. <a name="l03412"></a>03412 <span class="keyword">private</span>:
  3135. <a name="l03413"></a>03413 <span class="keywordtype">int</span> IsUsed;
  3136. <a name="l03414"></a>03414 DWORD m_dwType;
  3137. <a name="l03415"></a>03415 WORD m_wModel;
  3138. <a name="l03416"></a>03416 WORD m_wIcon;
  3139. <a name="l03417"></a>03417 WORD m_wSoundSet;
  3140. <a name="l03418"></a>03418 WORD m_wAnimConfig;
  3141. <a name="l03419"></a>03419 <span class="keywordtype">int</span> hook_id;
  3142. <a name="l03420"></a>03420
  3143. <a name="l03421"></a>03421 <span class="comment">// cObject *m_hook_item;</span>
  3144. <a name="l03422"></a>03422 <span class="comment">// DWORD hook_item_id;</span>
  3145. <a name="l03423"></a>03423 };
  3146. <a name="l03424"></a>03424
  3147. <a name="l03425"></a>03425 <span class="comment">//************************************</span>
  3148. <a name="l03426"></a>03426 <span class="comment">//* World objects - Housing Storage Chests</span>
  3149. <a name="l03427"></a>03427 <span class="comment">//************************************</span>
  3150. <a name="l03428"></a><a class="code" href="classc_storage.html">03428</a> <span class="keyword">class </span><a class="code" href="classc_storage.html">cStorage</a>: <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  3151. <a name="l03429"></a>03429 {
  3152. <a name="l03430"></a>03430 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  3153. <a name="l03431"></a>03431 <span class="keyword">public</span>:
  3154. <a name="l03432"></a>03432 <a class="code" href="classc_storage.html">cStorage</a>();
  3155. <a name="l03438"></a>03438 <a class="code" href="classc_storage.html">cStorage</a>( WORD type, DWORD dwGUID, DWORD houseID, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDescription, <a class="code" href="structc_location.html">cLocation</a> *pcLoc = NULL );
  3156. <a name="l03439"></a>03439
  3157. <a name="l03440"></a>03440 <span class="keywordtype">void</span> <a class="code" href="classc_storage.html#a475351ecddba552296f053f292321cb0">Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  3158. <a name="l03441"></a>03441 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_storage.html#ae2691f46b0c8ff7e302c4a28afd17674">CreatePacket</a>( );
  3159. <a name="l03442"></a>03442 <span class="keywordtype">void</span> <a class="code" href="classc_storage.html#ad10555476c49f2ea764ac9b8fdbb82d9">Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  3160. <a name="l03443"></a>03443
  3161. <a name="l03444"></a>03444 <span class="keyword">virtual</span> ~<a class="code" href="classc_storage.html">cStorage</a>( ) {}
  3162. <a name="l03445"></a>03445
  3163. <a name="l03446"></a>03446 <span class="keywordtype">void</span> SetMode(DWORD mode)
  3164. <a name="l03447"></a>03447 {
  3165. <a name="l03448"></a>03448 m_dwMode = mode;
  3166. <a name="l03449"></a>03449 }
  3167. <a name="l03450"></a>03450 DWORD GetMode()
  3168. <a name="l03451"></a>03451 {
  3169. <a name="l03452"></a>03452 <span class="keywordflow">return</span> m_dwMode;
  3170. <a name="l03453"></a>03453 }
  3171. <a name="l03454"></a>03454 <span class="keywordtype">void</span> SetGUID(DWORD GUID)
  3172. <a name="l03455"></a>03455 {
  3173. <a name="l03456"></a>03456 m_dwGUID = GUID;
  3174. <a name="l03457"></a>03457 }
  3175. <a name="l03458"></a>03458 <span class="keywordtype">void</span> SetData(WORD wAnimConfig,WORD wSoundSet,WORD wModel,WORD wIcon)
  3176. <a name="l03459"></a>03459 {
  3177. <a name="l03460"></a>03460 m_wAnimConfig = wAnimConfig;
  3178. <a name="l03461"></a>03461 m_wSoundSet = wSoundSet;
  3179. <a name="l03462"></a>03462 m_wModel = wModel;
  3180. <a name="l03463"></a>03463 m_wIcon = wIcon;
  3181. <a name="l03464"></a>03464 }
  3182. <a name="l03465"></a>03465 DWORD m_dwHouseID;
  3183. <a name="l03466"></a>03466
  3184. <a name="l03467"></a>03467 <span class="keyword">private</span>:
  3185. <a name="l03468"></a>03468 DWORD m_dwType;
  3186. <a name="l03469"></a>03469 WORD m_wModel;
  3187. <a name="l03470"></a>03470 WORD m_wIcon;
  3188. <a name="l03471"></a>03471 WORD m_wSoundSet;
  3189. <a name="l03472"></a>03472 WORD m_wPortalMode;
  3190. <a name="l03473"></a>03473 WORD m_wAnimConfig;
  3191. <a name="l03474"></a>03474 };
  3192. <a name="l03475"></a>03475
  3193. <a name="l03476"></a>03476 <span class="comment">//************************************</span>
  3194. <a name="l03477"></a>03477 <span class="comment">//* World objects - War Spells</span>
  3195. <a name="l03478"></a>03478 <span class="comment">//************************************</span>
  3196. <a name="l03479"></a><a class="code" href="classc_war_spell.html">03479</a> <span class="keyword">class </span><a class="code" href="classc_war_spell.html">cWarSpell</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  3197. <a name="l03480"></a>03480 {
  3198. <a name="l03481"></a>03481 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  3199. <a name="l03482"></a>03482
  3200. <a name="l03483"></a>03483 <span class="keyword">public</span>:
  3201. <a name="l03484"></a>03484 <span class="comment">//WarSpell();</span>
  3202. <a name="l03490"></a><a class="code" href="classc_war_spell.html#a7c191dc5ab8ddf64e87ecbabe6d1d834">03490</a> <span class="comment"></span> <a class="code" href="classc_war_spell.html#a7c191dc5ab8ddf64e87ecbabe6d1d834">cWarSpell</a>(DWORD dwGUID, DWORD dwSpellID, <a class="code" href="structc_location.html">cLocation</a>&amp; Loc, <a class="code" href="structc_velocity.html">cVelocity</a> tarVel, DWORD dwSpellModel)
  3203. <a name="l03491"></a>03491 {
  3204. <a name="l03492"></a>03492 m_wPositionSequence = 0;
  3205. <a name="l03493"></a>03493 m_wNumPortals = 0;
  3206. <a name="l03494"></a>03494 m_wNumLogins = 0x1;
  3207. <a name="l03495"></a>03495 m_fStatic = FALSE;
  3208. <a name="l03496"></a>03496 SetLocation(Loc);
  3209. <a name="l03497"></a>03497 m_dwGUID = dwGUID;
  3210. <a name="l03498"></a>03498 m_dwSpellModel = dwSpellModel;
  3211. <a name="l03499"></a>03499 m_dwSpellID = dwSpellID;
  3212. <a name="l03500"></a>03500 m_strName = <span class="stringliteral">&quot;War Spell&quot;</span>;
  3213. <a name="l03501"></a>03501 m_Velocity = tarVel;
  3214. <a name="l03502"></a>03502 m_Location.<a class="code" href="structc_location.html#a6b83e87b4efc48213e19cb722e1b5a6e" title="landblock location">m_flX</a> += tarVel.m_dx;
  3215. <a name="l03503"></a>03503 m_Location.<a class="code" href="structc_location.html#abb74f271b533e549bd8d2bc6a55ddcf3" title="cartesian position (relative to landblock)">m_flY</a> += tarVel.m_dy;
  3216. <a name="l03504"></a>03504 m_Location.<a class="code" href="structc_location.html#a27e3cdc4e217986e7bac1889d263d983" title="cartesian position (relative to landblock)">m_flZ</a> += 1.4f + tarVel.m_dz;
  3217. <a name="l03505"></a>03505
  3218. <a name="l03506"></a>03506 };
  3219. <a name="l03507"></a>03507 <span class="keyword">virtual</span> ~<a class="code" href="classc_war_spell.html">cWarSpell</a>(){};
  3220. <a name="l03508"></a>03508
  3221. <a name="l03509"></a>03509 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_war_spell.html#add6d30d37271bbb78f5e405afd66ffcf">cWarSpell::CreatePacket</a>();
  3222. <a name="l03510"></a>03510 <span class="keywordtype">void</span> <a class="code" href="classc_war_spell.html#a283dba5efdd20687249adcd1d5600bac">cWarSpell::Assess</a> (<a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  3223. <a name="l03511"></a>03511 <span class="keywordtype">void</span> <a class="code" href="classc_war_spell.html#ab5472610ded8a20fb6b463be96b0f53e">cWarSpell::Action</a>(<a class="code" href="classc_client.html">cClient</a>* who);
  3224. <a name="l03512"></a>03512 <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="classc_war_spell.html#a32b1c87fe57acfe28c39694da110c0b0">cWarSpell::Move</a>( LPVOID wp, LPVOID lp );
  3225. <a name="l03513"></a>03513 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_war_spell.html#af13cee1ac53277bf82bc645b681dec7c">cWarSpell::WarParticle</a>(<a class="code" href="classc_war_spell.html">cWarSpell</a>* pcWarSpell,DWORD dwEffect,<span class="keywordtype">float</span> flSpeed);
  3226. <a name="l03514"></a>03514 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_war_spell.html#abc86c660f7666699d199d17fa541d74e">cWarSpell::SpellAnim</a>(<a class="code" href="classc_war_spell.html">cWarSpell</a>* pcWarSpell,WORD wWarAnim,WORD wWarAnim2);
  3227. <a name="l03515"></a>03515 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_war_spell.html#ae776c832cd7218ae6ec3b25e7eaeac50">cWarSpell::SetPosition</a>();
  3228. <a name="l03516"></a>03516 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_war_spell.html#a5a594bd8410ee159d5b5f0287d76f647">cWarSpell::SpellImpact</a>(<a class="code" href="classc_war_spell.html">cWarSpell</a>* pcWarSpell,DWORD dwEffect,<span class="keywordtype">float</span> flSpeed);
  3229. <a name="l03517"></a>03517 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_war_spell.html#aa1faff9979e28270e4748118111d9688">cWarSpell::SpellVis</a>(<a class="code" href="classc_war_spell.html">cWarSpell</a>* pcWarSpell);
  3230. <a name="l03518"></a>03518 };
  3231. <a name="l03519"></a>03519
  3232. <a name="l03520"></a>03520 <span class="comment">//************************************</span>
  3233. <a name="l03521"></a>03521 <span class="comment">//* World objects - Monsters</span>
  3234. <a name="l03522"></a>03522 <span class="comment">//************************************</span>
  3235. <a name="l03523"></a><a class="code" href="classc_monster.html">03523</a> <span class="keyword">class </span><a class="code" href="classc_monster.html">cMonster</a> : <span class="keyword">public</span> <a class="code" href="classc_object.html">cObject</a>
  3236. <a name="l03524"></a>03524 {
  3237. <a name="l03525"></a>03525 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classc_client.html">cClient</a>;
  3238. <a name="l03526"></a>03526 <span class="keyword">friend</span> <span class="keyword">class </span>SimpleAI;
  3239. <a name="l03527"></a>03527
  3240. <a name="l03528"></a>03528 <span class="keyword">public</span>:
  3241. <a name="l03529"></a>03529 <span class="comment">// cMonster ();</span>
  3242. <a name="l03535"></a>03535 <span class="comment"></span> <a class="code" href="classc_monster.html#a67ff3c100dd32acaf527bb8f2bb3a6a6">cMonster</a> ( DWORD dwGUID, DWORD dwMonsterID, <a class="code" href="structc_location.html">cLocation</a> *pcLoc, <span class="keywordtype">char</span> *szName, <span class="keywordtype">char</span> *szDesc, <a class="code" href="structc_mon_stats.html">cMonStats</a> *pcmsStats, DWORD dwRespawn, DWORD dwDecay, DWORD dwChase, DWORD dwInfluence, DWORD dwExp_Value, DWORD dwHealth, DWORD dwStamina, DWORD dwMana );
  3243. <a name="l03536"></a>03536 <span class="keyword">virtual</span> ~<a class="code" href="classc_monster.html">cMonster</a> ( ) {}
  3244. <a name="l03537"></a>03537
  3245. <a name="l03538"></a>03538 <span class="keywordtype">void</span> <a class="code" href="classc_monster.html#a193fc08e23f83528570730275859ff4a">Assess</a> ( <a class="code" href="classc_client.html">cClient</a> *pcAssesser );
  3246. <a name="l03539"></a>03539 <span class="keywordtype">void</span> <a class="code" href="classc_monster.html#a1e7eee168a9de2e500b41fe6566855b1">Action</a> ( <a class="code" href="classc_client.html">cClient</a>* who );
  3247. <a name="l03540"></a>03540 <span class="keywordtype">void</span> <a class="code" href="classc_monster.html#aba44fbb509b06ae4a5754f51b770b2d6">Attack</a> ( <a class="code" href="classc_client.html">cClient</a>* who, <span class="keywordtype">float</span> flDamageSlider, DWORD F7B0Sequence );
  3248. <a name="l03541"></a>03541 <span class="keywordtype">void</span> <a class="code" href="classc_monster.html#ad2ed9828e2616cc5c8ff1d32c34c8fd4">SpellAttack</a> ( <a class="code" href="classc_client.html">cClient</a>* who, <a class="code" href="classc_war_spell.html">cWarSpell</a> *pcWarSpell, DWORD F7B0Sequence );
  3249. <a name="l03542"></a>03542 <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="classc_monster.html#a16dda846eb5f02783ee0f5bea5d30887">DeathAnimation</a> ( LPVOID wp, LPVOID lp );
  3250. <a name="l03543"></a>03543 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_monster.html#a81596747a08432ed36a8864de0ed0bec">CreatePacket</a> ( );
  3251. <a name="l03544"></a>03544 <a class="code" href="classc_message.html">cMessage</a> Animation ( WORD wAnim, <span class="keywordtype">float</span> flPlaySpeed = 1.0f );
  3252. <a name="l03545"></a>03545 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_monster.html#a3c44446cdf5f87b0c49159d0bf961066">DoDamageMessage</a> ( DWORD F7B0seq, std::string target, DWORD damagetype, <span class="keywordtype">double</span> severity, DWORD amount );
  3253. <a name="l03546"></a>03546 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_monster.html#ab3dd7432fab3d59476294cc514627f5d">RecieveDamageMessage</a> ( DWORD F7B0seq, std::string giver, DWORD damagetype, <span class="keywordtype">double</span> severity, DWORD amount, DWORD location );
  3254. <a name="l03547"></a>03547 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_monster.html#ae1c89da88da55f46d37864057e289ebd">DecrementHealth</a> ( DWORD dwGUID, WORD amount, <span class="keywordtype">signed</span> <span class="keywordtype">int</span> &amp;newhealth );
  3255. <a name="l03548"></a>03548 <a class="code" href="classc_message.html">cMessage</a> SetHealth ( DWORD dwNewHealth );
  3256. <a name="l03549"></a>03549 <a class="code" href="classc_message.html">cMessage</a> <a class="code" href="classc_monster.html#afebc7ba7cd5d2ed4d44ad2bad8bb94aa">AdjustBar</a> ( DWORD dwGUID, DWORD F7B0Sequence );
  3257. <a name="l03550"></a>03550 <a class="code" href="classc_message.html">cMessage</a> ChangeCombatMode ( <span class="keywordtype">bool</span> fMode );
  3258. <a name="l03551"></a>03551 <a class="code" href="classc_message.html">cMessage</a> CombatAnimation ( DWORD dwTarget, WORD wAttackAnim );
  3259. <a name="l03552"></a>03552 <a class="code" href="classc_message.html">cMessage</a> TurnToTarget ( <span class="keywordtype">float</span> flHeading, DWORD dwTargetGUID );
  3260. <a name="l03553"></a>03553 <a class="code" href="classc_message.html">cMessage</a> MoveToTarget ( <a class="code" href="classc_client.html">cClient</a> *pcWho );
  3261. <a name="l03554"></a>03554 <a class="code" href="classc_message.html">cMessage</a> MoveTarget ( <a class="code" href="classc_client.html">cClient</a> *pcWho );
  3262. <a name="l03555"></a>03555 <a class="code" href="classc_message.html">cMessage</a> ReturnToSpawn ( );
  3263. <a name="l03556"></a>03556 <span class="keywordtype">void</span> <a class="code" href="classc_monster.html#af9fd776f37a328ae148ea5aaa7faaa6b">ReSpawn</a> ( <a class="code" href="classc_object.html">cObject</a> *pcObject );
  3264. <a name="l03557"></a>03557 <span class="keywordtype">void</span> RemoveMonster ( <a class="code" href="classc_object.html">cObject</a> *pcObject );
  3265. <a name="l03558"></a>03558 <span class="keywordtype">void</span> MonsterCorpse ( );
  3266. <a name="l03559"></a>03559 <a class="code" href="classc_message.html">cMessage</a> SetPosition ( );
  3267. <a name="l03560"></a>03560 <span class="keyword">inline</span> DWORD GetMonsterModelID ( ) { <span class="keywordflow">return</span> m_dwMonsterModelID; }
  3268. <a name="l03561"></a>03561 <span class="keyword">inline</span> WORD GetTotalHealth ( ) { <span class="keywordflow">return</span> m_dwCurrenthealth; }
  3269. <a name="l03562"></a>03562
  3270. <a name="l03563"></a>03563 DWORD m_dwMonsterModelID;
  3271. <a name="l03564"></a>03564 <span class="comment">// bool m_fDeadOrAlive;</span>
  3272. <a name="l03565"></a>03565 WORD m_wNumMovements;
  3273. <a name="l03566"></a>03566 WORD m_wNumAnimInteracts;
  3274. <a name="l03567"></a>03567 WORD m_wNumBubbleModes;
  3275. <a name="l03568"></a>03568 WORD m_wNumJumps;
  3276. <a name="l03569"></a>03569 WORD m_wNumPortals;
  3277. <a name="l03570"></a>03570 WORD m_wAnimCount;
  3278. <a name="l03571"></a>03571 WORD m_wNumOverrides;
  3279. <a name="l03572"></a>03572 WORD m_wNumLogins;
  3280. <a name="l03573"></a>03573 <span class="comment">// Character Stats</span>
  3281. <a name="l03574"></a>03574 DWORD m_dwLevel;
  3282. <a name="l03575"></a>03575 DWORD m_dwCurrenthealth;
  3283. <a name="l03576"></a>03576 DWORD m_dwMaxHealth;
  3284. <a name="l03577"></a>03577 DWORD m_dwStr;
  3285. <a name="l03578"></a>03578 DWORD m_dwEnd;
  3286. <a name="l03579"></a>03579 DWORD m_dwQuick;
  3287. <a name="l03580"></a>03580 DWORD m_dwCoord;
  3288. <a name="l03581"></a>03581 DWORD m_dwFocus;
  3289. <a name="l03582"></a>03582 DWORD m_dwSelf;
  3290. <a name="l03583"></a>03583 DWORD m_dwCurrentStamina;
  3291. <a name="l03584"></a>03584 DWORD m_dwCurrentMana;
  3292. <a name="l03585"></a>03585 DWORD m_dwMaxStamina;
  3293. <a name="l03586"></a>03586 DWORD m_dwMaxMana;
  3294. <a name="l03587"></a>03587 DWORD m_dwSpecies;
  3295. <a name="l03588"></a>03588 WORD m_wCurAnim;
  3296. <a name="l03589"></a>03589 WORD m_wMeleeSequence;
  3297. <a name="l03590"></a>03590 DWORD m_dwF7B0Sequence;
  3298. <a name="l03591"></a>03591 BYTE m_bStatSequence;
  3299. <a name="l03592"></a>03592
  3300. <a name="l03593"></a>03593 DWORD m_dwUnknownCount;
  3301. <a name="l03594"></a>03594 BYTE m_bInitialAnimation[200];
  3302. <a name="l03595"></a>03595 BYTE m_bCombatMode;
  3303. <a name="l03596"></a>03596 <a class="code" href="structc_location.html">cLocation</a> m_TargetLocation;
  3304. <a name="l03597"></a>03597 <span class="keywordtype">int</span> m_iPosUpdateCount;
  3305. <a name="l03598"></a>03598 <span class="keywordtype">bool</span> m_fHasTarget;
  3306. <a name="l03599"></a>03599 DWORD m_dwTargetGUID;
  3307. <a name="l03600"></a>03600 };
  3308. <a name="l03601"></a>03601
  3309. <a name="l03602"></a>03602 <span class="preprocessor">#endif // #ifndef __OBJECT_H</span>
  3310. </pre></div></div>
  3311. <hr size="1"/><address style="text-align: right;"><small>Generated by&nbsp;
  3312. <a href="http://www.doxygen.org/index.html">
  3313. <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
  3314. </body>
  3315. </html>