1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>Castle Game Engine: CastleItems: Class TInventory</title>
<meta name="generator" content="PasDoc 0.13.0">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="StyleSheet" type="text/css" href="pasdoc.css">
</head>
<body>
<table class="container"><tr><td class="navigation">
<h2>Castle Game Engine</h2><p><a href="introduction.html" class="navigation">Introduction</a></p><p><a href="AllUnits.html" class="navigation">Units</a></p><p><a href="ClassHierarchy.html" class="navigation">Class Hierarchy</a></p><p><a href="AllClasses.html" class="navigation">Classes, Interfaces, Objects and Records</a></p><p><a href="AllTypes.html" class="navigation">Types</a></p><p><a href="AllVariables.html" class="navigation">Variables</a></p><p><a href="AllConstants.html" class="navigation">Constants</a></p><p><a href="AllFunctions.html" class="navigation">Functions and Procedures</a></p><p><a href="AllIdentifiers.html" class="navigation">Identifiers</a></p></td><td class="content">
<a name="TInventory"></a><h1 class="cio">Class TInventory</h1>
<table class="sections wide_list">
<tr>
<td><a class="section" href="#PasDoc-Description">Description</a></td><td><a class="section" href="#PasDoc-Hierarchy">Hierarchy</a></td><td>Fields</td><td><a class="section" href="#PasDoc-Methods">Methods</a></td><td><a class="section" href="#PasDoc-Properties">Properties</a></td></tr></table>
<a name="PasDoc-Description"></a><h2 class="unit">Unit</h2>
<p class="unitlink">
<a href="CastleItems.html">CastleItems</a></p>
<h2 class="declaration">Declaration</h2>
<p class="declaration">
<code>type TInventory = class(specialize TFPGObjectList<TInventoryItem>)</code></p>
<h2 class="description">Description</h2>
<p>
List of items, with a 3D object (like a player or creature) owning these items. Do not directly change this list, always <a class="normal" href="CastleItems.TInventory.html#Use">use</a> the owner (<a class="normal" href="CastleItems.T3DAliveWithInventory.html">T3DAliveWithInventory</a>) methods like <a class="normal" href="CastleItems.T3DAliveWithInventory.html#PickItem">T3DAliveWithInventory.PickItem</a> or <a class="normal" href="CastleItems.T3DAliveWithInventory.html#DropItem">T3DAliveWithInventory.DropItem</a>. They make sure that items are correctly stacked, and that <a class="normal" href="CastleItems.TInventoryItem.html#Owner3D">TInventoryItem.Owner3D</a> and memory management is good.</p>
<a name="PasDoc-Hierarchy"></a><h2 class="hierarchy">Hierarchy</h2>
<ul class="hierarchy"><li class="ancestor">TFPGObjectList</li>
<li class="thisitem">TInventory</li></ul><h2 class="overview">Overview</h2>
<a name="PasDoc-Methods"></a><h3 class="summary">Methods</h3>
<table class="summary wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><code>function <b><a href="CastleItems.TInventory.html#Pick">Pick</a></b>(var Item: <a href="CastleItems.TInventoryItem.html">TInventoryItem</a>): Integer;</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><code>function <b><a href="CastleItems.TInventory.html#Drop">Drop</a></b>(const ItemIndex: Integer): <a href="CastleItems.TInventoryItem.html">TInventoryItem</a>;</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><code>procedure <b><a href="CastleItems.TInventory.html#CheckDepleted">CheckDepleted</a></b>(const Item: <a href="CastleItems.TInventoryItem.html">TInventoryItem</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><code>procedure <b><a href="CastleItems.TInventory.html#Use">Use</a></b>(const Index: Integer);</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>constructor <b><a href="CastleItems.TInventory.html#Create">Create</a></b>(const AOwner3D: <a href="CastleItems.T3DAliveWithInventory.html">T3DAliveWithInventory</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>function <b><a href="CastleItems.TInventory.html#FindResource">FindResource</a></b>(Resource: <a href="CastleItems.TItemResource.html">TItemResource</a>): Integer;</code></td>
</tr>
</table>
<a name="PasDoc-Properties"></a><h3 class="summary">Properties</h3>
<table class="summary wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>property <b><a href="CastleItems.TInventory.html#Owner3D">Owner3D</a></b>: <a href="CastleItems.T3DAliveWithInventory.html">T3DAliveWithInventory</a> read FOwner3D;</code></td>
</tr>
</table>
<h2 class="description">Description</h2>
<h3 class="detail">Methods</h3>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><a name="Pick"></a><code>function <b>Pick</b>(var Item: <a href="CastleItems.TInventoryItem.html">TInventoryItem</a>): Integer;</code></td>
</tr>
<tr><td colspan="2">
<p>
Add Item to inventory. See <a class="normal" href="CastleItems.T3DAliveWithInventory.html#PickItemUpdate">T3DAliveWithInventory.PickItemUpdate</a> description, this method actually implements it.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><a name="Drop"></a><code>function <b>Drop</b>(const ItemIndex: Integer): <a href="CastleItems.TInventoryItem.html">TInventoryItem</a>;</code></td>
</tr>
<tr><td colspan="2">
<p>
<code>Drop</code> item with given index. ItemIndex must be valid (between 0 and Items.Count - 1). You <i>must</i> take care yourself of returned <a class="normal" href="CastleItems.TInventoryItem.html">TInventoryItem</a> memory management. This is the low-level basis for <a class="normal" href="CastleItems.T3DAliveWithInventory.html#DropItem">T3DAliveWithInventory.DropItem</a>.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><a name="CheckDepleted"></a><code>procedure <b>CheckDepleted</b>(const Item: <a href="CastleItems.TInventoryItem.html">TInventoryItem</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
Pass here items owned by this list, immediately after decreasing their Quantity. This frees the item (removing it from the list) if it's quantity reached zero.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><a name="Use"></a><code>procedure <b>Use</b>(const Index: Integer);</code></td>
</tr>
<tr><td colspan="2">
<p>
<code>Use</code> the item of given index. This is the low-level basis for <a class="normal" href="CastleItems.T3DAliveWithInventory.html#UseItem">T3DAliveWithInventory.UseItem</a>.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const AOwner3D: <a href="CastleItems.T3DAliveWithInventory.html">T3DAliveWithInventory</a>);</code></td>
</tr>
<tr><td colspan="2">
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="FindResource"></a><code>function <b>FindResource</b>(Resource: <a href="CastleItems.TItemResource.html">TItemResource</a>): Integer;</code></td>
</tr>
<tr><td colspan="2">
<p>
Searches for item of given Resource. Returns index of first found, or -1 if not found.</p>
</td></tr>
</table>
<h3 class="detail">Properties</h3>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="Owner3D"></a><code>property <b>Owner3D</b>: <a href="CastleItems.T3DAliveWithInventory.html">T3DAliveWithInventory</a> read FOwner3D;</code></td>
</tr>
<tr><td colspan="2">
<p>
Owner of the inventory (like a player or creature). Never <code>Nil</code>, always valid for given inventory. All items on this list always have the same <a class="normal" href="CastleItems.TInventoryItem.html#Owner3D">TInventoryItem.Owner3D</a> value as the inventory they are in.</p>
</td></tr>
</table>
<!-- Piwik -->
<script type="text/javascript">
var _paq = _paq || [];
_paq.push(["trackPageView"]);
_paq.push(["enableLinkTracking"]);
(function() {
var u=(("https:" == document.location.protocol) ? "https" : "http") + "://michalis.ii.uni.wroc.pl/piwik-castle-engine/";
_paq.push(["setTrackerUrl", u+"piwik.php"]);
_paq.push(["setSiteId", "1"]);
var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript";
g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Piwik Code -->
<noscript>
<!-- Piwik Image Tracker -->
<img src="http://michalis.ii.uni.wroc.pl/piwik-castle-engine/piwik.php?idsite=1&rec=1" style="border:0" alt="" />
<!-- End Piwik -->
</noscript>
<hr noshade size="1"><span class="appinfo"><em>Generated by <a href="http://pasdoc.sourceforge.net/">PasDoc 0.13.0</a> on 2015-06-15 04:43:10</em>
</span>
</td></tr></table></body></html>
|