15:アツい弾(たま)をうて!

さあ、プレイヤーキャラを出だそう!
おう・・・
あれ、今回こんかいはテンション低ひくいね。
この前まえも言いったけどよう、12章しょうのアレをくっつけるんだろう?結果けっかのソウゾウがつくからつまんねえよなあ・・・
もちろんそれだけじゃなくて、今回こんかいは弾たまを出だすところまで作つくろうかと思おもうんだ。
ガタッ
いきなり顔かおが明あかるくなったね。
さっそくやろうぜインテリ先生せんせいよう!
まずは12章しょうを参考さんこうに、左右さゆうに動うごくプレイヤーをくっつけるよ。イチゴが不評ふひょうだからもっとシューティングっぽいキャラにしよう。
そういやこの前まえも敵てきキャラにいきなり1203番ばんとか書かいてたけどよ、お前まえどうやってキャラをさがしてるんだよ。まさか1203回かいキャラを出だしつづけたのか?
ハハ、まさかそんな事ことはしないよ。プチコン4にはちゃんと便利べんりなツールがついてるんだ。
プチコン4には組くみ込こまれている音おと・BGM・スプライトの絵えを確認かくにんできるツールが入はいっているんだよ。
チッ、キャラを出だしつづけたならすげえ根性こんじょうだと思おもったのによ。
せっかくコンピューターを使つかってるんだから、こういう事ことはスマートにやらないとね。
うぉぉなんだそのおりこうさんなセリフは!全身ぜんしんにムシズがはしるぜ!
ワンパク君くんだってラクなほうがいいだろう?スマートってのはラクって事ことさ
くっそー、反論はんろんできねえ・・・そりゃあラクなほうがいいに決きまってるじゃねえか・・・
じゃあツールの出だしかたから説明せつめいするね。ソフトキーボードでZLかZRボタンを押おしながら、スマイルツール1って書かいてるボタンをタッチしてみて。マウスでクリックでもいいよ。USBキーボードならF9キー一発いっぱつさ。








なんかいっぱい出でてきたぞ!
ソフトキーボードを使つかっている人ひとは、画面がめんが変かわったら-マイナスボタンで一旦いったんソフトキーボードを閉とじてね。
これがSMILETOOLスマイルツールだよ。最初さいしょは効果音こうかおん(BEEPビープ)のページが出でてるけど、コントローラーのL,Rボタンでページを切替きりかえられるんだ。SPDEFエスピーデフ定義ていぎっていうページに行いってごらん。








