schwarzの雑記 このページをアンテナに追加 RSSフィード

05/12/04 (Sun)12月4日の雑記

[] 14:45 12月4日の雑記 - schwarzの雑記 を含むブックマーク

わたしも買っちゃいました。高橋メソッドの本。


ほんとは、C#の本を買おうと思って行ったのに、

なぜこうなったのでしょう・・・?

まあ、いいか。


高橋さんがわたしと同郷だったとは知りませんでした。

[] 09:46 12月4日の雑記 - schwarzの雑記 を含むブックマーク

真の高橋メソッド

という、おそれ知らずな名前のRGSSを作ってみました。


http://milkey.net/~rpgxp/blog/true_tm.zip


詳しくは、まあとりあえずやってみてください。


高橋メソッドプレイヤー」のデータと互換性あります。

というより少なからず参考にさせてもらってます。

f:id:Schwarz:20051204095652j:image

かなりソースコードネタ要素の強いものですから、

今度はきっと、もっとまじめに組みます。


以下、ソース全文

#==============================================================================
# ■ takahashi
#------------------------------------------------------------------------------
#   真の高橋メソッド
#==============================================================================
def takahashi
  
  #--------------------------------------------------------------------------
  # ● デフォルトのフォント設定
  #--------------------------------------------------------------------------
  Font.default_name = ["HGPゴシックE", "MS Pゴシック"]
  Font.default_size = 96
  Font.default_color = Color.new(0,0,0,255)
  
  #--------------------------------------------------------------------------
  # ● 1スライド表示
  #--------------------------------------------------------------------------
  def print_slide(text)
    @screen.bitmap.clear()
    linenum = text.split("\n").size
    zoom = 4.0 / linenum 
    text.split(/\n/).each_with_index{|line,i|
      while( (@screen.bitmap.text_size(line).width * zoom) > 640 )
        zoom -= 0.1
      end
      @screen.zoom_x = zoom
      @screen.zoom_y = zoom
      y = ((480-Font.default_size*linenum) / 2) + (i*Font.default_size) - 10
      @screen.bitmap.draw_text(0, y, 2000, Font.default_size, line, 1)
    }
  end
  
  #--------------------------------------------------------------------------
  # ● 以下、メインの処理
  #--------------------------------------------------------------------------
  
  # ビューポート(背景を白く)
  viewport = Viewport.new(0,0,640,480)
  viewport.color = Color.new(255,255,255,255)
  
  # スライドスプライト
  @screen = Sprite.new()
  @screen.x = 320
  @screen.y = 240
  @screen.ox = 1000
  @screen.oy = 240
  @screen.bitmap = Bitmap.new(2000, 480)
  
  # 全スライドデータを読み込み、1スライドごとに分ける
  slides = open("プレゼン内容.txt", "r").read().split(/-/).collect{|str| str.strip() }
  
  # スライド番号
  index = 0
  
  # 1スライド目表示
  print_slide(slides[index])
  
  # メインルーチン
  loop{
    Graphics.update()
    Input.update()
    # 進める
    if(Input.trigger?(Input::C) || Input.trigger?(Input::RIGHT) || Input.trigger?(Input::DOWN))
      index += 1
      break if(index == slides.size)
      print_slide(slides[index])
    # 戻る
    elsif(Input.trigger?(Input::B) || Input.trigger?(Input::LEFT) || Input.trigger?(Input::UP))
      index = (index > 0) ? index-1 : index
      print_slide(slides[index])
    end
  }
  
end


#--------------------------------------------------------------------------
# ● 高橋メソッド呼び出し!!
#--------------------------------------------------------------------------
takahashi()

mr-80bmr-80b 2005/12/04 11:04 「真の」っていうのは要するに、takahashiというメソッドのみで記述されている、ってことですね。
なるほどー。

ゲスト