cyross-ruby-miyako 2.0.0 → 2.0.5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. data/README +106 -154
  2. data/defines.h +144 -0
  3. data/{miyako_no_katana/extconf.rb → extconf.rb} +10 -0
  4. data/extern.h +29 -0
  5. data/install_miyako.rb +26 -14
  6. data/lib/Miyako/API/audio.rb +2 -2
  7. data/lib/Miyako/API/basic_data.rb +183 -41
  8. data/lib/Miyako/API/bitmap.rb +474 -2
  9. data/lib/Miyako/API/choices.rb +215 -48
  10. data/lib/Miyako/API/collision.rb +267 -251
  11. data/lib/Miyako/API/diagram.rb +58 -70
  12. data/lib/Miyako/API/drawing.rb +93 -52
  13. data/lib/Miyako/API/fixedmap.rb +233 -120
  14. data/lib/Miyako/API/font.rb +59 -40
  15. data/lib/Miyako/API/input.rb +34 -27
  16. data/lib/Miyako/API/layout.rb +154 -172
  17. data/lib/Miyako/API/map.rb +285 -159
  18. data/lib/Miyako/API/map_event.rb +4 -4
  19. data/lib/Miyako/API/modules.rb +1 -1
  20. data/lib/Miyako/API/movie.rb +8 -5
  21. data/lib/Miyako/API/parts.rb +44 -9
  22. data/lib/Miyako/API/plane.rb +37 -2
  23. data/lib/Miyako/API/screen.rb +90 -22
  24. data/lib/Miyako/API/shape.rb +118 -37
  25. data/lib/Miyako/API/sprite.rb +475 -61
  26. data/lib/Miyako/API/sprite_animation.rb +83 -63
  27. data/lib/Miyako/API/spriteunit.rb +47 -13
  28. data/lib/Miyako/API/story.rb +123 -47
  29. data/lib/Miyako/API/textbox.rb +361 -132
  30. data/lib/Miyako/API/utility.rb +388 -0
  31. data/lib/Miyako/API/viewport.rb +54 -349
  32. data/lib/Miyako/API/yuki.rb +570 -353
  33. data/lib/Miyako/EXT/miyako_cairo.rb +5 -3
  34. data/lib/Miyako/EXT/slides.rb +22 -1
  35. data/lib/Miyako/miyako.rb +12 -13
  36. data/logo/EGSR_logo.png +0 -0
  37. data/logo/EGSR_logo_bg.png +0 -0
  38. data/logo/EGSR_logo_fg.png +0 -0
  39. data/logo/EGSR_title_banner.png +0 -0
  40. data/logo/EGSR_title_logo.png +0 -0
  41. data/logo/miyako.png +0 -0
  42. data/logo/miyako_banner.png +0 -0
  43. data/logo/space.png +0 -0
  44. data/miyako_basicdata.c +590 -0
  45. data/miyako_bitmap.c +1225 -0
  46. data/miyako_collision.c +403 -0
  47. data/miyako_drawing.c +187 -0
  48. data/miyako_font.c +334 -0
  49. data/miyako_hsv.c +830 -0
  50. data/miyako_layout.c +191 -0
  51. data/miyako_no_katana.c +1074 -0
  52. data/miyako_transform.c +438 -0
  53. data/miyako_utility.c +288 -0
  54. data/sample/Animation1/m1ku.rb +10 -31
  55. data/sample/Animation1/readme.txt +6 -6
  56. data/sample/Animation2/lex.rb +1 -0
  57. data/sample/Animation2/readme.txt +6 -6
  58. data/sample/Diagram_sample/diagram_sample_yuki2.rb +152 -48
  59. data/sample/Diagram_sample/readme.txt +9 -6
  60. data/sample/Room3/blue.rb +234 -187
  61. data/sample/Room3/ending.rb +68 -63
  62. data/sample/Room3/green.rb +159 -124
  63. data/sample/Room3/main.rb +50 -32
  64. data/sample/Room3/main_component.rb +3 -2
  65. data/sample/Room3/readme.txt +6 -6
  66. data/sample/Room3/red.rb +161 -134
  67. data/sample/Room3/room3.rb +1 -0
  68. data/sample/Room3/title.rb +75 -62
  69. data/sample/ball_action_sample.rb +204 -0
  70. data/sample/blit_rop.rb +70 -0
  71. data/sample/cairo_sample.rb +25 -0
  72. data/sample/circle_collision_test.rb +66 -0
  73. data/sample/collision_test.rb +33 -0
  74. data/sample/collision_test2.rb +108 -0
  75. data/sample/fixed_map_test/fixed_map_sample.rb +23 -32
  76. data/sample/fixed_map_test/readme.txt +38 -38
  77. data/sample/map_test/chara.rb +17 -9
  78. data/sample/map_test/main_parts.rb +30 -9
  79. data/sample/map_test/main_scene.rb +57 -41
  80. data/sample/map_test/map_manager.rb +13 -30
  81. data/sample/map_test/map_test.rb +2 -2
  82. data/sample/map_test/oasis.rb +17 -11
  83. data/sample/map_test/readme.txt +50 -48
  84. data/sample/map_test/route.rb +46 -33
  85. data/sample/map_test/town.rb +19 -13
  86. data/sample/polygon_test.rb +35 -0
  87. data/sample/rasterscroll.rb +25 -0
  88. data/sample/takahashi.rb +42 -0
  89. data/sample/text.png +0 -0
  90. data/sample/textbox_sample.rb +190 -0
  91. data/sample/transform.rb +54 -0
  92. data/sample/utility_test.rb +73 -0
  93. data/sample/utility_test2.rb +61 -0
  94. data/sample/utility_test3.rb +64 -0
  95. data/sample/utility_test4.rb +73 -0
  96. data/uninstall_miyako.rb +19 -0
  97. data/win/miyako_no_katana.so +0 -0
  98. metadata +165 -148
  99. data/miyako.png +0 -0
  100. data/miyako_banner.png +0 -0
  101. data/miyako_no_katana/miyako_no_katana.c +0 -3301
  102. data/sample/fixed_map_test/map_sample.rb +0 -121
