Beispiel #1
0
 public ModularSetData(ModularSet Set)
 {
     Transform               = new ModularPlacableData(Set.transform.position, Set.transform.rotation.eulerAngles, Set.transform.localScale); // init transform
     this.Pieces             = Set.PieceData;                                                                                                 // set pieces data
     this.SetName            = Set.Name;
     this._Price             = 0;
     this.BoundSize          = Set.Bounds.size;
     this.LocalGridCenter    = Set.LocalGridCenter;
     this.BoundsCenterOffset = Set.BoundsCenterOffset;
 }
        public void AddModularPiece(ModularPiece piece, ModularPlacableData Trans)
        {
            piece.Initialize(this);               // initialize piece cause isnt placed by system
            piece.transform.SetParent(transform); // reparent piece
            _Pieces.Add(piece);                   // add piece to set

            piece.LocalPosition = Trans.LocalPosition;
            piece.transform.localEulerAngles = Trans.LocalEulerAngles;
            piece.transform.localScale       = Trans.LocalScale;

            AddModularPieceRenderer(piece);             // add to render set

            UpdatePieceRestrictions(piece);             // add modular piece restriction

            if (Editing)
            {
                piece.InitializeEditable();
            }
            else
            {
                piece.InitializePlaced(Management.GameManager.I.Modular.ModularPieceLayer);
                piece.OnPlaced();
            }             // if is in editing mode, initialize as editable piece
        }