補足:
今回の事例に関しては、ゴースト側での個別対応はないものとしてください。
*質問
シェルの着せ替えで「アニメ番号10または11が無効になったら20と21も無効にする」的な事ができればやりたいことがうまくいくと思うのですが、うまい方法が思いつきません。
アニメ番号10と11は着せ替え種別A、
20と21は着せ替え種別Bです。
種別Aは選択解除可能+複数選択不可、
種別Bは選択解除不可+複数選択不可であって欲しいです。
また、着せ替え種別Cが種別AとBへ多重着せ替えとしてあります。
(AとBに対してのみ効果をかけたいので、それができれば多重着せ替えでなくともよい)
*ダメだった具体例1
[/shell/hogehoge/descript.txt]
sakura.bindgroup10.addid,20,21
sakura.bindgroup11.addid,20,21
こうすると、アニメ番号20と21が両方同時に表示されてしまいます。
*ダメだった具体例2
以下の場合、アニメ番号10または11が有効の時の表示は問題ないのですが、
10または11を無効にした時に20または21が残ってしまいます。
[/shell/hogehoge/surfaces.txt]
surface0
{
element0,base,surface0.png,0,0
//----着せ替えに関係ない定義を省略----
//着せ替え種別A
animation10.interval,bind
animation10.pattern0,base,500,0,0,0
animation11.interval,bind
animation11.pattern0,base,501,0,0,0
//着せ替え種別B
animation20.interval,bind
animation20.pattern0,overlay,700,0,0,0
animation21.interval,bind
animation21.pattern0,overlay,701,0,0,0
}
surface500
{
element0,base,surface500.png,0,0
//着せ替え種別C
animation1401.interval,bind
animation1401.pattern0,base,601,0,0,0
animation1408.interval,bind
animation1408.pattern0,base,608,0,0,0
}
surface501
{
element0,base,surface501.png,0,0
//着せ替え種別C
animation1401.interval,bind
animation1401.pattern0,base,611,0,0,0
animation1408.interval,bind
animation1408.pattern0,base,618,0,0,0
}
surface601,608
{
element0,base,surface500.png,0,0
}
surface611,618
{
element0,base,surface501.png,0,0
}
surface.append601,611
{
element1,overlaymultiply,c_pink.png,0,0
}
surface.append608,618
{
element1,overlaymultiply,c_violet.png,0,0
}
surface700
{
element0,base,surface850.png,0,0
//着せ替え種別C
animation1401.interval,bind
animation1401.pattern0,base,801,0,0,0
animation1408.interval,bind
animation1408.pattern0,base,808,0,0,0
}
surface701
{
element0,base,surface851.png,0,0
//着せ替え種別C
animation1401.interval,bind
animation1401.pattern0,base,811,0,0,0
animation1408.interval,bind
animation1408.pattern0,base,818,0,0,0
}
surface801,808
{
element0,base,surface850.png,0,0
}
surface811,818
{
element0,base,surface851.png,0,0
}
surface801,811
{
element1,overlaymultiply,c_pink.png,0,0
}
surface808,818
{
element1,overlaymultiply,c_violet.png,0,0
}
@ponapalt
・描画メソッドstopはウェイト関係なし(resh1/surfaces02.txt52行目)
・描画メソッドstartはウェイト関係なし(resh1/surfaces02.txt60行目)
・animation1pattern4の-1での消去(resh1/surfaces02.txt59行目)
・animation1pattern5でstartさせるアニメーション(resh1/surfaces02.txt51行目)
フォルダresh1の上記は4つともウェイト0という理解をしているのですが、一瞬表示が見えてしまうのはsurfacesXX.txtに忠実に描画されているからであり半透明は関係ないということでOKですか?
@mkbt たぶんSSPのエラーも出ると思うので(当時の私は恐らく無頓着だったせい)(その祈り略では出ました)、修正版のtxtが必要でしたら後日作って送りますが、どうしましょう。
@mkbt いえ、その祈りに光あれとその祈りは星となるに関しては、txt類は私が書いたはずです。(つまり聖灰水曜日とK9のnew版へお渡ししたフリーシェル版のtxt類でも瞬きでちらつきが起こると思います)
※05.31 17:35追記
CWの文章を変更、dropboxのファイルを削除しました。
他は後の人の為に残しておきます。
----
環境:
Windows11 Home + SSP/2.6.07
再現するシェル(resh1)と再現しないシェル(resh2)一式
※削除済み※
例:
resh1/surfaces02.txtの74行目と75行目の間で一瞬眼パーツが消えます。(\s[100]のID1)
対症療法として、眼パーツを24bitPNGにして透過色を追加し、アニメーションの順番を変えました。(resh2/surfaces.txtの1504~1505行目、\s[100]のID1)
これはちらつきません。