コード例 #1
0
        public static int CalculateDistance(HexCoord firstHexPos, HexCoord secondHexPos)
        {
            var dx = Math.Abs(firstHexPos.Q - secondHexPos.Q);
            var dy = Math.Abs(firstHexPos.R - secondHexPos.R);
            var dz = Math.Abs(firstHexPos.S - secondHexPos.S);

            return Math.Max(dx, Math.Max(dy, dz));
        }
コード例 #2
0
        public void OnHexCreated(Point cubeCoord, HexCoord hexCoord, TerrainTypes hexType)
        {
            var hex = HexGenerator.MakeHex().transform;

            hex.GetComponent<Renderer>().material.mainTexture = TerrainTextures.GetTexture(hexType);
            HexGenerator.SetHexInfo(hexCoord, hex);

            hex.position = HexGenerator.CorrelateCoordWithMap(cubeCoord);
            hex.parent = HexMap.transform;
        }
コード例 #3
0
 public HexCoordEventArgs(HexCoord hexCoord)
 {
     HexCoord = hexCoord;
 }
コード例 #4
0
 public void OnSkipTargetHexIllumination(HexCoord hexCoord)
 {
     HexMap.transform.Find(hexCoord.ToString()).GetComponent<Renderer>().material.color -= _targetHexColor;
 }
コード例 #5
0
 public void OnIlluminateCurrentHex(HexCoord hexCoord)
 {
     HexMap.transform.Find(hexCoord.ToString()).GetComponent<Renderer>().material.color += _currentHexColor;
 }
コード例 #6
0
 public HexCoord(HexCoord previousHexCoord)
 {
     Q = previousHexCoord.Q;
     R = previousHexCoord.R;
     S = previousHexCoord.S;
 }
コード例 #7
0
 public TerrainEventArgs(HexCoord hexCoord, TerrainTypes terrainType)
     : base(hexCoord)
 {
     HexType = terrainType;
 }
コード例 #8
0
 public static void SetHexInfo(HexCoord coord, Transform hex)
 {
     hex.GetComponent<HexData>().HexPosition = coord;
     hex.name = coord.ToString();
 }
コード例 #9
0
 public abstract void HitHex(HexCoord hexPosition);
コード例 #10
0
 protected void OnHexCreated(Point point, HexCoord hexCoord, TerrainTypes terrainType)
 {
     var handler = HexCreated;
     if (handler != null) handler(this, new HexEventArgs(point, hexCoord, terrainType));
 }
コード例 #11
0
 public abstract void SelectHex(HexCoord hexPosition);
コード例 #12
0
 public HexEventArgs(Point cubeCoord, HexCoord hexCoord, TerrainTypes hexType)
     : base(hexCoord, hexType)
 {
     CubeCoord = cubeCoord;
 }