Shell


シェルフォルダのファイルは以下の通り。

home
 +-ghost
   +-myghost
     +-shell
       +-master
         +-descript.txt
         +-surface*.png
         +-surface*.pna
         +-surfaces.txt
         +-menu_background.png
         +-menu_foreground.png
         +-menu_sidebar.png
         +-readme.txt
         +-thumbnail.png

         +-surfacetable.txt (SSPのみ)



descript.txt
シェルを識別するためのファイル。
テキスト内の記載事項はリンク先を参照。



surface*.png
サーフィスファイル。
デスクトップに表示される絵。
対応形式はPNGのみ。
画像サイズ、色数に制限は無い。

画像左上の1ドット(座標0,0)と同色が透過される。


サーフィスの番号にはある程度の推奨する割り振りがある。
必ずこの番号にする必要は無いが00と10のみは必須。

sakura側
00 素
01 照れ
02 驚き
03 不安
04 落ち込み
05 微笑み
06 目閉じ
07 怒り
08 冷笑
09 照れ怒り
25 歌

kero側
10 素
11 刮目
19 歌

サーフィス番号は0〜8192まで使える。(MATERIA仕様)
他のベースウェアには制限が無い。



surface*.pna
サーフィスのアルファチャンネル定義ファイル。
PNA自体はPNGをリネームしたもの。
サーフィス番号と同じ番号のpnaファイルを置くことによってサーフィスの半透明化ができる。

surface0.png surface0.pna デスクトップの表示

ただし、Windows2000/XPでULWモードを使用したときのみ。
Windows9xではpnaは無視される。
また、透過が完全でない場所は当たり判定が発生する。



surfaces.txt
サーフィスのID割り当て、レイヤー合成、アニメーション、当たり判定などを定義するファイル。

surface0
{
collision0,188,25,252,63,Head
collision1,190,92,236,118,Face
collision2,180,191,220,222,Bust
collision3,154,311,248,362,Skirt
point.centerx,212
point.centery,198
point.kinoko.centerx,214
point.kinoko.centery,34

0interval,sometimes
0pattern0,101,10,overlay,168,67
0pattern1,100,10,overlay,168,67
0pattern2,101,10,overlay,168,67
0pattern3,-1,10,overlay,168,67
}

surface10
{
collision0,40,56,95,90,Head
point.centerx,70
point.centery,66
sakura.balloon.offsetx,80
sakura.balloon.offsety,-100
kero.balloon.offsetx,-30
kero.balloon.offsety,20
}


上記のように定義し各サーフィスのプレス内に記述する。
定義内容についてはsurfaces.txt参照。


下記のように複数のサーフィスを同時に定義することも可能。

surface0,surface1
{
0interval,sometimes
0pattern0,101,10,overlay,168,67
0pattern1,100,10,overlay,168,67
0pattern2,101,10,overlay,168,67
0pattern3,-1,10,overlay,168,67
}


また、SSPのみ下記のような範囲指定や複数指定が可能。

surface0-9,25
{
0interval,sometimes
0pattern0,101,10,overlay,168,67
0pattern1,100,10,overlay,168,67
0pattern2,101,10,overlay,168,67
0pattern3,-1,10,overlay,168,67
}


さらにSSPのみ下記のような定義の追加も可能。

surface.append0-9,25
{
collision0,188,25,252,63,Head
collision1,190,92,236,118,Face
collision2,180,191,220,222,Bust
collision3,154,311,248,362,Skirt
}


!で除外設定もできる。

surface.append0-9,25,!5-8
{
collision0,188,25,252,63,Head
collision1,190,92,236,118,Face
collision2,180,191,220,222,Bust
collision3,154,311,248,362,Skirt
}


サーフィスIDはエイリアスで任意IDに変更する事ができる。

sakura.surface.alias
{
smile,[5]
}

kero.surface.alias
{
10,[10,11,12]
}


とすると\s[5]を|s[smile]とする事も可能。
また、上記のようにする事で\s[10]をID10、11、12からランダムにすることができる。

char*.surface.aliasで2人目以降の相方側のエイリアスも可能。(SSP専用)

アニメーション、着せ替えについてはアニメーションを参照。



surfaces2.txt
SSP専用。
機能はsurfaces.txtと同じ。
互換性を維持しつつSSP専用の機能を使うためのもの。
必要な部分のみを追記する形でも問題ない。


readme.txt
シェルメニューのRead Me! ボタンを押した時に表示されるテキスト。
ゴースト製作者ではないシェル製作者が配布元などを記載するためのもの。



thumbnail.png
メニューツリーでシェルの選択時に表示されるサムネイル。
使用可能な画像形式はpngもしくはjpg。
pngをpnrにリネームすると画像左上の1ドット(座標0,0)と同色が透過される。
このファイルは省略可能。



surfacetable.txt
SSP専用。

0,素(さくら)
10,素(うにゅう)


上記のような記述のテキストをフォルダに置くとサーフィステストウィンドウの表示が代替される。


version 1.0書式での場合

charset,Shift_JIS
version,1
option,DisableNoDefineSurfaces

group,さくら
{
scope,0

0,素
1,照れ
3,不安
4,落ち込み
7,怒り
}

group,うにゅう
{
scope,1

10,素
11,つり目
}

//非表示設定
group,__disabled
{
19,__parts
}


charset,Shift_JISは1行目に必要。
charsetは理由がない限りはShift_JISを使用する。

version,1はversion 1.0フォーマットを使用するのに必要。

option,DisableNoDefineSurfacesは指定のないサーフィスを除外するオプション。

グループ名を__disabledにするとそのサーフィスグループをリストに表示しない。
 管理人 : 緋龍華 麒麟