github.com/df-mc/dragonfly@v0.9.13/server/block/stone_bricks_type.go (about)

     1  package block
     2  
     3  // StoneBricksType represents a type of stone bricks.
     4  type StoneBricksType struct {
     5  	stoneBricks
     6  }
     7  
     8  type stoneBricks uint8
     9  
    10  // NormalStoneBricks is the normal variant of stone bricks.
    11  func NormalStoneBricks() StoneBricksType {
    12  	return StoneBricksType{0}
    13  }
    14  
    15  // MossyStoneBricks is the mossy variant of stone bricks.
    16  func MossyStoneBricks() StoneBricksType {
    17  	return StoneBricksType{1}
    18  }
    19  
    20  // CrackedStoneBricks is the cracked variant of stone bricks.
    21  func CrackedStoneBricks() StoneBricksType {
    22  	return StoneBricksType{2}
    23  }
    24  
    25  // ChiseledStoneBricks is the chiseled variant of stone bricks.
    26  func ChiseledStoneBricks() StoneBricksType {
    27  	return StoneBricksType{3}
    28  }
    29  
    30  // Uint8 returns the stone bricks as a uint8.
    31  func (s stoneBricks) Uint8() uint8 {
    32  	return uint8(s)
    33  }
    34  
    35  // Name ...
    36  func (s stoneBricks) Name() string {
    37  	switch s {
    38  	case 0:
    39  		return "Stone Bricks"
    40  	case 1:
    41  		return "Mossy Stone Bricks"
    42  	case 2:
    43  		return "Cracked Stone Bricks"
    44  	case 3:
    45  		return "Chiseled Stone Bricks"
    46  	}
    47  	panic("unknown stone bricks type")
    48  }
    49  
    50  // String ...
    51  func (s stoneBricks) String() string {
    52  	switch s {
    53  	case 0:
    54  		return "default"
    55  	case 1:
    56  		return "mossy"
    57  	case 2:
    58  		return "cracked"
    59  	case 3:
    60  		return "chiseled"
    61  	}
    62  	panic("unknown stone bricks type")
    63  }
    64  
    65  // StoneBricksTypes ...
    66  func StoneBricksTypes() []StoneBricksType {
    67  	return []StoneBricksType{NormalStoneBricks(), MossyStoneBricks(), CrackedStoneBricks(), ChiseledStoneBricks()}
    68  }