|
|
2011/9/4(Sun) 01:18:47|NO.41070
一行のスクリプトをそれぞれ独立させて10行ぐらいに複製したいです。
N = ""
A = 0;見た話数の変数
objsize 50,20,1
input N,200,20;タイトル入力
pos 200,0
input N,80,20,6;話数入力
pos 280,0
button "UP",*up
pos 330,0
button "DOWN",*down
goto *mada;最初は0なのでmadaへ飛ぶ
stop
*mada
objprm 1,"まだ見てない"
stop
*up
A++
objprm 1,""+A+"話まで見た"
if A = 0 : goto *mada
stop
*down
if A = 0 : goto *mada;既に話数が0ならmadaへ飛ぶ
A--
objprm 1,""+A+"話まで見た"
if A = 0 : goto *mada;変えた結果が0ならmadaへ飛ぶ
stop
見たアニメの話数をカウントしたいのですが、
複数のものをそれぞれカウントするためにこれを複製してそれぞれ別に動かそうとしても、
ラベルや変数が重複してしまいうまくいきません。
どうすれば良いでしょうか?
|
|
2011/9/4(Sun) 02:23:25|NO.41071
ボタンが押されたときにシステム変数statを見れば
どのオブジェクト(ボタン)が押されたのかを判断できますので、
何段目のUP/DOWNが押されたかを計算して処理できます。
//--------------------------------------
sdim N,50,10
dim A,10 ;見た話数の変数
//----------------------------
objsize 50,20,1
repeat 10
pos 0,cnt*20 :input N(cnt),200,20;タイトル入力
pos 200,cnt*20 :input N(cnt),80,20,6;話数入力
pos 280,cnt*20 :button "UP",*up
pos 330,cnt*20 :button "DOWN",*down
objprm cnt*4+1,"まだ見てない"
loop
stop
//-------------------------------------
*up
st=stat ;ボタンIDの取得
A(st/4)++
objprm st-1,""+A(st/4)+"話まで見た"
stop
//-------------------------------------
*down
st=stat ;ボタンIDの取得
A(st/4)--
objprm st-2,""+A(st/4)+"話まで見た"
if A(st/4) <= 0{
objprm st-2,"まだ見てない"
A(st/4)=0
}
stop
//-------------------------------------
|
|
2011/9/4(Sun) 02:46:10|NO.41073
オブジェクトIDを取得、そこから添え字を算出して
配列関数で管理すると解決できると思います。
#const H 25; ボックス高さ
sdim N
N = "A", "B", "C", "D", "E", "F","G","H","I","J"
dim A;見た話数の変数
objsize 50,20,1
repeat 10
pos 0 ,cnt*H : input N(cnt),200, 20;タイトル入力
pos 200,cnt*H : input A(cnt),80, 20, 6;話数入力
pos 280,cnt*H : button "UP", *change
pos 330,cnt*H : button "DOWN", *change
v_ID = cnt : gosub *view
loop
stop
*change
v_ID = int(stat/4)
A(v_ID) += -2*(stat\4)+5
gosub *view
stop
*view
if A(v_ID) <= 0 : v_mes = "まだ見てない": A(v_ID)=0 : else : v_mes = "" + A(v_ID) + "話まで見た"
objprm (v_ID * 4 + 1), v_mes
return
|
|
2011/9/4(Sun) 11:48:50|NO.41076
追加で質問してよろしいでしょうか?
書き換えた内容を保存して、次回の起動時や「読み込み」ボタンを押したときに
読み込むようにするにはどうしたら良いでしょうか?
bsaveを使っても上手く保存できません・・・
|
|
2011/9/4(Sun) 12:40:55|NO.41077
たんすさんのソースを借り、読み込みと保存機能を付けさしてもらいました。
//--------------------------------------
sdim N,50,10
sdim Na,50,10
dim A,10 ;見た話数の変数
//----------------------------
objsize 50,20,1
repeat 10
pos 0,cnt*20 :input N(cnt),200,20;タイトル入力
pos 200,cnt*20 :input Na(cnt),80,20,6;話数入力
pos 280,cnt*20 :button "UP",*up
pos 330,cnt*20 :button "DOWN",*down
objprm cnt*4+1,"まだ見てない"
loop
pos 590,0
button "保存する",*save
goto*load
stop
//-------------------------------------
*up
st=stat ;ボタンIDの取得
A(st/4)++
objprm st-1,""+A(st/4)+"話まで見た"
stop
//-------------------------------------
*down
st=stat ;ボタンIDの取得
A(st/4)--
objprm st-2,""+A(st/4)+"話まで見た"
if A(st/4) <= 0{
objprm st-2,"まだ見てない"
A(st/4)=0
}
stop
//-------------------------------------
*save
sdim data,1000
notesel data
repeat 10
noteadd ""+N(cnt),-1,0
noteadd ""+A(cnt),-1,0
loop
notesave "data.txt"
stop
*load
sdim data,1000
notesel data
exist "data.txt"
if strsize<=0{notesave"data.txt":stop}
noteload "data.txt"
repeat 10
noteget N(cnt),2*cnt
objprm 4*cnt,N(cnt)
noteget Na(cnt),2*cnt+1
A(cnt)=int(Na(cnt))
if A(cnt)=0{Na(cnt)="まだみてない"}else{
Na(cnt)=""+A(cnt)+"話まで見た"
}
objprm 4*cnt+1,Na(cnt)
loop

| |
|
2011/9/4(Sun) 21:21:51|NO.41086
ありがとうございます。
|
|