Example #1
0
    private void loadDLCData()
    {
        StringBuffer stringBuffer = new StringBuffer();

        stringBuffer.append(this.m_rootFolder);
        stringBuffer.append(DLCManager.pathSeparatorChar);
        stringBuffer.append(DLCManager.DLCDATA_FILENAME);
        DataInputStream dataInputStream1 = new DataInputStream(JavaLib.getResourceAsStream(stringBuffer.toString(), false));

        if (dataInputStream1 == null)
        {
            this.m_packCount   = 0;
            this.m_packSellIds = new int[0];
        }
        else
        {
            DataInputStream dataInputStream2 = dataInputStream1;
            this.m_packCount   = dataInputStream2.readInt();
            this.m_packSellIds = new int[this.m_packCount];
            for (int index = 0; index < this.m_packCount; ++index)
            {
                this.m_packSellIds[index] = dataInputStream2.readInt();
            }
            dataInputStream2.close();
        }
    }
 public void Initialize()
 {
     this.bg       = JavaLib.createImage("XNAMenu//trialover_sims3");
     this.tm       = this.ae.getTextManager();
     this.btnStore = new XNAButton(340, 180, 170, 70, XNAButton.Type.UNLOCKFULL_STORE);
     this.btnMenu  = new XNAButton(340, 250, 170, 60, XNAButton.Type.UNLOCKFULL_BACK);
 }
Example #3
0
        private static void loadCharMap(sbyte enc)
        {
            int num = 0;

            for (int index = 1; index < (int)enc; ++index)
            {
                if (((long)SDKTextUtils.s_textEncodings & (long)(1 << index)) != 0L)
                {
                    ++num;
                }
            }
            DataInputStream dataInputStream = new DataInputStream(JavaLib.getResourceAsStream("charmap", false));

            dataInputStream.skip((long)(num << 8));
            for (int index = 0; index != 128; ++index)
            {
                SDKTextUtils.s_charMapISO[index] = (ushort)dataInputStream.readShort();
            }
            dataInputStream.close();
            if (SDKTextUtils.s_currentFont == null)
            {
                return;
            }
            SDKTextUtils.s_currentFont.refreshISOOffsets();
        }
Example #4
0
    private House getHouse(int houseId)
    {
        string       str          = GlobalConstants.LOOKUP_HOUSE[houseId];
        StringBuffer stringBuffer = new StringBuffer();

        stringBuffer.append(str).append(".xml");
        InputStream resourceAsStream = JavaLib.getResourceAsStream(stringBuffer.toString(), false);

        return(resourceAsStream != null?House.fromXMLStream(new DataInputStream(resourceAsStream), str, houseId) : this.m_simWorld.getHouse(houseId));
    }
        public InputStream getLocalizedResourceAsStream(string filename, string locale)
        {
            if (locale == null)
            {
                this.getLocale();
            }
            string filename1 = filename;

            return(filename1 == null ? (InputStream)null : JavaLib.getResourceAsStream(filename1, false) ?? (InputStream)null);
        }
