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

Toukou/ゆうしゃアスキー外伝2 の変更点


#title(投稿プログラム : ゆうしゃアスキー外伝2)
#contents
2013年4月20日投稿
/ 投稿者 : 猫姫
/ &tag(投稿プログラム,ゲーム,mkII専用);
*更新 2013/05/01 [#d42f760a]
リトライ、ハイスコア実装バージョンQRを併設しました。~
注:~
こちらのバージョンは、プログラム内に終了ルーチンがありません。~
終了はSELECTボタンで強制終了させてください。~
なお、利用MEMリソース名は、NHPASCS2.MEMです。
* 内容 [#r61b0443]
ワンキーゲームです。~
今回は、ボタンひとつしかつかいません。~
前日、思い付いたネタを、いきおいでまとめてみました。~

*スクリーンショット [#ca7ac26e]
|&ref(s0.jpg);|&ref(s1.jpg);|
|&ref(s2.jpg);|
*遊び方 [#m1346557]
**使用ボタン選択 [#xbac8734]
最初に、ボタンを押すように求めてきます。~
ここで、選んだボタンが、ゲームボタンです。~
以後、そのボタンだけで遊びます。
**ゲーム画面 [#aea71493]
ボタン一押しで一歩、アスキーが前に進みます。~
モンスターが呪文を唱えている間に近づいてください。~
唱え終わったときに動くと、ゲームオーバーです。~
また、タイムが0になっても同様です。
*クリックコメント [#qd313681]
公開後しばらく、投票ができない状態でした。~
修正いたしましたので、感想をお願い致します。~
申し訳ありませんでした。~
~
感想
#vote(あたらしい[1],みたことあるよ[0],むずかしい[0],簡単すぎ[0],おもしろい[4],つまらない[1])
*プログラム [#tf1ff7f2]
#region(プログラムコード)
#basic{{
ACLS:CLEAR
PNLTYPE ”OFF”
DATA ”┌──────────────────┐         
DATA ”│ユウシャ アスキ− カ゛イテ゛ン  │         
DATA ”│   ┷シニ イタル シ゛ュモン┷ │         
DATA ”└──────────────────┘         
DATA ”PRESENTED BY NEKOHIME        
DATA ”       20TH/04/2013          
DATA ”┌────────┐                   
DATA ”│ソウサ ホウホウ│                   
DATA ”└────────┘                   
DATA ”サイショニ ケ゛−ム ニ ツカウ ホ゛タンヲ エラヒ゛マス
DATA ”アトハ タイミンク゛ヨク ホ゛タン レンタ゛       
DATA ”ホ゛タン 1カイ アスキ−カ゛ 1ホ゜ ウコ゛キマス   
DATA ”┌────┐                       
DATA ”│モクテキ│                       
DATA ”└────┘                       
DATA ”モンスタ− カ゛ シ゛ュモン ヲ トナエマス       
DATA ”フ゜レイヤ− ハ                     
DATA ”「シ゛ュモン ヲ トナエテイル アイタ゛」        
DATA ”タ゛ケ ウコ゛ケマス                   
DATA ”ウマク モンスタ− ニ セッキンシテ クタ゛サイ     
DATA ”カンタンニ セツメイ スルナラハ゛            
DATA ”「タ゛ルマサン カ゛ コロンタ゛」 テ゛ス        
FOR I=0 TO 21
IF I==0 THEN COLOR 7
IF I==4 THEN COLOR 0
IF I==6 THEN COLOR 9
IF I==9 THEN COLOR 0
IF I==12 THEN COLOR 9
IF I==15 THEN COLOR 0
IF I==17 THEN COLOR 13
IF I==18 THEN COLOR 0
READ I$
PNLSTR 0,I,I$
NEXT
DIM ENE$(3),TA$(10)
TA$(0)=”タ゛”
TA$(1)=”ル”
TA$(2)=”マ”
TA$(3)=”サ”
TA$(4)=”ン”
TA$(5)=”カ゛”
TA$(6)=”コ”
TA$(7)=”ロ”
TA$(8)=”ン”
TA$(9)=”タ゛”
BACK1$=”┌ =**┐ ”
BACK2$=”│ ◎ ◎│ ”
BACK3$=”└  )O┘ ”
FRON1$=”ミミミミミ┐ ”
FRON2$=”└◎ミミミ│ ”
FRON3$=”┌____┘ ”
LV=1:SCORE=0
LOCATE 2,12:PRINT ”ケ゛−ム ニ ツカウ ホ゛タン ヲ エランテ゛ クタ゛サイ”:BEEP 2
FOR I=0 TO 1:I=0
IF BUTTON()==0 THEN @SKBS
IF BUTTON()!=0 THEN BT=BUTTON():I=1
@SKBS
NEXT
BEEP 3
LOCATE 2,12:PRINT ” ”*29
WAIT 20
@START
FOR S=0 TO 1:S=0:IF BUTTON()==BT THEN S=1
LOCATE 8,10:PRINT ”┌───────────────┐
LOCATE 8,11:PRINT ”│ PUSH TO START │
LOCATE 8,12:PRINT ”└───────────────┘
NEXT
HELP=0
BGMPLAY ”O2C16E16G16<C2.”
FOR I=0 TO 4
LOCATE 5,10+I:PRINT ” ”*20
NEXT
WAIT 30
GOAL=100:START=GOAL:TASP=0:COMBO=0:TIM=300
CNT=0:TCNT=0
LORD$=”□■”*16
COLOR 8
LOCATE 0,22:PRINT LORD$;
COLOR 0
LOCATE 5,21:PRINT ”г”
T=0
FOR L=0 TO 1 :L=0:VSYNC 1
CNT=CNT+1:TCNT=TCNT+1
IF TCNT%20==0 THEN TIM=TIM−1
IF (CNT<=100)AND (T==0)THEN @SK2 
IF CNT<=TASP THEN @SK2
TALK TA$(T)
TASP=RND(50−LV*5)
IF T==0 THEN LOCATE 5,18:PRINT ” ”*20
LOCATE 5+2*T,18:PRINT TA$(T)
T=(T+1)*(T!=9):HELP=1
CNT=0
@SK2
IF (T==0) AND (HELP==1) THEN COMBO=0
IF BUTTON(2)!=BT THEN @SK1
    COMBO=COMBO+1
    SCORE=SCORE+10*COMBO
    GOAL=GOAL−1
    BETW=START−GOAL
    L$=LEFT$(LORD$,1)
    R$=RIGHT$(LORD$,31)
    LORD$=R$+L$
IF T!=0 THEN @SK4
IF HELP==0 THEN @SK4
LOCATE 5,18:PRINT ” ”*20
LOCATE 5,18:PRINT ”ウコ゛イタ−−−ナ”
TALK ”ウコ゛イタ−ナ”
@GAMEOVER
WAIT 50
COLOR 13
LOCATE 5,21:PRINT ”е”:WAIT 5
LOCATE 5,21:PRINT ”ё”:WAIT 5
LOCATE 5,21:PRINT ”д”:WAIT 5
LOCATE 5,21:PRINT ”е”:WAIT 5
LOCATE 5,21:PRINT ”ё”:WAIT 5
LOCATE 5,21:PRINT ”м”:BEEP 11:WAIT 15
COLOR 0
LOCATE 5,10:PRINT ”┌─────────┐
LOCATE 5,11:PRINT ”│GAME OVER│
LOCATE 5,12:PRINT ”└─────────┘”:WAIT 50
FOR G=0 TO 1:G=0:IF BUTTON()==BT THEN G=1:NEXT
END
@SK4
COLOR 8
LOCATE 0,22:PRINT LORD$;
COLOR 0
@SK1
ENE$(0)=” ”*GOAL+BACK1$
ENE$(1)=” ”*GOAL+BACK2$
ENE$(2)=” ”*GOAL+BACK3$
IF T!=0 THEN @SK3
ENE$(0)=” ”*GOAL+FRON1$
ENE$(1)=” ”*GOAL+FRON2$
ENE$(2)=” ”*GOAL+FRON3$
@SK3
FOR I=0 TO 2
LOCATE 7,19+I:PRINT ” ”*24
LOCATE 7,19+I:PRINT LEFT$(ENE$(I),24)
NEXT I
I$=”      ”+STR$(SCORE):I$=RIGHT$(I$,6)
LOCATE 18,0:PRINT ”SCORE”+I$
I$=”      ”+STR$(COMBO):I$=”COMBO”+RIGHT$(I$,6)
IF COMBO==0 THEN I$=”              ”
LOCATE 18,1:PRINT I$
I$=”      ”+STR$(TIM):I$=”TIME”+RIGHT$(I$,3)
LOCATE 0,0:PRINT I$
LOCATE 0,1:PRINT ”LV ”LV
LOCATE 0,2:PRINT ”├──────────────────┤  ”
I=FLOOR(20−GOAL/5)
LOCATE I,2:PRINT ”г”
IF TIM!=0 THEN @SK5
LOCATE 5,18:PRINT ” ”*20
LOCATE 5,18:PRINT ”オソイ−−−ナ”
TALK ”オソイ−−ナ”
GOTO @GAMEOVER
@SK5
IF GOAL==0 THEN L=1
NEXT L
LOCATE 5,18:PRINT ” ”*20
LOCATE 5,18:PRINT ”マケタヨ−−ン”
TALK ”マケタヨ−−−ン”
WAIT 50
COLOR 3
LOCATE 7,20:PRINT ”────────ハ゛シュッ”:BEEP 11,5000
COLOR 0
WAIT 50
LOCATE 5,18:PRINT ” ”*20
LOCATE 7,20:PRINT ” ”*20
LV=(LV+1)−(LV==9)
GOTO @START
}}
#endregion
#region(制作者コメント)
36行目まで~
下画面の表示と、プログラムソースの説明を兼ねてます。~
48~
敵のグラフィックをアスキーアートで書いてます。~
後ろ向き時と、前向き時です。~
84~
FOR L=0 TO 1:I=0~
NEXT L   (160行目)
メインループ、ラベルと、GOTOの代用です。~
スタックたまりを回避するため、~
I=1 (159行目)を終了条件とともに入れ~
NEXT L を抜けてから、次ステージ構成のルーチンを入れてます。~
130/141~
敵に近づくと、敵が画面外から出てくる演出です。~
ENE$(I)に、敵までの距離分のスペースと、敵のグラフィックを代入し~
LEFT$命令で、表示限界までの文字数を抜き出して、~
前進する度に表示し直しています。~
~
クリア条件~
敵に到達したとき。~
GOAL==0 (159)~
~
ゲームオーバー条件~
敵が振り返っているときに、動く。~
T==0 HELP==1のとき、BUTTUN(2)=16 (105.106)~
TIMEが0になる。~
TIM==0 (153)~
~
リトライにするには。~
124行目のENDを、GOTO @A~
その後、1行目に@Aを入れるのが、~
一番手っ取り早いと思います。~
FOR文を終えずに抜ける禁忌と、~
Selectボタンで強制終了させないと、いけなくなるので、~
ENDにしてしまってます。

#endregion

訪問者~
トータル:&counter(total);人~
今日:&counter(today);人~
* QR コード [#j36c13d2]
プチコンmkII 向けの QR コードです。~
|PRG:NHPASCS2|
|リトライ ハイスコア実装ver|
|&ref(nhpascs2.jpg);|
|PRG:NHPASCS2|ver1.00|
|&ref(qr1.jpg);|&ref(qr2.jpg);|
* 課題 [#x4e20bbc]
本当は、1QRプログラムくらいだと思ってたのですが、~
どうしても、こんな感じになってしまいます。~
下画面の説明やめて、画面ももっとシンプルにすれば、~
いいんですけどね

* CHECKER FLAG (ひとことコメント) [#e0fb106f]
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は[[掲示板>Board]]へ)
- ''名無しさん'' : ページを修正しました。 (&new{2016/02/19 (金) 21:01:50};)

#comment

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