NScumm.Scumm.ScummEngine6.WriteArray C# (CSharp) Метод

WriteArray() публичный Метод

public WriteArray ( uint array, int idx, int @base, int value ) : void
array uint
idx int
@base int
value int
Результат void
        public void WriteArray(uint array, int idx, int @base, int value)
        {
//            Debug.WriteLine("WriteArray: {0} {1} {2} {3}", array, idx, @base, value);
            var ah = GetArray(array);
            if (ah == null)
                return;

            var offset = @base + idx * ah.Dim1;

            if (offset < 0 || offset >= ah.Dim1 * ah.Dim2)
            {
                throw new InvalidOperationException(string.Format("writeArray: array {0} out of bounds: [{1},{2}] exceeds [{3},{4}]",
                        array, @base, idx, ah.Dim1, ah.Dim2));
            }

            if (ah.Type != ArrayType.IntArray)
            {
                ah.Write(offset, (byte)value);
            }
            else if (Game.Version == 8)
            {
                ah.Write(offset, (uint)value);
            }
            else
            {
                ah.Write(offset, (ushort)value);
            }
        }
ScummEngine6