絵えがいっぱい出でてきたぞ・・・0番ばんはイチゴ、1番ばんはミカン・・・SPSETエスピーセットに食くわせるあの番号ばんごうか!
そう!方向ほうこうボタンで好すきな絵えを探さがせるんだ。8192個こあるから探さがすのも一苦労ひとくろうだけどね。
は、8192個こ!見みてるだけで日ひがくれちまうな。
おんなじ絵えで設定せっていが微妙びみょうに違ちがうだけの物ものとか、絵えの大おおきさが違ちがうだけの物ものとかもいっぱいあるけどね。ゲームで使つかいそうな絵えはほとんど入はいってるんじゃないかな。
Aボタンで拡大表示かくだいひょうじができるよ。探さがし終おわったらXボタンかESCキーで抜ぬけられるよ・・・
あれ、聞きいてない。
おお?このロボットっぽいのもかっこいいな・・・いや・・・
よし決きめた!オレは3323番ばんでいくぜ!
きにいったキャラが見みつかったようだね。
SMILETOOLスマイルツールはダイレクトモードでもエディットモードでも使つかえるんだ。覚おぼえとくといいよ。
インテリ君くん、SMILETOOLスマイルツールの下したの方ほうに出でているSPDEFエスピーデフ なんとか・・・ってなにかな?
ああ、それはスプライトの絵えの定義内容ていぎないようなんだ。SPSETエスピーセットで出でてくる絵えは、こういう命令めいれいとこういう引数ひきすうでできていますよって言いってるんだよ。
どういう絵えにするかはここにも出でているSPDEFエスピーデフっていう命令めいれいで定義ていぎするんだけど、それはもう少すこし後あとで説明せつめいするよ。
さっそくその3323番ばんをプレイヤーキャラにして出だしてみよう!

 '---てき----------------------------
 'てきのかず
 ECOUNT=10
 'てきのざひょう
 DIM EX[ECOUNT]
 DIM EY[ECOUNT]
 'てきのそくど
 DIM EVX[ECOUNT]
 DIM EVY[ECOUNT]
 'てきのいどうじかん
 DIM ETIME[ECOUNT]
 'てきのスプライトID
 DIM EID[ECOUNT]
 
 'てきざひょうしょきか
 FOR I=0 TO ECOUNT-1
  EX[I]=200
  EY[I]=60
 NEXT
 
 'てきのスプライトをつくる
 FOR I=0 TO ECOUNT-1
  EID[I]=100+I
  SPSET EID[I],1203
  SPOFS EID[I],EX[I],EY[I]
 NEXT
 
 '---プレイヤー-------------------------
 'プレイヤーのざひょう
 PX=200
 PY=200
 'プレイヤーのスプライトID
 PID=10
 'プレイヤーのえのばんごう
 PPIC=3323
 
 'プレイヤーのスプライトをつくる
 SPSET PID,PPIC
 SPOFS PID,PX,PY
 
 '---メインループ-----------------------
 LOOP
  '---プレイヤーしょり----------------------
  'さゆうにうごかす
  IF BUTTON(1,#B_LLEFT)==1 THEN PX=PX-1
  IF BUTTON(1,#B_LRIGHT)==1 THEN PX=PX+1
  IF PX<0 THEN PX=0
  IF PX>400-16 THEN PX=400-16
  SPOFS PID,PX,PY
 
  '---てきしょり-------------------------
  FOR I=0 TO ECOUNT-1
   IF ETIME[I]==0 THEN
    'うごくほうこうをきめる
    EVX[I]=RND(3)-1
    EVY[I]=RND(3)-1
    ETIME[I]=20
   ENDIF
 
   'てきをうごかす
   ETIME[I]=ETIME[I]-1
   EX[I]=EX[I]+EVX[I]
   EY[I]=EY[I]+EVY[I]
   SPOFS EID[I],EX[I],EY[I]
  NEXT
  VSYNC
 ENDLOOP
 

だんだん長ながくなってきたね!
どれどれ・・・3323番ばんにした以外いがいはたしかに12章しょうをくっつけただけだな。おや、コメントがふえてるぞ?
プログラムが長ながくなればなるほど中身なかみを理解りかいするのはむずかしくなるからね。今回こんかいは、「ここからプレイヤー」「ここから敵てき」っていう大おおきなグループに分わけて、その境目さかいめにコメントを入いれたよ。こうやって横線よこせんのようにしたらさらにわかりやすいと思おもわないかい?
たしかに!
このメインループっていうコメントはなんだ?たしかにループのとこに書かいてるけどよ。
プログラムの一番いちばん中心ちゅうしんになる処理しょりを書かいたループの事ことをメインループと呼よぶんだ。今いまのところはあまり意味いみがないけど、これからここがどんどん変かわっていくよ。
じゃあ実行じっこうしてみようか!
本当ほんとうに前回ぜんかいのプログラムと12章しょうのプログラムが合体がったいした動うごきだな。そしてここからが今回こんかいの本番ほんばんというわけだ!
そう!じゃあ行いくよ。ねえ、「弾たまを撃うつ」プログラムって、君きみたちならどう書かく?
ちょっと待まてよ・・・まずタマをうつボタンが押おされたかどうかは絶対ぜったいに必要ひつようだな。
あとはカンジンのタマだ。プレイヤーのタマだから、ボタンが押おされたらタマスプライトを作つくって、あとはそいつを上うえに動うごかせばいいんじゃねえか?
いい調子ちょうしだね。これで完成率かんせいりつ50%パーセントってところかな。折おり返かえし地点ちてんだね。
そんなわけねえだろう。オレのチミツな計算けいさんじゃこれでバッチリのはずだ。見みてろよ。

 '---てき----------------------------
 'てきのかず
 ECOUNT=10
 'てきのざひょう
 DIM EX[ECOUNT]
 DIM EY[ECOUNT]
 'てきのそくど
 DIM EVX[ECOUNT]
 DIM EVY[ECOUNT]
 'てきのいどうじかん
 DIM ETIME[ECOUNT]
 'てきのスプライトID
 DIM EID[ECOUNT]
 
 'てきざひょうしょきか
 FOR I=0 TO ECOUNT-1
  EX[I]=200
  EY[I]=60
 NEXT
 
 'てきのスプライトをつくる
 FOR I=0 TO ECOUNT-1
  EID[I]=100+I
  SPSET EID[I],1203
  SPOFS EID[I],EX[I],EY[I]
 NEXT
 
 '---プレイヤー-------------------------
 'プレイヤーのざひょう
 PX=200
 PY=200
 'プレイヤーのスプライトID
 PID=10
 'プレイヤーのえのばんごう
 PPIC=3323
 'たまのスプライトID
 TID=20
 'たまのえのばんごう
 TPIC=3386
 
 'プレイヤーのスプライトをつくる
 SPSET PID,PPIC
 SPOFS PID,PX,PY
 
 '---メインループ-----------------------
 LOOP
  '---プレイヤーしょり----------------------
  'さゆうにうごかす
  IF BUTTON(1,#B_LLEFT)==1 THEN PX=PX-1
  IF BUTTON(1,#B_LRIGHT)==1 THEN PX=PX+1
  IF PX<0 THEN PX=0
  IF PX>400-16 THEN PX=400-16
  SPOFS PID,PX,PY
  'たまをうつ
  IF BUTTON(1,#B_RRIGHT)==1 THEN
   'たまのざひょうはプレイヤーとおなじ!
   TX=PX:TY=PY
   SPSET TID,TPIC
   SPOFS TID,TX,TY
  ENDIF
  'たまをうえにうごかす
  TY=TY-5
  SPOFS TID,TX,TY
 
  '---てきしょり-------------------------
  FOR I=0 TO ECOUNT-1
   IF ETIME[I]==0 THEN
    'うごくほうこうをきめる
    EVX[I]=RND(3)-1
    EVY[I]=RND(3)-1
    ETIME[I]=20
   ENDIF
 
   'てきをうごかす
   ETIME[I]=ETIME[I]-1
   EX[I]=EX[I]+EVX[I]
   EY[I]=EY[I]+EVY[I]
   SPOFS EID[I],EX[I],EY[I]
  NEXT
  VSYNC
 ENDLOOP

おお?なんか色いろが付ついた行ぎょうがあるぜ。
プログラムが長ながくなってきたからね、ワンパク君くんがいじった行ぎょうだけ色いろを変かえたよ。
いらねえ世話せわを焼やきやがって、見みやすいにもほどがあるぜ。
とにかく、われながらカンペキな出来できじゃねえか?タマっぽい絵えもさがしたし、タマだからスピードも速はやくしてやったぜ。よし、実行じっこう!








・・・あれ
エラーだ。スプライトが作つくられていないって。
そんなバカな、プログラムはカンペキだ!これはプチコン4のバグにまちがいねえぞ。スマイルブームめ、オレサマの仏ほとけの顔かおは1回かいかぎりだぜ、速攻そっこうカクサンして炎上えんじょう・・・
ワンパク君くん、これはプチコン4のバグじゃないと思おもうなあ。こういう時ときはまず自分じぶんの書かいたコードを確認かくにんしたほうがいいよ。
そうだなあ、いきなりプログラムを書かいちゃう前まえに、書かきたい処理しょりを普通ふつうの日本語にほんごで書かいてみないかい?ワンパク君くんはどういう事ことをやろうとしたのかな?
おれのカンペキな処理しょりを日本語にほんごで書かけって事ことか?二度にど手間でまもいいとこじゃねえか!
ただの二度にど手間でまだったら必要ひつようないけど、この二度にど手間でまにはいいところがあるのさ。ここにノートがあるから、ちょっと書かいてみてよ!
よし

・はっしゃボタンがおされたら、タマのスプライトを作ってプレイヤーの場所にだす
・タマを上にすばやくうごかす

こういう事ことだ!
確たしかに普通ふつうの日本語にほんごで書かいてるとやりたい事ことがすぐにわかるね!
ワンパク君くん、タマを上うえにすばやく動うごかすって書かいてるけど、これはタマがないときはやっちゃダメなんじゃないかな?
う、そうか・・・タマをうっていないときは、タマはないのか。グギギ。
じゃあ、こんなかんじ?

・はっしゃボタンがおされたら、タマのスプライトを作ってプレイヤーの場所にだす
・タマがあったら、タマを上にすばやくうごかす

んん?なんかひっかかるな。そういやタマっていつ消きえるんだ?
そうか、作つくった弾たまはいつか消けさなきゃないんだね。
画面がめんから飛とび出でたら消きえるとかでいいんじゃねえか?
画面がめんから飛とび出でるかあ・・・上うえに動うごかしてるって事ことは、Y座標ざひょうがどんどん小ちいさくなるんだよね?0より小ちいさくなったら画面がめんの外そとに行いっちゃったって事ことになるのかな?
後あとはタマを発射はっしゃする時ときも、もうタマ発射はっしゃしてたらうっちゃダメなんじゃねえか?とするとだ。

・タマがない時にかぎって、はっしゃボタンがおされたら、タマのスプライトを作ってプレイヤーの場所にだす
・タマがあったら、タマを上にすばやくうごかして、Yが0よりちいさくなったらタマをけす

やれやれ、たかがタマをうつだけでこれかよ。こんなに細こまかいこと考かんがえるなんてめったにないぜ・・・
いいね!これをプログラムにしてみようよ。
タマがあったらって、どうやったらわかるんだ?
弾たまのスプライトがある時ときは1、ないときは0っていう変数へんすうを作つくればいいんじゃないかな。
それだ!よし、プログラムにするぞ・・・
ん?んんん?なにぃ!?
どうしたのワンパク君くん?
タマがない時ときに限かぎって、発射はっしゃボタンがおされたらって、どう書かきゃあいいんだ?
ふたつの事ことをまとめてチェックするのは初はじめてだね。たくさんの事ことをまとめてチェックするのは実じつは難易度なんいどが高たかいんだけど、この場合ばあいに限かぎっては簡単かんたんなんだ。IFイフ文ぶんは何個なんこでも連続れんぞくして書かけるんだよ。こんな感かんじ!

  'まずたまがないことをチェック
  IF TAMA==0 THEN
   'つぎにボタンをチェック
   IF BUTTON(1,#B_RRIGHT)==1 THEN
    'たまはっしゃ!
   ENDIF
  ENDIF

こういうふうに、THENゼンの中なかに違ちがうIFイフ文ぶんを書かいてもかまわないんだよ。
たまはっしゃってところにまた違ちがうIFイフ文ぶんを書かいても、さらにその中なかにまたIFイフ文ぶんを書かいても・・・何個書なんこかいてもOKだよ。そうするとどんどん条件じょうけんを絞しぼっていく事ことができるのさ!
なるほど、わかったようなわからねえような・・・IFイフの中なかにIFイフがあって、さらにその中なかにIFイフがあって・・・
おい、なんかそういうのなかったか?
あれかな、人形にんぎょうの中なかに人形にんぎょうがあってその中なかにも人形にんぎょうがあるやつ!ロシアのマトリョーシカ人形にんぎょうだったっけ?
それそれ!
そこに気きがつくとはすごいね!実じつはプログラムっていうのは、マトリョーシカ人形にんぎょうなんだ。
ハァ?またわけのわからねえ事ことを言いいやがって。プログラムが、マ、マリョリョ・・・
いいかい?今いままで出でてきたIFイフ、LOOPループ、FORフォー、他ほかのループも同おなじなんだけど、これらは全部ぜんぶマトリョーシカ人形にんぎょうの1個こだと思おもえば良いいよ。
IFイフやループは、その中なかにまた違ちがうIFイフやループを入いれられるんだ。そしてその中なかにはまた違ちがうIFイフやループ・・・って考かんがえるとまさにマトリョーシカ人形にんぎょうだと思おもわないかい?このマトリョーシカみたいなプログラムの構造こうぞうを入いれ子こ構造こうぞうって言いうんだ。








実じつは今いままでも敵てきのプログラムでこの入いれ子こ構造こうぞうが出でてきてるよ。LOOPループの中なかにFORフォー、その中なかにIFイフってなってるのがわかるかな?こうやって入いれ子この中なかにさらに違ちがう処理しょりを入いれ子こにして入いれて行いくのが、プログラムさ!そしてその入いれ子この一番いちばん外側そとがわが、メインループになるんだよ。
・・・リョリョリョ・・・うう、やっと止とまったぜ。つまりはだ!
プログラムが長ながくなっていくと、どんどんマリョリョ・・・人形にんぎょうの数かずが増ふえるって事ことだな!
そういうこと!入いれ子こ構造こうぞうはプログラミングで一番重要いちばんじゅうような考かんがえ方かたといって過言かごんじゃないけど、重要じゅうようさをひとことで説明せつめいするのは難むずかしいんだ。ひとまずは、IFイフやループの中なかには好すきなだけIFイフやループを入いれられるって事ことを覚おぼえおけばいいよ!
さあ、弾たまを打うつコードだけど、IFイフの中なかにIFイフを書かける事ことがわかったから、もう書かけるんじゃないかな?
もうひとつあるぜ、タマのスプライトってどうやったら消きえるんだ?
おっとそうだった。SPCLRエスピークリアっていう命令めいれいを使つかうんだ。SPCLRエスピークリア スプライト番号ばんごうで、スプライトを消けす事ことができるよ!
よし、書かいてみるぜ・・・

 '---てき----------------------------
 'てきのかず
 ECOUNT=10
 'てきのざひょう
 DIM EX[ECOUNT]
 DIM EY[ECOUNT]
 'てきのそくど
 DIM EVX[ECOUNT]
 DIM EVY[ECOUNT]
 'てきのいどうじかん
 DIM ETIME[ECOUNT]
 'てきのスプライトID
 DIM EID[ECOUNT]
 
 'てきざひょうしょきか
 FOR I=0 TO ECOUNT-1
  EX[I]=200
  EY[I]=60
 NEXT
 
 'てきのスプライトをつくる
 FOR I=0 TO ECOUNT-1
  EID[I]=100+I
  SPSET EID[I],1203
  SPOFS EID[I],EX[I],EY[I]
 NEXT
 
 '---プレイヤー-------------------------
 'プレイヤーのざひょう
 PX=200
 PY=200
 'プレイヤーのスプライトID
 PID=10
 'プレイヤーのえのばんごう
 PPIC=3323
 'たまのスプライトID
 TID=20
 'たまのえのばんごう
 TPIC=3386
 'たまがある?
 TAMA=0
 
 'プレイヤーのスプライトをつくる
 SPSET PID,PPIC
 SPOFS PID,PX,PY
 
 '---メインループ-----------------------
 LOOP
  '---プレイヤーしょり----------------------
  'さゆうにうごかす
  IF BUTTON(1,#B_LLEFT)==1 THEN PX=PX-1
  IF BUTTON(1,#B_LRIGHT)==1 THEN PX=PX+1
  IF PX<0 THEN PX=0
  IF PX>400-16 THEN PX=400-16
  SPOFS PID,PX,PY
  'まずたまがないことをチェック
  IF TAMA==0 THEN
   'つぎにボタンをチェック
   IF BUTTON(1,#B_RRIGHT)==1 THEN
    'たまはっしゃ!
    'たまのざひょうはプレイヤーとおなじ!
    TX=PX:TY=PY
    SPSET TID,TPIC
    SPOFS TID,TX,TY
    TAMA=1
   ENDIF
  ENDIF
  'たまがあるときだけ!
  IF TAMA==1 THEN
   'たまをうえにうごかす
   TY=TY-5
   SPOFS TID,TX,TY
   'たまががめんからとびでたか?
   IF TY<0 THEN
    TAMA=0
    SPCLR TID
   ENDIF
  ENDIF
 
  '---てきしょり-------------------------
  FOR I=0 TO ECOUNT-1
   IF ETIME[I]==0 THEN
    'うごくほうこうをきめる
    EVX[I]=RND(3)-1
    EVY[I]=RND(3)-1
    ETIME[I]=20
   ENDIF
 
   'てきをうごかす
   ETIME[I]=ETIME[I]-1
   EX[I]=EX[I]+EVX[I]
   EY[I]=EY[I]+EVY[I]
   SPOFS EID[I],EX[I],EY[I]
  NEXT
  VSYNC
 ENDLOOP

これでどうだ!


やった!
おめでとう!弾たまを撃うてたね!
よーし、じゃあ敵てきを倒たおしてやる!・・・あれ?倒たおれない?
それが次つぎに解決かいけつしなきゃない問題もんだいだよ。敵てきを倒たおすためにはどうすればいいか。これは次回考じかいかんがえよう!
うおお、いったいどれだけプログラムを長ながくすりゃいいんだ!
ざっとこれの3倍書ばいかかないと完成かんせいせんじゃろうな!
ナニー!いきなりあらわれてサラッと恐おそろしい事ことを言いいやがったな、3倍ばいだと!
よいかの?コンピューターというのは、バカ正直しょうじきに命令めいれいされた事ことしかせんのじゃよ
「いい感かんじに弾たま撃うってよ」とか「テキトーに敵てき出だして」とか言いってもダメなんじゃ
それはまさに今回こんかいで経験けいけんしたじゃろう?
それこそ手取てとり足取あしとり、ああしたらこう、こうしたらああと、動うごいて欲ほしいと思おもった事ことはどんな細こまかい事ことでも全部ぜんぶやりかたをプログラムしてやらんとならんのじゃ。このゲームはまだ弾たまにも当あたらないし、敵てきも攻撃こうげきしてこないし自分じぶんも死しなない、スコアもない、ないないづくしなんじゃ!それで3倍ばいと言いったのじゃよ。
とはいえあせる事ことはないぞ。あせらずひとつひとつ機能きのうを組くみ込こんでいけば、必かならず完成かんせいする!このワシが保証ほしょうするわい。
そして今回こんかいやったように、プログラムに機能きのうを追加ついかする時ときはいきなりプログラムを書かかずに一度いちどやりたい事ことを文章ぶんしょうで書かいてみる事ことをおすすめするぞい。こういう、プログラムを書かく前まえにプログラムに書かきたい内容ないようをまとめた物ものを仕様しようと言いうんじゃ。
仕様しようを書かかずにチャチャッとプログラムを書かいてしまう達人たつじんプログラマもいるが、脳味噌のうみそがコンピューターになっているような達人たつじんの真似まねを初心者しょしんしゃがしてはいかん!自動車じどうしゃの免許めんきょも持もっていないのにいきなりレーシングカーに乗のるようなもんじゃ。
仕様しようの書かきかたというのも、プロの世界せかいではいろいろな書かきかたがあるんじゃが、まずは今回こんかいのように紙かみのノートに普通ふつうの日本語にほんごでチャチャッと書かいてみるとええ!
二度手間にどでまに思おもえるかもしれんが、間違まちがったプログラムを作つくってバグで悩なやむ時間じかんの事ことを考かんがえたら、先さきに普通ふつうの言葉ことばで書かいといてアラを探さがすほうが速はやいんじゃ!
書かいた文章ぶんしょうのなかでおかしな所ところやあいまいな所ところがあったら、そこをきちんと考かんがえてやらんといかんという事ことじゃよ。
紙かみのノートに書かいた仕様しようが予習よしゅうで、プログラムが授業じゅぎょうみたいなもんなのかな?
さよう!さしずめデバッグは復習ふくしゅうじゃろうな。
おいおまえら!数学すうがくの話はなしといいなんでもかんでも勉強べんきょうに結むすびつけやがって!
そういやワンパク君くん、この前まえ数学すうがくの授業じゅぎょうで先生せんせいにほめられて照てれてたよね、勉強べんきょうができるようになるのもまんざらじゃないんじゃない?
ハハハ、ワンパク君くんもどんどんお利口りこうさんになってもらわないとね!
ギギギ・・・



今回のポイント

入れ子構造

IFイフ文ぶんのTHENゼン~ENDIFエンドイフ、LOOPループ~ENDLOOPエンドループ、FORフォー~NEXTネクストのそれぞれの中なかには、通常つうじょうの命令めいれいだけでなく、違ちがうIFイフ,LOOPループ,FORフォー文ぶんなどをいくつでも重かさねて書かく事ことができます。このような構造こうぞうの事ことを入いれ子こ構造こうぞうと呼よびます。長ながいプログラムを書かく時ときは大雑把おおざっぱな場合分ばあいわけやループの中なかに細こまかい条件じょうけん分わけやループ、その中なかにさらに細こまかい条件じょうけん分わけやループ・・・という入いれ子こ構造こうぞうを意識いしきして書かくと、わかりやすいプログラムになって後々のちのちのデバッグや改造かいぞうも楽らくになります。

仕様を書く

プログラムを書かく場合ばあい、いきなりプログラミング言語げんごでプログラムを書かく前まえに、プログラムで書かきたい内容ないようを普通ふつうの日本語にほんごで書かいてみましょう。普通ふつうの日本語にほんごで書かいた時点じてんであいまいな部分ぶぶんや明あきらかにおかしな部分ぶぶんがあれば、プログラム化かした時ときに絶対ぜったいに困こまる部分ぶぶんです。そういった部分ぶぶんをプログラム化かする前まえに整理せいりしておくと、プログラムも書かきやすいですし、書かいたプログラムも綺麗きれいに書かく事ことができます。

SPCLR

SPSETエスピーセット命令めいれいで作成さくせいしたスプライトを消けすにはSPCLRエスピークリア命令めいれいを使つかいます。SPCLRエスピークリア スプライト番号ばんごうで指定していした番号ばんごうのスプライトが消きえます。作成さくせいしていないスプライトを消けそうとするとエラーになるので注意ちゅういしてください。

サンプルプログラムの{公開:こうかい}キー

4NKEK43ES



さてダミーがしゃべりださんうちに今回こんかいのオマケ問題もんだいじゃ!
その1:キミならプレイヤーや弾たまの絵えはなんにするかのう?SMILETOOLスマイルツールで弾たまにしたい絵えを探さがし出だして、絵えをそれで差さし替かえてみるのじゃ!プログラムで3323と書かいてあるところがプレイヤー、3386と書かいてあるところが弾たまじゃ。さがして書かき替かえればええぞ!
その2:今いまの弾たまは撃うったらまっすぐ上うえに飛とんで行いくだけじゃが、プレイヤーが左ひだりに動うごいたら左ひだり、右みぎに動うごいたら右みぎというふうにして飛とび先さきを誘導ゆうどうできるようにするにはどうすればいいじゃろうな?ここはノーヒントでがんばってみてくれい!
その3:上級じょうきゅう問題もんだいじゃ。最後さいごのプログラムでやっている事ことを紙かみのノートに日本語にほんごで書かいてみるのじゃ!つまりプログラムから逆ぎゃくに仕様しようを調しらべるという事ことじゃな。これは解析かいせきと言いって、これがラクにできるようになると他人たにんのプログラムを調しらべるのにとても役やくに立たつぞい
ワレを呼よんダカ、ワレー?
ギャー、退散たいさん退散たいさん・・・