Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс ActionAttachPowerSourceToPanel

DEPRECATED. Подробнее...

+ Граф наследования:ActionAttachPowerSourceToPanel:

Защищенные члены

void OnExecuteImpl (ActionData action_data)
 
override void OnExecuteClient (ActionData action_data)
 
override void OnExecuteServer (ActionData action_data)
 
override void OnEndClient (ActionData action_data)
 

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

void ActionAttachPowerSourceToPanel ()
 
override void CreateConditionComponents ()
 
override bool ActionCondition (PlayerBase player, ActionTarget target, ItemBase item)
 

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

DEPRECATED.

Конструктор(ы)

◆ ActionAttachPowerSourceToPanel()

5 {
6 m_Text = "#attach";
7 }
string m_Text
Definition ActionBase.c:49

Перекрестные ссылки m_Text.

Методы

◆ ActionCondition()

override bool ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprivate
16 {
17 EntityAI target_entity = EntityAI.Cast( target.GetObject() );
18 if ( player && target_entity && item )
19 {
20 if ( target_entity.IsStaticTransmitter() && target_entity.GetInventory().AttachmentCount() == 0 ) //has any power source attachment attached
21 {
22 return true;
23 }
24 }
25
26 return false;
27 }
Definition Building.c:6
Definition EntityAI.c:95

◆ CreateConditionComponents()

override void CreateConditionComponents ( )
inlineprivate
10 {
13 }
ref CCIBase m_ConditionItem
Definition ActionBase.c:55
ref CCTBase m_ConditionTarget
Definition ActionBase.c:56
Definition CCINonRuined.c:2
Definition CCTNonRuined.c:2
Definition ActionConstants.c:105
const float DEFAULT
Definition ActionConstants.c:107

Перекрестные ссылки UAMaxDistances::DEFAULT, m_ConditionItem и m_ConditionTarget.

◆ OnEndClient()

override void OnEndClient ( ActionData action_data)
inlineprotected
57 {
58 // Probably not needed since attaching is done server side.
59 /*
60 EntityAI target_entity = EntityAI.Cast( action_data.m_Target.GetObject() );
61 EntityAI item_entity = EntityAI.Cast( action_data.m_MainItem );
62
63 //find inventory location for attachment
64 InventoryLocation target_location = new InventoryLocation;
65
66 if( target_entity.GetInventory().FindFirstFreeLocationForNewEntity( item_entity.GetType(), FindInventoryLocationType.ATTACHMENT, target_location ) )
67 {
68 //target_entity.PredictiveTakeEntityToTargetAttachmentEx( target_entity, item_entity, target_location.GetSlot() );
69 target_entity.LocalTakeEntityAsAttachmentEx( item_entity, target_location.GetSlot() );
70 }
71 */
72 }

◆ OnExecuteClient()

override void OnExecuteClient ( ActionData action_data)
inlineprotected
43 {
46 }
void ClearInventoryReservationEx(ActionData action_data)
Definition ActionBase.c:862
void OnExecuteImpl(ActionData action_data)
Definition ActionAttachPowerSourceToPanel.c:29

Перекрестные ссылки ClearInventoryReservationEx() и OnExecuteImpl().

◆ OnExecuteImpl()

void OnExecuteImpl ( ActionData action_data)
inlineprotected
30 {
31 EntityAI target_entity = EntityAI.Cast( action_data.m_Target.GetObject() );
32 EntityAI item_entity = action_data.m_MainItem;
33
34 //find inventory location for attachment
36 if ( target_entity.GetInventory().FindFirstFreeLocationForNewEntity( item_entity.GetType(), FindInventoryLocationType.ATTACHMENT, target_location ) )
37 {
38 action_data.m_Player.PredictiveTakeEntityToTargetAttachmentEx( target_entity, item_entity, target_location.GetSlot() );
39 }
40 }
FindInventoryLocationType
flags for searching locations in inventory
Definition InventoryLocation.c:16
InventoryLocation.
Definition InventoryLocation.c:28

Используется в OnExecuteClient() и OnExecuteServer().

◆ OnExecuteServer()

override void OnExecuteServer ( ActionData action_data)
inlineprotected
49 {
50 if (GetGame().IsMultiplayer())
51 return; // multiplayer handled on client side via OnExecuteClient
52 else
53 OnExecuteImpl(action_data); // single player
54 }
proto native CGame GetGame()

Перекрестные ссылки GetGame() и OnExecuteImpl().


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