本文整理汇总了C#中Coord.crossCoord方法的典型用法代码示例。如果您正苦于以下问题:C# Coord.crossCoord方法的具体用法?C# Coord.crossCoord怎么用?C# Coord.crossCoord使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Coord
的用法示例。
在下文中一共展示了Coord.crossCoord方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: makeKey
/**
* Generates a hexadecimal key corresponding its surroundings.
* This should yield back the appropriate key that can be used for the tileDictionary,
* which can then correspond with placing the appropriate graphic.
*/
public int makeKey(Tile[,] map, Coord target) {
int key = 0;
// NORTH
if( mvf.isSolid (map, target.nextCoord (Direction.North)) ) {
key += 0x80;
// W AND NW
if ( mvf.isSolid (map, target.nextCoord (Direction.West)) && mvf.isSolid (map, target.crossCoord (Direction.North, Direction.West)) )
key += 0x40;
// E and NE
if( mvf.isSolid (map, target.nextCoord (Direction.East)) && mvf.isSolid (map, target.crossCoord (Direction.North, Direction.East)) )
key += 0x01;
}
// SOUTH
if( mvf.isSolid (map, target.nextCoord (Direction.South)) ) {
key += 0x08;
// W AND SW
if ( mvf.isSolid (map, target.nextCoord (Direction.West)) && mvf.isSolid (map, target.crossCoord (Direction.South, Direction.West)) )
key += 0x10;
// E and SE
if( mvf.isSolid (map, target.nextCoord (Direction.East)) && mvf.isSolid (map, target.crossCoord (Direction.South, Direction.East)) )
key += 0x04;
}
// WEST
if( mvf.isSolid (map, target.nextCoord (Direction.West)) ) {
key += 0x20;
}
// EAST
if( mvf.isSolid (map, target.nextCoord (Direction.East)) ) {
key += 0x02;
}
//Debug.Log ("Given coord (" + target.x.ToString () + "," + target.y.ToString() + "), key is " + key.ToString ("X2"));
return key;
}