private async Task SendBuildRequest(Unit worker, int unitType, Point2D point) { var requestDebug = new RequestDebug(); DebugDraw debugDraw = new DebugDraw(); debugDraw.Boxes.Add(new DebugBox { Min = new Point { X = point.X - 1, Y = point.Y - 1, Z = 14 }, // Z?? Max = new Point { X = point.X + 1, Y = point.Y + 1, Z = 11 }, Color = new Color { R = 180, G = 255, B = 255 } }); requestDebug.Debug.Add(new DebugCommand { Draw = debugDraw }); await _connectionService.SendRequestAsync(new Request { Debug = requestDebug }); // move there first var action2 = new Action(); action2.ActionRaw = new ActionRaw(); action2.ActionRaw.UnitCommand = new ActionRawUnitCommand(); action2.ActionRaw.UnitCommand.AbilityId = 19; // Move abilitiy action2.ActionRaw.UnitCommand.UnitTags.Add(worker.Tag); action2.ActionRaw.UnitCommand.TargetWorldSpacePos = point; var action = new Action(); action.ActionRaw = new ActionRaw(); action.ActionRaw.UnitCommand = new ActionRawUnitCommand(); action.ActionRaw.UnitCommand.AbilityId = _gameDataService.GetAbilityId(unitType); action.ActionRaw.UnitCommand.UnitTags.Add(worker.Tag); action.ActionRaw.UnitCommand.TargetWorldSpacePos = point; // move back to mining var backToMining = new Action(); backToMining.ActionRaw = new ActionRaw(); backToMining.ActionRaw.UnitCommand = new ActionRawUnitCommand(); backToMining.ActionRaw.UnitCommand.QueueCommand = true; backToMining.ActionRaw.UnitCommand.AbilityId = 295; // Gather ability TODO: (scv specific!) backToMining.ActionRaw.UnitCommand.UnitTags.Add(worker.Tag); backToMining.ActionRaw.UnitCommand.TargetUnitTag = Game.MapManager.GetMineralInMainBase(); var requestAction = new RequestAction(); //requestAction.Actions.Add(action2); requestAction.Actions.Add(action); requestAction.Actions.Add(backToMining); await _connectionService.SendRequestAsync(new Request { Action = requestAction }); }
protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); Visible = false; if (Log != null) { // Log request values RequestDebug.LogRequestValues(true, true, true); var dt = GetLogData(); if (dt != null) { Visible = true; // Ensure value collections if (Log.ValueCollections != null) { tblResC.Title = GetString("RequestLog.ResponseCookies"); tblResC.Table = Log.ValueCollections.Tables["ResponseCookies"]; tblReqC.Title = GetString("RequestLog.RequestCookies"); tblReqC.Table = Log.ValueCollections.Tables["RequestCookies"]; tblVal.Title = GetString("RequestLog.Values"); tblVal.Table = Log.ValueCollections.Tables["Values"]; } // Ensure header texts gridCache.Columns[1].HeaderText = GetString("RequestLog.Operation"); gridCache.Columns[2].HeaderText = GetString("RequestLog.Parameter"); gridCache.Columns[3].HeaderText = GetString("RequestLog.FromStart"); gridCache.Columns[4].HeaderText = GetString("RequestLog.Duration"); if (DisplayHeader) { ltlInfo.Text = "<div class=\"LogInfo\">" + GetString("RequestLog.Info") + "</div>"; } // Bind the data gridCache.DataSource = dt; gridCache.DataBind(); } } }
protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); Visible = false; if (Log != null) { // Log request values RequestDebug.LogRequestValues(true, true, true); var dt = GetLogData(); if (dt != null) { Visible = true; // Ensure value collections if (Log.ValueCollections != null) { tblResC.Title = GetString("RequestLog.ResponseCookies"); tblResC.Table = Log.ValueCollections.Tables["ResponseCookies"]; tblReqC.Title = GetString("RequestLog.RequestCookies"); tblReqC.Table = Log.ValueCollections.Tables["RequestCookies"]; tblVal.Title = GetString("RequestLog.Values"); tblVal.Table = Log.ValueCollections.Tables["Values"]; } // Ensure header texts gridCache.SetHeaders("", "RequestLog.Operation", "RequestLog.Parameter", "RequestLog.FromStart", "RequestLog.Duration"); HeaderText = GetString("RequestLog.Info"); // Bind the data BindGrid(gridCache, dt); } } }