예제 #1
0
    /// <summary>
    /// 頂点の追加
    /// </summary>
    private bool AddVertex(Vector2 point)
    {
        //例外検出
        if (ExceptionDetector(point))
        {
            return(false);
        }

        polyLine.Add(point);

        //予告線の基点を変更
        if (noticeLine.GetVertexCount() == 0)
        {
            noticeLine.Add(point);
        }
        else
        {
            noticeLine.Change(0, point);
        }

        //アニメーションの距離更新
        targetDistance = polyLine.TotalDistance;
        lerped         = true;

        //コールバック
        if (addVertexCallback != null)
        {
            addVertexCallback(point);
        }

        return(true);
    }
예제 #2
0
 /// <summary>
 /// サブの頂点設定
 /// </summary>
 public void SetSubVertices(params Vector2[] vertices)
 {
     subLine.Clear();
     if (vertices != null)
     {
         for (int i = 0; i < vertices.Length; ++i)
         {
             subLine.Add(vertices[i]);
         }
     }
     draw = true;
 }
예제 #3
0
        /// <summary>
        /// 頂点の追加
        /// </summary>
        public void Add(Vector2 point)
        {
            mainLine.Add(point);
            //エフェクトの生成
            int count = mainLine.GetVertexCount();

            if (count > 1)
            {
                EmitEffect(effectParticle, mainLine.GetVertex(count - 2), point, density);
            }
            draw = true;
        }