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

◆ CreatePrimaryItems()

void CAContinuousMineWood::CreatePrimaryItems ( ActionData action_data)
inlineprotected

См. определение в файле CAContinuousMineWood.c строка 150

151 {
152 string material;
153 int increment;
154 for (int i = 0; i < m_MaterialAndQuantityMap.Count(); i++)
155 {
156 material = m_MaterialAndQuantityMap.GetKey(i);
157
158 if (material != "")
159 {
160 increment = m_MaterialAndQuantityMap.GetElement(i);
161
162 if ( !m_MinedItem[i] )
163 {
164 m_MinedItem[i] = ItemBase.Cast(GetGame().CreateObjectEx(material,action_data.m_Player.GetPosition(), ECE_PLACE_ON_SURFACE));
165 m_MinedItem[i].SetQuantity(increment);
166 }
167 else if (m_MinedItem[i].HasQuantity())
168 {
169 if ( m_MinedItem[i].IsFullQuantity() )
170 {
171 int stack_max = m_MinedItem[i].GetQuantityMax();
172
173 increment -= stack_max - m_MinedItem[i].GetQuantity();
174 if (increment >= 1.0)
175 {
176 m_MinedItem[i] = ItemBase.Cast(GetGame().CreateObjectEx(material,action_data.m_Player.GetPosition(), ECE_PLACE_ON_SURFACE));
177 m_MinedItem[i].SetQuantity(increment,false);
178 }
179 }
180 else
181 {
182 m_MinedItem[i].AddQuantity(increment,false);
183 }
184 }
185 else
186 {
187 m_MinedItem[i] = ItemBase.Cast(GetGame().CreateObjectEx(material,action_data.m_Player.GetPosition(), ECE_PLACE_ON_SURFACE));
188 }
189 }
190 }
191 }
const int ECE_PLACE_ON_SURFACE
Определения CentralEconomy.c:37
class GP5GasMask extends MaskBase ItemBase
override bool HasQuantity()
Определения ItemBase.c:8149
bool IsFullQuantity()
Определения ItemBase.c:8159
ref map< string, int > m_MaterialAndQuantityMap
Определения CAContinuousMineWood.c:11
ItemBase m_MinedItem[MINEDITEM_MAX]
Определения CAContinuousMineWood.c:16
proto native CGame GetGame()

Перекрестные ссылки ActionData, ECE_PLACE_ON_SURFACE, GetGame(), HasQuantity(), IsFullQuantity(), m_MaterialAndQuantityMap и m_MinedItem.

Используется в Execute().