Class: Card::Name

Inherits:
SmartName show all
Defined in:
lib/card/name.rb

Instance Method Summary collapse

Instance Method Details

#rstar?Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/card/name.rb', line 15

def rstar?
  right and '*' == right[0,1]
end

#star?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/card/name.rb', line 11

def star?
  simple? and '*' == s[0,1]
end

#trait(tag_code) ⇒ Object



34
35
36
37
# File 'lib/card/name.rb', line 34

def trait tag_code
  name = trait_name( tag_code )
  name ? name.s : ( raise Wagn::NotFound, "unknown codename: #{tag_code}" )
end

#trait_name(tag_code) ⇒ Object



29
30
31
32
# File 'lib/card/name.rb', line 29

def trait_name tag_code
  card_id = Card::Codename[ tag_code ] and card = Card.fetch( card_id, :skip_modules=>true, :skip_virtual=>true ) and
    [ self, card.cardname ].to_name
end

#trait_name?(*traitlist) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
23
24
25
26
27
# File 'lib/card/name.rb', line 19

def trait_name? *traitlist
  junction? && begin
    right_key = right_name.key
    !!traitlist.find do |codename|
      card_id = Card::Codename[ codename ] and card = Card.fetch( card_id, :skip_modules=>true, :skip_virtual=>true ) and
        card.key == right_key
    end
  end
end