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

Toukou/お誕生日おめでとう! の変更点


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

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

* 概要 [#Summary]
伝言板です。伝えたいことをカラフルに伝えます。

** 操作 [#Komidashi1]
1.メッセージを入力してリターンします。(32文字以内、1行)

2.10秒後にメッセージの表示が始まるので、DSをすぐに閉じます。

3.伝えたい相手にDSを渡し、開いて見てもらいます。

カタカナ表示バージョンと ひらがな表示バージョンがあります。
(2012.4.17 co.aさん投稿の プチコン用ひらがなフォント「PETIKANA」を使用)

** 使用例 [#Komidashi2]
「ユリチャン オタンジョウビ オメデトウ ★」
「ホウカゴ タイイクカンノ ウラデ マツ !」
「ママヘ バンハ カレーニ シテネ ボク」
「Happy New Year!」
「Congratulations!!」
「ゴウカク オメデトウ」
「イイトコロ ゼンブ モッテク ウキョウサン (ナッシュ)」

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

* スクリーンショット・動画 [#ScreenShots]
// 動作しているところを撮影した写真や動画があれば貼り付けてください。

// ページを作成すると、画像の添付ができるようになります。(作成する前はできません)
// 作成後のページの右上、ウィキメニューにある「添付」から画像をアップロードできます。
// (添付ファイルはページごとに別個に管理されています。必ず作成後のページに添付してください)
// 画像をアップロードしたら、以下の書式でページ内に貼り付けられます。
//#ref(sIMGP7119.jpg)
//#ref(sIMGP7132.jpg)
#ref(sIMGP7180.jpg)

// 以下の書式で、YouTube やニコニコ動画を貼り付けられます。
// #youtube(0HWX7kovgY8)
// #nicovideo(sm13684820)

/////////////////////////////////
// QR コードがない場合は、この部分は削除してください

* QR コード [#QR]
プチコンmkII 向けの QR コードです。

// 【重要】旧プチコンから mkII に転送したプログラムは、mkII で保存しなおしてから
// QR コード化すると、枚数が半分ぐらいに減ります。ぜひお試し下さい。
// 【重要】添付できるのは画像ファイルのみです。zip ファイルは解凍してください。

// ページを作成すると、QR コードの添付ができるようになります。(作成する前はできません)
// 作成後のページの右上、ウィキメニューにある「添付」から画像をアップロードできます。
// (添付ファイルはページごとに別個に管理されています。必ず作成後のページに添付してください)
// QR コードをアップロードしたら、以下の書式でページ内に貼り付けられます。
// #ref(アップロードしたファイル名)

// QR コードを大きくしたい場合は、倍率指定ができます。コンマは必ず 2 つ指定してください。
// ブラウザによっては補完がかかってボケますが、それでも問題なく読み込み可能です。
// #ref(アップロードしたファイル名,,200%)

// 複数の QR コードを貼り付けるために表組みを用いる場合、&ref(); を使用します。
// (#ref() を表に埋め込んでしまうと、古い Internet Explorer でうまく表示されません)
// |>|>|~PRG:FILENAME|

カタカナ表示バージョン
|~1/2|~2/2|
|&ref(qrH0.png,,200%);|&ref(qrH1.png,,200%);|

ひらがな表示バージョン
|~1/4|~2/4|
|&ref(qrHR0.png,,200%);|&ref(qrHR1.png,,200%);|
|~3/4|~4/4|
|&ref(qrHR2.png,,200%);|&ref(qrHR3.png,,200%);|

上下2画面表示バージョン
|~1/4|~2/4|
|&ref(qrDS0.png,,200%);|&ref(qrDS1.png,,200%);|
|~3/4|~4/4|
|&ref(qrDS2.png,,200%);|&ref(qrDS3.png,,200%);|
/////////////////////////////////

* プログラムリスト [#List]
#basic{{
'--------------
'  TANJYOBI
'  HIRAGANA
'   by hoy 
'  2012.05.27 
'--------------

CLEAR
ACLS
BGMSTOP
COLSET "GRP",100,"C9660F"
GCLS 100
GOSUB @PETIKANA

LOCATE 3,5
? " <<  Message Board  >>
LOCATE 5,10
LINPUT "メッセ-ジ ニュウリョク ";A$
A$=" "+A$+" "
PKN$="@"+A$+"@"
GOSUB @PKN
AKANA$=PKN$

CLS
FOR H=0 TO LEN(A$)-1
 I$=MID$(A$,H,1)
 IF ASC(I$)==32 OR ASC(I$)==33 OR ASC(I$)==46 OR ASC(I$)==63 THEN YOMI$=YOMI$+I$
 IF ASC(I$)>165 AND ASC(I$)<224 THEN YOMI$=YOMI$+I$
NEXT H

FOR I = 1 TO 11
BEEP 0
LOCATE 11,10
? "  ";11-I;" SEC "
WAIT 60
NEXT I

BGMPLAY 0,7,40
WAIT 120
CLS
M0$=" ":M1$=" ":M2$=" ":M3$=" ":M4$=" ":M5$=" "
GOSUB @HAIKEI

'---- MAIN -----
@START
COLSET "GRP",100,HAIKEI$
FOR H=0 TO LEN(A$)-1
 CNT=CNT+1:IF CNT>500000 THEN CNT=0
 I$=MID$(AKANA$,H,1)
 GOSUB @PUTMSG
 IF CNT%31==0 THEN GOSUB @HOSI 
 IF CNT%43==0 THEN GOSUB @KIRAKIRA 
 IF CNT%51==0 THEN GOSUB @UFO
NEXT H
GOSUB @HAIKEI
TALK YOMI$
GOTO @START

'----- SUB ----------

@PUTMSG
MCI=RND(13)+2
IF MCI==6 THEN MCI=5
M0$=M1$ : M1$=M2$ : M2$=M3$
M3$=M4$ : M4$=M5$ : M5$=I$
MC0=MC1 : MC1=MC2 : MC2=MC3
MC3=MC4 : MC4=MC5 : MC5=MCI
GFILL 0,65,255,130,100
GPUTCHR -26,65,"BGF0",ASC(M0$),MC0,8
GPUTCHR 26,65,"BGF0",ASC(M1$),MC1,8
GPUTCHR 77,65,"BGF0",ASC(M2$),MC2,8
GPUTCHR 128,65,"BGF0",ASC(M3$),MC3,8
GPUTCHR 179,65,"BGF0",ASC(M4$),MC4,8
GPUTCHR 230,65,"BGF0",ASC(M5$),MC5,8
WAIT 40
GFILL 0,65,255,130,100
GPUTCHR 0,65,"BGF0",ASC(M1$),MC1,8
GPUTCHR 51,65,"BGF0",ASC(M2$),MC2,8
GPUTCHR 102,65,"BGF0",ASC(M3$),MC3,8
GPUTCHR 153,65,"BGF0",ASC(M4$),MC4,8
GPUTCHR 204,65,"BGF0",ASC(M5$),MC5,8
WAIT 40
RETURN

@HAIKEI
HAIK=RND(4)
IF HAIK==0 THEN HAIKEI$="3088A1"
IF HAIK==1 THEN HAIKEI$="1E3112"
IF HAIK==2 THEN HAIKEI$="84211E"
IF HAIK==3 THEN HAIKEI$="D57D19"
COLSET "GRP",100,HAIKEI$
GCLS 100
GOSUB @KAZARI
RETURN

@KAZARI
FOR I=0 TO 4
KC=RND(251)+2
GCIRCLE (I*50+27),10,25,KC
GPAINT (I*50+27),12,KC
GCIRCLE (I*50+27),0,25,KC+1
GPAINT (I*50+27),2,KC+1
GCIRCLE (I*50+27),0,10,KC+2
GPAINT (I*50+27),2,KC+2
GCIRCLE (I*50+27),181,25,KC
GPAINT (I*50+27),179,KC
GCIRCLE (I*50+27),191,25,KC+1
GPAINT (I*50+27),189,KC+1
GCIRCLE (I*50+27),191,10,KC+2
GPAINT (I*50+27),189,KC+2
NEXT I
RETURN

@HOSI
BEEP 12
IF RND(2)==0 THEN GOSUB @HOSI1 ELSE GOSUB @HOSI2
RETURN

@HOSI1
SPSET 0,253,2,0,0,0
FOR Y = 0 TO 191 STEP 7
 SPOFS 0, (180/191)*Y+50,Y
WAIT 3
NEXT Y
SPCLR 0
RETURN

@HOSI2
SPSET 0,253,2,0,0,0
FOR Y = 0 TO 191 STEP 7
 SPOFS 0, 205-(155/191)*Y,Y
WAIT 3
NEXT Y
SPCLR 0
RETURN

@KIRAKIRA
BEEP 37
IF RND(2)==0 THEN GOSUB @KIRA1 ELSE GOSUB @KIRA2
RETURN

@KIRA1
FOR I=0 TO 4
 SPSET 0,22,2,0,0,0
 SPOFS 0, 232-I*53, 50
 WAIT 3
 SPSET 0,23,2,0,0,0
 SPOFS 0, 232-I*53, 50
 WAIT 3
NEXT I
FOR I=0 TO 4
 SPSET 0,22,2,0,0,0
 SPOFS 0, I*53+20, 141
 WAIT 3
 SPSET 0,23,2,0,0,0
 SPOFS 0, I*53+20, 141
 WAIT 3
NEXT I
SPCLR 0
RETURN

@KIRA2
FOR I=0 TO 4
 SPSET 0,22,2,0,0,0
 SPOFS 0, 232-I*53, 50
 WAIT 4
 SPSET 0,23,2,0,0,0
 SPOFS 0, 232-I*53, 50
 WAIT 4
 SPSET 0,22,2,0,0,0
 SPOFS 0, I*53+20, 141
 WAIT 4
 SPSET 0,23,2,0,0,0
 SPOFS 0, I*53+20, 141
 WAIT 4
NEXT I
SPCLR 0
RETURN

@UFO
BEEP 15
SPSET 0,137,2,0,0,0
SPSCALE 0,200
FOR I= 0 TO 48
 SPOFS 0, 223-FLOOR(I*2.3), 12
 WAIT 3
NEXT I
BEEP 06
FOR I=0 TO 38
 SPOFS 0, 112, FLOOR(I*3.7)+14
 WAIT 3
NEXT I
SPCLR 0
IF RND(2)==0 THEN GOSUB @BAKUHATU
RETURN

@BAKUHATU
BEEP 5
FOR R=1 TO 200
 GCIRCLE 128,191,R,(R%14+1) 
WAIT 1
NEXT R
WAIT 120
GCLS 100
GOSUB @KAZARI
RETURN


@PETIKANA 'by co.a
RESTORE@SPKD
DIM SPKA[56]SPKN=0

FOR SPKI=1TO 9
READ SPKF,SPKT
 FOR SPKJ=SPKF TO SPKT
  SPKA[SPKN]=SPKJ
  SPKN=SPKN+1
 NEXT
NEXT

READ SPKD$,SPK2$,SPK3$
SPKD$=SPKD$+SPK2$+SPK3$
SPKN=0:SPKC=0

FOR SPKI=0TO LEN(SPKD$)-1
 SPKD=ASC(MID$(SPKD$,SPKI,1))XOR 21
 FOR SPKJ=0TO 7
 IF SPKC==0THEN SPKF$="
 IF SPKC%5==0THEN SPKF$=SPKF$+"0
 SPKF$=SPKF$+CHR$(48+(SPKD%2)*22)
 SPKD=SPKD/2AND 255
 SPKC=SPKC+1
 IF SPKC%5==0THEN SPKF$=SPKF$+"00
 IF SPKC<35GOTO@SPKX
 SPKF$=SPKF$+"00000000
 CHRSET"BGF0",SPKA[SPKN],SPKF$
 SPKC=0
 SPKN=SPKN+1
@SPKX
 NEXT
NEXT

RETURN
@SPKD
DATA 3,8,14,17,21,23,26,27,128,143,156,159,176,176,232,239,244,255
DATA"ё>カ┿н─)ニАСオア1С%34У─lQ!Сチ%~РE[GУСヌЙГС←6ロУСЗ┬ХЫムж>T┰$Вгユ│ДГП+73┥>ノ┫_ンセG7аГ└┿V┰←TД_(ーQユ│
DATA"UОZлV-ュДW┰ワオレАVОシコ━д┘лVОБZлE'ЫёTンユ│Д7У+7We4┠←ヤ┥>ЕニО●ДWヤ_ャN「ВRフシ %クテシС←ЙС─o_ク6ア」━┣→7}ク
DATA"О←DЁО)■チ/7┻iニзE゚コ◇ム◇v]┼━ホィ_4┘-┣→■。A┿。NМГ┬ew┷!]ュ←К┸$WQЗ']C2チF~\├┰┥ナ→ヲケ┫_←4_X

@PKN
PKNV$=PKN$
PKN$="
@PKNM
PKNA=INSTR(PKNV$,"@")
IF PKNA==-1GOTO@PKNR
PKN$=PKN$+LEFT$(PKNV$,PKNA)
PKNV$=RIGHT$(PKNV$,LEN(PKNV$)-PKNA-1)
PKNE=INSTR(PKNV$,"@")
IF PKNE==-1GOTO@PKNM
IF PKNE==0THEN PKN$=PKN$+"@
FOR PKNI=0TO PKNE-1
PKNC$=MID$(PKNV$,PKNI,1)
GOSUB@PKNC
PKN$=PKN$+PKNC$
NEXT
PKNV$=RIGHT$(PKNV$,LEN(PKNV$)-PKNE-1)
GOTO@PKNM
@PKNR
PKN$=PKN$+PKNV$
RETURN

@PKNC
IF LEN(PKNC$)!=1THEN RETURN
PKCA=ASC(PKNC$)
IF PKCA==45THEN PKNC$="ー"RETURN
IF PKCA==96THEN PKNC$=CHR$(34)RETURN
PKCA=PKCA-163
IF PKCA<3THEN RETURN
IF PKCA==13THEN RETURN
IF PKCA>58THEN RETURN
IF PKCA>8THEN PKCA=PKCA+5
IF PKCA>17THEN PKCA=PKCA+2
IF PKCA>23THEN PKCA=PKCA+2
IF PKCA>27THEN PKCA=PKCA+100
IF PKCA>143THEN PKCA=PKCA+12
IF PKCA>159THEN PKCA=PKCA+72
IF PKCA>239THEN PKCA=PKCA+4
PKNC$=CHR$(PKCA)
RETURN

}}

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

* CHECKER FLAG (ひとことコメント) [#Comments]
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は[[掲示板>Board]]へ)
- ''名無しさん'' : INPUTでカンマを入力できないのは仕様です。LINPUTでできますよ。 (&new{2012/05/16 (水) 23:44:02};)
- ''hoy'' : アドバイスありがとうございます。直しました。取説をよく読まないといけなかったです。 (&new{2012/05/17 (木) 06:26:44};)
- ''hoy'' : 読み上げ機能をつけました。(カタカナのみ) (&new{2012/05/19 (土) 08:36:54};)
- ''hoy'' : 背景と文字の色が重なる不具合を直しました。 (&new{2012/05/22 (火) 07:14:45};)
- ''hoy'' : co.aさんのひらがなフォントを組み込んで、ひらがな表示バージョンを加えました。 (&new{2012/05/27 (日) 15:18:59};)
- ''hoy'' : 上下2画面表示バージョンを加えました。 (&new{2012/06/05 (火) 21:44:33};)
// - ''orirakkusu'' : この作品を自作ツールを使い、読み取りやすいようなページを作りました。もしよかったらおつかい下さい。URLはhttp://www.geocities.jp/orirakkusu/petitcom/mkll/tool/qr/prg_tanzyou_k.htmlがひらがな、http://www.geocities.jp/orirakkusu/petitcom/mkll/tool/qr/prg_tanzyou_h.htmlがカタカナです。 (&new{2012/06/18 (月) 19:29:21};)
// - ''名無しさん'' : ↑url間違えました、...prg_とtan...の間にoを入れてください。 (&new{2012/06/18 (月) 19:38:19};)
// - ''名無しさん'' : ↑JSがエラーになってる (&new{2012/06/18 (月) 19:56:44};)
// 10.document.images("qrviwer").src = domain + addres[qrima - 1]
// 15.document.images("qrviwer").src = domain + addres[qrima-1]
// 22.document.images("qrviwer").src=domain + addres[qrima-1]
// Uncaught TypeError: Property 'images' of object #<HTMLDocument> is not a function
// - ''名無しさん'' : ↑そういや3DSとかでやっていたなと思って3DSで開いてみたら正常に動いた (&new{2012/06/18 (月) 20:04:37};)
// - ''名無しさん'' : ↑IE9でも動いた (&new{2012/06/18 (月) 20:05:40};)
// - ''名無しさん'' : ↑GoogleChromeではhttp://wiki.hosiken.jp/petc/?plugin=attach&refer=Toukou%2F%A4%AA%C3%C2%C0%B8%C6%FC%A4%AA%A4%E1%A4%C7%A4%C8%A4%A6%21&openfile=qrHRが見つからないから動かせ無いみたい感じなんだろうか。JS素人だけど。 (&new{2012/06/18 (月) 20:10:34};)
// - ''名無しさん'' : ゆりちゃんって誰? (&new{2012/08/25 (土) 21:19:22};)
// - ''hatena'' : ↑*7 「このページは準備中です」と表示されるのですが… (&new{2012/08/29 (水) 20:52:25};)
- ''2003/5/16'' : この頃俺は八歳だZE☆ (&new{2014/05/18 (日) 11:15:17};)
- ''名無しさん'' : 誕生日以外にも応用範囲が広そう。 (&new{2015/06/07 (日) 23:54:30};)

#comment

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