HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
1213
Empeldオートロードしたい(訂正4未解決


Empeld

リンク

2008/12/13(Sat) 19:05:34|NO.21534

某ゲームのアイテム所得状況管理プログラムを作っているのですが、
オートロード(前回最後に開いていたファイルを開く機能)を付けたいと思うのですが、
できなくていじっていたら、訳がわからなくなってしまいました。
どなたか、解る方がいらっしゃったら、ご教授ください。

メインファイルです(余計な部分を少なくしました)

*初期設定 #include "hspda.as" objysize = 30 #include "fish.txt" sdim need,100 dim needitem,100 screen 0,1000,(objysize * 21),,0,0 *main gosub *subrutin button "セーブする",*save button "ロードする",*load button "リセットする",*reset mes button "ふつうの道具入手状況",*normalitem button "ぎん の道具入手状況",*silveritem button "きん の道具入手状況",*goldenitem mes combox cmbx,100,"10個\n20個\n50個\n100個" button "欲しい 家具", *needenitemname button "欲しい 家具入手状況",*needenitemchk pos 0,(objysize * 20) button "終了する",*exit exist "system.txt" //systemファイルがあるか調べる if strsize > 0 { //あった場合(ロードする) vload "system.txt" endfile = lastfile title "前回のファイル:「"+endfile+"」です" //if saven = 1 { //(オート)セーブしてある場合 // goto *autosave //} } else { //無かった場合(作る) //endfile = lastfile vsave_start vsave_put endfile vsave_end "system.txt" goto *main } *autosave vsave lastfile wait 1 goto *autosave *normalitem gosub *subrutin chkbox "スコップ",sco chkbox "あみ",net chkbox "つりざお",fis chkbox "おの",ark chkbox "じょうろ",zyo chkbox "パチンコ",pat button "戻る",*main stop *silveritem gosub *subrutin chkbox "ぎんのスコップ",silsco chkbox "ぎんのあみ",silnet chkbox "ぎんのつりざお",silfis chkbox "ぎんのおの",silark chkbox "ぎんのじょうろ",silzyo chkbox "ぎんのパチンコ",silpat button "戻る",*main stop *goldenitem gosub *subrutin chkbox "きんのスコップ",gldsco chkbox "きんのあみ",gldnet chkbox "きんのつりざお",gldfis chkbox "きんのおの",gldark chkbox "きんのじょうろ",gldzyo chkbox "きんのパチンコ",gldpat button "戻る",*main stop *needenitemname switch cmbx case 0 needmax = 10 swbreak case 1 needmax = 20 swbreak case 2 needmax = 50 swbreak case 3 needmax = 100 swbreak swend gosub *subrutin x = 0 y = 0 counter = 0 repeat needmax x = ( cnt / 20 ) * 128 y = counter * objysize if y > objysize * 19 { y = 0 counter = 0 } pos x,y input need(cnt) counter = counter + 1 loop button "戻る",*main stop *needenitemchk gosub *subrutin x = 0 y = 0 counter = 0 repeat needmax x = ( cnt / 20 ) * 128 y = counter * 24 if y > 24 * 19 { y = 0 counter = 0 } pos x,y chkbox need(cnt),needitem(cnt) counter = counter + 1 loop button "戻る",*main stop *save dialog "txt",17,"アイテムリスト" if stat = 0 { goto *main } vsave refstr lastfile = refstr saven = 1 stop *load dialog "txt",16,"アイテムリスト" if stat = 0 { goto *main } vload refstr lastfile = refstr saven = 1 stop *reset #include "reset.txt" stop *exit lastfile = refstr endfile = lastfile vsave_start vsave_put endfile vsave_put lastfile vsave_end "system.txt" wait 10 end *subrutin cls 4 objsize 128,objysize return *fish gosub *subrutin repeat fishmax input fishes(cnt) wait 1 loop button "戻る",*main stop *fishcount gosub *subrutin color 255,255,255 repeat fishmax mes fishes(cnt) input fisheses(cnt) wait 1 loop button "戻る",*main stop

"fish.txt"

fishmax = 5 sdim fishes,fishmax dim fisheses,fishmax fishes(0) = "マグロ" fishes(1) = "サメ" fishes(2) = "シーラカンス" fishes(3) = "イトウ" fishes(4) = "ドラド" //[EOF]

"reset.txt"

sco = 0 net = 0 fis = 0 ark = 0 zyo = 0 pat = 0 silsco = 0 silnet = 0 silfis = 0 silark = 0 silzyo = 0 silpat = 0 gldsco = 0 gldnet = 0 gldfis = 0 gldark = 0 gldzyo = 0 gldpat = 0 repeat 100 need(cnt) = "" loop repeat 100 needitem(cnt) = 0 loop saven = 0 //[EOF]



この記事に返信する


check

リンク

2008/12/13(Sat) 20:17:53|NO.21536

よくわからないのだが、
前回開いたファイルの名前をファイルにセーブして、
それを読み込んでその名前のファイルを開くのではだめなのか?



Empeld

リンク

2008/12/13(Sat) 20:31:32|NO.21537

>前回開いたファイルの名前をファイルにセーブして、
>それを読み込んでその名前のファイルを開く

返信ありがとうございます。

前回開いたファイルの名前を"system.txt"に保存して、
又、立ち上げて("system.txt"を読み込んで)みても
上手くロードされないのです・・・



check

リンク

2008/12/14(Sun) 00:57:18|NO.21551

まだよくわからんが、サンプル。

dialog "",16 fname=refstr exist "savefname.txt" if strsize=-1 : bsave "savefname.txt",non,-1,-1 bsave "savefname.txt",fname,-1,-1 bload "savefname.txt",fname2,-1, -1 bload fname2,info,-1,-1 mes fname2



tsuka

リンク

2008/12/14(Sun) 11:46:05|NO.21554

*autosaveでまっさらな状態の変数を上書きしちゃってるとか・・・



ONION software Copyright 1997-2023(c) All rights reserved.