@@ -0,0 +1,25 @@
1
+ # encoding: utf-8
2
+ # MiyakoCairoサンプル
3
+ # 2009.4.12 Cyross Makoto
4
+
5
+ require 'Miyako/miyako'
6
+ require 'Miyako/EXT/miyako_cairo'
7
+
8
+ sprite = Miyako::Sprite.new(:file=>"Animation2/lex_body.png", :type=>:ck)
9
+ sprite.bitmap.saveBMP("./sample.bmp")
10
+
11
+ surface = Miyako::MiyakoCairo.to_cairo_surface(sprite)
12
+ surface.write_to_png("./sample.png")
13
+
14
+ surface = Cairo::ImageSurface.new(Cairo::Format::ARGB32, 320, 240)
15
+ context = Cairo::Context.new(surface)
16
+
17
+ context.set_source_rgb(1.0, 0.5, 0.8)
18
+ context.fill{
19
+ context.rectangle(50, 50, 150, 100)
20
+ }
21
+
22
+ surface.write_to_png("./sample2.png")
23
+
24
+ sprite = Miyako::MiyakoCairo.to_sprite(surface)
25
+ sprite.bitmap.saveBMP("./sample2.bmp")
@@ -0,0 +1,66 @@
1
+ # encoding: utf-8
2
+ # 円コリジョン(CircleCollision)サンプル
3
+ # 2009.4.26 Cyross Makoto
4
+
5
+ require 'Miyako/miyako'
6
+
7
+ include Miyako
8
+
9
+ Screen.fps = 60
10
+
11
+ AMOUNT_MIN = -8
12
+ AMOUNT_MAX = 8
13
+
14
+ # Utility.in_bounds?引数生成
15
+ def segments(sprite, amounts, idx)
16
+ [sprite.segment[idx], Screen.segment[idx], amounts[idx]]
17
+ end
18
+
19
+ # 移動量の決定
20
+ def get_amount
21
+ range = AMOUNT_MAX - AMOUNT_MIN
22
+ [[rand(range)+AMOUNT_MIN,
23
+ rand(range)+AMOUNT_MIN],
24
+ [rand(range)+AMOUNT_MIN,
25
+ rand(range)+AMOUNT_MIN]]
26
+ end
27
+
28
+ radius = 32
29
+ size = [radius*2, radius*2]
30
+ pos = [radius, radius]
31
+ sprite1 = Sprite.new({:size=>size, :type=>:as})
32
+ Drawing.circle(sprite1, pos, radius, [255,0,0], true)
33
+ collision1 = CircleCollision.new(pos, radius)
34
+ sprite2 = Sprite.new({:size=>size, :type=>:as})
35
+ Drawing.circle(sprite2, pos, radius, [0,255,0], true)
36
+ collision2 = CircleCollision.new(pos, radius)
37
+ caution = Shape.text({:font => Font.serif }){ text "collision!" }
38
+
39
+ sprite1.move_to(rand(Screen.w-size[0]), rand(Screen.h-size[1]))
40
+ sprite2.move_to(rand(Screen.w-size[0]), rand(Screen.h-size[1]))
41
+
42
+ amount1, amount2 = get_amount
43
+
44
+ Miyako.main_loop do
45
+ break if Input.quit_or_escape?
46
+ if collision1.collision?(sprite1.pos, collision2, sprite2.pos)
47
+ amount1, amount2 = get_amount
48
+ caution.render
49
+ end
50
+ amount1[0] = -amount1[0] unless Utility.in_bounds?(*segments(sprite1, amount1, 0))
51
+ amount1[1] = -amount1[1] unless Utility.in_bounds?(*segments(sprite1, amount1, 1))
52
+ amount2[0] = -amount2[0] unless Utility.in_bounds?(*segments(sprite2, amount2, 0))
53
+ amount2[1] = -amount2[1] unless Utility.in_bounds?(*segments(sprite2, amount2, 1))
54
+
55
+ sprite1.move(*amount1)
56
+ sprite2.move(*amount2)
57
+
58
+ sprite1.render
59
+ sprite2.render
60
+
61
+ Font.serif.draw_text(Screen,
62
+ "distance = #{collision1.interval(sprite1.pos, collision2, sprite2.pos)}",
63
+ 0,
64
+ Screen.h - Font.serif.line_height
65
+ )
66
+ end
@@ -0,0 +1,33 @@
1
+ # encoding: utf-8
2
+ # コリジョン(Collision)サンプル
3
+ # 2009.4.12 Cyross Makoto
4
+
5
+ require 'Miyako/miyako'
6
+
7
+ include Miyako
8
+
9
+ size = [32, 32]
10
+ rect = [0, 0] + size
11
+ sprite1 = Sprite.new({:size=>size, :type=>:as})
12
+ sprite1.fill([255,0,0])
13
+ collision1 = Collision.new(rect)
14
+ sprite2 = Sprite.new({:size=>size, :type=>:as})
15
+ sprite2.fill([0,255,0])
16
+ collision2 = Collision.new(rect)
17
+ caution = Shape.text({:font => Font.serif }){ text "collision!" }
18
+
19
+ sprite1.center.move(0, 128)
20
+ sprite2.center
21
+
22
+ amount = 8
23
+
24
+ Miyako.main_loop do
25
+ break if Input.quit_or_escape?
26
+ if Collision.collision?(collision1, sprite1.pos, collision2, sprite2.pos)
27
+ caution.render
28
+ else
29
+ sprite2.move(0, amount)
30
+ end
31
+ sprite1.render
32
+ sprite2.render
33
+ end
@@ -0,0 +1,108 @@
1
+ # encoding: utf-8
2
+ # コリジョン(Collision・CircleCollision混合)サンプル
3
+ # 2009.4.26 Cyross Makoto
4
+
5
+ require 'Miyako/miyako'
6
+
7
+ include Miyako
8
+
9
+ AMOUNT_MIN = -8
10
+ AMOUNT_MAX = 8
11
+
12
+ Screen.fps = 60
13
+
14
+ # Utility.in_bounds?引数生成
15
+ def segments(sprite, amounts, idx)
16
+ [sprite.segment[idx], Screen.segment[idx], amounts[idx]]
17
+ end
18
+
19
+ # 移動量の決定
20
+ def get_amount_one
21
+ range = AMOUNT_MAX - AMOUNT_MIN
22
+ [rand(range)+AMOUNT_MIN, rand(range)+AMOUNT_MIN]
23
+ end
24
+ def get_amount
25
+ range = AMOUNT_MAX - AMOUNT_MIN
26
+ [get_amount_one, get_amount_one]
27
+ end
28
+
29
+ # 矩形衝突判定と円形衝突判定との切り替え
30
+ collision_list = [Collision, CircleCollision].cycle
31
+
32
+ # 同時表示スプライト数
33
+ Sprites = 20
34
+
35
+ # スプライトサイズ
36
+ size = [64, 64]
37
+ # スプライト矩形(当たり判定生成用)
38
+ rect = [0, 0] + size
39
+
40
+ sprites = Array.new(Sprites){|n|
41
+ # スプライトの生成
42
+ sprite = Sprite.new({:size=>size, :type=>:as})
43
+ Drawing.circle(sprite, [size[0]/2, size[1]/2], size[0]/2, [rand(256),rand(256),rand(256)], true)
44
+ sprite.move_to(rand(Screen.w-size[0]), rand(Screen.h-size[1]))
45
+
46
+ # コリジョンの生成
47
+ collision = Collision.new(rect)
48
+
49
+ # :collisioned => 当たり判定した?
50
+ {
51
+ :sprite => sprite,
52
+ :collision => collision,
53
+ :amount => get_amount_one
54
+ }
55
+ }
56
+
57
+ # 衝突判定用の組み合わせ行列を作成
58
+ matrix = sprites.combination(2)
59
+
60
+ cautions = {
61
+ Collision => Shape.text({:font => Font.serif }){ text "矩形衝突判定中" },
62
+ CircleCollision => Shape.text({:font => Font.serif }){ text "円形衝突判定中" }
63
+ }
64
+
65
+ # 初期の衝突判定方法を設定
66
+ collision_type = collision_list.next
67
+
68
+ # 一気にレンダリング
69
+ Screen.pre_render_array << sprites.map{|m| m[:sprite]}
70
+
71
+ # 判定を切り替えるタイミングを決めるタイマー
72
+ wait = WaitCounter.new(1.0)
73
+ wait.start
74
+
75
+ Miyako.main_loop do
76
+ break if Input.quit_or_escape?
77
+
78
+ # 一定時間ごとに衝突判定方法を切り替え
79
+ if wait.finish?
80
+ collision_type = collision_list.next
81
+ wait.start
82
+ end
83
+
84
+ # 衝突判定
85
+ # 衝突していたら方向を反転
86
+ matrix.each{|pair|
87
+ p0 = pair[0]
88
+ p1 = pair[1]
89
+ if collision_type.collision?(p0[:collision],
90
+ p0[:sprite].pos,
91
+ p1[:collision],
92
+ p1[:sprite].pos)
93
+ p0[:amount], p1[:amount] = get_amount
94
+ end
95
+ }
96
+
97
+ # 移動
98
+ sprites.each{|s|
99
+ # 画面の端に来たら方向転換
100
+ s[:amount][0] = -s[:amount][0] unless Utility.in_bounds?(*segments(s[:sprite], s[:amount], 0))
101
+ s[:amount][1] = -s[:amount][1] unless Utility.in_bounds?(*segments(s[:sprite], s[:amount], 1))
102
+ s[:sprite].move(*s[:amount])
103
+ }
104
+
105
+ # 画面への描画
106
+ Screen.pre_render
107
+ cautions[collision_type].render
108
+ end
@@ -1,12 +1,13 @@
1
- #! /usr/bin/ruby
1
+ #encoding: UTF-8
2
2
  # FixedMap Sample
