Class: Sc2::Player::Computer
- Inherits:
-
Sc2::Player
- Object
- Sc2::Player
- Sc2::Player::Computer
- Defined in:
- lib/sc2ai/player.rb
Overview
A Computer opponent using the game’s built-in AI for a Match
Instance Attribute Summary
Attributes included from GameState
#chats_received, #data, #game_info, #game_info_loop, #game_loop, #observation, #result, #spent_minerals, #spent_supply, #spent_vespene, #status
Instance Method Summary collapse
- #initialize(race:, difficulty: Api::Difficulty::VeryEasy, ai_build: Api::AIBuild::RandomBuild, name: "Computer") ⇒ Sc2::Computer constructor
-
#requires_client? ⇒ Boolean
Returns whether or not the player requires a sc2 instance.
Methods included from GameState
#common, #game_info_stale?, #on_status_change
Methods included from Connection::StatusListener
Constructor Details
#initialize(race:, difficulty: Api::Difficulty::VeryEasy, ai_build: Api::AIBuild::RandomBuild, name: "Computer") ⇒ Sc2::Computer
436 437 438 439 440 441 442 443 444 |
# File 'lib/sc2ai/player.rb', line 436 def initialize(race:, difficulty: Api::Difficulty::VeryEasy, ai_build: Api::AIBuild::RandomBuild, name: "Computer") difficulty = Api::Difficulty::VeryEasy if difficulty.nil? ai_build = Api::AIBuild::RandomBuild if ai_build.nil? raise Error, "unknown difficulty: '#{difficulty}'" if Api::Difficulty.lookup(difficulty).nil? raise Error, "unknown difficulty: '#{ai_build}'" if Api::AIBuild.lookup(ai_build).nil? super(race:, name:, type: Api::PlayerType::Computer, difficulty:, ai_build:) end |
Instance Method Details
#requires_client? ⇒ Boolean
Returns whether or not the player requires a sc2 instance
448 449 450 |
# File 'lib/sc2ai/player.rb', line 448 def requires_client? false end |