private void OnAuto(int action) { int playerIndex = m_gameState.LocalToPlayerIndex(m_localPlayerIndex); SerializedNamedTaskLaunchInfo[] templatesInfo = m_gameState.GetTaskTemplateData(playerIndex); for (int i = 0; i < templatesInfo.Length; ++i) { SerializedNamedTaskLaunchInfo templateInfo = templatesInfo[i]; int index = templateInfo.Index; if (index == action) { SubmitTaskToClientTaskEngine(templateInfo.Type); break; } } }
public void SaveTaskTemplate(Guid clientId, Guid playerId, SerializedTask taskTemplate, SerializedNamedTaskLaunchInfo TaskTemplateData, ServerEventHandler callback) { Error error = new Error(StatusCode.OK); if (!m_initialized) { error.Code = StatusCode.NotAllowed; error.Message = "Match was not initialized"; } else { SerializedTask[] templates; if (!m_tasks.TryGetValue(playerId, out templates)) { templates = new SerializedTask[1]; } else { Array.Resize(ref templates, templates.Length + 1); } SerializedNamedTaskLaunchInfo[] templateInfos; if (!m_serializedTaskTemplates.TryGetValue(playerId, out templateInfos)) { templateInfos = new SerializedNamedTaskLaunchInfo[1]; } else { Array.Resize(ref templateInfos, templateInfos.Length + 1); } templates[templates.Length - 1] = taskTemplate; templateInfos[templateInfos.Length - 1] = TaskTemplateData; } if (m_lag == 0) { callback(error); } else { m_job.Submit(() => { Thread.Sleep(m_lag); return(null); }, result => { callback(error); }); } }
public void SaveTaskTemplate(Guid clientId, Guid playerId, SerializedTask taskTemplate, SerializedNamedTaskLaunchInfo TaskTemplateData, ServerEventHandler callback) { RemoteCall rpc = new RemoteCall( RemoteCall.Proc.SaveTaskTemplate, clientId, RemoteArg.Create(playerId), RemoteArg.Create(taskTemplate), RemoteArg.Create(TaskTemplateData)); Call(rpc, (error, result) => callback(error)); }
public void SaveTaskTemplate(Guid clientId, Guid playerId, SerializedTask taskTemplate, SerializedNamedTaskLaunchInfo templateInfo, ServerEventHandler callback) { throw new NotImplementedException(); }