Sha256: 2b1e3682dda2540aa619393d5bde02680a77330dc13c2f655a105d4ada2018a2

Contents?: true

Size: 1.53 KB

Versions: 49

Compression:

Stored size: 1.53 KB

Contents

# -*- encoding : utf-8 -*-
class Card; module Set; class All; module Type; extend Card::Set
# ~~ above autogenerated; below pulled from /Users/ethan/dev/wagn/gem/card/mod/core/set/all/type.rb ~~

module ClassMethods
  def default_type_id
    @@default_type_id ||= Card[:all].fetch(trait: :default).type_id
  end
end

def type_card
  return if type_id.nil?
  Card.quick_fetch type_id.to_i
end

def type_code
  Card::Codename[type_id.to_i]
end

def type_name
  type_card.try :name
end

def type_name_or_default
  type_card.try(:name) || Card.quick_fetch(Card.default_type_id).name
end

def type_cardname
  type_card.try :cardname
end

def type= type_name
  self.type_id = Card.fetch_id type_name
end

def get_type_id_from_structure
  return unless name && (t = template)
  reset_patterns # still necessary even with new template handling?
  t.type_id
end

event :validate_type_change, :validate, on: :update, changed: :type_id do
  if (c = dup) && c.action == :create && !c.valid?
    errors.add :type, "of #{name} can't be changed; errors creating new " \
                      "#{type_id}: #{c.errors.full_messages * ', '}"
  end
end

event :validate_type, :validate, changed: :type_id do
  errors.add :type, "No such type" unless type_name

  if (rt = structure) && rt.assigns_type? && type_id != rt.type_id
    errors.add :type, "can't be changed because #{name} is hard templated " \
                      "to #{rt.type_name}"
  end
end


# ~~ below autogenerated; above pulled from /Users/ethan/dev/wagn/gem/card/mod/core/set/all/type.rb ~~
end;end;end;end;

Version data entries

49 entries across 49 versions & 1 rubygems

Version Path
card-1.99.6 tmpsets/set/mod002-core/all/type.rb
card-1.99.5 tmpsets/set/mod002-core/all/type.rb
card-1.97.0.1 tmpsets/set/mod002-core/all/type.rb
card-1.97.0 tmpsets/set/mod002-core/all/type.rb
card-1.96.8 tmpsets/set/mod002-core/all/type.rb
card-1.96.7 tmpsets/set/mod002-core/all/type.rb
card-1.96.6 tmpsets/set/mod002-core/all/type.rb
card-1.96.5 tmpsets/set/mod002-core/all/type.rb
card-1.96.4 tmpsets/set/mod002-core/all/type.rb
card-1.96.3 tmpsets/set/mod002-core/all/type.rb
card-1.96.2 tmpsets/set/mod002-core/all/type.rb
card-1.96.1 tmpsets/set/mod002-core/all/type.rb
card-1.96.0 tmpsets/set/mod002-core/all/type.rb
card-1.95.3 tmpsets/set/mod002-core/all/type.rb
card-1.95.2 tmpsets/set/mod002-core/all/type.rb
card-1.95.1 tmpsets/set/mod002-core/all/type.rb
card-1.95.0 tmpsets/set/mod002-core/all/type.rb
card-1.94.1 tmpsets/set/mod002-core/all/type.rb
card-1.94.0 tmpsets/set/mod002-core/all/type.rb
card-1.93.13 tmpsets/set/mod002-core/all/type.rb