3
- # 2008.11.29 C.Makoto
3
+ # 2009.4.12 Cyross Makoto
4
4
 
5
5
  require 'Miyako/miyako'
6
- #require 'Miyako/idaten_miyako'
7
6
 
8
7
  include Miyako
9
8
 
9
+ Screen::fps_view = true
10
+
10
11
  # Monster Class
11
12
  class Monster
12
13
  extend Forwardable
@@ -15,14 +16,12 @@ class Monster
15
16
  @spr = Sprite.new({:filename => name, :type => :color_key})
16
17
  @spr.ow = size
17
18
  @spr.oh = size
18
- @coll= Collision.new(Rect.new(0, 0, @spr.ow, @spr.oh),
19
- Point.new(@spr.x, @spr.y))
20
- @coll.amount = Size.new(1, 1)
19
+ @coll = Collision.new(Rect.new(0, 0, @spr.ow, @spr.oh))
20
+ @cpos = Point.new(x, y)
21
21
  ap = { }
22
22
  ap[:sprite] = @spr
23
23
  ap[:wait] = wait
24
24
  ap[:pattern_list] = pattern
25
- # ap[:position_offset] = [0,2,4,6,8,10,12,14]
26
25
  @anim = SpriteAnimation.new(ap)
27
26
  @anim.snap(map)
