プチコンまとめWiki (初代/mkII)

Toukou/Amazing marble race のバックアップの現在との差分(No.2)

パンくずリスト


  • 追加された行はこの色です。
  • 削除された行はこの色です。
#title(投稿プログラム : Amazing marble race)
#contents
// ↑この2行は削除しないでください。
// ←このように「//」で始まる行はコメントです。ページ本文には反映されません。
//------------------------------------------------------------------------------
// ・投稿年月日は、このページを投稿しようとしている今日の日付を半角数字で入力してください。
//   この日付は、投稿プログラムを自動的に年月日順に並べる際に使用されます。
// ↓↓↓
2015年11月19日投稿
// ↑↑↑
//------------------------------------------------------------------------------
// ・投稿者名は、将来的に投稿プログラム一覧に表示するために使用します。
// ・「名無しさん」のままにしておくと、匿名の方からの投稿として扱われます。
// ↓↓↓
/ 投稿者 : haru66kero
// ↑↑↑
//------------------------------------------------------------------------------
// ・適当にタグをつけることができます。半角のコンマ区切りで複数つけられます。
//   タグをつけると、同じタグが付いたページを検索することができます。
// ★次に該当するプログラムは、特定のタグを設定するようご協力お願いします。
//   これらを設定すると、将来的に投稿プログラム一覧に目立つマークが付くようになる予定です。
// ・短いプログラム → 「1行プログラム」「数行プログラム」「1画面プログラム」タグのいずれか1つ
// ・初代プチコンでも動作するプログラム → 「初代対応」タグ
// ・mkII 以降専用のプログラム → 「mkII専用」タグ
// ・QRコードを掲載している → 「QRコード」タグ
// ・該当するなら「ゲーム」「実用ツール」「音楽」タグのいずれか
// ↓↓↓
/ &tag(投稿プログラム,鑑賞プログラム,初代対応,プログラムリスト);
/ &tag(投稿プログラム,鑑賞プログラム,初代対応);
// ↑↑↑

//------------------------------------------------------------------------------
// ここに概要とか書きます。
// ・** や *** で始まる行は子見出しとなります。* の数で深さが決まります。
// ・[#英数字] はページ内リンクに使用されるアンカーですが、
//   書かなかったり、消したりしてもかまいません。ない場合はランダムな文字列が自動付与されます。

