mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
Added a settings to control the amount smoke effects on frontlines. Default smoke spacing changed from 800 to 1600 (half the current amount)
This commit is contained in:
parent
b289e41a0d
commit
af5584d244
@ -41,6 +41,7 @@ class Settings:
|
||||
# Performance oriented
|
||||
perf_red_alert_state: bool = True
|
||||
perf_smoke_gen: bool = True
|
||||
perf_smoke_spacing = 1600
|
||||
perf_artillery: bool = True
|
||||
perf_moving_units: bool = True
|
||||
perf_infantry: bool = True
|
||||
|
||||
@ -109,7 +109,7 @@ class VisualGenerator:
|
||||
if not plane_start:
|
||||
continue
|
||||
|
||||
for offset in range(0, distance, FRONT_SMOKE_SPACING):
|
||||
for offset in range(0, distance, self.game.settings.perf_smoke_spacing):
|
||||
position = plane_start.point_from_heading(heading, offset)
|
||||
|
||||
for k, v in FRONT_SMOKE_TYPE_CHANCES.items():
|
||||
@ -162,6 +162,7 @@ class VisualGenerator:
|
||||
"",
|
||||
_type=v,
|
||||
position=position,
|
||||
hidden=True,
|
||||
)
|
||||
break
|
||||
|
||||
|
||||
@ -17,6 +17,7 @@ from PySide2.QtWidgets import (
|
||||
QStackedLayout,
|
||||
QVBoxLayout,
|
||||
QWidget,
|
||||
QSlider,
|
||||
)
|
||||
from dcs.forcedoptions import ForcedOptions
|
||||
|
||||
@ -518,6 +519,12 @@ class QSettingsWindow(QDialog):
|
||||
self.smoke.setChecked(self.game.settings.perf_smoke_gen)
|
||||
self.smoke.toggled.connect(self.applySettings)
|
||||
|
||||
self.smoke_spacing = QSpinBox()
|
||||
self.smoke_spacing.setMinimum(800)
|
||||
self.smoke_spacing.setMaximum(24000)
|
||||
self.smoke_spacing.setValue(self.game.settings.perf_smoke_spacing)
|
||||
self.smoke_spacing.valueChanged.connect(self.applySettings)
|
||||
|
||||
self.red_alert = QCheckBox()
|
||||
self.red_alert.setChecked(self.game.settings.perf_red_alert_state)
|
||||
self.red_alert.toggled.connect(self.applySettings)
|
||||
@ -558,18 +565,27 @@ class QSettingsWindow(QDialog):
|
||||
QLabel("Smoke visual effect on frontline"), 0, 0
|
||||
)
|
||||
self.performanceLayout.addWidget(self.smoke, 0, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(QLabel("SAM starts in RED alert mode"), 1, 0)
|
||||
self.performanceLayout.addWidget(self.red_alert, 1, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(QLabel("Artillery strikes"), 2, 0)
|
||||
self.performanceLayout.addWidget(self.arti, 2, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(QLabel("Moving ground units"), 3, 0)
|
||||
self.performanceLayout.addWidget(
|
||||
self.moving_units, 3, 1, alignment=Qt.AlignRight
|
||||
QLabel("Smoke generator spacing (higher means less smoke)"),
|
||||
1,
|
||||
0,
|
||||
alignment=Qt.AlignRight,
|
||||
)
|
||||
self.performanceLayout.addWidget(
|
||||
QLabel("Generate infantry squads along vehicles"), 4, 0
|
||||
self.smoke_spacing, 1, 1, alignment=Qt.AlignRight
|
||||
)
|
||||
self.performanceLayout.addWidget(self.infantry, 4, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(QLabel("SAM starts in RED alert mode"), 2, 0)
|
||||
self.performanceLayout.addWidget(self.red_alert, 2, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(QLabel("Artillery strikes"), 3, 0)
|
||||
self.performanceLayout.addWidget(self.arti, 3, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(QLabel("Moving ground units"), 4, 0)
|
||||
self.performanceLayout.addWidget(
|
||||
self.moving_units, 4, 1, alignment=Qt.AlignRight
|
||||
)
|
||||
self.performanceLayout.addWidget(
|
||||
QLabel("Generate infantry squads along vehicles"), 5, 0
|
||||
)
|
||||
self.performanceLayout.addWidget(self.infantry, 5, 1, alignment=Qt.AlignRight)
|
||||
self.performanceLayout.addWidget(
|
||||
QLabel("Include destroyed units carcass"), 6, 0
|
||||
)
|
||||
@ -681,6 +697,7 @@ class QSettingsWindow(QDialog):
|
||||
|
||||
self.game.settings.perf_red_alert_state = self.red_alert.isChecked()
|
||||
self.game.settings.perf_smoke_gen = self.smoke.isChecked()
|
||||
self.game.settings.perf_smoke_spacing = self.smoke_spacing.value()
|
||||
self.game.settings.perf_artillery = self.arti.isChecked()
|
||||
self.game.settings.perf_moving_units = self.moving_units.isChecked()
|
||||
self.game.settings.perf_infantry = self.infantry.isChecked()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user