28
27
  @anim.left.top.move(x, y)
@@ -54,7 +53,6 @@ end
54
53
  class Slime < Monster
55
54
  def initialize(map, x, y)
56
55
  super(map, "monster.png", 32, 0.5, [0, 1, 2, 3, 2, 1], x, y)
57
- @pos = Point.new(x, y)
58
56
  @interval = 2
59
57
  @interval_x = 0
60
58
  @interval_y = 0
@@ -62,10 +60,11 @@ class Slime < Monster
62
60
  @wait0 = WaitCounter.new(0.1)
63
61
  @wait = WaitCounter.new(0.4)
64
62
  @types = 5
65
- @ary = [[ 0, 1, 0, @interval, @spr.oh],
66
- [ 1, 0, @interval, 0, @spr.ow],
67
- [-1, 0,-@interval, 0, @spr.ow],
68
- [ 0,-1, 0,-@interval, @spr.oh]]
63
+ # 方向による移動量リスト
64
+ @ary = [[ 0, @spr.oh, 0, @interval, @spr.oh],
65
+ [ @spr.ow, 0, @interval, 0, @spr.ow],
66
+ [-@spr.ow, 0, -@interval, 0, @spr.ow],
67
+ [ 0,-@spr.oh, 0,-@interval, @spr.oh]]
69
68
  end
