Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Random-Stack-Random-Day/a802a3c785acd9b2810345eeab4dfa11 to your computer and use it in GitHub Desktop.
Save Random-Stack-Random-Day/a802a3c785acd9b2810345eeab4dfa11 to your computer and use it in GitHub Desktop.
namespace :cards do
desc "Create cards"
task :create_cards => :environment do
cards = MTG::Card.all
cards.each do |card|
puts card.name + '-' + card.set
card.image_url.blank? ? image_url = "/assets/mtgCardBack.jpg" : image_url = card.image_url
card.legalities each do |x|
y = []
y << {x.format => x.legality}
end
Card.create(name: card.name,
multiverse_id: card.multiverse_id,
manaCost: card.mana_cost,
colors: card.colors,
cmc: card.cmc,
cardtype: card.type,
rarity: card.rarity,
set: card.set,
setName: card.set_name,
text: card.text,
flavor: card.flavor,
artist: card.artist,
number: card.number,
power: card.power,
toughness: card.toughness,
layout: card.layout,
image_url: image_url,
watermark: card.watermark,
original_text: card.original_text,
original_type: card.original_type,
rulings: card.rulings,
legalities: y,
#legalities:
foreign: card.foreign_names
)
end
end
end
@aruprakshit
Copy link

aruprakshit commented Nov 29, 2016

namespace :cards do
    desc "Create cards"
    task :create_cards => :environment do
        cards = MTG::Card.all
        cards.each do |card|
            puts card.name + '-' + card.set
            image_url = card.image_url.blank? ? "/assets/mtgCardBack.jpg" : card.image_url
          
            Card.create(name: card.name,
                multiverse_id: card.multiverse_id, 
                manaCost: card.mana_cost, 
                colors: card.colors,      
                cmc: card.cmc, 
                cardtype: card.type, 
                rarity: card.rarity, 
                set: card.set, 
                setName: card.set_name, 
                text: card.text, 
                flavor: card.flavor, 
                artist: card.artist, 
                number: card.number, 
                power: card.power, 
                toughness: card.toughness, 
                layout: card.layout, 
                image_url: image_url, 
                watermark: card.watermark, 
                original_text: card.original_text, 
                original_type: card.original_type, 
                rulings: card.rulings, 
                legalities: legalities(card), 
                foreign: card.foreign_names
                )
        end
    end

      def legalities card
         legalities = card.legalities
         return [] if legalities.blank?
         legalities.map { |x| {x.format => x.legality} }
       end
end

@Random-Stack-Random-Day
Copy link
Author

[#<MTG::Legality:0x00000005a1ae78 @representable_attrs={:features=>{Representable::JSON=>true}, :definitions=>{"format"=>#<Representable::Definition ==>format @options={:parse_filter=>[], :render_filter=>[], :as=>"format"}>, "legality"=>#<Representable::Definition ==>legality @options={:parse_filter=>[], :render_filter=>[], :as=>"legality"}>}, :options=>{}, :wrap=>nil}, @Format="Commander", @legality="Legal">, #<MTG::Legality:0x00000005a19820 @representable_attrs={:features=>{Representable::JSON=>true}, :definitions=>{"format"=>#<Representable::Definition ==>format @options={:parse_filter=>[], :render_filter=>[], :as=>"format"}>, "legality"=>#<Representable::Definition ==>legality @options={:parse_filter=>[], :render_filter=>[], :as=>"legality"}>}, :options=>{}, :wrap=>nil}, @Format="Khans of Tarkir Block", @legality="Legal">, #<MTG::Legality:0x00000005a17ca0 @representable_attrs={:features=>{Representable::JSON=>true}, :definitions=>{"format"=>#<Representable::Definition ==>format @options={:parse_filter=>[], :render_filter=>[], :as=>"format"}>, "legality"=>#<Representable::Definition ==>legality @options={:parse_filter=>[], :render_filter=>[], :as=>"legality"}>}, :options=>{}, :wrap=>nil}, @Format="Legacy", @legality="Legal">, #<MTG::Legality:0x00000005a16a08 @representable_attrs={:features=>{Representable::JSON=>true}, :definitions=>{"format"=>#<Representable::Definition ==>format @options={:parse_filter=>[], :render_filter=>[], :as=>"format"}>, "legality"=>#<Representable::Definition ==>legality @options={:parse_filter=>[], :render_filter=>[], :as=>"legality"}>}, :options=>{}, :wrap=>nil}, @Format="Modern", @legality="Legal">, #<MTG::Legality:0x00000005a15748 @representable_attrs={:features=>{Representable::JSON=>true}, :definitions=>{"format"=>#<Representable::Definition ==>format @options={:parse_filter=>[], :render_filter=>[], :as=>"format"}>, "legality"=>#<Representable::Definition ==>legality @options={:parse_filter=>[], :render_filter=>[], :as=>"legality"}>}, :options=>{}, :wrap=>nil}, @Format="Vintage", @legality="Legal">]

@Random-Stack-Random-Day
Copy link
Author

"[{"Commander"=>"Legal"}, {"Khans of Tarkir Block"=>"Legal"}, {"Legacy"=>"Legal"}, {"Modern"=>"Legal"}, {"Vintage"=>"Legal"}]"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment