日記一覧表示 ゴーストの日記、更新記録等に。ssu.dll必須。 アイテム一覧と違い新しい順に並んでます。 多い場合は別ページに分けて表示されます。 アイテムと違い毎回内容が違うと思うのでsatori_savedata.txtで保存するようにしてあります。 そのため最大日記件数があまりにも多いとsatori_savedata.txtが肥大化するおそれがあるので気を付けてください。 ------------------------------------------------------- ここでは書いた日記の日付は「日記書いた日」という変数に「◇」区切りで配列保存されてます。 保存する変数名を変える時は「日記書いた日」を好きな変数名に一括置き換えすればOK。 「◇」で区切っているので「◇」が含まれてる日記タイトルがあると当然不具合が出ます。その場合区切り字を別なものに変えてください。(半角版が存在しない全角記号が良いです) 仕様上「全く同じタイトルの日記」を二回以上書こうとすると上書きされてしまうので気をつけてください。 (タイトルに時刻を付けるか番号を振ると回避できると思います) ------------------------------------------------------- 以下辞書サンプル。 #======================================================= # 設定 #------------------------------------------------------- # ○ 1ページに何件表示するか設定 #------------------------------------------------------- @表示件数 5 #------------------------------------------------------- # ○ 最大何件まで日記を書くか設定 #- - - - - - - - - - - - - - - - - - - - - - - - - - - - # これを越えた場合古い日記から削除されます。 #------------------------------------------------------- @最大日記件数 25 #------------------------------------------------------- # ○ 日記タイトル設定 #- - - - - - - - - - - - - - - - - - - - - - - - - - - - # 『(タイトル)』はいらない場合は削除してください。 #------------------------------------------------------- @日記タイトル (zen2han,(現在年)/(現在月)/(現在日))((現在曜日)) (zen2han,(現在時):(現在分):(現在秒)) 『(タイトル)』 #======================================================= # 起動・終了など #------------------------------------------------------- *起動 $SAORI引数の計算 自動 :起動しました。 *0つつかれ >メニュー *終了 #------------------------------------------------------- # 次回起動時まで保存する必要のない変数をここで消しておきます。 # 特に気にならない人は消さなくてもいいです。 #------------------------------------------------------- $ページ数 $現在ページ $日記の数 $記入した日記タイトル $タイトル $SAORI引数の計算 :終了します。 #======================================================= # メニュー #------------------------------------------------------- *メニュー :どうします? _日記を見る _日記を書く _日記を消す _閉じる #======================================================= # 日記を見る #------------------------------------------------------- *日記を見る $SAORI引数の計算 無効 >日記空欄 (変数「日記書いた日」の存在)==0 $日記の数 (split,(日記書いた日),◇) #------------------------------------------------------- # 全部で何ページになるか調べる #------------------------------------------------------- $ページ数 (if,(日記の数)%(表示件数)==0,(calc,(日記の数)/(表示件数)),(calc,(日記の数)/(表示件数)+1)) $現在ページ 1 >日記一覧 #------------------------------------------------------- # 日記一覧表示 #------------------------------------------------------- *日記一覧 $SAORI引数の計算 無効 :\_q日記一覧 全(日記の数)件\n[half] Page (loop,ページリンク,1,(ページ数))\n[half] $日記の数 (split,(日記書いた日),◇) (loop、日記表示、(先頭日記番号)、(calc、(先頭日記番号)+(calc、(表示件数)-1))) _戻る メニュー $SAORI引数の計算 自動 @ページリンク (if、(現在ページ)==(ページリンクカウンタ)、φ<(ページリンクカウンタ)φ>、\q[ (ページリンクカウンタ) ,別なページへ]) #------------------------------------------------------- # ↑ 表示中のページはリンクをしないで< >で囲むようにしています #------------------------------------------------------- @日記表示 (if、(変数「(日記項目)」の存在)==1、☆ \q[((日記項目)),日記の内容]\n) @日記項目 S(han2zen、(calc、(calc、(日記の数)-1)-(日記表示カウンタ))) #------------------------------------------------------- # ↑アイテム一覧と違い新しい順に並んでいるため #(calc、(calc、(日記の数)-1)-…)が入ってます。 #------------------------------------------------------- @先頭日記番号 (calc,(calc,(現在ページ)-1)*(表示件数)) #------------------------------------------------------- # ページリンククリックで別ページへ #------------------------------------------------------- *別なページへ # 選択したラベルから半角空白を取り除いたものを現在ページにしています $現在ページ (erase,(選択ラベル), ) >日記一覧 #------------------------------------------------------- # 日記内容表示 #------------------------------------------------------- *日記の内容 :☆ (選択ラベル)\w5 ((選択ラベル)の日記) _戻る 日記一覧 #------------------------------------------------------- # 日記空欄時メッセージ #------------------------------------------------------- *日記空欄 :日記はまだ書いてません。 _戻る メニュー #======================================================= # 日記を書く #- - - - - - - - - - - - - - - - - - - - - - - - - - - - # ここでは同じ時刻の日記は一つしか書けないようにしています。 # 同じ時刻の日記を書いた場合、後から書いた日記で上書きされます。 #------------------------------------------------------- *日記を書く $SAORI引数の計算 無効 (nop,(split,(日記に書く文章),◇)) #------------------------------------------------------- # 日記のタイトルを入れる(ここでは(S0)) #------------------------------------------------------- $タイトル (S0) $記入した日記タイトル (日記タイトル) #------------------------------------------------------- # 日記の本文を入れる(ここでは(S1)) #------------------------------------------------------- $(記入した日記タイトル)の日記 (S1) :日記 (記入した日記タイトル) を書きました。 _戻る メニュー >日記一覧に日記を追加 (count,(日記書いた日),(記入した日記タイトル))==0 $手動セーブ 実行 $SAORI引数の計算 自動 #------------------------------------------------------- # 前回と書いた時刻が違うなら日記タイトル一覧に追加 #------------------------------------------------------- *日記一覧に日記を追加 $日記書いた日 (if,(変数「日記書いた日」の存在)==1,(日記書いた日)◇)(日記タイトル) $手動セーブ 実行 $SAORI引数の計算 自動 $日記の数 (split,(日記書いた日),◇) >日記最大件数越えた (日記の数)>(最大日記件数) #------------------------------------------------------- # 日記の数が最大件数を超えたら一番古い日記を一件消す。 #------------------------------------------------------- *日記最大件数越えた $SAORI引数の計算 無効 $日記書いた日 (erase_first,(日記書いた日),(S0)◇) $(S0)の日記 $手動セーブ 実行 $SAORI引数の計算 自動 #------------------------------------------------------- # 以下日記内容単語群。タイトルと本文を◇で区切ってます #------------------------------------------------------- @日記に書く文章 あめ◇今日は一日中雨でした。\w5\nがっかり…。 おてんき◇今日はいい天気でした。\w5\n明日も晴れるといいな。 たいくつ◇今日は一日中退屈でした。 いそがしい◇今日は忙しかったです。 なんだか◇今日は日記書きたくない。 誕生日◇今日は(乱数7〜12)歳のお誕生日でした。\w5\nたくさんの人にお祝いされました。 つかれたー◇今日はすっごく疲れました。\w5\nおやすみ〜。 ねむい◇一日48時間寝たいです。 ♪♪♪◇今日は一日中(遊ぶ場所)で遊びました。\w5\n楽しかった〜! 料理◇今日は(料理)を作ったよ♪ @遊ぶ場所 遊園地 動物園 水族館 プール @料理 カレー シチュー オムライス ケーキ #======================================================= # 日記を全部消す #------------------------------------------------------- *日記を消す $SAORI引数の計算 無効 $日記の数 (split,(日記書いた日),◇) (loop,日記変数消去,1,(日記の数)) $日記書いた日 $手動セーブ 実行 $辞書リロード 実行 $SAORI引数の計算 自動 :日記をまっしろにしました。 _戻る メニュー *日記変数消去 $(S(han2zen,(calc,(日記変数消去カウンタ)-1)))の日記 #======================================================= # バルーンを閉じる #------------------------------------------------------- *閉じる :閉じました。 #=======================================================