Example #6
0
    private DLCPack loadPack(int packId, int sellId)
    {
        AppEngine    canvas       = AppEngine.getCanvas();
        SimWorld     simWorld     = canvas.getSimWorld();
        SimData      simData      = canvas.getSimData();
        TextManager  textManager  = canvas.getTextManager();
        DLCPack      dlcPack      = new DLCPack();
        StringBuffer stringBuffer = new StringBuffer();

        stringBuffer.setLength(0);
        stringBuffer.append(this.m_rootFolder);
        stringBuffer.append(DLCManager.pathSeparatorChar);
        stringBuffer.append(sellId);
        string str1 = stringBuffer.toString();

        stringBuffer.setLength(0);
        stringBuffer.append(str1);
        stringBuffer.append(DLCManager.pathSeparatorChar);
        stringBuffer.append(DLCManager.PACKDATA_FILENAME);
        DataInputStream dis = new DataInputStream(JavaLib.getResourceAsStream(stringBuffer.toString(), false));

        stringBuffer.setLength(0);
        stringBuffer.append(str1);
        stringBuffer.append(DLCManager.pathSeparatorChar);
        stringBuffer.append(DLCManager.STRINGS_DLC_FILENAME);
        string filename      = stringBuffer.toString();
        int    stringPooldId = textManager.addStringsFile(filename);

        dis.readInt();
        dlcPack.d_packId   = dis.readInt();
        dlcPack.d_packName = RecObject.readXMLtoBinString(dis);
        string str2 = this.readXMLtoBinFilename(dis, str1);

        dlcPack.d_objectTextureFilename = str2;
        string str3 = this.readXMLtoBinFilename(dis, str1);

        dlcPack.d_objectScrollingTextureFilename = str3;
        dlcPack.d_objectScrollingTextureTiming   = dis.readInt();
        string str4 = this.readXMLtoBinFilename(dis, str1);

        dlcPack.d_simMaleFilename = str4;
        string str5 = this.readXMLtoBinFilename(dis, str1);

        dlcPack.d_simFemaleFilename = str5;
        string str6 = this.readXMLtoBinFilename(dis, str1);

        dlcPack.d_miniCarModelFilename = str6;
        string str7 = this.readXMLtoBinFilename(dis, str1);

        dlcPack.d_miniCarTextureFilename = str7;
        int length1 = (int)dis.readByte();

        short[] numArray1 = new short[length1];
        for (int index = 0; index < length1; ++index)
        {
            int action = (int)dis.readShort();
            numArray1[index] = (short)action;
            simData.unlockAction(action, packId);
        }
        int length2 = (int)dis.readShort();

        RecObject[] recObjectArray = new RecObject[length2];
        for (int index = 0; index < length2; ++index)
        {
            recObjectArray[index] = new RecObject();
            recObjectArray[index].readDLC(dis, packId, index, stringPooldId, str1);
        }
        int length3 = (int)dis.readByte();

        RecItem[] recItemArray = new RecItem[length3];
        for (int index = 0; index < length3; ++index)
        {
            recItemArray[index] = new RecItem();
            recItemArray[index].readDLC(dis, packId, index, stringPooldId, str1);
        }
        int length4 = (int)dis.readByte();

        short[] numArray2 = new short[length4];
        for (int index = 0; index < length4; ++index)
        {
            int wallId = (int)dis.readShort();
            numArray2[index] = (short)wallId;
            simWorld.unlockWall(wallId, packId);
        }
        int length5 = (int)dis.readByte();

        short[] numArray3 = new short[length5];
        for (int index = 0; index < length5; ++index)
        {
            int floorId = (int)dis.readShort();
            numArray3[index] = (short)floorId;
            simWorld.unlockFloor(floorId, packId);
        }
        int num     = (int)dis.readByte();
        int length6 = 15;

        short[][]    numArray4 = new short[length6][];
        int[][]      numArray5 = new int[length6][];
        string[][][] strArray1 = new string[length6][][];
        for (int index1 = 0; index1 < length6; ++index1)
        {
            int        length7   = (int)dis.readByte();
            short[]    numArray6 = new short[length7];
            int[]      numArray7 = new int[length7];
            string[][] strArray2 = new string[length7][];
            for (int index2 = 0; index2 < length7; ++index2)
            {
                numArray6[index2] = (short)dis.readInt();
                numArray7[index2] = dis.readInt();
                int      length8   = (int)dis.readByte();
                string[] strArray3 = new string[length8];
                for (int index3 = 0; index3 < length8; ++index3)
                {
                    string str8 = this.readXMLtoBinFilename(dis, str1);
                    strArray3[index3] = str8;
                }
                strArray2[index2] = strArray3;
            }
            numArray4[index1] = numArray6;
            numArray5[index1] = numArray7;
            strArray1[index1] = strArray2;
        }
        dlcPack.d_objectRecords             = recObjectArray;
        dlcPack.d_itemRecords               = recItemArray;
        dlcPack.d_simAttribUserIds          = numArray4;
        dlcPack.d_simAttribFlags            = numArray5;
        dlcPack.d_simAttribTextureFilenames = strArray1;
        return(dlcPack);
    }
