どもも。カサコンです。
この前ふとアクセス分析ツール(GoogleAnalytics)でこのブログの様子を見てみたんですがなんと分析を開始してから本日までで66万PVを突破しました!(2013年9月~)いやーなんというか全く実感が無かったので感無量ですね。
これからもよろしくお願いします。
さて。そんな記念すべき?今回はLR2スキンを好き勝手に改造していて幾つか気づいたこととかをTIPSとして残しておこうかなーとか思ったのでそれについてです。
もちろんネタは一気に出すと楽しみがなくなる(ネタが無くなる)のでちょびちょびと小出ししていこうかなと思っています。
あ。一応ですがどのネタも大したものではないとは思うので某漫画よろしく『過度な期待はしないで』お願いします。
あと自分がやっている方法は完全に我流なのでもっとやりやすい方法は腐るほどあるかと思われます。その辺りもあしからず。
今回のネタは【レーンカバーを見せびらかす】です。
皆さんはレーンカバーにこだわりはありますか?
かっこいいものやかわいいものもあったりして迷ってしまいますよね。
僕もお気に入りの画像を使ってレーンカバーを作ってみたことがあります。
ただちょっと不満なことがありました。
それは普段からレーンカバーをかなり下ろして使っているプレイヤーはともかくちょっとだけしか降ろさない僕みたいなプレイヤーはレーンカバーの画像を変更してもあまり見られないことでした。
ちょっとでもいいからレーンカバーを見たいと思ってレーンカバーの下方にキャラクターを無理やり配置してみたりもしてみたりしたのですがやっぱりなんというかもったいない。
せっかくかわいいレーンカバーにしたんだもん。
どうせならドーンとみたいじゃないですかw
あと曲が終了したと思っていたら実は続いていてハード落ちする(ミラレジ)あの現象を何とかしたいなーとも思ってました。
そこで考えてみました。
だったら曲が終了したらレーンカバーを全開まで下ろしてやれば・・・?
- レーンカバーを隅から隅まで堪能できる!!!
- レーンカバーが降りる事で曲の終了が分かる!!!
ということが出来て一石二鳥じゃないか!
って言う訳で今回のネタなわけです。
結論からいうとこんな感じ。まぁ満足出来る出来かなぁ。
改変作業
今回は普段自分も愛用しているwispさんのスキンを改変していきます。
いつも素晴らしいスキンをありがとうございます。
レーンカバーの定義を探してみる
まずは該当のCSVファイルを開いてレーンカバーの画像を使っている定義を探します。
あ。一応ですが自分はExcel使って編集しています。
#IMAGE LR2files\Theme\spdframe\system\#default.png //1 #IMAGE LR2files\Theme\spdframe\FC\*.png //2 #IMAGE LR2files\Theme\spdframe\lanecover\ACwide\*.png //3 #IMAGE LR2files\Theme\spdframe\progressbar\*.png //4 #IMAGE LR2files\Theme\spdframe\turntable\AC\*.png //5 #IMAGE LR2files\Theme\spdframe\bomb\*.png //6 #IMAGE LR2files\Theme\spdframe\close\*.png //7
この場合だと3行目にレーンカバーの画像が使われています。
なのでgr定義が3の箇所を検索します。
完全一致で検索すると楽ですね。
その箇所を参考にしながら早速機能を実装していきます。
テキトーな図解
この画像貼る意味があるかは分からないですが一応実装の流れを画像で表すとこんな感じでしょうか?
まずレーンカバーの画像をサドプラ用とは別に画面外に待機しておいて曲終了を判断したら待機しておいたレーンカバーを一気に下ろすっていう作戦です。
終了時判定はフルコンボとかで多分実装されているはず・・・!
曲終了を判断するには?
ありがたい事に有志の方がWeb上で確認できる仕様書を作ってくださっているのでコチラを参考に調べてみます。するとtimerに『143 最終ノートタイマー 1P』というものがあるのでそれを使います。
//最終ノート後レーンカバーを下ろす //SRC定義 (NULL) gr x y w h div_x div_y cycle timer op1 op2 op3 #SRC_IMAGE 0 3 195 0 194 342 1 1 0 143 0 0 0 //DST定義 (NULL) time x y w h acc a r g b blend filter angle center loop timer op1 op2 op3 #DST_IMAGE 0 0 420 -342 194 342 2 255 255 255 255 1 0 0 0 1000 143 0 0 0 #DST_IMAGE 0 1000 420 0 194 342 2 255 255 255 255 1 0 0 0
こんな感じになりました。
timerに設定した最終ノートタイマーが発動すると1000ミリ秒(1秒)でレーンカバーを完全に下ろします。y軸が-342から0に変わっているのが味噌です。
ちなみにCSVは上から順番に読み込まれる仕様となっているのでCSVを追加、改変する時にはその辺りにも注意ですね。