bool GetCvarBinary( const char *name, void *pv, int size ) { bool ret = false; unsigned char *out = new unsigned char[size]; idStr s = GetCvarString( name, "" ); if ( s.Length() / 2 == size ) { int j = 0; for ( int i = 0; i < s.Length(); i += 2 ) { char c; if (s[i] > '9') { c = s[i] - 'A' + 0x0a; } else { c = s[i] - 0x30; } c <<= 4; if (s[i+1] > '9') { c |= s[i+1] - 'A' + 0x0a; } else { c |= s[i+1] - 0x30; } out[j++] = c; } memcpy(pv, out, size); ret = true; } delete []out; return ret; }
void CPrefsDlg::LoadPrefs() { CString strBuff; CString strPrefab = g_strAppPath; AddSlash(strPrefab); strPrefab += "Prefabs\\"; m_nMouseButtons = 3; m_bTextureLock = GetCvarInt( TLOCK_KEY, TLOCK_DEF ); m_bRotateLock = GetCvarInt( RLOCK_KEY, TLOCK_DEF ); m_strLastProject = GetCvarString( LASTPROJ_KEY, "" ); m_strLastMap = GetCvarString( LASTMAP_KEY, "" ); m_bLoadLast = GetCvarInt( LOADLAST_KEY, LOADLAST_DEF ); m_bRunBefore = GetCvarInt( RUN_KEY, RUN_DEF ); m_bFace = GetCvarInt( FACE_KEY, 1 ); m_bRightClick = GetCvarInt( RCLICK_KEY, 1 ); m_bVertex = GetCvarInt( VERTEX_KEY, 1 ); m_bAutoSave = GetCvarInt( AUTOSAVE_KEY, 1 ); m_bNewApplyHandling = GetCvarInt( NEWAPPLY_KEY, 0 ); m_bLoadLastMap = GetCvarInt( LOADLASTMAP_KEY, 0 ); m_bGatewayHack = GetCvarInt( HACK_KEY, 0 ); m_bTextureWindow = GetCvarInt( TEXTURE_KEY, 0 ); m_bCleanTiny = GetCvarInt( TINYBRUSH_KEY, 0 ); strBuff = GetCvarString( TINYSIZE_KEY, "0.5" ); m_fTinySize = atof(strBuff ); m_nAutoSave = GetCvarInt( AUTOSAVETIME_KEY, 5 ); if ( m_nAutoSave <= 0 ) { m_nAutoSave = 1; } m_strAutoSave.Format("%i", m_nAutoSave ); m_bSnapShots = GetCvarInt( SNAPSHOT_KEY, 0 ); m_nStatusSize = GetCvarInt( STATUS_KEY, 10 ); m_nMoveSpeed = GetCvarInt( MOVESPEED_KEY, 400 ); m_nAngleSpeed = GetCvarInt( ANGLESPEED_KEY, 300 ); m_bCamXYUpdate = GetCvarInt( CAMXYUPDATE_KEY, 1 ); m_bNewLightDraw = GetCvarInt( LIGHTDRAW_KEY, 1 ); m_bCubicClipping = ( GetCvarInt( CUBICCLIP_KEY, 1) != 0 ); m_nCubicScale = GetCvarInt( CUBICSCALE_KEY, 13 ); m_bALTEdge = GetCvarInt( ALTEDGE_KEY, 0 ); m_bQE4Painting = GetCvarInt( QE4PAINT_KEY, 1 ); m_bSnapTToGrid = GetCvarInt( SNAPT_KEY, 0 ); m_bXZVis = GetCvarInt( XZVIS_KEY, 0 ); m_bYZVis = GetCvarInt( YZVIS_KEY, 0 ); m_bZVis = GetCvarInt( ZVIS_KEY, 1 ); m_bSizePaint = GetCvarInt( SIZEPAINT_KEY, 0 ); m_bWideToolbar = GetCvarInt( WIDETOOLBAR_KEY, 1 ); m_bNoClamp = GetCvarInt( NOCLAMP_KEY, 0 ); m_nRotation = GetCvarInt( ROTATION_KEY, 45 ); m_bHiColorTextures = GetCvarInt( HICOLOR_KEY, 1 ); m_bChaseMouse = GetCvarInt( CHASEMOUSE_KEY, 1 ); m_nEntityShowState = GetCvarInt( ENTITYSHOW_KEY, 0 ); m_nTextureScale = GetCvarInt( TEXTURESCALE_KEY, 50 ); m_bTextureScrollbar = GetCvarInt( TEXTURESCROLLBAR_KEY, TRUE ); m_bDisplayLists = GetCvarInt( DISPLAYLISTS_KEY, TRUE ); m_bSwitchClip = GetCvarInt( SWITCHCLIP_KEY, TRUE ); m_bSelectWholeEntities = GetCvarInt( SELWHOLEENTS_KEY, TRUE ); m_nTextureQuality = GetCvarInt( TEXTUREQUALITY_KEY, 6 ); m_bGLLighting = GetCvarInt( GLLIGHTING_KEY, FALSE ); m_bNoStipple = GetCvarInt( NOSTIPPLE_KEY, 0 ); m_nUndoLevels = GetCvarInt( UNDOLEVELS_KEY, 63 ); m_strMaps = GetCvarString( MAPS_KEY, "" ); m_strModels = GetCvarString( MODELS_KEY, "" ); m_bNoStipple = GetCvarInt( NEWMAPFORMAT_KEY, 1 ); if ( m_bRunBefore == FALSE ) { SetGamePrefs(); } }