Skip to content
burtlo edited this page Nov 25, 2012 · 3 revisions

Metro Models

UI

Label

Defining a label within a Scene:

class TitleScene < Metro::Scene

  draw :title, model: "metro::models::label",
    text: "STARRY KNIGHT",
    positition: "200,300,1",
    font: { size: 60 },
    color: "rgba(255,255,0,1.0)"

end

Defining a label in a View:

class TitleScene < Metro::Scene

  draw :title

end
title:
  model: "metro::models::label"
  text: "STARRY KNIGHT"
  position: "200,333,1"
  font:
    size: 60
  color: "rgba(255,255,0,1.0)"

Menu

Defining a menu within a Scene:

class TitleScene < Metro::Scene

  draw :menu, model: "metro::models::menu",
    position: "465,324,5",
    unselected_color: "rgba(119,119,119,0.0)",
    selected_color: "rgba(255,255,255,0.0)",
    options: [ "Start Game", "Exit" ]

end

Defining a menu in a View:

class TitleScene < Metro::Scene

  draw :menu

end
menu:
  model: "metro::models::menu"
  position: "465,324,5"
  unselected_color: "rgba(119,119,119,0.0)",
  selected_color: "rgba(255,255,255,0.0)",
  options:
    - "Start Game"
    - "Exit"

Defining a menu with custom actions:

class TitleScene < Metro::Scene

  draw :menu

  def execute_this_method_on_start
    puts "Starting the Game"
  end

  def exit_game_for_method
    puts "Exiting the Game``"
  end

end
menu:
  model: "metro::models::menu"
  position: "465,324,5"
  unselected_color: "rgba(119,119,119,0.0)",
  selected_color: "rgba(255,255,255,0.0)",
  options:
    "Start Game": "execute_this_method_on_start"
    "Exit": "exit_game_for_method"

Image

Defining an image within a Scene:

class TitleScene < Metro::Scene
  draw :logo, model: "metro::models::image",
    position: "536,147,4",
    color: "rgba(255,255,255,1.0)",
    image: "player.png",
    angle: 0.0,
    scale: "1.0,1.0"

end

Defining an image in a View:

logo:
  model: "metro::models::image"
  position: "536,147,4"
  color: "rgba(255,255,255,1.0)"
  image: "player.png"
  angle: 0.0
  scale: "1.0,1.0"

Rectangle

Defining a Rectangle within a Scene:

class TitleScene < Metro::Scene
  draw :box, model: "metro::models::rectangle",
    position: "10,200,4",
    color: "rgba(255,255,255,1.0)",
    dimensions: "300,400"

end

Defining a rectangle in a View:

class TitleScene < Metro::Scene

  draw :box

end
box:
  model: "metro::models::rectangle"
  position: "10,200,4"
  color: "rgba(255,255,255,1.0)"
  dimensions: "300,400"

Grid Drawer

Audio

Song

Clone this wiki locally