spacetraders.rb/lib/models/system.rb

31 lines
652 B
Ruby

# frozen_string_literal: true
class SpaceTraders::System < SpaceTraders::Model
attributes :symbol,
:sectorSymbol,
:type,
:x,
:y,
:waypoints,
:factions
def self.systems(client, page: 1)
list = client.systems.systems(page:)
list.map { new(client, **_1) }
end
def self.load(client, id:)
new(client, **client.systems.system(id:))
end
def initialize(client, **params)
super
self.waypoints = self.waypoints.map { SpaceTraders::Waypoint.new(client, **_1) }
end
def reload!
update(**client.systems.system(id: symbol))
self
end
end