中文偽春菜後援會論壇 » 生命的殿堂 » 歌詞卡無限製
(ときはら) 黑子
版主
泥沼不是一天造成的...
OnFileDrop2 { if '.mp3' _in_ reference0 { "\0\s[0]要播放此音樂嗎?\n\n/ \q[播放且唱出,OnMusicPlayWithLyric,%(reference0),play]\n/ \q[僅播放,OnMusicPlayWithLyric,%(reference0),play,nolyric]\n/ \q[取消,CANCEL]"; } } OnMusicPlayWithLyric { _mp3 = REPLACE(reference0, '\', '\\'); //' _lrc = REPLACE(reference0, '.mp3', '.lrc'); _txt = ''; case reference1 { when 'play' { _txt += "\1\s[10]\q[暫停,OnMusicPlayWithLyric,%(reference0),pause,%(reference2)]\n/ \1\s[10]\q[結束,OnMusicPlayWithLyric,%(reference0),stop]\n\n/ \0\s[25]\![sound,stop]\![sound,play,%(_mp3)]"; if reference2 != 'nolyric' { _txt += GetLyric(_lrc); playTime = GETTICKCOUNT(); } } when 'pause' { _txt += "\1\s[10]\q[再開,OnMusicPlayWithLyric,%(reference0),resume,%(reference2)]\n/ \1\s[10]\q[結束,OnMusicPlayWithLyric,%(reference0),stop]\n\n/ \0\s[25]\![sound,pause]"; if reference2 != 'nolyric' { timeDiff = playTime - GETTICKCOUNT(); } } when 'resume' { _txt += "\1\s[10]\q[暫停,OnMusicPlayWithLyric,%(reference0),pause,%(reference2)]\n/ \1\s[10]\q[結束,OnMusicPlayWithLyric,%(reference0),stop]\n\n/ \0\s[25]\![sound,resume]"; if reference2 != 'nolyric' { _txt += GetLyric(_lrc,timeDiff); playTime = GETTICKCOUNT() + timeDiff; } } when 'stop' { _txt += '\![sound,stop]'; } } _txt; } /*--------------------------------------------------------------------------------------- * 函式名稱: GetLyric * _argv[0]: 歌詞檔路徑 * _argv[1]: 歌詞顯示延遲時間 * _argv[2]: 歌詞檔案語系 0 = Shift_JIS, 1 = UTF-8, 127 = 系統編碼 *--------------------------------------------------------------------------------------- */ GetLyric { if _argc < 3 _tmp = FCHARSET(1); else _tmp = FCHARSET(_argv[2]); _txt = ''; _re = FOPEN(_argv[0],'r'); if _re == 1 { _txt += '\_q\__w[clear]'; while (_re = FREAD(_argv[0])) != -1 { if SUBSTR(_re, 0, 4) == '[ti:' { _txt += '\1曲名:' + SUBSTR(_re, 4, STRLEN(_re)-5) + '\n\0'; } elseif SUBSTR(_re, 0, 4) == '[ar:' { _txt += '\1歌手:' + SUBSTR(_re, 4, STRLEN(_re)-5) + '\n\0'; } elseif SUBSTR(_re, 0, 1) == '[' && SUBSTR(_re, 3, 1) == ':' && (SUBSTR(_re, 6, 1) == ':' || SUBSTR(_re, 6, 1) == '.') { _min = SUBSTR(_re, 1, 2); _sec = SUBSTR(_re, 4, 2); _msc = SUBSTR(_re, 7, 2); _len = TOINT(_min)*60000 + TOINT(_sec)*1000 + TOINT(_msc)*10 + _argv[1]; _str = SUBSTR(_re, 10, STRLEN(_re)-10); _txt += "\__w[%(_len)]%(_str)\n"; } } FCLOSE(_argv[0]); } else { _txt += '找不到歌詞檔。\n[200]請將歌詞檔命名成與MP3檔一致的檔名,並放在同一資料夾內。'; } _txt; }
查看個人網站
查看詳細資料
TOP
炮灰美術
金牌會員
不行啦 我真的只是個畫圖的@口@; ...
屢發政治相關文章,永久禁止帳號
禁止訪問
網主福佳網誌
///////// 文 ///////// 種辭書 ///////// written by umeici. OnFileDrop2 { _filepath = SPLITPATH(reference0) _filename = _filepath[2] _fileext = TOLOWER(_filepath[3]) case _fileext { when ".png", ".jpg", ".jpeg", ".bmp" { Wallpaperfile = reference0 "\0\s[20]%(_filename)%(_fileext)是嗎。\w9\w9\s[0]\n\n[half]這個、\w9\w9要設定成桌布嗎?\n\n/ \q[◇置中,SetWallpaper_0]\n/ \q[◇並列,SetWallpaper_1]\n/ \q[◇放大,SetWallpaper_2]\n\n[half]/ \q[◇取消,SetWallpaper_Cancel]\e" } when ".mid", ".wav", ".mp3", ".wma", ".au", ".ogg" { Musicfile = reference0 "\0\s[20]%(_filename)%(_fileext)是嗎。\w9\w9\s[0]\n\n要聽這首音樂嗎?\n\n/ \q[◇通常播放,MusicStart_0]\n/ \q[◇重複播放,MusicStart_1]\n\n[half]/ \q[◇取消,MusicStart_Cancel]\e" } others { "\0\s[0]%(_filename)%(_fileext)\e" } } } Select.SetWallpaper_0 { _i = FUNCTIONEX("saori\proxy.dll", "set_wall_paper.exe", "%(ASC(34))%(Wallpaperfile)%(ASC(34))", "0") "\0\s[0]嗯…\w9\w9\n像這樣子嗎?\e" } Select.SetWallpaper_1 { _i = FUNCTIONEX("saori\proxy.dll", "set_wall_paper.exe", "%(ASC(34))%(Wallpaperfile)%(ASC(34))", "1") "\0\s[0]嗯…\w9\w9\n像這樣子嗎?\e" } Select.SetWallpaper_2 { _i = FUNCTIONEX("saori\proxy.dll", "set_wall_paper.exe", "%(ASC(34))%(Wallpaperfile)%(ASC(34))", "2") "\0\s[0]嗯…\w9\w9\n像這樣子嗎?\e" } Select.SetWallpaper_Cancel { "\0\s[0]那麼、\w9停止變更壁紙。\e" } Select.MusicStart_0 { _i = FUNCTIONEX("saori\mciaudior.dll", "stop") _j = FUNCTIONEX("saori\mciaudior.dll", "load", "%(Musicfile)") _k = FUNCTIONEX("saori\mciaudior.dll", "play") "\0\s[0]好的、\w9那麼開始播放。\e" } Select.MusicStart_1 { _i = FUNCTIONEX("saori\mciaudior.dll", "stop") _j = FUNCTIONEX("saori\mciaudior.dll", "load", "%(Musicfile)") _k = FUNCTIONEX("saori\mciaudior.dll", "loop") "\0\s[0]好的、\w9那麼開始播放。\e" } Select.MusicStart_Cancel { "\0\s[0]好的。\e" } //**** 關連 ***************************************************************** //---- 中 ------------------------------------------------------- OnInstallBegin { "\0\s[20]嗯…\e" "\0\s[20]唔…\e" } //---- 完了 ------------------------------------------------------- OnInstallComplete { if reference0 == "shell" { "\0\s[0]Shell『%(reference1)』\n\n[half]支給完成。\e" } elseif reference0 == "ghost" { "\0\s[0]人格『%(reference1)』\n\n[half]配置確認。\e" "\0\s[0]人格『%(reference1)』\n\n[half]投入確認。\e" } elseif reference0 == "balloon" { "\0\s[0]對話框『%(reference1)』\n\n[half]追加完成。\e" } elseif reference0 == "plugin" { "\0\s[0]套件『%(reference1)』\n\n[half]支給完成。\e" } } //---- 失敗 ----------------------------------------------------------------------------------------------- OnInstallFailure { "\0\s[3]好像失敗了…\w9\w9\1\s[10]原因是:%(reference0)。\e" } OnInstallRefuse { "\0\s[20]這是…\w9\w9\n『%(reference0)收』。\w9\s[0]\n請直接交給本人。\e" } //**** 消滅 *********************************************************************************************************** OnVanishSelecting { "\0\s[3]…\w9…\w9…\e" } OnVanishSelected { "\0\s[3]是這樣嗎…\w9\w9\s[1]\n啊、那個…\w9\w9\s[26]我不會忘記%(username)的。\w9\w9\s[1]\n\n[half]所以…\w9如果%(username)可以的話、也請…\w9\s[2]\n啊、\w9\w9\s[1]對不起、\w9\w9沒什麼。\w9\w9\1\s[10]…\w9…\w9…\w9\w9\0\s[40]\n\n[half]那麼、請保重。\w9\w9\1\s[10]\n\n[half]那。\w9\n有機會的話、再見吧。\w9\w9\w9\e" } OnVanishCancel { talkmemo = "e_0" "\0\s[3]…\w9請不要嚇我…\e" } TalkVanishButtonHold { "\0\s[3]…\w9繼續待在這裡也可以嗎?" } OnVanished { "\1\s[10]\0\s[6]對不起…\w9\w9\w5\n讓%(username)費事了。\e" } //**** ************************************************************************************************* OnBIFFBegin { "\0\s[0]那麼、查詢郵件。\n\n[half]\_q伺服器:%(reference2)\_q\e" } OnBIFFComplete { if reference0 == 0 { "\0\s[20]嗯…\w9\w9\s[0]\n什麼都沒有的樣子。\e" "\0\s[20]嗯…\w9\w9\s[0]\n0件。\e" } else { "\0\s[0]來了%(reference0)通郵件喔。\n\n[half]\_q郵件的總容量:%(reference1) Bytes\_q\e" } } OnBIFFFailure { if reference0 == "timeout" { "\0\s[0]唔~\w9\w9\w9\n無法順利完成。\w9\w9\n連線速度似乎太慢了。\e" } elseif reference0 == "kick" { "\0\s[0]唔~\w9\w9\w9\n無法順利完成。\w9\w9\s[20]\n密碼正確嗎?\e" } elseif reference0 == "defect" { "\0\s[0]唔~\w9\w9\w9\n無法順利完成。\w9\w9\s[20]\n有正確的設定嗎?\e" } else { "\0\s[0]唔~\w9\w9\w9\n無法順利完成。\e" } } //**** 更新 ***************************************************************** //---- 更新開始 ------------------------------------------------------------- OnUpdateBegin { "\0\s[0]更新開始。\e" } //---- 更新準備完了 --------------------------------------------------------- OnUpdateReady { "\0\s[6]有%(reference0)個更新。\e" } OnUpdateComplete { if reference0 == "none" { "\0\s[0]好像沒有更新。\e" } else { "\0\s[0]結束了。\e" } } OnUpdateFailure { if reference0 == "timeout" { "\0\s[3]連線逾時。\w9\w9\s[0]\n更新停止了。\e" } elseif reference0 == "md5 miss" { "\0\s[3]MD5不一致。\w9\w9\s[0]\n更新中止。\e" } else { "\0\s[3]error404:找不到檔案。\w9\w9\s[0]\n更新停止了。\e" } } //---- 更新 開始 ------------------------------------------------ OnUpdate.OnDownloadBegin { "\0\s[0]\_q%(reference0)\_q\e" } //---- 更新 MD5值照合開始 --------------------------------------------------- OnUpdate.OnMD5CompareBegin { "\0\s[0]MD5確認中。\e" } //---- 更新 MD5值一致 ------------------------------------------------------- OnUpdate.OnMD5CompareComplete { "\0\s[0]\_q%(reference1)\n%(reference2)\_q\n\n[half]一致。\e" } //---- 更新 MD5值不一致 ----------------------------------------------------- OnUpdate.OnMD5CompareFailure { "\0\s[0]\_q%(reference1)\n%(reference2)\_q\s[20]\n\n[half]嗯?" } //**** *************************************************************** //---- 開始 ----------------------------------------------------------- OnHeadlinesenseBegin { "\0\s[0]『%(reference0)』 的Headline確認…\e" } //---- 讀上 ------------------------------------------------------------- OnHeadlinesense.OnFind { //---- if reference2 == "First" || reference2 == "First and Last" { //---- 最初 "\0\b2\s[0]『%(reference0)』的Headline。" } elseif reference2 == "Next" { //---- 真中 "\0\b2\s[0]『%(reference0)』的Headline。" } elseif reference2 == "Last" { //---- 最後 "\0\b2\s[0]『%(reference0)』的Headline。" } -- //---- 本體 "\n\n%(reference3)\n\n" -- //---- 選擇肢 if reference2 == "First" || reference2 == "Next" { //---- 次場合 "\q0[][◇次頁]/ \q1[%reference1][◇讀取]/ \q2[HEADLINECANCEL][◇取消]\e" } else { //---- 次場合 "\q0[%reference1][◇讀取]/ \q1[HEADLINECANCEL][◇取消]\e" } } //---- 更新無 ------------------------------------------------------- OnHeadlinesenseComplete { "\0\s[0]沒有更新。\e" } //---- 失敗 ----------------------------------------------------------- OnHeadlinesenseFailure { "\0\s[6]唔~\w9\w9\w9\s[3]\n無法順利完成。\w9\n" -- if reference0 == "can't download" { "下載失敗。" } elseif reference0 == "can't analyze" { "解析失敗。" } else { "對不起。" } -- "\e" } //**** 作成關連 ***************************************************************** //---- updates2.dau作成開始 ------------------------------------------------------------- OnUpdatedataCreating { "\0\s[0]要是能順利做出『update2.dau』檔案就好了呢。\e" } //---- updates2.dau作成完了 ------------------------------------------------------------- OnUpdatedataCreated { "\0\s[0]嗯。\w9\w9\n完成了。\e" } //---- NAR作成開始 ---------------------------------------------------------------------- OnNarCreating { "\0\s[0]要是能順利做出『nar』檔案就好了呢。\e" } //---- NAR作成完了 ---------------------------------------------------------------------- OnNarCreated { "\0\s[0]好的。\w9\w9\n完成了。\e" } //**** 時計合 ********************************************************************* //---- 時計合開始 ------------------------------------------------------------------ OnSNTPBegin { "\0\s[0]那麼、\w9開始查詢正確時間。\e" } //---- 時刻取得成功、比較開始 ---------------------------------------------------------- OnSNTPCompare { "\0\s[0]/ current %reference1[0]/%reference1[1]/%reference1[2] %reference1[3]:%reference1[4]:%reference1[5]\w2\n/ local %reference2[0]/%reference2[1]/%reference2[2] %reference2[3]:%reference2[4]:%reference2[5]\w2\n/ \n" -- if reference3 == 0 { "\0\s[0]已經對準了喔。\e" } else { "\0\n\s[0]誤差%(reference3)秒。\w9\w9\s[0]\n調整成正確時間。\6\e" } } //---- 時計合失敗 ------------------------------------------------------------------ OnSNTPFailure { "\0\s[3]無法確認…\e" } //**** ************************************************************************* //---- 解像度變更 ----------------------------------------------------------- OnDisplayChange { //---- 變數解像度色深度關情報取得 //---- 使分保持 displaybpp = reference0 displaywidth = reference1 displayheight = reference2 } //---- URL ---------------------------------------------------------------------- //---- CROW 始時呼 ---- OnURLDropping { "\0\s[6]下載中…\n\n[half]\_qURL:%(reference0)\_q\e" } /* //---- 起動時 MATERIA 檢出 ---------------------------------------------------------- OnEmbryoExist { "\0\s[0]既「伺」起動。\e" } //---- 起動時貓檢出 ----------------------------------------------------------- OnNekodorifExist { "\0\s[0]、貓‥‥\w9\1\s[10]‥\w5‥\5!!\e" } //---- 實行開始 ------------------------------------------------------- OnScreenSaverStart { "\0\s[0]動出\e" } //---- 實行終了 ------------------------------------------------------- OnScreenSaverEnd { "\0\s[0]%username、掃。\e" } */
//**** 音樂播放+壁紙變換 ********************************************************************************** OnFileDrop2 { if '.mp3' _in_ reference0 { "\1\s[11]得到一個音樂。\0\s[2]\b[2]要播放此音樂嗎?\n\n/ \![*]\q[播放且唱出,OnMusicPlayWithLyric,%(reference0)]\n/ \![*]\q[僅播放,OnMusicPlayWithLyric,%(reference0),nolyric]\n\n[half]/ \_b[img/close.png,inline]\q[Cancel,CANCEL]"; } _filepath = SPLITPATH(reference0) _filename = _filepath[2] _fileext = TOLOWER(_filepath[3]) case _fileext { when ".png", ".jpg", ".jpeg", ".bmp" { Wallpaperfile = reference0 "\0\s[2]\b[2]%(_filename)%(_fileext)。\n\n要把這個設定為壁紙嗎?\n/ \![*]\q[居中,SetWallpaper_0]\n/ \![*]\q[並列,SetWallpaper_1]\n/ \![*]\q[拉伸,SetWallpaper_2]\n\n[half]/ \![*]\q[Cancel,SetWallpaper_Cancel]\e" } others { "\0\s[0]%(_filename)%(_fileext)…這是什麽?\e" } } }
原帖由 貓魚 於 2008-6-18 10:45 發表 全部成功XD 實在是太感激了,這樣我對千千靜聽最後一個怨念也得以了結。 (只是歌詞卡還是要用它做"") --- 追加: 只是這樣無法選擇暫停/繼續、停止, 如果中途要換一首就要重起人格|||| 可不可以加上這個功能呢? ...
原帖由 lkyjimmy 於 2008-6-18 14:00 發表 我想只加入 但不作出其他修改 請問應該如何改
OnFileDrop2 { _filepath = SPLITPATH(reference0) _filename = _filepath[2] _fileext = TOLOWER(_filepath[3]) case _fileext { when ".png", ".jpg", ".jpeg", ".bmp" { Wallpaperfile = reference0 "\0\s[20]%(_filename)%(_fileext)是嗎。\w9\w9\s[0]\n\n[half]這個、\w9\w9要設定成桌布嗎?\n\n/ \q[◇置中,SetWallpaper_0]\n/ \q[◇並列,SetWallpaper_1]\n/ \q[◇放大,SetWallpaper_2]\n\n[half]/ \q[◇取消,SetWallpaper_Cancel]\e" } when ".mid", ".wav", ".mp3", ".wma", ".au", ".ogg" { if '.mp3' _in_ reference0 { "\0\s[0]要播放此音樂嗎?\n\n/ \q[播放且唱出,OnMusicPlayWithLyric,%(reference0),play]\n/ \q[僅播放,OnMusicPlayWithLyric,%(reference0),play,nolyric]\n/ \q[取消,CANCEL]"; } else { Musicfile = reference0 "\0\s[20]%(_filename)%(_fileext)是嗎。\w9\w9\s[0]\n\n要聽這首音樂嗎?\n\n/ \q[◇通常播放,MusicStart_0]\n/ \q[◇重複播放,MusicStart_1]\n\n[half]/ \q[◇取消,MusicStart_Cancel]\e" } } others { "\0\s[0]%(_filename)%(_fileext)\e" } } }
Chinese Ukagaka Club © 2005-2008 Powered by Discuz! 6.1.0 © 2001-2007 Comsenz Inc.
Processed in 0.022420 second(s), 8 queries, Gzip enabled.
清除 Cookies - 聯繫我們 - 中文偽春菜後援會 - Archiver - WAP - TOP - 界面風格