Пример #1
0
    // Token: 0x060008C8 RID: 2248 RVA: 0x0007FA94 File Offset: 0x0007DC94
    public static void loadMapFromResource(int mapID)
    {
        DataInputStream dataInputStream = MyStream.readFile("/mymap/" + TileMap.mapID);

        TileMap.tmw  = (int)((ushort)dataInputStream.read());
        TileMap.tmh  = (int)((ushort)dataInputStream.read());
        TileMap.maps = new int[dataInputStream.available()];
        for (int i = 0; i < TileMap.tmw * TileMap.tmh; i++)
        {
            TileMap.maps[i] = (int)((ushort)dataInputStream.read());
        }
        TileMap.types = new int[TileMap.maps.Length];
    }
Пример #2
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public static CaptureRAM read(java.io.InputStream in) throws java.io.IOException
        public static CaptureRAM read(System.IO.Stream @in)
        {
            CaptureRAM ramFragment = new CaptureRAM();

            DataInputStream data          = new DataInputStream(@in);
            int             sizeRemaining = data.readInt();

            if (sizeRemaining >= 8)
            {
                ramFragment.address = data.readInt();
                sizeRemaining      -= 4;
                ramFragment.Length  = data.readInt();
                sizeRemaining      -= 4;

                if (sizeRemaining > data.available())
                {
                    VideoEngine.log_Renamed.warn("CaptureRAM read want=" + sizeRemaining + " available=" + data.available());
                }

                if (sizeRemaining >= ramFragment.Length)
                {
                    ByteBuffer bb = ByteBuffer.allocate(ramFragment.Length);
                    sbyte[]    b  = bb.array();
                    if (b == null)
                    {
                        throw new IOException("Buffer is not backed by an array");
                    }
                    data.readFully(b, 0, ramFragment.Length);
                    ramFragment.buffer = bb;
                    sizeRemaining     -= ramFragment.Length;

                    data.skipBytes(sizeRemaining);

                    VideoEngine.log_Renamed.info(string.Format("Loaded memory {0:x8} - {1:x8} (len {2:x8})", ramFragment.address, ramFragment.address + ramFragment.Length, ramFragment.Length));
                }
                else
                {
                    throw new IOException("Not enough bytes remaining in stream");
                }
            }
            else
            {
                throw new IOException("Not enough bytes remaining in stream");
            }

            return(ramFragment);
        }
Пример #3
0
        public static House fromXMLStream(DataInputStream @is, string houseName, int houseId)
        {
            int length1 = @is.available();

            sbyte[] b       = new sbyte[length1];
            char[]  chArray = new char[length1];
            @is.readFully(b);
            for (int index = 0; index < length1; ++index)
            {
                chArray[index] = (char)b[index];
            }
            string str1       = new string(chArray);
            string str2       = "<room ";
            string str3       = "<door ";
            string str4       = "<window ";
            string str5       = "<object ";
            House  house      = new House(houseName, houseId);
            int    startIndex = 0;

            do
            {
                int    length2 = str1.IndexOf('\n', startIndex);
                string str6    = str1.Substring(startIndex, length2);
                if (str6.IndexOf(str2) != -1)
                {
                    house.addRoom(Room.fromXMLString(str6));
                }
                else if (str6.IndexOf(str3) != -1)
                {
                    house.addDoor(Door.fromXMLString(str6));
                }
                else if (str6.IndexOf(str4) != -1)
                {
                    house.addWindow(Window.fromXMLString(str6));
                }
                else if (str6.IndexOf(str5) != -1)
                {
                    house.addHouseObject(HouseObject.fromXMLString(str6));
                }
                startIndex = length2 + 1;
            }while (startIndex < str1.Length);
            return(house);
        }
 // Token: 0x06000613 RID: 1555 RVA: 0x0004AFDC File Offset: 0x000491DC
 public static void loadMapFromResource(sbyte[] mapID)
 {
     Res.outz("newwwwwwwwww =============");
     for (int i = 0; i < mapID.Length; i++)
     {
         DataInputStream dataInputStream = MyStream.readFile("/mymap/" + mapID[i]);
         MapTemplate.tmw[i] = (int)((ushort)dataInputStream.read());
         MapTemplate.tmh[i] = (int)((ushort)dataInputStream.read());
         Cout.LogError(string.Concat(new object[]
         {
             "Thong TIn : ",
             MapTemplate.tmw[i],
             "::",
             MapTemplate.tmh[i]
         }));
         MapTemplate.maps[i] = new int[dataInputStream.available()];
         Cout.LogError("lent= " + MapTemplate.maps[i].Length);
         for (int j = 0; j < MapTemplate.tmw[i] * MapTemplate.tmh[i]; j++)
         {
             MapTemplate.maps[i][j] = dataInputStream.read();
         }
         MapTemplate.types[i] = new int[MapTemplate.maps[i].Length];
     }
 }