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

◆ CheckSlotVerticalDistance()

override bool BaseBuildingBase::CheckSlotVerticalDistance ( int slot_id,
PlayerBase player )
inlineprivate

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

301 {
302 string slot_name;
303 InventorySlots.GetSelectionForSlotId( slot_id , slot_name );
304 slot_name.ToLower();
305
306 //wall attachments
307 //level 1
308 if ( slot_name.Contains( "material_l1" ) || slot_name.Contains( "level_1_" ) )
309 {
310 if ( slot_name.Contains( "woodenlogs" ) )
311 {
313 }
314 else
315 {
316 return GetConstruction().IsPartConstructed( "level_1_base" ) && CheckMemoryPointVerticalDistance( MAX_FLOOR_VERTICAL_DISTANCE, "level_1", player );
317 }
318 }
319 //level 2
320 if ( slot_name.Contains( "material_l2" ) || slot_name.Contains( "level_2_" ) )
321 {
322 if ( slot_name.Contains( "material_l2w" ) || slot_name.Contains( "level_2_wall" ) )
323 {
324 return GetConstruction().IsPartConstructed( "level_2_base" ) && CheckMemoryPointVerticalDistance( MAX_FLOOR_VERTICAL_DISTANCE, "level_2", player );
325 }
326 else
327 {
328 if ( slot_name.Contains( "woodenlogs" ) )
329 {
331 }
332 else
333 {
334 return GetConstruction().IsPartConstructed( "level_1_roof" ) && CheckMemoryPointVerticalDistance( MAX_FLOOR_VERTICAL_DISTANCE, "level_2", player );
335 }
336 }
337 }
338 //level 3
339 if ( slot_name.Contains( "material_l3" ) || slot_name.Contains( "level_3_" ) )
340 {
341 if ( slot_name.Contains( "material_l3w" ) || slot_name.Contains( "level_3_wall" ) )
342 {
343 return GetConstruction().IsPartConstructed( "level_3_base" ) && CheckMemoryPointVerticalDistance( MAX_FLOOR_VERTICAL_DISTANCE, "level_3", player );
344 }
345 else
346 {
347 if ( slot_name.Contains( "woodenlogs" ) )
348 {
350 }
351 else
352 {
353 return GetConstruction().IsPartConstructed( "level_2_roof" ) && CheckMemoryPointVerticalDistance( MAX_FLOOR_VERTICAL_DISTANCE, "level_3", player );
354 }
355 }
356 }
357
358 return true;
359 }
Construction GetConstruction()
Определения BaseBuildingBase.c:2171
const float MAX_FLOOR_VERTICAL_DISTANCE
Определения Watchtower.c:6
override bool CheckMemoryPointVerticalDistance(float max_dist, string selection, PlayerBase player)
Определения Watchtower.c:362
bool Contains(string sample)
Returns true if sample is substring of string.
Определения EnString.c:286
proto int ToLower()
Changes string to lowercase. Returns length.

Перекрестные ссылки CheckMemoryPointVerticalDistance(), string::Contains(), GetConstruction(), InventorySlots::GetSelectionForSlotId(), MAX_FLOOR_VERTICAL_DISTANCE и string::ToLower().

Используется в CanReceiveAttachment() и ActionAttachToConstruction::FindAndTranslateAttachmentSlot().