140 {
142 {
144 return;
145 }
146
148
149 bool accepted = false;
153
154#ifdef ENABLE_LOGGING
155 if (LogManager.IsActionLogEnable())
156 {
157 if (target)
158 {
159 Debug.ActionLog(
"STS = " +
m_Player.GetSimulationTimeStamp() +
"Item = " + item +
", " + target.DumpToString(), pickedAction.ToString() ,
"n/a",
"StartDeliveredAction",
m_Player.ToString());
160 }
161 else
162 {
163 Debug.ActionLog(
"STS = " +
m_Player.GetSimulationTimeStamp() +
"Item = " + item +
", NULL", pickedAction.ToString() ,
"n/a",
"StartDeliveredAction",
m_Player.ToString());
164 }
165 }
166#endif
167
168 if (!
m_Player.GetCommandModifier_Action() && !
m_Player.GetCommand_Action() && !
m_Player.IsSprinting() && pickedAction && pickedAction.Can(
m_Player,target,item))
169 {
171 accepted = true;
172 }
173
174 if (accepted)
175 {
176#ifdef ENABLE_LOGGING
177 if (LogManager.IsActionLogEnable())
178 {
179 Debug.ActionLog(
"STS = " +
m_Player.GetSimulationTimeStamp() +
" Action accepted", pickedAction.ToString() ,
"n/a",
"CheckDeliveredAction",
m_Player.ToString() );
180 }
181#endif
182
183 if (pickedAction.UseAcknowledgment())
184 {
185
188 }
189 else
190 {
192 }
193 }
194 else
195 {
196#ifdef ENABLE_LOGGING
197 if (LogManager.IsActionLogEnable())
198 {
199 Debug.ActionLog(
"STS = " +
m_Player.GetSimulationTimeStamp() +
" Action rejected", pickedAction.ToString() ,
"n/a",
"CheckDeliveredAction",
m_Player.ToString() );
200 }
201#endif
202
203 if (pickedAction.UseAcknowledgment())
204 {
207 }
208 else
209 {
211 }
212 }
213 }
ref ActionData m_CurrentActionData
int m_PendingActionAcknowledgmentID
void ActionTarget(Object object, Object parent, int componentIndex, vector cursorHitPos, float utility, string surfaceName="")
class GP5GasMask extends MaskBase ItemBase
ref ActionTarget m_Target
override void RequestInterruptAction()
server requests action interrupt