70
69
 
71
70
  def update(map, events, param)
@@ -73,7 +72,7 @@ class Slime < Monster
73
72
  return if @wait.waiting? || @wait0.waiting?
74
73
  if @cnt > 0
75
74
  @anim.move(@interval_x, @interval_y)
76
- @coll.move(@interval_x, @interval_y)
75
+ @cpos.move(@interval_x, @interval_y)
77
76
  @cnt -= @interval
78
77
  @wait0.start
79
78
  return
@@ -85,11 +84,12 @@ class Slime < Monster
85
84
  @wait.start
86
85
  else
87
86
  data = @ary[val-1]
88
- @coll.direction = data[0..1]
89
-
90
- ret = map.get_amount_by_rect(0, @spr.rect, @coll)
91
-
92
- if (ret.amount[0] | ret.amount[1]) != 0
87
+ # スライムが当たっているマップ位置リストを取得
88
+ colls = Utility.product_position(
89
+ @cpos.dup.move(data[0], data[1]), @coll.rect, map.mapchips[0].chip_size.to_a
90
+ )
91
+ # 障害物に当たってない?
92
+ if colls.inject(true){|r, pos| r &= map[0].can_access?(0, :in, @cpos, data[0], data[1]) }
93
93
  @interval_x, @interval_y = data[2..3]
94
94
  @cnt = data[4]
95
95
  end
@@ -125,25 +125,16 @@ em = MapEventManager.new
125
125
  em.add(1, SlimeEvent)
126
126
 
127
127
  # main
128
-
129
- #@a = Sprite.new({:file=>"cursor.png", :type=>:ac })
130
- #@a.oh = @a.w
131
- #@a = SpriteAnimation.new({:sprite=>@a, :wait=>0.1, :pattern_list=>[0,1,2,3,2,1] })
132
- #@a.start
133
-
134
128
  mp = MapChipFactory.load("./mapchip.csv")
135
129
  @fmap = FixedMap.new(mp, "./map.csv", em)
136
- #@fmap.set_mapchip_base(0, 4, @a)
137
- #@fmap.map_layers[0].mapchip_units[4] = @a
138
130
 
139
131
  Miyako.main_loop do
140
132
  break if Input.quit_or_escape?
141
- # @a.update_animation
142
133
  dx, dy = Input.trigger_amount.map{|v| v * 4 }
143
- dx = 0 unless Screen.viewport.in_bounds_x?(@fmap.rect, dx)
144
- dy = 0 unless Screen.viewport.in_bounds_y?(@fmap.rect, dy)
134
+ dx = 0 unless Utility.in_bounds?([@fmap.rect.x,@fmap.rect.x+@fmap.rect.w-1], [0,Screen.w-1], dx)
135
+ dy = 0 unless Utility.in_bounds?([@fmap.rect.y,@fmap.rect.y+@fmap.rect.h-1], [0,Screen.h-1], dy)
145
136
  @fmap.move(dx, dy)
146
- @fmap.events.each{|e| e.update(@fmap, @fmap.events, nil)}
147
- @fmap.render
148
- @fmap.events.each{|e| e.render}
137
+ @fmap.events.each{|ee| ee.each{|e| e.update(@fmap, @fmap.events, nil)}}
138
+ @fmap.render_to(Screen)
139
+ @fmap.events.each{|ee| ee.each{|e| e.render}}
149
140
  end
@@ -1,63 +1,63 @@
1
1
  *******************************************************************************
2
- �y ��Җ� �z�@�T�C���X��
3
- �y �\�t�g�� �z�@Miyako v1.4.4�T���v��(�Œ�}�b�v)
4
- �y �o�[�W���� �z�@1.0
5
- �y �쐬�� �z�@2008/01/14
6
- �y ��� �z�@�t���[�E�F�A
7
- �y �J������ �z�@Ruby 1.8.6-p111
8
- �y �����^�C�� �z�@Miyako v1.4.4
9
- �y �Ή��@�� �z�@Windows 2000/XP/Vista�ALinux
10
- �y �Ĕz�z �z�@�C��BSD���C�Z���X�ɂ��
11
- �y �]�� �z�@�C��BSD���C�Z���X�ɂ��
12
- �y�z�[���y�[�W�z�@http://www.twin.ne.jp/~cyross/Miyako/
13
- �y �A���� �z�@cyross@po.twin.ne.jp
2
+ 作者名 】 サイロス誠
3
+ ソフト名 】 Miyako v2.0サンプル(固定マップ)
4
+ バージョン 】 2.0
5
+ 作成日 】 2009/04/12
6
+ 種別 】 フリーウェア
7
+ 開発言語 】 Ruby 1.8.9-p0
8
+ ランタイム 】 Miyako v2.0
9
+ 対応機種 】 Windows 2000/XP/Vista、Linux
10
+ 再配布 】 修正BSDライセンスによる
11
+ 転載 】 修正BSDライセンスによる
12
+ 【ホームページ】 http://www.twin.ne.jp/~cyross/Miyako/
13
+ 連絡先 】 cyross@po.twin.ne.jp
14
14
  *******************************************************************************
15
15
 
16
- �E�T�v
16
+ ・概要
17
17
 
18
- �@���̃v���O�����́AMiyako v1.4.4�ȍ~�ɑΉ�����AMiyako�T���v���v���O�����ł��B
19
- �@�X�N���[�����Ȃ��}�b�v��ŁA�X���C�������˂��˂��Ȃ��瓮������Ă��܂��B
18
+  このプログラムは、Miyako v2.0以降に対応する、Miyakoサンプルプログラムです。
19
+  スクロールしないマップ上で、スライムがうねくねしながら動き回っています。
20
20
 
21
- �EMiyako�ɂ‚���
21
+ ・Miyakoについて
22
22
 
23
- �@Miyako�Ɋւ��ẮA�ȉ���URL���Q�l�ɂ��Ă��������B
23
+  Miyakoに関しては、以下のURLを参考にしてください。
24
24
  http://www.twin.ne.jp/~cyross/Miyako/
25
25
 
26
- �@Miyako(Ruby�ARuby/SDL�܂�)�̃C���X�g�[���Ɋւ��܂��ẮA
27
- ��LURL��H���ē�����A�[�J�C�u���ꂽMiyako���C�u������
28
- �W�J����ƁAreadme.txt�������܂��̂ŁA����������Q�Ɖ������B
26
+  Miyako(Ruby、Ruby/SDL含む)のインストールに関しましては、
27
+ 上記URLを辿って得られるアーカイブされたMiyakoライブラリを
28
+ 展開すると、readme.txtが得られますので、そちらをご参照下さい。
29
29
 
30
- �@�{�T���v���ł́AMiyako��Windows��œ��삷�邱�Ƃ�O��ɂ��Ă��܂��B
31
- �i�C���X�g�[������Ruby���s�‹���ActiveRuby�ł��邱�Ƃ��O���
32
- �@���Ă��܂��j
30
+  本サンプルでは、MiyakoがWindows上で動作することを前提にしています。
31
+ (インストールしたRuby実行環境がActiveRubyであることも前提に
32
+  しています)
33
33
 
34
- �E�N�����@
34
+ ・起動方法
35
35
 
36
- �@�G�N�X�v���[���[���J���A�{�T���v���̃t�H���_���ŁA�um1ku.rb�v��
37
- �_�u���N���b�N���܂��B
38
- �@�������́A�R�}���h���C����œ������ꍇ�́A�{�T���v���̃f�B���N�g����
39
- �ړ����āA�ȉ��̃R�}���h����͂��܂��B
36
+  エクスプローラーを開き、本サンプルのフォルダ内で、「m1ku.rb」を
37
+ ダブルクリックします。
38
+  もしくは、コマンドライン上で動かす場合は、本サンプルのディレクトリに
39
+ 移動して、以下のコマンドを入力します。
40
40
 
41
- �@ruby fixed_map_sample.rb
41
+  ruby fixed_map_sample.rb
42
42
 
43
- �E�Ɛӎ���
43
+ ・免責事項
44
44
 
45
- �@�{�T���v���͖��ۏ؂ł��B�����{�T���v�����g�p���邱�Ƃɂ��s��E�g���u��
46
- ���N�������Ƃ��Ă��A�����Ȃ�g���u���ɑ΂���ӔC�𕉂�Ȃ����Ƃ��������������B
45
+  本サンプルは無保証です。もし本サンプルを使用することによる不具合・トラブル
46
+ が起こったとしても、いかなるトラブルに対する責任を負わないことをご了承下さい。
47
47
 
48
- �@�{�T���v���́A�C��BSD���C�Z���X�Ɋ�Â����]�ځE�Ĕz�z�����‚��܂��B
48
+  本サンプルは、修正BSDライセンスに基づいた転載・再配布を許可します。
49
49
 
50
- �EBSD���C�Z���X��
50
+ ・BSDライセンス文
51
51
 
52
- Copyright (c) 2008, Cyross Makoto
52
+ Copyright (c) 2009, Cyross Makoto
53
53
 
54
54
  All rights reserved.
55
55
 
56
56
  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
57
57
 
58
- �ERedistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
59
- �ERedistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
60
- �ENeither the name of the Cyross Makoto nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
58
+ ・Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
59
+ ・Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
60
+ ・Neither the name of the Cyross Makoto nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
61
61
 
62
62
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
63
63
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT