.. default-domain:: csharp ==================== マルチID,FiveCC ==================== ウィンドウスクリプト内で使われるIDの形式について、説明します。 .. _MulID: マルチID --------------------------- 32bit整数を、8bit,8bit,16bitに分割して扱うIDをマルチIDと定義します。 次のようなフォーマットで記述します。 8bit_8bit_16bit 次の範囲で値が取れます。 000_000_00000 ~ 255_255_65535 ただし、000_000_00000は使わないようにしてください。 :: 000_010_00000 123_123_12345 123_456_78910 //invalid(It is beyond the range of value) .. C#からのアクセス方法 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ クラス **MulId** を用意しています。 :: //Constructor MulId(string sId); MulId(uint uppper,uint middle,uint lower); MulId(uint val); // Properties uint Upper; //Get the upper 8bit uint Middle; //Get the middle 8bit uint Lower; //Get the lower 16bit //cast to uint static implicit operator uint (MulId mulId); .. .. _FiveCC: FiveCC --------------------------- 5文字以内のアスキー文字から構成されるIDです。 使える文字は、以下の通りです。 * 0~9 * a~z * A~Z * ?,_ * 半角スペース ただし、'?'と'_'は、同じ数値でエンコーディングされるので気を付けてください。 :: "BTN00" "BTN0?" = "BTN0_" "Test" .. C#からのアクセス方法 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ クラス **FiveCC** を用意しています。 :: //Constructor FiveCC(string sId); FiveCC(uint uppper,uint middle,uint lower); FiveCC(uint val); // Get the character pointed to by the index public char this[int index]; //cast to uint static implicit operator uint (FiveCC FiveCC); ..