スポンサーサイト

 --------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カテゴリ :スポンサー広告 トラックバック(-) コメント(-)

RGSS 便利な処理

 2010-06-25
CACAOさんのRGSS2お勉強ノートのページ数が
50ページを超えてましたので記念に便利な処理を抜粋しちゃうぞ!


1.未定義変数の初期化
var ||= 123
変数 var が未定義のときに 123 を代入します。
これ最近知って、おぉ!って驚いたんだけど、ノートの最初の方に書いてあった。
すでに知ってたんだね。。。忘れてたのか。。。

2.配列の展開
ary = [1, 2, 3]
p *ary  # => 1
             2
             3

a, b, c = *ary
p a, b, c   # => 1
                 2
                 3

def hoge(a, b, c)
  return a + b + c
end
p hoge(*ary)  # => 6
説明が難しいんだけど、例でわかってもらえたかな?
配列を (a, b, c) みたいな形にする?開くみたいな??

3.引数の配列化
def total(*args)
  return args.inject(0) {|res,val| res + val }
end
p total(1, 2, 3, 4, 5, 6, 7, 8, 9)  # => 45
渡された引数を1つの配列でまとめます。
引数の前に * を付けます。

4.真偽値の反転
sw = true
sw ^= true
p sw  # => false
sw ^= true
p sw  # => true
sw = !sw
p sw  # => false
スイッチのON・OFFを切り替えたいときなんか便利ですよ。
あと、変数名が長いものとか。

5.配列のランダムソート
ary = (1..5).to_a
p ary.sort_by { rand }
配列の要素をバラバラに並び替えます。
ミニゲームなんかで使用しました。

6.正規表現
s = "HOGE:12"
p s[/HOGE:(\d+)/, 1]  # => "12"
1行で変数にも代入できて便利だよ。
マッチしなかった場合は、nil が返るし。

7.式展開
var = 123
$gg = 456
p "var is #{var}"
p "$gg is #$gg"
p "#{var + $gg}"
文字列や正規表現中で変数や式を展開できます。
$ や @ が付いた変数の場合は、{} をつけずに # だけで展開可能です。
私は #{} しか使わないかな。そっちの方がわかりやすいし。

8.クラス判定
num = 123
p Integer === num
p Float === num
p Numeric === num
is_a? を使うより打ちやすいかな?記号3つだから。

こういう記号に置き換えた処理ってたくさんあるよね。
p [] << 1 << 2 << 3
p "%03d" % 6

9.数値の区切り
p 1_234_567
文字コード以外の数値リテラル内では _ を区切りとして使える。
大きい数値のときに一目で桁数がわかるようにだってさ。



今までのとかぶっちゃうやつとかあると思うけど、
というかツクール関係ないものばかりだったと思うけど、
見落としがちのやつを載せたつもりです。
コメント




 

 ※ コメント内にURLを含めるには、バッククォート(`)をURLの直前に付け加えてください。


管理人のみ閲覧許可 [?]

トラックバック
トラックバックURL:
http://cacaosoft.blog42.fc2.com/tb.php/415-26a90770
≪ トップページへこのページの先頭へ  ≫
カレンダー
10 << 2017/11 >> 12
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -

カテゴリー
最近の記事
最近のコメント
タグクラウド

リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。