]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/brushmodule.cpp
totally unlimit entities
[xonotic/netradiant.git] / radiant / brushmodule.cpp
index 6b47e0926e6990d2ac228942b2165e2f5fbcddfd..3cdf77a829a04b2f8aac9bb7208b688d5b22e3d5 100644 (file)
@@ -90,6 +90,27 @@ void Brush_registerPreferencesPage()
   PreferencesDialog_addSettingsPage(FreeCaller1<PreferenceGroup&, Brush_constructPage>());
 }
 
+void Brush_unlatchPreferences()
+{
+       Brush_toggleFormat(0);
+}
+
+void Brush_toggleFormat(int i)
+{
+       if(g_showAlternativeTextureProjectionOption)
+       {
+               g_useAlternativeTextureProjection.m_value = g_useAlternativeTextureProjection.m_latched ^ i;
+               Brush::destroyStatic();
+               Brush::constructStatic(g_useAlternativeTextureProjection.m_value ? eBrushTypeQuake3BP : eBrushTypeQuake3);
+       }
+}
+
+int Brush_toggleFormatCount()
+{
+       if(g_showAlternativeTextureProjectionOption)
+               return 2;
+       return 1;
+}
 
 void Brush_Construct(EBrushType type)
 {
@@ -97,6 +118,10 @@ void Brush_Construct(EBrushType type)
   {
     g_showAlternativeTextureProjectionOption = true;
 
+    const char *value = g_pGameDescription->getKeyValue("brush_primit");
+    if(!string_empty(value))
+      g_useAlternativeTextureProjection.m_latched = atoi(value);
+
     GlobalPreferenceSystem().registerPreference(
       "AlternativeTextureProjection",
       BoolImportStringCaller(g_useAlternativeTextureProjection.m_latched),