コード例 #1
0
 public ColliderOnTiles(LevelEdit[] Edits)
 {
     this.Edits = Edits;
 }
コード例 #2
0
    public LevelEdit[] GetAllEditsInDir(float rad, LevelEdit[] UsedEdits)
    {
        LevelEdit Current;
        List<LevelEdit> Edits = new List<LevelEdit>();

        if (UsedEdits.AnyInstanceIsEqual<LevelEdit>(this))
        {
            return null;
        }

        Current = this;

        do
        {
            Current = Current.CheckIfTileInDir(rad);

            if (Current != null && !UsedEdits.AnyInstanceIsEqual<LevelEdit>(Current))
            {
                Edits.Add(Current);
            }
        }   while (Current != null);

        Current = this;

        do
        {
            Current = Current.CheckIfTileInDir(rad + Mathf.PI);

            if (Current != null && !UsedEdits.AnyInstanceIsEqual<LevelEdit>(Current))
            {
                Edits.Add(Current);
            }
        }   while (Current != null);

        if (Edits.Count > 0)
        {
            Edits.Add(this);
            return Edits.ToArray();
        }
        else
            return null;
    }