Sha256: 9b886e0f60a4581ecece0f91be49338a85171587d21a0b4b6f65c96d717520cd

Contents?: true

Size: 1.08 KB

Versions: 4

Compression:

Stored size: 1.08 KB

Contents

# frozen_string_literal: true

require 'forwardable'

module EveOnline
  module ESI
    class DogmaEffect < Base
      extend Forwardable

      API_PATH = '/v2/dogma/effects/%<effect_id>s/?datasource=%<datasource>s'

      attr_reader :id

      def initialize(options)
        super

        @id = options.fetch(:id)
      end

      def_delegators :model, :as_json, :description, :disallow_auto_repeat,
                     :discharge_attribute_id, :display_name,
                     :duration_attribute_id, :effect_category, :effect_id,
                     :electronic_chance, :falloff_attribute_id, :icon_id,
                     :is_assistance, :is_offensive, :is_warp_safe,
                     :name, :post_expression, :pre_expression, :published,
                     :range_attribute_id, :range_chance,
                     :tracking_speed_attribute_id, :modifiers

      def model
        @model ||= Models::DogmaEffect.new(response)
      end

      def scope; end

      def url
        format("#{ API_HOST }#{ API_PATH }", effect_id: id, datasource: datasource)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
eve_online-0.27.0 lib/eve_online/esi/dogma_effect.rb
eve_online-0.26.0 lib/eve_online/esi/dogma_effect.rb
eve_online-0.25.0 lib/eve_online/esi/dogma_effect.rb
eve_online-0.24.0 lib/eve_online/esi/dogma_effect.rb