Example #7
0
        public static void loadStringsChunk(int chunkID)
        {
            if (SDKTextUtils.isLoadedStringsChunk(chunkID) && !SDKTextUtils.s_forceChunkLoad)
            {
                return;
            }
            SDKStringActualChunk actualChunk1 = SDKTextUtils.s_actualChunkArray[chunkID];
            int         index1 = ((int)actualChunk1.flags & 64) == 0 ? (int)SDKTextUtils.s_langIndex : 0;
            string      str1   = "";
            InputStream resourceAsStream;

            switch (SDKTextUtils.s_chunkConfig)
            {
            case 0:
                string str2          = str1 + "t_";
                string sourcestring1 = new string(new char[6]);
                int    index2        = -1;
                sbyte  num1;
                do
                {
                    ++index2;
                    num1          = index2 != 5 ? SDKTextUtils.s_languageArray[index1].isoCodeArray[index2] : (sbyte)32;
                    sourcestring1 = StringFunctions.ChangeCharacter(sourcestring1, index2, (char)num1);
                }while (num1 != (sbyte)32);
                string str3 = sourcestring1.Substring(0, index2);
                resourceAsStream = JavaLib.getResourceAsStream(str2 + str3, false);
                ushort[] chunkSizeArray = SDKTextUtils.s_languageArray[index1].chunkSizeArray;
                for (int index3 = 1; index3 != chunkID; ++index3)
                {
                    SDKStringActualChunk actualChunk2 = SDKTextUtils.s_actualChunkArray[index3];
                    if (((int)actualChunk2.flags & 64) == 0 || index1 == 0)
                    {
                        resourceAsStream.skip((long)((actualChunk2.numStrings + 1 << 1) + (int)chunkSizeArray[index3]));
                    }
                }
                break;

            case 1:
                string str4          = str1 + "t_";
                string sourcestring2 = new string(new char[6]);
                int    charindex     = -1;
                sbyte  num2;
                do
                {
                    ++charindex;
                    num2          = charindex != 5 ? SDKTextUtils.s_languageArray[index1].isoCodeArray[charindex] : (sbyte)32;
                    sourcestring2 = StringFunctions.ChangeCharacter(sourcestring2, charindex, (char)num2);
                }while (num2 != (sbyte)32);
                string str5 = StringFunctions.ChangeCharacter(sourcestring2, charindex, char.MinValue);
                resourceAsStream = JavaLib.getResourceAsStream(str4 + str5 + (object)chunkID, false);
                break;

            default:
                return;
            }
            DataInputStream       dataInputStream = new DataInputStream(resourceAsStream);
            int                   num3            = actualChunk1.numStrings + 1;
            int                   group1          = (int)actualChunk1.group;
            SDKStringGroup        group2          = SDKTextUtils.s_groupArray[group1];
            SDKStringStorageChunk storageChunk    = SDKTextUtils.s_storageChunkArray[group1];

            if (storageChunk.stringOffsetArray == null)
            {
                storageChunk.stringOffsetArray = new ushort[(int)group2.maxNumOffsets];
            }
            for (int index3 = 0; index3 != num3; ++index3)
            {
                storageChunk.stringOffsetArray[index3] = (ushort)dataInputStream.readShort();
            }
            if (storageChunk.stringData == null)
            {
                storageChunk.stringData = new sbyte[(int)group2.maxSize];
            }
            dataInputStream.readFully(storageChunk.stringData, (int)SDKTextUtils.s_languageArray[index1].chunkSizeArray[chunkID]);
            group2.map = (sbyte)chunkID;
            dataInputStream.close();
        }