本文整理汇总了C#中System.Coord.Equals方法的典型用法代码示例。如果您正苦于以下问题:C# Coord.Equals方法的具体用法?C# Coord.Equals怎么用?C# Coord.Equals使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Coord
的用法示例。
在下文中一共展示了Coord.Equals方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DoTargetAction
public static Coord DoTargetAction(Unit unit)
{
var exitFlag = false;
var target = new Coord(unit.Position.X, unit.Position.Y);
DrawTargetMark(unit, target, true);
while (!exitFlag)
{
var key = ZInput.ReadKey();
var oldTarget = new Coord(target.X, target.Y);
switch (key)
{
case ConsoleKey.LeftArrow : MoveTarget(target, -1, 0); break;
case ConsoleKey.RightArrow : MoveTarget(target, +1, 0); break;
case ConsoleKey.UpArrow : MoveTarget(target, 0, -1); break;
case ConsoleKey.DownArrow : MoveTarget(target, 0, +1); break;
case ConsoleKey.Enter : return target; break;
case ConsoleKey.Escape : exitFlag = true; break;
}
if (!oldTarget.Equals(target))
{
DrawTargetMark(unit, oldTarget, false);
DrawTargetMark(unit, target, true);
}
}
return null;
}
示例2: DFS
private static void DFS(Coord coord, Coord target, long sum, int[,] lab)
{
//if (!visited.Contains(coord))
//{
visited.Add(coord);
if (coord.Equals(target))
{
results.Add(sum);
return;
}
if (lab[coord.X, coord.Y] == 1)
{
sum += 1;
}
if (coord.X + 1 < lab.GetLength(0))
{
DFS(new Coord(coord.X + 1, coord.Y), target, sum, lab);
}
if (coord.Y + 1 < lab.GetLength(1))
{
DFS(new Coord(coord.X, coord.Y + 1), target, sum, lab);
}
//}
}
示例3: IsTargetOnSoldier
public static bool IsTargetOnSoldier(Unit currentUnit, Coord target)
{
foreach (var team in MainGame.Teams)
foreach (var unit in team.Units.Where(a => a.Name != currentUnit.Name))
if (target.Equals(unit.Position))
return true;
return false;
}
示例4: IsHere
public bool IsHere(Coord c)
{
return c.Equals(Coord);
}
示例5: GetDirectionForOffset
public int GetDirectionForOffset(int dx, int dy)
{
var coord = new Coord(dx, dy);
for (var i = 0; i < _viewDirections.Length; i++)
if (coord.Equals(_viewDirections[i]))
return i;
return -1;
}
示例6: Move
public bool Move(Coord init, Coord final)
{
bool rep = false;
if (Coord.coordonnees_valides(final)
&& !init.Equals(final)
&& JeuCourant().IsPieceHere(init)
&& !JeuCourant().IsPieceHere(final)
&& JeuCourant().IsMoveOk(init, final)
//&& !ColissionInPath(init, final)
)
{
/*if (!_isAClone && MetRoiCourantEnDanger(init, final))
{
_message = "Ce mouvement met votre roi en danger !!!";
return false;
}*/
if (Advairsaire().IsPieceHere(final))
{
if (JeuCourant().IsPion(init) && !Coord.IsDiagonal(init, final))
{
_message = "Le pion ne mange qu'en diagonale avant !";
return false;
}
Advairsaire().Capture(final);
rep = JeuCourant().Move(init, final);
}
else
{
if (JeuCourant().IsPion(init) && Coord.IsDiagonal(init, final))
{
_message = "Le pion se deplace en avant !";
return false;
}
rep = JeuCourant().Move(init, final);
}
}
else
{
_message = "Il y a une/plusieurs erreur : ";
if (!Coord.coordonnees_valides(final))
{
_message += "\n\t-> Coordonnées hors échiquier";
}
if (!JeuCourant().IsPieceHere(init))
{
_message += "\n\t-> Ce n'est pas une pièce de votre équipe";
}
if (JeuCourant().IsPieceHere(final))
{
_message += "\n\t-> Vous n'avez pas le droit de manger une pièce de votre équipe";
}
if (init.Equals(final))
{
_message += "\n\t-> Déplacement sur la même case";
}
if (!JeuCourant().IsMoveOk(init, final))
{
_message += "\n\t-> Déplacement interdit pour cette pièce : " + JeuCourant().GetPieceName(init);
}
if (ColissionInPath(init, final))
{
_message += "\n\t-> Il y a une pièce sur la trajectoire";
}
}
return rep;
}