* こんにちは [#hello]
こんにちは!haru66keroのプログラム2作目です!
ぜひ楽しんでいってください!

* 概要 [#Summary]
ボールの競争を見て楽しむプログラムです。
どのボールが先にゴールするかな?

** ルール [#Komidashi1]
最初に何かボタンを押します。
メニューが出てくるので、どれか好きなボールを決めてください。
Aボタンを押したらスタートです。(Bボタンで終了)
上からボールが出てくるので、自分で決めたボールを応援しましょう。
下の矢印に入ったらゴールです。
この時、下に表示された順位以内にゴールしていれば、次のステージに進めます。
一位になれるよう願いましょう!
Aボタンでスピードアップです。

** ヤクモノ [#Komidashi2]
+ 壁 "Wall": 壁です。ボールの足場にもなります。ボールがぶつかると跳ね返ります。
+ バンパー "Bumper" ボールが乗ると、左右に弾き飛ばされます。
+ エレベーター "Elevator" 乗ると、ボールが上昇します。
+ ステップ "Step" エレベーターの終わりです。
+ ハッチ "Hatch" ランダムに下へ落とされます。

/////////////////////////////////

* スクリーンショット・動画 [#ScreenShots]
すみません、ありません。

/////////////////////////////////

* QR コード [#QR]
用意してません。プログラムリストを入力すれば使えます。すみません。
// 複数の QR コードを貼り付けるために表組みを用いる場合、&ref(); を使用します。
// (#ref() を表に埋め込んでしまうと、古い Internet Explorer でうまく表示されません)

|>|~PRG:A_M_R|
|~1/4|~2/4|
|&ref(qr0.png,,200%);|&ref(qr1.png,,200%);|
|~3/4|~4/4|
|&ref(qr2.png,,200%);|&ref(qr3.png,,200%);|


/////////////////////////////////

* プログラムリスト [#List]
#basic{{
'セイサクカイシ 2015/1/31:11:18
'┌───────────────────┐
'│Amazing marble race│
'└───────────────────┘
@TITLE
CLS:COLOR 10
LOCATE 6,11:PRINT"Amazing marble race"
LOCATE 8,15:PRINT"Push any button"
@TILOOP
VSYNC 10
IF BUTTON()==0 THEN @TILOOP
CLS:COLOR 0
LOCATE 10,2:PRINT"Member"
LOCATE 0,4:PRINT"Black ○"
COLOR  2:LOCATE 0, 5:PRINT"Light gray ●
COLOR  3:LOCATE 0, 6:PRINT"Yellow ●
COLOR  4:LOCATE 0, 7:PRINT"Yellow green ●
COLOR  5:LOCATE 0, 8:PRINT"Green ●
COLOR  6:LOCATE 0, 9:PRINT"Beige ●
COLOR  7:LOCATE 0,10:PRINT"Orange ●
COLOR  8:LOCATE 0,11:PRINT"Brown ●
COLOR  9:LOCATE 20, 5:PRINT"Light blue ●
COLOR 10:LOCATE 20, 6:PRINT"Purple ●
COLOR 11:LOCATE 20, 7:PRINT"Blue ●
COLOR 12:LOCATE 20, 8:PRINT"Pink ●
COLOR 13:LOCATE 20, 9:PRINT"Red ●
COLOR 14:LOCATE 20,10:PRINT"Gray ●
COLOR 15:LOCATE 20,11:PRINT"White ●
COLOR 0:LOCATE 2,13:PRINT"┿ Wall ▲ Bumper ↓ Exit
LOCATE 2,15:PRINT"↑ Elevator ж Step Ё Hatch
LOCATE 2,20:PRINT"Good luck!"
LOCATE 2,22:PRINT"А START      Ф EXIT
@TILOOP2
VSYNC 10
IF BUTTON()==64 THEN @GEND
IF BUTTON()!=16 THEN @TILOOP2
@A1
DATA ┿ ┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿
DATA ┿            ┿┿┿┿
DATA ┿┿┿┿┿┿┿┿┿┿┿┿ ┿┿┿┿
DATA ┿┿┿┿┿┿┿┿┿┿┿   ┿┿┿
DATA ┿           A   ┿
DATA ┿ ┿┿┿┿┿┿┿┿┿┿┿┿┿ ┿
DATA ┿               ┿
DATA ┿┿┿┿┿┿┿┿┿┿┿┿ ┿┿┿┿
DATA ┿┿┿┿┿┿┿┿┿┿┿   ┿┿┿
DATA ┿           A   ┿
DATA ┿ ┿┿┿┿┿┿┿┿┿┿┿┿┿ ┿
DATA ┿               ┿
DATA ┿┿┿┿┿┿┿┿┿┿┿┿ ┿┿┿┿
DATA ┿┿┿┿┿┿┿┿┿┿┿   ┿┿┿
DATA ┿           A   ┿
DATA ┿ ┿┿┿┿┿┿┿┿┿┿┿┿┿ ┿
DATA ┿               ┿
DATA ┿┿┿┿┿┿┿┿┿┿┿┿ ┿┿┿┿
DATA ┿┿┿┿┿┿┿┿┿┿   ┿
DATA ┿           A ┿
DATA ┿ ┿┿┿┿┿┿┿┿┿┿┿ ┿
DATA ┿             ┿
DATA ┿┿┿┿┿┿┿┿┿┿┿┿┿↓┿ Top 10
DATA 3
DATA 15
DATA 10
@A2
DATA ┿┿┿┿┿┿┿┿┿┿┿┿┿ ┿┿┿
DATA ┿           ┿   ┿
DATA ┿ж┿┿┿┿┿┿┿┿┿ ┿┿┿ ┿
DATA ┿ ┿┿┿┿┿┿        ┿
DATA ┿ ┿┿┿┿┿┿ ┿┿┿┿┿┿ж┿
DATA ┿ ┿┿┿┿┿   ┿┿┿┿┿ ┿
DATA ┿ ┿┿┿┿┿ ▲ ┿┿┿┿┿ ┿
DATA ┿ ┿┿┿┿     ┿┿┿┿ ┿
DATA ┿ ┿┿┿┿ ▲ ▲ ┿┿┿┿ ┿
DATA ┿ ┿┿┿       ┿┿┿ ┿
DATA ┿ ┿┿┿ ▲ ▲ ▲ ┿┿┿ ┿
DATA ┿ ┿┿         ┿┿ ┿
DATA ┿ ┿┿ ▲ ▲ ▲ ▲ ┿┿ ┿
DATA ┿ ┿           ┿ ┿
DATA ┿ ┿ ▲ ▲ ▲ ▲ ▲ ┿ ┿
DATA ┿ ┿ ┿ ┿   ┿ ┿ ┿ ┿
DATA ┿ ┿ ┿ ┿┿ ┿┿ ┿ ┿ ┿
DATA ┿ ┿ ┿ ┿┿ ┿┿ ┿ ┿ ┿
DATA ┿ ┿ ┿ ┿┿ ┿┿ ┿ ┿ ┿
DATA ┿ ┿ ┿ ┿┿ ┿┿ ┿ ┿ ┿
DATA ┿ ┿ ┿ ┿┿ ┿┿ ┿ ┿ ┿
DATA ┿     ┿┿ ┿┿     ┿
DATA ┿↑┿┿┿┿┿┿↓┿┿┿┿┿┿↑┿ Top 6
DATA 15
DATA 10
DATA 6
@A3
DATA ┿┿┿┿┿┿┿┿ ┿┿┿┿┿┿┿┿
DATA ┿      ┿        ┿
DATA ┿ ┿┿Ё┿ ┿Ё┿┿┿┿┿┿ ┿
DATA ┿  ┿ ┿ ┿        ┿
DATA ┿┿ ┿ ┿ ┿ ┿┿┿┿┿┿┿┿
DATA ┿  ┿ ┿ ┿        ┿
DATA ┿ ┿┿ ┿ ┿Ё┿┿┿┿┿┿ ┿
DATA ┿  ┿ ┿ ┿        ┿
DATA ┿┿ ┿ ┿ ┿ ┿┿┿┿┿┿┿┿
DATA ┿  ┿ ┿ ┿        ┿
DATA ┿ ┿┿ ┿ ┿Ё┿┿┿┿┿┿ ┿
DATA ┿    ┿ ┿        ┿
DATA ┿┿┿┿ ┿ ┿ ┿┿┿┿┿┿┿┿
DATA ┿    ┿ ┿        ┿
DATA ┿ ┿┿Ё┿ ┿Ё┿┿┿┿┿┿ ┿
DATA ┿  ┿ ┿ ┿        ┿
DATA ┿┿ ┿ ┿ ┿ ┿┿┿┿┿┿┿┿
DATA ┿  ┿ ┿ ┿        ┿
DATA ┿ ┿┿ ┿ ┿Ё┿┿┿┿┿┿ ┿
DATA ┿  ┿ ┿   ┿      ┿
DATA ┿┿ ┿ ┿ ┿┿┿ ┿┿┿┿┿┿
DATA ┿┿   ┿     ┿┿┿┿┿┿
DATA ┿┿┿┿↓┿↑┿┿┿┿┿┿┿┿┿┿ Top 3
DATA 10
DATA 6
DATA 3

@A4
DATA ┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿
DATA ┿               ┿
DATA ┿   ▲ ┿┿┿┿┿┿┿┿┿ж┿
DATA ┿             ┿ ┿
DATA ┿  ▲ ▲  ж ж ж ┿ ┿
DATA ┿             ┿ ┿
DATA ┿ ▲ ▲ ▲       ┿ ┿
DATA ┿ ┿ ┿ ┿       ┿ ┿
DATA ┿ ┿ ┿ ┿       ┿ ┿
DATA ┿ ┿ ┿ ┿┿↑┿↑┿↑ ┿ ┿
DATA ┿ ┿ ┿         ┿ ┿
DATA ┿ ┿ ┿Ё┿┿┿┿┿┿┿ ┿ ┿
DATA ┿ ┿ ┿         ┿ ┿
DATA ┿ ┿   ┿┿┿┿┿┿┿┿┿ ┿
DATA ┿ ┿┿┿       ┿   ┿
DATA ┿  ┿┿Ё┿┿┿┿┿ ┿ж┿ ┿
DATA ┿ж    ┿     ┿ ┿↑┿
DATA ┿  ┿┿┿┿ ┿┿┿┿┿ ┿┿┿
DATA ┿ Й             ┿
DATA ┿ ┿┿┿┿┿ ┿┿┿ ┿ ┿ ┿←Bronze
DATA ┿           ┿ ┿ ┿←Silver
DATA ┿↑┿┿┿┿┿┿┿┿┿┿┿↑┿ ┿←Gold
DATA ┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿┿

DATA 6
DATA 3
DATA 0

CLS:CLEAR:COLOR 0
DIM PX(15),PY(15),OV(15),PM(15),PYM(15),PG(15)
DIM RANK(16)
RESTORE@A1
@AAA
CLS:COLOR 0
FOR I=0 TO 22 
READ A$
LOCATE 2,I:PRINT A$
NEXT
READ SPX
READ ME
READ CL
FOR I=0 TO 14
PX(I)=SPX:PM(I)=1:PG(I)=0:PY(I)=0
NEXT
@LOOP
J=J+1:IF J==15 THEN J=0
COLOR J:IF J==1 THEN COLOR 0
IF BUTTON()!=16 THEN VSYNC 1
LOCATE 20,1:PRINT"А:Speed up";
IF CHKCHR(17,20)==225 AND PEND==3 THEN @FINISH
IF PG(J)==1 OR OV(J)==1 THEN @LOOP
GOSUB@BALL
LOCATE PX(J),PY(J):PRINT BALL$;
W=CHKCHR(PX(J),PY(J)-1)
S=CHKCHR(PX(J),PY(J)+1)
A=CHKCHR(PX(J)-1,PY(J))
D=CHKCHR(PX(J)+1,PY(J))
IF PYM(J)==1 THEN @JUMP
IF S==31 THEN @GOAL
IF S==11 THEN @BO
IF S==226 THEN @RS
IF S==32 THEN @S
IF S==7 AND RND(5) THEN @HD
IF S==30 THEN @PYM
IF D==151 THEN PM(J)=-1:BEEP 9
IF A==151 THEN PM(J)=1:BEEP 9
IF D==32 OR A==32 THEN @DA
GOTO@LOOP
@BALL
IF J==1 THEN BALL$="○"
IF J==1 THEN BALL$="●"
RETURN
@S
LOCATE PX(J),PY(J):PRINT" ";
PY(J)=PY(J)+1
GOSUB@BALL
LOCATE PX(J),PY(J):PRINT BALL$;
GOTO@LOOP
@RS
BEEP 12,0,48
PM(J)=RND(3)-1
IF PM(J)==0 THEN @RS
@DA
LOCATE PX(J),PY(J):PRINT" ";
PX(J)=PX(J)+PM(J)
GOSUB@BALL
LOCATE PX(J),PY(J):PRINT BALL$;
GOTO@LOOP
@HD
BEEP 6,-8192
LOCATE PX(J),PY(J):PRINT" "; 
PY(J)=PY(J)+2
GOTO@LOOP
@GOAL
LOCATE PX(J),PY(J):PRINT" ";
BEEP 7
PG(J)=1
GOAL=GOAL+1
IF CL<GOAL THEN OV(J)=1:RANK(GOAL)=J
LOCATE 20,2+GOAL
GOSUB@BALL
IF GOAL==1 THEN PRINT GOAL"st "BALL$
IF GOAL==2 THEN PRINT GOAL"nd "BALL$
IF GOAL==3 THEN PRINT GOAL"rd "BALL$
IF GOAL>=4 THEN PRINT GOAL"th "BALL$
IF GOAL==ME THEN @NEXTLV
GOTO@LOOP
@PYM
PYM(J)=1:BEEP 8,-8192
GOTO@LOOP
@JUMP
IF W==248 THEN @JUMPEND
AW=CHKCHR(PX(J),PY(J)+1)
IF AW!=32 AND (AW==225 OR AW==229)==0 THEN PY(J)=PY(J)-2
IF AW==32 OR AW==225 OR AW==229 THEN PY(J)=PY(J)-1
IF CHKCHR(PX(J),PY(J)+2)==225 THEN LOCATE PX(J),PY(J)+2:?" ";
IF CHKCHR(PX(J),PY(J)+2)==229 THEN LOCATE PX(J),PY(J)+2:?" ";
GOTO@LOOP
@JUMPEND
PYM(J)=0
LOCATE PX(J),PY(J):PRINT" ";
LOCATE PX(J),PY(J)+1:PRINT" ";
PY(J)=PY(J)-2
GOTO@LOOP
@NEXTLV
VSYNC 100
STAGE=STAGE+1
IF STAGE==1 THEN RESTORE@A2
IF STAGE==2 THEN RESTORE@A3
IF STAGE==3 THEN RESTORE@A4
GOAL=0
GOTO@AAA
@BO
BEEP 45
R=RND(3)*2
LOCATE PX(J),PY(J):PRINT" ";
PX(J)=PX(J)+1:PY(J)=PY(J)+1
FOR I=0 TO 7+R
LOCATE PX(J),PY(J):PRINT" ";
PX(J)=PX(J)+1
GOSUB@BALL
LOCATE PX(J),PY(J):PRINT BALL$;
IF BUTTON()!=16 THEN VSYNC 30
IF BUTTON()==16 THEN VSYNC 5
NEXT
IF R==4 THEN @PEND
GOTO@LOOP
@PEND
BEEP 32:PG(J)=1
@PENDLOOP
LOCATE PX(J),PY(J):PRINT" ";
PY(J)=PY(J)+1
GOSUB@BALL
LOCATE PX(J),PY(J):PRINT BALL$;
IF CHKCHR(PX(J),PY(J)+1)==32 THEN @PENDLOOP
IF PEND==2 THEN RANK(3)=J
IF PEND==1 THEN RANK(2)=J
IF PEND==0 THEN RANK(1)=J
PEND=PEND+1
GOTO@LOOP
@FINISH
CLS:COLOR 0
FOR I=1 TO 15
J=RANK(I)
COLOR J
IF J==1 THEN COLOR 0
LOCATE 2,I
GOSUB@BALL
IF I==1 THEN PRINT I"st "BALL$;
IF I==2 THEN PRINT I"nd "BALL$;
IF I==3 THEN PRINT I"rd "BALL$;
IF I>=4 THEN PRINT I"th "BALL$;
IF J== 1 THEN PRINT"Black
IF J== 2 THEN PRINT"Light gray
IF J== 3 THEN PRINT"Yellow
IF J== 4 THEN PRINT"Yellow green
IF J== 5 THEN PRINT"Green
IF J== 6 THEN PRINT"Beige
IF J== 7 THEN PRINT"Orange
IF J== 8 THEN PRINT"Brown
IF J== 9 THEN PRINT"Light blue
IF J==10 THEN PRINT"Purple
IF J==11 THEN PRINT"Blue
IF J==12 THEN PRINT"Pink
IF J==13 THEN PRINT"Red
IF J==14 THEN PRINT"Gray
IF J== 0 THEN PRINT"White
NEXT
VSYNC 100
COLOR 0
LOCATE 10,20:PRINT"Push А button"
@FLOOP
IF BUTTON()!=16 THEN @FLOOP
@GEND
CLS:COLOR 10
LOCATE 10,8:PRINT"Continue?"
LOCATE 10,10:PRINT"А Yes Б No"
VSYNC 10
@ENDLOOP
B=BUTTON()
IF B==16 THEN @TITLE
IF B!=32 THEN @ENDLOOP
CLS:COLOR 0:PRINT"See you!"
END
'カンセイ 2015/6/4:13:30
}}

/////////////////////////////////
// コメントを募集したくないなら、ここから下は削除してください

* CHECKER FLAG (ひとことコメント) [#Comments]
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は[[掲示板>Board]]へ)
- ''かたけい'' : とても面白かったです!一部を勝手に手直ししたものでもよろしければQRコードを貼りましょうか? (&new{2015/11/22 (日) 03:05:59};)
- ''haru66kero'' : ありがとうございます!ぜひ貼ってください! (&new{2015/11/22 (日) 18:54:20};)
- ''かたけい'' : 貼っておきました〜 何か間違っているところなどあったら言ってください。 (&new{2015/11/22 (日) 20:39:18};)
- ''かずえもん'' : コード公開したらステージのデータがばれますよ・・・ (&new{2015/11/22 (日) 22:13:32};)
- ''名無しさん'' : ↑自分が操作するわけじゃないからいいのでは? (&new{2015/11/23 (月) 13:52:24};)

#comment

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.019 秒 | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30