public static GameObject CreateBlock(int index, createMode mode)
    {
        blockSerialized = serialization.getConvertedTiles(index);
        block           = createGameObject("Block");
        createTiles(mode);

        if (mode == createMode.STANDARD)
        {
            block.AddComponent <Block>();
            block.GetComponent <Block>().lockRotation = !serialization.isRotatable(index);
            detectors = createGameObjectAsChildren(block, "Detectors");
            detectors.AddComponent <Detector>();
            createDetectors();

            if (serialization.isRotatable(index))
            {
                createDetectorsRotation();
            }
            else
            {
                createGameObjectAsChildren(detectors, "Rotation");
            }
        }
        fixPosition();
        return(block);
    }