DayZ 1.26
DayZ Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс QuantityConversions

Закрытые статические члены

static string GetItemQuantityText (EntityAI item, bool showMax=false)
 
static float GetItemQuantity (InventoryItem item)
 
static float GetItemQuantityMax (InventoryItem item)
 
static void GetItemQuantity (InventoryItem item, out float q_cur, out float q_min, out float q_max)
 
static int HasItemQuantity (notnull EntityAI item)
 

Подробное описание

Методы

◆ GetItemQuantity() [1/2]

static float GetItemQuantity ( InventoryItem item)
inlinestaticprivate
73 {
74 float quantity = 0;
75 if ( item.IsInherited(InventoryItem))
76 {
79 if (item_base)
80 {
81 if (item.IsMagazine())
82 {
85 quantity = magazine_item.GetAmmoCount();
86 }
87 else
88 {
89 quantity = item_base.GetQuantity();
90 }
91 }
92 }
93 return quantity;
94 }
Super root of all classes in Enforce script.
Definition EnScript.c:11
Definition ItemBase.c:15
Definition InventoryItem.c:731
Definition EntityAI.c:95
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.

Перекрестные ссылки Class::CastTo().

Используется в InventoryGridController::GetItemQuantity(), ActionTargetsCursor::GetItemQuantity(), ScriptedWidgetEventHandler::GetItemQuantity(), Icon::SetQuantity(), SlotsIcon::SetQuantity() и UIScriptedMenu::UpdateQuickbarItemCard().

◆ GetItemQuantity() [2/2]

static void GetItemQuantity ( InventoryItem item,
out float q_cur,
out float q_min,
out float q_max )
inlinestaticprivate
121 {
122 if ( item.IsInherited( InventoryItem ) )
123 {
126 if ( item.IsMagazine() )
127 {
130 q_cur = magazine_item.GetAmmoCount();
131 q_min = 0;
132 q_max = magazine_item.GetAmmoMax();
133 }
134 else
135 {
136 q_cur = item_base.GetQuantity();
137 q_min = item_base.GetQuantityMin();
138 q_max = item_base.GetQuantityMax();
139 }
140 }
141 }

Перекрестные ссылки Class::CastTo().

◆ GetItemQuantityMax()

static float GetItemQuantityMax ( InventoryItem item)
inlinestaticprivate
97 {
98 float quantity = 0;
99 if (item.IsInherited(InventoryItem))
100 {
103 if (item_base)
104 {
105 if (item.IsMagazine())
106 {
109 quantity = magazine_item.GetAmmoMax();
110 }
111 else
112 {
113 quantity = item_base.GetQuantityMax();
114 }
115 }
116 }
117 return quantity;
118 }

Перекрестные ссылки Class::CastTo().

Используется в Icon::SetQuantity() и SlotsIcon::SetQuantity().

◆ GetItemQuantityText()

static string GetItemQuantityText ( EntityAI item,
bool showMax = false )
inlinestaticprivate
4 {
5 string quantity_text = "";
6 if ( item.IsInherited( InventoryItem) )
7 {
10 float quantity = item_base.GetQuantity();
11 int ammo;
12 if ( item.IsMagazine() )
13 {
16 ammo = magazine_item.GetAmmoCount();
17
18 return ammo.ToString();
19 }
20 else if ( item.IsInherited( ItemBook) )
21 {
22 return "";
23 }
24 int stack_max = item.GetQuantityMax();
25
26 //int max = item.ConfigGetInt("varQuantityMax");
27 //string unit = item.ConfigGetString("stackedUnit");
28
29 if (stack_max > 0)
30 {
31 if (stack_max == 1)
32 {
33 if (quantity > 1)
34 {
35 if (showMax)
36 quantity_text = string.Format("%1/%2", quantity.ToString(), stack_max.ToString() );
37 //quantity_text = string.Format("%i/%i", quantity, stack_max );
38 else
39 quantity_text = quantity.ToString();
40 }
41 else
42 {
43 quantity_text = "";
44 }
45 }
46 else
47 {
48 if (showMax)
49 quantity_text = string.Format("%1/%2", quantity.ToString(), stack_max.ToString() );
50 //quantity_text = string.Format("%i/%i", quantity, stack_max );
51 else
52 quantity_text = quantity.ToString();
53 // if (unit == "ml")
54 // {
55 // float liters = round(quantity / 1000.0);
56 // if ( quantity < 2000 )
57 // {
58 // liters = ( round( (quantity / 100.0) ) ) / 10;
59 // }
60 // quantity_text = ftoa(liters) + "l";
61 // }
62 // else
63 // {
64 // quantity_text = itoa(quantity) + unit;
65 // }
66 }
67 }
68 }
69 return quantity_text;
70 }

Перекрестные ссылки Class::CastTo().

Используется в InventoryGridController::GetItemQuantityText(), Icon::SetQuantity(), SlotsIcon::SetQuantity() и UIScriptedMenu::UpdateQuickbarItemCard().

◆ HasItemQuantity()

static int HasItemQuantity ( notnull EntityAI item)
inlinestaticprivate
144 {
145 ItemBase ib;
146 if ( Class.CastTo(ib, item) )
147 {
148 if ( item.IsMagazine() )
149 return QUANTITY_COUNT;
150
151 if ( !ib.m_CanShowQuantity )
152 return QUANTITY_HIDDEN;
153
154 int max = item.GetQuantityMax();
155 if ( max > 0 )
156 {
157 if ( ib.m_HasQuantityBar )
158 {
159 return QUANTITY_PROGRESS;
160 }
161 else
162 {
163 if (max == 1)
164 {
165 return QUANTITY_HIDDEN;
166 }
167 else
168 {
169 return QUANTITY_COUNT;
170 }
171 }
172 }
173 }
174 return QUANTITY_HIDDEN;
175 }
const int QUANTITY_PROGRESS
Definition constants.c:495
const int QUANTITY_COUNT
Definition constants.c:494
const int QUANTITY_HIDDEN
Definition constants.c:493

Перекрестные ссылки Class::CastTo(), QUANTITY_COUNT, QUANTITY_HIDDEN и QUANTITY_PROGRESS.

Используется в SlotsIcon::CheckHasQuantity(), Icon::CheckHasQuantityEx(), ActionTargetsCursor::GetItemQuantity(), ScriptedWidgetEventHandler::GetItemQuantity(), InventoryGridController::HasItemQuantity(), Attachments::IsItemActive(), HandsContainer::IsItemActive(), Attachments::IsItemWithQuantityActive(), Container::IsItemWithQuantityActive(), HandsContainer::IsItemWithQuantityActive(), PlayerContainer::IsItemWithQuantityActive(), VicinitySlotsContainer::IsItemWithQuantityActive(), ZombieContainer::IsItemWithQuantityActive(), Icon::SetQuantity(), SlotsIcon::SetQuantity() и UIScriptedMenu::UpdateQuickbarItemCard().


Объявления и описания членов класса находятся в файле: