暇なので作ってみました。
変数名は適当です。
ccdda = 0
ccddb = 0
ccddc = 0
ccddap = 10
ccddbp = 10
ccddcp = 10
cntgjjk = 100
gyadd = 1
ttcc = 0
ffgg = 0
gyaddx = 20
gyaddy = 20
gyapezi = 1
gyapezix = 0
gyapeziy = 0
fhhlkki = 0
fhhjkuu = 0
gyaarikkk = 0
jkkdff = 10001
gyapezidhrrui = 1
cntghhjss = 0//////
gyaddss = 10000//////
cntbmpss = 0//////
filepath = "hotokk"
dirlist x, filepath, 5
if stat = 0 {
dialog "保存用フォルダーが存在しないので新しくフォーマットデーターを作成しました。" ,0,"ファイル作成確認"
mkdir "hotokk"
mkdir "hotokk/pct"
exist "hotokk/set.txt"
if strsize = -1 {
}
tt = 0
notesel np
noteadd ""+tt+"" , 0 , 1
notesave "hotokk/set.txt" ;データ保存
goto *toppp
}
exist "hotokk/set.txt"
if strsize = -1 {
dialog "設定ファイルが存在しないので新しく作成しました。" ,0,"ファイル作成確認"
tt = 0
notesel np
noteadd ""+tt+"" , 0 , 1
notesave "hotokk/set.txt" ;データ保存
}
filepath = "hotokk/pct"
dirlist x, filepath, 5
if stat = 0 {
dialog "画像保存用フォルダーが存在しないので新しく作成しました。" ,0,"ファイル作成確認"
mkdir "hotokk/pct"
}
*toppp
notesel np
noteload "hotokk/set.txt"
repeat notemax
noteget dd, cnt
tt = int(dd) + tt
loop
*top
title "カラーループブロック"
ccdda = 0
ccddb = 0
ccddc = 0
ttcc = 0
screen 0 , 620 , 620 , 0 , 10 , 10 ,
line 10,10,610,10
line 10,610,610,610
line 10,10,10,610
line 610,10,610,610
pos 100,50
font "" , 30
mes "カラーループブロック"
sysfont 0
pos 200,100
mes "color"
pos 200,120
input ccdda , 30 , 18 , 3
input ccddb , 30 , 18 , 3
input ccddc , 30 , 18 , 3
pos 230,120
mes "+\n+\n+"
pos 250,120
input ccddap , 30 , 18 , 3
input ccddbp , 30 , 18 , 3
input ccddcp , 30 , 18 , 3
pos 350,100
mes "全カウント最大値"
pos 350,120
input cntgjjk , 30 , 18 , 3
pos 350,200
mes "現在のフォルダー設定値["+tt+"]"
pos 400,400
button "スタート" , *ssggh
button "ギャラリー" , *gyarari
stop
*ssggh
screen 0 , 150 , 100 , screen_tool , 640 , 10 ,
button "STOP" , *sdffl
screen 0 , 620 , 620 , 0 , 10 , 10 ,
tt + 1
mkdir "hotokk/pct/p"+tt+""
notesel np
noteadd ""+tt+"" , 0 , 1
notesave "hotokk/set.txt" ;データ保存
cls
line 10,10,610,10
line 10,610,610,610
line 10,10,10,610
line 610,10,610,610
repeat cntgjjk ;全ループ
ddx = 15
ddy = 15
ddffgh = cnt
repeat 60 ;yループ
repeat 60 ;xループ
if ccdda >=255 and ccddb >=255 and ccddc >=255{
repeat 20
await 10
color 255 , 255 , 255
circle ddx-5 , ddy-5 , ddx+5 , ddy+5 , 1
color 0 , 0 , 0
circle ddx-2 , ddy-2 , ddx+2 , ddy+2 , 1
await 10
color 0 , 0 , 0
circle ddx-5 , ddy-5 , ddx+5 , ddy+5 , 1
color 255 , 255 , 255
circle ddx-2 , ddy-2 , ddx+2 , ddy+2 , 1
loop
goto *sdffl
stop
}
if ccdda >= 255 {
if ccddb >= 255 {
ccddc + ccddcp
ccddb = 0
}
else {
ccddb + ccddbp
ccdda = 0
}
}
else {
ccdda +ccddap
}
color ccdda , ccddb , ccddc
grect ddx , ddy , 0 , 10 , 10
ddx + 10
loop ;xループ
ddx = 15
ddy + 10
loop ;yループ
ttcc + 1
bmpsave "hotokk/pct/p"+tt+"/"+ttcc+".bmp"
loop ;全ループ
dialog ""+ddffgh+"回\n最大全ループ値が過ぎたので実行停止されました。",0,"条件停止"
goto *top
stop
*sdffl
ttccf =ttcc + 1
bmpsave "hotokk/pct/p"+tt+"/"+ttccf+"end.bmp"
if ttccf = 1 {
bmpsave "hotokk/pct/p"+tt+"/1.bmp"
}
dialog ""+ddffgh+"回",0,"完了"
goto *top
stop
///////////////////////////////////ギャラリー///////////////////////////
*gyarari
ffgg = 0
gyapezi = 1
cls
pos 100 , 200
font "" , 28 , 1
mes "画像データーの読み込み中・・・"
sysfont 0
mes "この処理には時間がかかることがございます。"
*gyararitop
filepath = "hotokk/pct/p"+gyadd +""
dirlist x, filepath, 5
if stat = 0 {
goto *gyararikk
}
exist "hotokk/pct/p"+gyadd +"/1.bmp"
if strsize = -1 {
gyadd + 1
goto *gyararitop
}
buffer gyadd
picload "hotokk/pct/p"+gyadd +"/1.bmp"
gyadd + 1
goto *gyararitop
*gyararikk
screen 0 , 640 , 640 , 0 , 10 , 10 ,
gyaddy = 20
repeat 1;gyadd
repeat 5 ;y
gyaddx = 20
repeat 5 ;x
ffgg + 1
cntghh = cnt + 1
pos gyaddx , gyaddy
if ffgg = gyadd {
goto *aa
stop
}
exist "hotokk/pct/p"+ffgg+"/1.bmp"
if strsize = -1 {
line gyaddx,gyaddy,gyaddx + 100,gyaddy
line gyaddx,gyaddy,gyaddx,gyaddy + 100
line gyaddx + 100,gyaddy,gyaddx + 100,gyaddy + 100
line gyaddx,gyaddy + 100,gyaddx + 100,gyaddy + 100
pos gyaddx + 20,gyaddy +20
font "",23,1
mes ffgg
sysfont 0
pos gyaddx+10 , gyaddy+40
mes "画像が\nありません"
}
else {
gcopy ffgg ,0,0,100,100
color 255 , 0 , 0
circle gyaddx + 10, gyaddy + 25 , gyaddx + 70 , gyaddy + 40 , 1
color 0 , 0 , 0
pos gyaddx + 20,gyaddy +20
font "",23,1
color 255 , 255 , 0
mes ffgg
color 0 , 0 , 0
sysfont 0
}
gyaddx + 120
loop
gyaddy + 120
loop
loop
gyaddx = 20
gyaddy = 20
goto *aa
stop
*aa
ggvvnk = gyadd / 25
ggvvnf = ggvvnk * 25
ggvvng = (gyadd - ggvvnf) - 1
line 20,15,605,15
line 20,15,20,610
line 605,15,605,610
line 20,610,605,610
pos 10, 580
mes ggvvnk
pos 40 , 3
objsize 60 , 18 , 0
button "戻る" , *top
pos 30, 610
objsize 100 , 25 , 0
button "←(前へ)" , *gyamae
pos 8 , 610
objsize 20 , 25 , 0
button "<<" , *siteigyay
pos 200 , 610
objsize 120 , 25 , 0
button ""+gyapezi+"ページ" , *gyatugi
pos 500 , 610
objsize 100 , 25 , 0
button "(次へ)→" , *gyatugi
pos 600 , 610
objsize 20 , 25 , 0
button ">>" , *siteigyax
pos 30,110
objsize 40 , 20 , 0
button "PLAY" , *aa1
pos 150,110
objsize 40 , 20 , 0
button "PLAY" , *aa2
pos 270,110
objsize 40 , 20 , 0
button "PLAY" , *aa3
pos 390,110
objsize 40 , 20 , 0
button "PLAY" , *aa4
pos 510,110
objsize 40 , 20 , 0
button "PLAY" , *aa5
pos 30,230
objsize 40 , 20 , 0
button "PLAY" , *aa6
pos 150,230
objsize 40 , 20 , 0
button "PLAY" , *aa7
pos 270,230
objsize 40 , 20 , 0
button "PLAY" , *aa8
pos 390,230
objsize 40 , 20 , 0
button "PLAY" , *aa9
pos 510,230
objsize 40 , 20 , 0
button "PLAY" , *aa10
pos 30,350
objsize 40 , 20 , 0
button "PLAY" , *aa11
pos 150,350
objsize 40 , 20 , 0
button "PLAY" , *aa12
pos 270,350
objsize 40 , 20 , 0
button "PLAY" , *aa13
pos 390,350
objsize 40 , 20 , 0
button "PLAY" , *aa14
pos 510,350
objsize 40 , 20 , 0
button "PLAY" , *aa15
pos 30,470
objsize 40 , 20 , 0
button "PLAY" , *aa16
pos 150,470
objsize 40 , 20 , 0
button "PLAY" , *aa17
pos 270,470
objsize 40 , 20 , 0
button "PLAY" , *aa18
pos 390,470
objsize 40 , 20 , 0
button "PLAY" , *aa19
pos 510,470
objsize 40 , 20 , 0
button "PLAY" , *aa20
pos 30,590
objsize 40 , 20 , 0
button "PLAY" , *aa21
pos 150,590
objsize 40 , 20 , 0
button "PLAY" , *aa22
pos 270,590
objsize 40 , 20 , 0
button "PLAY" , *aa23
pos 390,590
objsize 40 , 20 , 0
button "PLAY" , *aa24
pos 510,590
objsize 40 , 20 , 0
button "PLAY" , *aa25
stop
*gyatugi
if gyapezi = (ggvvnk + 1) {
dialog "オプジェクトがありません。",1,"警告"
stop
}
gyapezi + 1
goto *gyararikk
stop
*gyamae
if gyapezi = 1 {
dialog "これ以上戻れません。",1,"警告"
stop
}
if gyapezi = (ggvvnk + 1) {
dffhj = ggvvng + 25
ffgg - (dffhj + 1)
}
else {
ffgg - 50
}
gyapezi - 1
goto *gyararikk
stop
*siteigyax
screen 100000,180,50,1,300,300
cls
pos 20 , 3
mes "進むページ数を指定"
pos 10 , 24
input gyapezix , 60 , 20 , 6
pos 100 , 24
objsize 60 , 20 , 0
button "移動" , *siteigyaxoff
onexit gosub *noggoff
stop
*siteigyay
screen 100000,180,50,1,300,300
cls
pos 20 , 3
mes "戻るページ数を指定"
pos 10 , 24
input gyapezix , 60 , 20 , 6
pos 100 , 24
objsize 60 , 20 , 0
button "移動" , *siteigyayoff
stop
onexit gosub *noggoff
stop
*noggoff
onexit gosub *off
screen 100000,250,250,2,300,300
stop
*siteigyaxoff ;進む
if gyapezix >= (ggvvnk + 2) - gyapezi or gyapezi = (ggvvnk + 1) {////////////////////////////////////////////
dialog "そんなにオプジェクトが存在しません。",1,"警告"
onexit gosub *noggoff
stop
}
screen 100000,250,250,2,300,300
onexit gosub *off
ffgg + (gyapezix * 25) - 25
gyapezi + gyapezix
goto *gyararikk
stop
*siteigyayoff ;戻る
if gyapezi - gyapezix < 1 {
dialog "これ以上戻れません。",1,"警告"
onexit gosub *noggoff
stop
}
screen 100000,250,250,2,300,300
onexit gosub *off
if gyapezi = (ggvvnk + 1) {
;ffgg - 50
dffhj = ggvvng + 25
ffgg - (dffhj + 1) + (gyapezix * 25) - 25
}
else{
dffhj = ggvvng + 25
dffhjg = (dffhj + 1)
hhjkl = gyapezix * 25
ffgg - (hhjkl + 25)
}
;gyapezi - 1
gyapezi - gyapezix
goto *gyararikk
stop
*aa1
fhhlkki = 1
goto *hyjukk
stop
*aa2
fhhlkki = 2
goto *hyjukk
stop
*aa3
fhhlkki = 3
goto *hyjukk
stop
*aa4
fhhlkki = 4
goto *hyjukk
stop
*aa5
fhhlkki = 5
goto *hyjukk
stop
*aa6
fhhlkki = 6
goto *hyjukk
stop
*aa7
fhhlkki = 7
goto *hyjukk
stop
*aa8
fhhlkki = 8
goto *hyjukk
stop
*aa9
fhhlkki = 9
goto *hyjukk
stop
*aa10
fhhlkki = 10
goto *hyjukk
stop
*aa11
fhhlkki = 11
goto *hyjukk
stop
*aa12
fhhlkki = 12
goto *hyjukk
stop
*aa13
fhhlkki = 13
goto *hyjukk
stop
*aa14
fhhlkki = 14
goto *hyjukk
stop
*aa15
fhhlkki = 15
goto *hyjukk
stop
*aa16
fhhlkki = 16
goto *hyjukk
stop
*aa17
fhhlkki = 17
goto *hyjukk
stop
*aa18
fhhlkki = 18
goto *hyjukk
stop
*aa19
fhhlkki = 19
goto *hyjukk
stop
*aa20
fhhlkki = 20
goto *hyjukk
stop
*aa21
fhhlkki = 21
goto *hyjukk
stop
*aa22
fhhlkki = 22
goto *hyjukk
stop
*aa23
fhhlkki = 23
goto *hyjukk
stop
*aa24
fhhlkki = 24
goto *hyjukk
stop
*aa25
fhhlkki = 25
goto *hyjukk
stop
*hyjukk
ghhkla = ((gyapezi * 25) - 25) + fhhlkki
pos 10,10
mes ghhkla
fhhjkuu = 0
if ffgg < ghhkla{
dialog "無いものを開くことはできません。",1,"警告"////////////////////////////////////
stop
}
exist "hotokk/pct/p"+ghhkla+"/1.bmp"
if strsize = -1 {
dialog "正式な画像ファイルがありません。\n画像ファイル名は[1.bmp]から始まります。",1,"警告"////////////////////////////////////
stop
}
cls
*hyjukktop
cls
pos 100 , 100
fhhjkuu + 1
mes "画像ファイルの確認中・・・\n["+fhhjkuu +"]個の画像ファイル"
exist "hotokk/pct/p"+ghhkla +"/"+fhhjkuu+".bmp"
if strsize = -1 {
if fhhjkuu = 1 {
endffgg =2
gyaarikkk = 2
fhhjkuu - 1
goto *hyjukktopstop
}
if fhhjkuu = 2 {
exist "hotokk/pct/p"+ghhkla +"/1end.bmp"
if strsize = -1 {
endffgg =1
gyaarikkk = 1
}
else{
endffgg =0
gyaarikkk = 3
}
fhhjkuu - 1
goto *hyjukktopstop
}
exist "hotokk/pct/p"+ghhkla +"/"+fhhjkuu+"end.bmp"
if strsize = -1 {
endffgg =1
gyaarikkk = 0
}
else{
endffgg =0
gyaarikkk = 1
}
fhhjkuu - 1
goto *hyjukktopstop
}
else{
goto *hyjukktop
}
stop
endffgg =0
*hyjukktopstop ;画像枚数確認処理
cls
if endffgg =0 {
endfghh = 1
}
if endffgg =1 {
endfghh = 0
}
if endffgg =2 {
endfghh = "不明"
}
pos 70,150
mes "==結果=="
if gyaarikkk = 3 {
mes "画像が1枚しかないのでアニメーションはできません。"
}
if gyaarikkk = 2 {
mes "画像ファイルが見つかりません。"
}
if gyaarikkk = 1 {
mes "問題なし"
}
if gyaarikkk = 0 {
mes "問題はありませんが、画像の最終ファイル(endファイル)が見つかりません。"
}
mes "合計枚数["+fhhjkuu+"]枚+["+endfghh+"](endファイル)枚 フォルダID(名前)[p"+ghhkla+"]"
pos 70,220
objsize 40 , 20 , 0
button "戻る" , *hyjukktopstopmae
pos 150,220
objsize 40 , 20 , 0
button "プレイ" , *hyjukktopsyomi
ddffja = 0
ddffjb = 100
pos 230,220
mes "画像表示枚数"
pos 230,240
input ddffja , 30 , 18 , 3
pos 260,240
mes "〜"
pos 280,240
input ddffjb , 30 , 18 , 3
pos 100,300
mes "注意!\n現在、画像は読み込まれておりません。\n現在処理した目的は画像の枚数や画像の\n有り、無しを確かめるためにこの処理を実行しました。\n存在する画像が多すぎる場合は「画像表示枚数」で\n読み込む枚数を指定することができます。\n読み込む画像が多すぎると完了までに時間がかかります。\nご注意ください。"
stop
*hyjukktopstopmae ;戻るときの条件
if gyapezi = (ggvvnk + 1) {
;ffgg - 50
dffhj = ggvvng + 25
ffgg - (dffhj + 1) + (gyapezix * 25) - 25
}
else{
ffgg - 25
}
cntbmpss = 0
gyaddss = 10000
jkkdff = 10001
goto *gyararikk
stop
*hyjukktopsyomi ;画像の読み込み処理
gyaddss = 10000//////
cls
pos 150 , 200
font "",30,1
mes "ファイルの読み込み中・・・"
sysfont 1
repeat ddffjb
gyapezidhrrui = 1
gyaddss + 1
cntbmpss + 1
exist "hotokk/pct/p"+ghhkla +"/"+cntbmpss+".bmp"
if strsize = -1 {
break
}
buffer gyaddss
picload "hotokk/pct/p"+ghhkla+"/"+cntbmpss+".bmp"
if ddffjb = cnt {
exist "hotokk/pct/p"+ghhkla +"/"+cntbmpss+"end.bmp"
if strsize = -1 {
}
else{
buffer gyaddss
picload "hotokk/pct/p"+ghhkla+"/"+cntbmpss+"end.bmp"
}
}
loop
cls
screen 0 , 640 , 660 , 0 , 10 , 10 ,
goto *gyamiruss
stop
*gyamiruss
cls
pos 10 , 10
pos 20 , 0
objsize 50 , 20 , 0
button "ギャラリーへ" , *hyjukktopstopmae
gcopy jkkdff ,0,0,620,620
pos 80 , 630
objsize 60 , 30 , 0
button "←(戻る)" , *ddffhty
pos 160 , 630
objsize 60 , 30 , 0
button "逆再生" , *ddffhty
pos 260 , 630
objsize 60 , 30 , 0
button "[p"+gyapezidhrrui+"]" , *ddffhtx
pos 340 , 630
objsize 30 , 30 , 0
button "詳細" , *gyasaiseisyousai
pos 440 , 630
objsize 60 , 30 , 0
button "再生" , *ddffhtx
pos 520 , 630
objsize 60 , 30 , 0
button "(進む)→" , *ddffhtx
stop
*ddffhtx ;進む
if gyapezidhrrui = cntbmpss - 1 or gyaarikkk = 3{
dialog "画像がありません。",1,"警告"
stop
}
jkkdff + 1
gyapezidhrrui +1
goto *gyamiruss
stop
*ddffhty ;戻る
if gyapezidhrrui = 1 {
dialog "これ以上戻れません。",1,"警告"
stop
}
jkkdff - 1
gyapezidhrrui -1
goto *gyamiruss
stop
*gyasaiseisyousai
screen 100001,180,50,1,300,300
onexit gosub *gyasaiseisyousaioff
stop
*gyasaiseisyousaioff
screen 100001,180,50,2,300,300
onexit gosub *off
stop
*off
end
まだ初心者くらいなのであまり知りません。
実行時にご注意
起動の遅いPCではあまり実行しないでください。
はじめの上の欄にある値はあまりいじらないようご注意ください。この設定を変更する場合は全カウント値を下げてください。(無限ループしてしまったときなどに途中で止めます。)
初期化時点で実行するとファイルフォルダが作成されます。(フォルダ名 "hotokk")
大事なファイル、フォルダがなくなると修復する機能もついています。セーブしたファイルをなくしてしまったら、データーを復元できません。
はじめの画面でスタートをクリックすると10*10ドットのカラーブロックが表示されてループし始めます。
1ページループし終わると写真が撮られてそのファイルがはじめに作成したフォルダへ保存されます。さらに2ページめと表示されると画面が撮られてファイルへ保存されます。
実行回数1回目、2回目とスタートを押し実行するとそのたびに画像保存フォルダが作成されます。カラーの条件値までループするとループから抜けます。また、終点位置を10*10の丸で確認できます。
ページループ回数が全カウント値以上になると途中で停止するようになっております。(初期値は100回)
これを実行するとハードディスクの容量がすごく減ります。
なんかいも実行すると(スタートさせると)普通に1GBくらいになってしまいます。
といったくだらないものです。
おまけ (ギャラリー)
ギャラリーははじめに撮られた写真を表示します。
ギャラリーをクリックすると、ファイルを読み込みます。(最初の画像ファイルとファイルの個数など) *はじめにスタートを実行して写真が撮られていないとなにもない状態です。
ファイルの読み込みにはフォルダなどの個数によって時間がかかることがございます。(全ての画像は読み込みません。)
スタートをクリックしたら画像が読み込まれます。画像を読み込むので使用のPCにより時間がかかることがございます。(私のPCはかなり古いので100枚読み込むのに4秒くらいかかりましたw)画像が表示されます。*未完成ボタンがあります。
フォーマットする際はそのままフォルダ、ファイルを削除してください。(hotokkフォルダはそのまま削除)
どうでしょうか。