public void SetModel(MoveId id, Move model) { Id = (int)id; _model = model; UpdatePreviewAnimation(true); RaiseAllPropertiesChanged(); }
public override int GetHashCode() { int hash = 1; if (AbilityId != 0L) { hash ^= AbilityId.GetHashCode(); } if (Type != 0) { hash ^= Type.GetHashCode(); } if (PassiveId != 0) { hash ^= PassiveId.GetHashCode(); } if (MoveId != 0) { hash ^= MoveId.GetHashCode(); } if (Value != 0) { hash ^= Value.GetHashCode(); } if (U6 != 0) { hash ^= U6.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
/// <summary>Find the closest path towards the exit. /// <para>Returns null if no path was found.</para> /// <para>NOTE: It can return null if <paramref name="start"/> is inside a closed door's position.</para> /// </summary> private Breadcrumb PathfindGenerateCrumbs(IMyCubeGrid grid, ref Vector3I start) // used in a background thread { scanned.Clear(); openList.Clear(); var startBreadcrumb = new Breadcrumb(start); openList.Add(startBreadcrumb); var directions = Base6Directions.IntDirections; while (openList.HasNext()) { var crumb = openList.GetFirst(); if (DistanceToBox(crumb.Position, grid.Min, grid.Max) < 0) { return(crumb); // found outside of grid, terminate. } for (int i = 0; i < directions.Length; ++i) { if (ShouldCancelTask) { return(null); } var dir = directions[i]; var moveId = new MoveId(ref crumb.Position, ref dir); if (!scanned.Contains(moveId)) // ensure we didn't already check this position+direction { scanned.Add(moveId); var target = crumb.Position + dir; var distToOutside = DistanceToBox(target, grid.Min, grid.Max) + 1; // adding 1 to offset edges if (distToOutside < 0) // gone outside of edge already, exit { return(crumb); } if (IsInInflatedBounds(grid, target) && !IsPressurized(grid, crumb.Position, target)) { int pathCost = crumb.PathCost + 1; // direction movement cost, always 1 in our case int cost = pathCost + distToOutside; // using distance to box edge instead of a predefined end openList.Add(new Breadcrumb(target, cost, pathCost, crumb)); } } } } return(null); }
public static void Render(this IConsole console, Move move, MoveId id) { console.WriteTitle($"{id}"); console.WriteProperty("Name", move.Name); console.WriteProperty("Type", move.Type.ToString()); console.WriteProperty("Power", move.Power.ToString()); console.WriteProperty("Accuracy", $"{move.Accuracy}%"); console.WriteProperty("MovementFlags", move.MovementFlags.ToString()); console.WriteProperty("Range", move.Range.ToString()); console.WriteProperty("Effects", $"{move.Effect1} {RenderQuantityForMoveEffect(move.Effect1, move.Effect1Chance)}/ {move.Effect2} {RenderQuantityForMoveEffect(move.Effect2, move.Effect2Chance)}"); console.WriteProperty("Unused Effect Duplicates", $"{move.Effect3} {RenderQuantityForMoveEffect(move.Effect3, move.Effect3Chance)}/ {move.Effect4} {RenderQuantityForMoveEffect(move.Effect4, move.Effect4Chance)}"); }
public override int GetHashCode() { int hash = 1; if (MoveId != 0) { hash ^= MoveId.GetHashCode(); } if (Category != 0) { hash ^= Category.GetHashCode(); } if (U3 != 0) { hash ^= U3.GetHashCode(); } if (User != 0) { hash ^= User.GetHashCode(); } if (Group != 0) { hash ^= Group.GetHashCode(); } if (Type != 0) { hash ^= Type.GetHashCode(); } if (Target != 0) { hash ^= Target.GetHashCode(); } if (U8 != 0) { hash ^= U8.GetHashCode(); } if (GaugeDrain != 0) { hash ^= GaugeDrain.GetHashCode(); } if (Power != 0) { hash ^= Power.GetHashCode(); } if (Accuracy != 0) { hash ^= Accuracy.GetHashCode(); } if (Uses != 0) { hash ^= Uses.GetHashCode(); } if (Tags != 0) { hash ^= Tags.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public override void InitializeCallout(MenuStrip menuStrip1) { // // File Menu // // openToolStripMenuItem var openToolStripMenuItem = new ToolStripMenuItem(); openToolStripMenuItem.ImageTransparentColor = System.Drawing.Color.Magenta; openToolStripMenuItem.Name = FileOpen; openToolStripMenuItem.ShortcutKeys = ((Keys)((Keys.Control | Keys.O))); openToolStripMenuItem.Text = "&Open"; // toolStripSeparator1 var toolStripSeparator1 = new ToolStripSeparator(); toolStripSeparator1.Name = "toolStripSeparator1"; // exitToolStripMenuItem var exitToolStripMenuItem = new ToolStripMenuItem(); exitToolStripMenuItem.Name = FileExit; exitToolStripMenuItem.Text = "E&xit"; // fileToolStripMenuItem var fileToolStripMenuItem = new ToolStripMenuItem(); fileToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { openToolStripMenuItem, toolStripSeparator1, exitToolStripMenuItem }); fileToolStripMenuItem.Text = "&File"; menuStrip1.Items.Add(fileToolStripMenuItem); // // Game Menu // // newGameToolStripMenuItem var newGameToolStripMenuItem = new ToolStripMenuItem(); newGameToolStripMenuItem.ImageTransparentColor = System.Drawing.Color.Magenta; newGameToolStripMenuItem.Name = "New Game"; newGameToolStripMenuItem.Text = "&New Game"; // undoToolStripMenuItem var undoToolStripMenuItem = new ToolStripMenuItem(); undoToolStripMenuItem.Name = "Undo"; undoToolStripMenuItem.ShortcutKeys = ((Keys)((Keys.Control | Keys.Z))); undoToolStripMenuItem.Text = "&Undo"; // gameToolStripMenuItem var gameToolStripMenuItem = new ToolStripMenuItem(); gameToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { newGameToolStripMenuItem, undoToolStripMenuItem }); gameToolStripMenuItem.Text = "&Game"; // menuStrip1 menuStrip1.Items.Add(gameToolStripMenuItem); // Set up example NewGame(); SetSquareState(15, CellState.Black); SetSquareState(11, CellState.Empty); SetSquareState(18, CellState.White); SetSquareState(22, CellState.Empty); SetSquareHighLight(Selected, HighLight.Selected); SetSquareHighLight(Target, HighLight.Target); Swoop = AddSwoop(Selected, Target); MoveId move = new MoveId(FirstMoveTableRow, CheckerColor.Black); SetMoveText(move, "11-15"); move.Color = CheckerColor.White; SetMoveText(move, "22-18"); move.Move++; move.Color = CheckerColor.Black; SetMoveText(move, "(15x22)"); SetCurrentMove(MoveDirection.First); UpdateLeftStatus("Black to move"); UpdateRightStatus("Black (12) White (12)"); }
public override int GetHashCode() { int hash = 1; if (MoveId != 0) { hash ^= MoveId.GetHashCode(); } if (Category != global::ReMastersLib.Category.NoCategory) { hash ^= Category.GetHashCode(); } if (U3 != 0) { hash ^= U3.GetHashCode(); } if (User != global::ReMastersLib.User.Pokemon) { hash ^= User.GetHashCode(); } if (Group != global::ReMastersLib.Group.None) { hash ^= Group.GetHashCode(); } if (Type != 0) { hash ^= Type.GetHashCode(); } if (Target != global::ReMastersLib.Target.AllySingle) { hash ^= Target.GetHashCode(); } if (U8 != 0) { hash ^= U8.GetHashCode(); } if (GaugeDrain != 0) { hash ^= GaugeDrain.GetHashCode(); } if (Power != 0) { hash ^= Power.GetHashCode(); } if (Accuracy != 0) { hash ^= Accuracy.GetHashCode(); } if (Uses != 0) { hash ^= Uses.GetHashCode(); } if (Tags != global::ReMastersLib.Tag.None) { hash ^= Tags.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }