# encoding: utf-8 # language: ja @javascript 機能: motion_turn_if_reach_wall - 「もし端に着いたら、跳ね返る」ブロック シナリオ: ブロックのみ配置する 前提 "ブロック" タブを表示する もし 次のブロックを配置する: """ %block{:type => "motion_turn_if_reach_wall", :x => "0", :y => "0"} """ かつ ブロックからソースコードを生成する ならば テキストエディタのプログラムは "" であること シナリオ: キャラクターとブロックを配置する 前提 "ブロック" タブを表示する かつ 次のキャラクターを追加する: | name | costumes | x | y | angle | | car1 | car1.png | 0 | 0 | 0 | もし 次のブロックを配置する: """ %block{:type => "character_new", :x => "21", :y => "15"} %field{:name => "NAME"}< car1 %statement{:name => "DO"} %block{:type => "motion_turn_if_reach_wall", :x => "0", :y => "0"} """ かつ ブロックからソースコードを生成する ならば テキストエディタのプログラムは以下であること: """ require "smalruby" car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0) car1.turn_if_reach_wall """ シナリオ: キャラクターとイベントとブロックを配置する 前提 "ブロック" タブを表示する かつ 次のキャラクターを追加する: | name | costumes | x | y | angle | | car1 | car1.png | 0 | 0 | 0 | もし 次のブロックを配置する: """ %block{:type => "character_new", :x => "21", :y => "15"} %field{:name => "NAME"}< car1 %statement{:name => "DO"} %block{:type => "events_on_start"} %statement{:name => "DO"} %block{:type => "motion_turn_if_reach_wall", :x => "0", :y => "0"} """ かつ ブロックからソースコードを生成する ならば テキストエディタのプログラムは以下であること: """ require "smalruby" car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0) car1.on(:start) do turn_if_reach_wall end """