Sha256: ed3d6e8ed59128a60b794ebc240579fe32c551e9935d817a84232ba0802a3c45

Contents?: true

Size: 942 Bytes

Versions: 6

Compression:

Stored size: 942 Bytes

Contents

# encoding: utf-8
# player color constants
require 'typesafe_enum'

# Die Spielerfarben. RED, BLUE oder NONE.
class PlayerColor < TypesafeEnum::Base
  new :NONE
  new :RED
  new :BLUE

  # @param color [PlayerColor]
  # @return [PlayerColor] Farbe des Gegenspielers
  def self.opponent_color(color)
    case color
    when PlayerColor::RED
      PlayerColor::BLUE
    when PlayerColor::BLUE
      PlayerColor::RED
    when PlayerColor::NONE
      PlayerColor::NONE
    end
  end

  # @param color [PlayerColor] Die Spielerfarbe, zu dem der Feldtyp ermittelt werden soll.
  # @return [FieldType] Der zur Spielerfarbe gehörende Feldtyp, also FieldType::RED für PlayerColor::RED und FieldType::BLUE für PlayerColor::BLUE. In allen anderen Fällen nil.
  # @see FieldType#player_color
  def self.field_type(color)
    case color
    when PlayerColor::RED
      FieldType::RED
    when PlayerColor::BLUE
      FieldType::BLUE
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
software_challenge_client-19.1.0 lib/software_challenge_client/player_color.rb
software_challenge_client-19.0.4 lib/software_challenge_client/player_color.rb
software_challenge_client-19.0.3 lib/software_challenge_client/player_color.rb
software_challenge_client-19.0.2 lib/software_challenge_client/player_color.rb
software_challenge_client-19.0.1 lib/software_challenge_client/player_color.rb
software_challenge_client-19.0.0 lib/software_challenge_client/player_color.rb