Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Melhorando suas habilidades Hackeando o seu primeiro Game

Melhorando suas habilidades Hackeando o seu primeiro Game

Palestra ministrada da Trilha Ruby da TDC Florianópolis 2016

Andre Luis Anastacio

May 16, 2016
Tweet

More Decks by Andre Luis Anastacio

Other Decks in Programming

Transcript

  1. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…”
  2. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia
  3. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia Open Sans
  4. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia Open Sans
  5. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia Open Sans Wikipedia
  6. class Grass < GameObject traits :bounding_box, :collision_detection def setup @image

    = Image["#{self.filename}.png"] self.rotation_center = :top_left end def self.solid all.select { |block| block.alpha == 255 } end def self.inside_viewport all.select { |block| block.game_state.viewport.inside?(block) } end end
  7. class GrassTiles include Chingu::NamedResource def initialize @builded_classes = build_classes end

    def all @builded_classes.flat_map(&:all) end private def build_classes class_names.map do |class_name| Class.new(Grass).tap do |klass| Object.const_set class_name, klass end end end def class_names Dir.glob(File.join(ROOT, 'media', 'grass_*.png')).map do |f| File.basename(f, '.png').split("_").each {|s| s.capitalize! }.join("") end end end
  8. Opal Transpiler Ruby ~> JS Dare - domgetter/dare Opal Phaser

    - orbitalimpact/opal-phaser Exemplo ~> OpenGameDev/pong-opal-phaser