1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3
<title>Ares: ArmorType Class Reference</title>
4
<link href="tabs.css" rel="stylesheet" type="text/css">
5
<link href="doxygen.css" rel="stylesheet" type="text/css">
7
<!-- Generated by Doxygen 1.5.8 -->
8
<script type="text/javascript">
10
function changeDisplayState (e){
11
var num=this.id.replace(/[^[0-9]/g,'');
12
var button=this.firstChild;
13
var sectionDiv=document.getElementById('dynsection'+num);
14
if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
15
sectionDiv.style.display='block';
16
button.src='open.gif';
18
sectionDiv.style.display='none';
19
button.src='closed.gif';
22
function initDynSections(){
23
var divs=document.getElementsByTagName('div');
25
for(var i=0;i<divs.length-1;i++){
26
if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
28
var section=divs[i+1];
29
var button=header.firstChild;
31
divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
32
button=document.createElement('img');
33
divs[i].insertBefore(button,divs[i].firstChild);
35
header.style.cursor='pointer';
36
header.onclick=changeDisplayState;
37
header.id='dynheader'+sectionCounter;
38
button.src='closed.gif';
39
section.id='dynsection'+sectionCounter;
40
section.style.display='none';
41
section.style.marginLeft='14px';
46
window.onload = initDynSections;
49
<div class="navigation" id="top">
52
<li><a href="index.html"><span>Main Page</span></a></li>
53
<li><a href="pages.html"><span>Related Pages</span></a></li>
54
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
55
<li><a href="files.html"><span>Files</span></a></li>
56
<li><a href="dirs.html"><span>Directories</span></a></li>
58
<form action="search.php" method="get">
59
<table cellspacing="0" cellpadding="0" border="0">
61
<td><label> <u>S</u>earch for </label></td>
62
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
71
<li><a href="annotated.html"><span>Class List</span></a></li>
72
<li><a href="classes.html"><span>Class Index</span></a></li>
73
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
74
<li><a href="functions.html"><span>Class Members</span></a></li>
78
<div class="contents">
79
<h1>ArmorType Class Reference</h1><!-- doxytag: class="ArmorType" --><!-- doxytag: inherits="Enumerable< ArmorType >" --><code>#include <Enum/ArmorTypes.h></code>
81
<div class="dynheader">
82
Inheritance diagram for ArmorType:</div>
83
<div class="dynsection">
85
<p><center><img src="class_armor_type.png" usemap="#ArmorType_map" border="0" alt=""></center>
86
<map name="ArmorType_map">
87
<area href="class_enumerable.html" alt="Enumerable< ArmorType >" shape="rect" coords="0,0,166,24">
92
<a href="class_armor_type-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
94
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
95
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#4aa1955d1bd5ddeea73f711d68193778">ArmorType</a> (const char *Title)</td></tr>
97
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#4cd2bbb88d44b17d60bb2f06937bd23f">~ArmorType</a> ()</td></tr>
99
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#e41760f078c23753704e921c0fb9a7a6">LoadFromINI</a> (CCINIClass *pINI)</td></tr>
101
<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
102
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#4a23a18964e0c6474cf06d2fcd7e54dc">LoadForWarhead</a> (CCINIClass *pINI, WarheadTypeClass *pWH)</td></tr>
104
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#4160a82a696fb161368b83bab9961b94">AddDefaults</a> ()</td></tr>
106
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
107
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#0d33abfa0691e046fdb73b99999a1a8d">DefaultIndex</a></td></tr>
109
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct_warhead_type_ext_1_1_verses_data.html">WarheadTypeExt::VersesData</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_armor_type.html#f94d530a2376890e3ea5cd2f32e8b71e">DefaultVerses</a></td></tr>
112
<hr><h2>Constructor & Destructor Documentation</h2>
113
<a class="anchor" name="4aa1955d1bd5ddeea73f711d68193778"></a><!-- doxytag: member="ArmorType::ArmorType" ref="4aa1955d1bd5ddeea73f711d68193778" args="(const char *Title)" -->
114
<div class="memitem">
115
<div class="memproto">
116
<table class="memname">
118
<td class="memname">ArmorType::ArmorType </td>
120
<td class="paramtype">const char * </td>
121
<td class="paramname"> <em>Title</em> </td>
122
<td> ) </td>
123
<td><code> [inline]</code></td>
130
<div class="fragment"><pre class="fragment"><a name="l00023"></a>00023 {
131
<a name="l00024"></a>00024 strncpy(this-><a class="code" href="class_enumerable.html#e61fd309ad2089b92c481f19a0d77cd1">Name</a>, Title, 31);
132
<a name="l00025"></a>00025 <a class="code" href="class_armor_type.html#0d33abfa0691e046fdb73b99999a1a8d">DefaultIndex</a> = -1;
133
<a name="l00026"></a>00026 <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>.AddItem(<span class="keyword">this</span>);
134
<a name="l00027"></a>00027 }
140
<a class="anchor" name="4cd2bbb88d44b17d60bb2f06937bd23f"></a><!-- doxytag: member="ArmorType::~ArmorType" ref="4cd2bbb88d44b17d60bb2f06937bd23f" args="()" -->
141
<div class="memitem">
142
<div class="memproto">
143
<table class="memname">
145
<td class="memname">virtual ArmorType::~ArmorType </td>
147
<td class="paramname"> </td>
148
<td> ) </td>
149
<td><code> [inline, virtual]</code></td>
156
<div class="fragment"><pre class="fragment"><a name="l00029"></a>00029 {
157
<a name="l00030"></a>00030 <a class="code" href="class_armor_type.html">ArmorType</a> *placeholder = <span class="keyword">this</span>;
158
<a name="l00031"></a>00031 <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>.RemoveItem(<a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>.FindItemIndex(&placeholder));
159
<a name="l00032"></a>00032 }
165
<hr><h2>Member Function Documentation</h2>
166
<a class="anchor" name="4160a82a696fb161368b83bab9961b94"></a><!-- doxytag: member="ArmorType::AddDefaults" ref="4160a82a696fb161368b83bab9961b94" args="()" -->
167
<div class="memitem">
168
<div class="memproto">
169
<table class="memname">
171
<td class="memname">void ArmorType::AddDefaults </td>
173
<td class="paramname"> </td>
174
<td> ) </td>
175
<td><code> [static]</code></td>
182
<div class="fragment"><pre class="fragment"><a name="l00062"></a>00062 {
183
<a name="l00063"></a>00063 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"none"</span>);
184
<a name="l00064"></a>00064 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"flak"</span>);
185
<a name="l00065"></a>00065 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"plate"</span>);
186
<a name="l00066"></a>00066 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"light"</span>);
187
<a name="l00067"></a>00067 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"medium"</span>);
188
<a name="l00068"></a>00068 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"heavy"</span>);
189
<a name="l00069"></a>00069 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"wood"</span>);
190
<a name="l00070"></a>00070 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"steel"</span>);
191
<a name="l00071"></a>00071 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"concrete"</span>);
192
<a name="l00072"></a>00072 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"special_1"</span>);
193
<a name="l00073"></a>00073 <a class="code" href="class_enumerable.html#29a8f9ad410ce1ca40a36657d3e1440e">FindOrAllocate</a>(<span class="stringliteral">"special_2"</span>);
194
<a name="l00074"></a>00074 }
200
<a class="anchor" name="4a23a18964e0c6474cf06d2fcd7e54dc"></a><!-- doxytag: member="ArmorType::LoadForWarhead" ref="4a23a18964e0c6474cf06d2fcd7e54dc" args="(CCINIClass *pINI, WarheadTypeClass *pWH)" -->
201
<div class="memitem">
202
<div class="memproto">
203
<table class="memname">
205
<td class="memname">void ArmorType::LoadForWarhead </td>
207
<td class="paramtype">CCINIClass * </td>
208
<td class="paramname"> <em>pINI</em>, </td>
211
<td class="paramkey"></td>
213
<td class="paramtype">WarheadTypeClass * </td>
214
<td class="paramname"> <em>pWH</em></td><td> </td>
219
<td></td><td></td><td><code> [static]</code></td>
226
<div class="fragment"><pre class="fragment"><a name="l00023"></a>00023 {
227
<a name="l00024"></a>00024 <a class="code" href="class_warhead_type_ext_1_1_ext_data.html">WarheadTypeExt::ExtData</a> *pData = <a class="code" href="class_warhead_type_ext.html#b2eb86c684fe6f15f9f95a9aa171e7dd">WarheadTypeExt::ExtMap</a>.<a class="code" href="class_container.html#90ddec0f8fb14f5a9894e128c2f938fc">Find</a>(pWH);
228
<a name="l00025"></a>00025 <span class="keywordflow">if</span>(!pData) {
229
<a name="l00026"></a>00026 <span class="keywordflow">return</span>;
230
<a name="l00027"></a>00027 }
231
<a name="l00028"></a>00028
232
<a name="l00029"></a>00029 <span class="keywordflow">while</span>(pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>.Count < <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>.Count) {
233
<a name="l00030"></a>00030 <a class="code" href="class_armor_type.html">ArmorType</a> *pArmor = <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>[pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>.Count];
234
<a name="l00031"></a>00031 <span class="keywordtype">int</span> idx = pArmor-><a class="code" href="class_armor_type.html#0d33abfa0691e046fdb73b99999a1a8d">DefaultIndex</a>;
235
<a name="l00032"></a>00032 pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>.AddItem(
236
<a name="l00033"></a>00033 idx == -1
237
<a name="l00034"></a>00034 ? pArmor-><a class="code" href="class_armor_type.html#f94d530a2376890e3ea5cd2f32e8b71e">DefaultVerses</a>
238
<a name="l00035"></a>00035 : pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[idx]
239
<a name="l00036"></a>00036 );
240
<a name="l00037"></a>00037 }
241
<a name="l00038"></a>00038
242
<a name="l00039"></a>00039 <span class="keywordtype">char</span> buffer[0x80];
243
<a name="l00040"></a>00040 <span class="keywordtype">char</span> ret[0x20];
244
<a name="l00041"></a>00041 <span class="keyword">const</span> <span class="keywordtype">char</span> *section = pWH->get_ID();
245
<a name="l00042"></a>00042
246
<a name="l00043"></a>00043 <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i < <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>.Count; ++i) {
247
<a name="l00044"></a>00044 _snprintf(buffer, 64, <span class="stringliteral">"Versus.%s"</span>, <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>[i]-><a class="code" href="class_enumerable.html#e61fd309ad2089b92c481f19a0d77cd1">Name</a>);
248
<a name="l00045"></a>00045 <span class="keywordflow">if</span>(pINI->ReadString(section, buffer, <span class="stringliteral">""</span>, ret, 0x20)) {
249
<a name="l00046"></a>00046
250
<a name="l00047"></a>00047 pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].Parse(ret);
251
<a name="l00048"></a>00048 }
252
<a name="l00049"></a>00049
253
<a name="l00050"></a>00050 _snprintf(buffer, 128, <span class="stringliteral">"Versus.%s.ForceFire"</span>, <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>[i]-><a class="code" href="class_enumerable.html#e61fd309ad2089b92c481f19a0d77cd1">Name</a>);
254
<a name="l00051"></a>00051 pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].ForceFire = pINI->ReadBool(section, buffer, pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].ForceFire);
255
<a name="l00052"></a>00052
256
<a name="l00053"></a>00053 _snprintf(buffer, 128, <span class="stringliteral">"Versus.%s.Retaliate"</span>, <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>[i]-><a class="code" href="class_enumerable.html#e61fd309ad2089b92c481f19a0d77cd1">Name</a>);
257
<a name="l00054"></a>00054 pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].Retaliate = pINI->ReadBool(section, buffer, pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].Retaliate);
258
<a name="l00055"></a>00055
259
<a name="l00056"></a>00056 _snprintf(buffer, 128, <span class="stringliteral">"Versus.%s.PassiveAcquire"</span>, <a class="code" href="class_enumerable.html#92acdb216fc564bc8ad84f131a81ddfc">Array</a>[i]-><a class="code" href="class_enumerable.html#e61fd309ad2089b92c481f19a0d77cd1">Name</a>);
260
<a name="l00057"></a>00057 pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].PassiveAcquire = pINI->ReadBool(section, buffer, pData-><a class="code" href="class_warhead_type_ext_1_1_ext_data.html#a98c782be341b4956d26eb59a1ea553b">Verses</a>[i].PassiveAcquire);
261
<a name="l00058"></a>00058 }
262
<a name="l00059"></a>00059 }
268
<a class="anchor" name="e41760f078c23753704e921c0fb9a7a6"></a><!-- doxytag: member="ArmorType::LoadFromINI" ref="e41760f078c23753704e921c0fb9a7a6" args="(CCINIClass *pINI)" -->
269
<div class="memitem">
270
<div class="memproto">
271
<table class="memname">
273
<td class="memname">void ArmorType::LoadFromINI </td>
275
<td class="paramtype">CCINIClass * </td>
276
<td class="paramname"> <em>pINI</em> </td>
277
<td> ) </td>
278
<td><code> [virtual]</code></td>
285
<div class="fragment"><pre class="fragment"><a name="l00011"></a>00011 {
286
<a name="l00012"></a>00012 <span class="keyword">const</span> <span class="keywordtype">char</span> *section = <a class="code" href="class_enumerable.html#a92a0b24dec15afa7584b5801b11e208">Enumerable<ArmorType>::GetMainSection</a>();
287
<a name="l00013"></a>00013
288
<a name="l00014"></a>00014 <span class="keywordtype">char</span> buffer[0x40];
289
<a name="l00015"></a>00015 pINI->ReadString(section, this-><a class="code" href="class_enumerable.html#e61fd309ad2089b92c481f19a0d77cd1">Name</a>, <span class="stringliteral">""</span>, buffer, 0x40);
290
<a name="l00016"></a>00016
291
<a name="l00017"></a>00017 this-><a class="code" href="class_armor_type.html#0d33abfa0691e046fdb73b99999a1a8d">DefaultIndex</a> = <a class="code" href="class_enumerable.html#9b4bcdfca82ac04940344e7d613bb43b">ArmorType::FindIndex</a>(buffer);
292
<a name="l00018"></a>00018 <a class="code" href="struct_warhead_type_ext_1_1_verses_data.html">WarheadTypeExt::VersesData</a> *VS = &this-><a class="code" href="class_armor_type.html#f94d530a2376890e3ea5cd2f32e8b71e">DefaultVerses</a>;
293
<a name="l00019"></a>00019 VS-><a class="code" href="struct_warhead_type_ext_1_1_verses_data.html#555658f7be53389ad25eb3fd3fb7153c">Parse</a>(buffer);
294
<a name="l00020"></a>00020 }
300
<hr><h2>Member Data Documentation</h2>
301
<a class="anchor" name="0d33abfa0691e046fdb73b99999a1a8d"></a><!-- doxytag: member="ArmorType::DefaultIndex" ref="0d33abfa0691e046fdb73b99999a1a8d" args="" -->
302
<div class="memitem">
303
<div class="memproto">
304
<table class="memname">
306
<td class="memname">int <a class="el" href="class_armor_type.html#0d33abfa0691e046fdb73b99999a1a8d">ArmorType::DefaultIndex</a> </td>
316
<a class="anchor" name="f94d530a2376890e3ea5cd2f32e8b71e"></a><!-- doxytag: member="ArmorType::DefaultVerses" ref="f94d530a2376890e3ea5cd2f32e8b71e" args="" -->
317
<div class="memitem">
318
<div class="memproto">
319
<table class="memname">
321
<td class="memname"><a class="el" href="struct_warhead_type_ext_1_1_verses_data.html">WarheadTypeExt::VersesData</a> <a class="el" href="class_armor_type.html#f94d530a2376890e3ea5cd2f32e8b71e">ArmorType::DefaultVerses</a> </td>
331
<hr>The documentation for this class was generated from the following files:<ul>
332
<li>Enum/<a class="el" href="_armor_types_8h.html">ArmorTypes.h</a><li>Enum/<a class="el" href="_armor_types_8cpp.html">ArmorTypes.cpp</a></ul>
334
<hr size="1"><address style="text-align: right;"><small>Generated on Tue May 18 03:51:09 2010 for Ares by
335
<a href="http://www.doxygen.org/index.html">
336
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>