internal override bool Write(WzFileStream stream) { stream.Write1u(this.Unknow1_Byte); stream.Write4(this.mSoundData.Length, true); stream.Write4(this.Duration, true); stream.Write1u(this.Unknow3_Byte); this.MediaType.Write(stream); stream.Write(this.mSoundData); return(true); }
internal void Write(WzFileStream stream) { stream.Write(this.majortype.ToByteArray()); stream.Write(this.subtype.ToByteArray()); stream.Write1u(this.Unknow1_Byte); stream.Write1u(this.Unknow2_Byte); stream.Write(this.formattype.ToByteArray()); if (this.formattype == SoundDX8Constants.WMFORMAT_WaveFormatEx) { stream.Write4((int)this.cbFormat, true); stream.Write(this.pbFormat); } }
/// <summary> 將文字寫入指定的<see cref="WzFileStream"/>中 </summary> public static void Write(WzFileStream stream, string str) { int len = str.Length; bool uni = false; foreach (char ch in str) { if ((int)ch > 0xFF) { uni = true; break; } } byte[] chars = (uni ? Encoding.Unicode : Encoding.ASCII).GetBytes(str); Process(chars, len, uni); if ((uni && len <= 127) || (!uni && len <= 128)) { stream.Write1((sbyte)(uni ? len : -len)); } else { stream.Write1u((byte)(uni ? 0x7F : 0x80)); stream.Write4(len); } stream.Write(chars, true); }
/// <summary> 將腳本資料寫入指定資料流 </summary> public bool Write(WzFileStream stream) { byte[] data = Encoding.UTF8.GetBytes(this.Script); stream.Write1u(1); stream.Write4(data.Length, true); stream.Write(data, data.Length, true); return(true); }
internal override bool Write(WzFileStream stream) { bool hasprop = this.CanvasProperty.Count > 0; stream.Write1u(this.Unknow1_Byte); stream.WriteBool(hasprop); if (hasprop) { this.CanvasProperty.Write(stream); } stream.Write4(this.Width, true); stream.Write4(this.Height, true); stream.Write4((int)this.Format, true); stream.Write1u(this.Scale); stream.Write4(this.Unknow2_Int); stream.Write4(this.mCanvasData.Length); stream.Write(this.mCanvasData); return(true); }
internal override bool Write(WzFileStream stream) { stream.Write1u(this.Unknow1_Byte); stream.StringPool.Write(this.Path, 0, 1); return(true); }
private void WriteVariant(WzVariant variant, WzFileStream stream) { stream.StringPool.Write(variant.Name, 0, 1); stream.Write1u((byte)variant.Type); variant.Write(stream); }