mirror of
https://github.com/spencershepard/RotorOps.git
synced 2025-11-10 15:45:30 +00:00
..
This commit is contained in:
parent
b99b68a13b
commit
fe4b241efc
@ -150,10 +150,8 @@ class Window(QMainWindow, Ui_MainWindow):
|
|||||||
"blue_quantity": self.blueqty_spinBox.value(),
|
"blue_quantity": self.blueqty_spinBox.value(),
|
||||||
"inf_spawn_qty": self.inf_spawn_spinBox.value(),
|
"inf_spawn_qty": self.inf_spawn_spinBox.value(),
|
||||||
"apc_spawns_inf": self.apcs_spawn_checkBox.isChecked(),
|
"apc_spawns_inf": self.apcs_spawn_checkBox.isChecked(),
|
||||||
"e_transport": self.enemy_transport_checkBox.isChecked(),
|
"e_attack_helos": self.e_attack_helos_spinBox.value(),
|
||||||
"e_attack_helos": self.enemy_attack_helos_checkBox.isChecked(),
|
"e_attack_planes": self.e_attack_planes_spinBox.value(),
|
||||||
"e_fighters": self.enemy_fighters_checkBox.isChecked(),
|
|
||||||
"e_attack_planes": self.enemy_attack_planes_checkBox.isChecked(),
|
|
||||||
"crates": self.logistics_crates_checkBox.isChecked(),
|
"crates": self.logistics_crates_checkBox.isChecked(),
|
||||||
"f_awacs": self.awacs_checkBox.isChecked(),
|
"f_awacs": self.awacs_checkBox.isChecked(),
|
||||||
"f_tankers": self.tankers_checkBox.isChecked(),
|
"f_tankers": self.tankers_checkBox.isChecked(),
|
||||||
@ -163,6 +161,8 @@ class Window(QMainWindow, Ui_MainWindow):
|
|||||||
"game_display": self.game_status_checkBox.isChecked(),
|
"game_display": self.game_status_checkBox.isChecked(),
|
||||||
"defending": self.defense_checkBox.isChecked(),
|
"defending": self.defense_checkBox.isChecked(),
|
||||||
"slots": self.slot_template_comboBox.currentText(),
|
"slots": self.slot_template_comboBox.currentText(),
|
||||||
|
"smoke_zone": self.smoke_checkBox.isChecked(),
|
||||||
|
"zone_protect_sams": self.zone_sams_checkBox.isChecked(),
|
||||||
}
|
}
|
||||||
os.chdir(self.m.home_dir + '/Generator')
|
os.chdir(self.m.home_dir + '/Generator')
|
||||||
n = ROps.RotorOpsMission()
|
n = ROps.RotorOpsMission()
|
||||||
|
|||||||
@ -14,7 +14,7 @@ from PyQt5 import QtCore, QtGui, QtWidgets
|
|||||||
class Ui_MainWindow(object):
|
class Ui_MainWindow(object):
|
||||||
def setupUi(self, MainWindow):
|
def setupUi(self, MainWindow):
|
||||||
MainWindow.setObjectName("MainWindow")
|
MainWindow.setObjectName("MainWindow")
|
||||||
MainWindow.resize(1140, 826)
|
MainWindow.resize(1209, 900)
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(10)
|
font.setPointSize(10)
|
||||||
MainWindow.setFont(font)
|
MainWindow.setFont(font)
|
||||||
@ -39,7 +39,7 @@ class Ui_MainWindow(object):
|
|||||||
self.scenario_label.setFont(font)
|
self.scenario_label.setFont(font)
|
||||||
self.scenario_label.setObjectName("scenario_label")
|
self.scenario_label.setObjectName("scenario_label")
|
||||||
self.generateButton = QtWidgets.QPushButton(self.centralwidget)
|
self.generateButton = QtWidgets.QPushButton(self.centralwidget)
|
||||||
self.generateButton.setGeometry(QtCore.QRect(940, 720, 141, 41))
|
self.generateButton.setGeometry(QtCore.QRect(1020, 790, 141, 41))
|
||||||
self.generateButton.setStyleSheet("background-color: white;\n"
|
self.generateButton.setStyleSheet("background-color: white;\n"
|
||||||
"border-style: outset;\n"
|
"border-style: outset;\n"
|
||||||
"border-width: 2px;\n"
|
"border-width: 2px;\n"
|
||||||
@ -73,7 +73,7 @@ class Ui_MainWindow(object):
|
|||||||
self.redforces_comboBox.setGeometry(QtCore.QRect(170, 230, 291, 31))
|
self.redforces_comboBox.setGeometry(QtCore.QRect(170, 230, 291, 31))
|
||||||
self.redforces_comboBox.setObjectName("redforces_comboBox")
|
self.redforces_comboBox.setObjectName("redforces_comboBox")
|
||||||
self.background_label = QtWidgets.QLabel(self.centralwidget)
|
self.background_label = QtWidgets.QLabel(self.centralwidget)
|
||||||
self.background_label.setGeometry(QtCore.QRect(10, 430, 801, 371))
|
self.background_label.setGeometry(QtCore.QRect(-30, 490, 801, 371))
|
||||||
self.background_label.setAutoFillBackground(False)
|
self.background_label.setAutoFillBackground(False)
|
||||||
self.background_label.setStyleSheet("")
|
self.background_label.setStyleSheet("")
|
||||||
self.background_label.setText("")
|
self.background_label.setText("")
|
||||||
@ -113,7 +113,7 @@ class Ui_MainWindow(object):
|
|||||||
self.scenario_label_4.setAlignment(QtCore.Qt.AlignCenter)
|
self.scenario_label_4.setAlignment(QtCore.Qt.AlignCenter)
|
||||||
self.scenario_label_4.setObjectName("scenario_label_4")
|
self.scenario_label_4.setObjectName("scenario_label_4")
|
||||||
self.game_status_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.game_status_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.game_status_checkBox.setGeometry(QtCore.QRect(910, 510, 191, 16))
|
self.game_status_checkBox.setGeometry(QtCore.QRect(1000, 590, 191, 16))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(9)
|
font.setPointSize(9)
|
||||||
self.game_status_checkBox.setFont(font)
|
self.game_status_checkBox.setFont(font)
|
||||||
@ -121,67 +121,39 @@ class Ui_MainWindow(object):
|
|||||||
self.game_status_checkBox.setTristate(False)
|
self.game_status_checkBox.setTristate(False)
|
||||||
self.game_status_checkBox.setObjectName("game_status_checkBox")
|
self.game_status_checkBox.setObjectName("game_status_checkBox")
|
||||||
self.voiceovers_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.voiceovers_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.voiceovers_checkBox.setGeometry(QtCore.QRect(910, 570, 191, 16))
|
self.voiceovers_checkBox.setGeometry(QtCore.QRect(1000, 650, 191, 16))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(9)
|
font.setPointSize(9)
|
||||||
self.voiceovers_checkBox.setFont(font)
|
self.voiceovers_checkBox.setFont(font)
|
||||||
self.voiceovers_checkBox.setChecked(True)
|
self.voiceovers_checkBox.setChecked(True)
|
||||||
self.voiceovers_checkBox.setObjectName("voiceovers_checkBox")
|
self.voiceovers_checkBox.setObjectName("voiceovers_checkBox")
|
||||||
self.logistics_crates_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.logistics_crates_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.logistics_crates_checkBox.setGeometry(QtCore.QRect(910, 320, 251, 31))
|
self.logistics_crates_checkBox.setGeometry(QtCore.QRect(970, 390, 251, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(11)
|
font.setPointSize(11)
|
||||||
self.logistics_crates_checkBox.setFont(font)
|
self.logistics_crates_checkBox.setFont(font)
|
||||||
self.logistics_crates_checkBox.setObjectName("logistics_crates_checkBox")
|
self.logistics_crates_checkBox.setObjectName("logistics_crates_checkBox")
|
||||||
self.awacs_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.awacs_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.awacs_checkBox.setGeometry(QtCore.QRect(910, 350, 251, 31))
|
self.awacs_checkBox.setGeometry(QtCore.QRect(970, 420, 251, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(11)
|
font.setPointSize(11)
|
||||||
self.awacs_checkBox.setFont(font)
|
self.awacs_checkBox.setFont(font)
|
||||||
self.awacs_checkBox.setStatusTip("")
|
self.awacs_checkBox.setStatusTip("")
|
||||||
self.awacs_checkBox.setObjectName("awacs_checkBox")
|
self.awacs_checkBox.setObjectName("awacs_checkBox")
|
||||||
self.tankers_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.tankers_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.tankers_checkBox.setGeometry(QtCore.QRect(910, 380, 251, 31))
|
self.tankers_checkBox.setGeometry(QtCore.QRect(970, 450, 251, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(11)
|
font.setPointSize(11)
|
||||||
self.tankers_checkBox.setFont(font)
|
self.tankers_checkBox.setFont(font)
|
||||||
self.tankers_checkBox.setObjectName("tankers_checkBox")
|
self.tankers_checkBox.setObjectName("tankers_checkBox")
|
||||||
self.apcs_spawn_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.apcs_spawn_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.apcs_spawn_checkBox.setGeometry(QtCore.QRect(470, 400, 251, 31))
|
self.apcs_spawn_checkBox.setGeometry(QtCore.QRect(500, 400, 251, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(10)
|
font.setPointSize(10)
|
||||||
self.apcs_spawn_checkBox.setFont(font)
|
self.apcs_spawn_checkBox.setFont(font)
|
||||||
self.apcs_spawn_checkBox.setObjectName("apcs_spawn_checkBox")
|
self.apcs_spawn_checkBox.setObjectName("apcs_spawn_checkBox")
|
||||||
self.enemy_transport_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
|
||||||
self.enemy_transport_checkBox.setEnabled(False)
|
|
||||||
self.enemy_transport_checkBox.setGeometry(QtCore.QRect(70, 320, 251, 31))
|
|
||||||
font = QtGui.QFont()
|
|
||||||
font.setPointSize(11)
|
|
||||||
self.enemy_transport_checkBox.setFont(font)
|
|
||||||
self.enemy_transport_checkBox.setObjectName("enemy_transport_checkBox")
|
|
||||||
self.enemy_attack_helos_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
|
||||||
self.enemy_attack_helos_checkBox.setEnabled(True)
|
|
||||||
self.enemy_attack_helos_checkBox.setGeometry(QtCore.QRect(70, 350, 251, 31))
|
|
||||||
font = QtGui.QFont()
|
|
||||||
font.setPointSize(11)
|
|
||||||
self.enemy_attack_helos_checkBox.setFont(font)
|
|
||||||
self.enemy_attack_helos_checkBox.setObjectName("enemy_attack_helos_checkBox")
|
|
||||||
self.enemy_fighters_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
|
||||||
self.enemy_fighters_checkBox.setEnabled(False)
|
|
||||||
self.enemy_fighters_checkBox.setGeometry(QtCore.QRect(70, 380, 251, 31))
|
|
||||||
font = QtGui.QFont()
|
|
||||||
font.setPointSize(11)
|
|
||||||
self.enemy_fighters_checkBox.setFont(font)
|
|
||||||
self.enemy_fighters_checkBox.setObjectName("enemy_fighters_checkBox")
|
|
||||||
self.enemy_attack_planes_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
|
||||||
self.enemy_attack_planes_checkBox.setEnabled(True)
|
|
||||||
self.enemy_attack_planes_checkBox.setGeometry(QtCore.QRect(70, 410, 251, 31))
|
|
||||||
font = QtGui.QFont()
|
|
||||||
font.setPointSize(11)
|
|
||||||
self.enemy_attack_planes_checkBox.setFont(font)
|
|
||||||
self.enemy_attack_planes_checkBox.setObjectName("enemy_attack_planes_checkBox")
|
|
||||||
self.inf_spawn_spinBox = QtWidgets.QSpinBox(self.centralwidget)
|
self.inf_spawn_spinBox = QtWidgets.QSpinBox(self.centralwidget)
|
||||||
self.inf_spawn_spinBox.setGeometry(QtCore.QRect(680, 360, 71, 31))
|
self.inf_spawn_spinBox.setGeometry(QtCore.QRect(710, 360, 71, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(12)
|
font.setPointSize(12)
|
||||||
self.inf_spawn_spinBox.setFont(font)
|
self.inf_spawn_spinBox.setFont(font)
|
||||||
@ -190,7 +162,7 @@ class Ui_MainWindow(object):
|
|||||||
self.inf_spawn_spinBox.setProperty("value", 2)
|
self.inf_spawn_spinBox.setProperty("value", 2)
|
||||||
self.inf_spawn_spinBox.setObjectName("inf_spawn_spinBox")
|
self.inf_spawn_spinBox.setObjectName("inf_spawn_spinBox")
|
||||||
self.smoke_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.smoke_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.smoke_checkBox.setGeometry(QtCore.QRect(910, 540, 191, 16))
|
self.smoke_checkBox.setGeometry(QtCore.QRect(1000, 620, 191, 16))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(9)
|
font.setPointSize(9)
|
||||||
self.smoke_checkBox.setFont(font)
|
self.smoke_checkBox.setFont(font)
|
||||||
@ -208,28 +180,28 @@ class Ui_MainWindow(object):
|
|||||||
self.forces_hint_label_2.setAlignment(QtCore.Qt.AlignCenter)
|
self.forces_hint_label_2.setAlignment(QtCore.Qt.AlignCenter)
|
||||||
self.forces_hint_label_2.setObjectName("forces_hint_label_2")
|
self.forces_hint_label_2.setObjectName("forces_hint_label_2")
|
||||||
self.label = QtWidgets.QLabel(self.centralwidget)
|
self.label = QtWidgets.QLabel(self.centralwidget)
|
||||||
self.label.setGeometry(QtCore.QRect(470, 360, 191, 31))
|
self.label.setGeometry(QtCore.QRect(500, 360, 191, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(10)
|
font.setPointSize(10)
|
||||||
self.label.setFont(font)
|
self.label.setFont(font)
|
||||||
self.label.setObjectName("label")
|
self.label.setObjectName("label")
|
||||||
self.slot_template_comboBox = QtWidgets.QComboBox(self.centralwidget)
|
self.slot_template_comboBox = QtWidgets.QComboBox(self.centralwidget)
|
||||||
self.slot_template_comboBox.setGeometry(QtCore.QRect(790, 630, 291, 31))
|
self.slot_template_comboBox.setGeometry(QtCore.QRect(870, 700, 291, 31))
|
||||||
self.slot_template_comboBox.setObjectName("slot_template_comboBox")
|
self.slot_template_comboBox.setObjectName("slot_template_comboBox")
|
||||||
self.label_2 = QtWidgets.QLabel(self.centralwidget)
|
self.label_2 = QtWidgets.QLabel(self.centralwidget)
|
||||||
self.label_2.setGeometry(QtCore.QRect(650, 630, 111, 31))
|
self.label_2.setGeometry(QtCore.QRect(750, 700, 111, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(11)
|
font.setPointSize(11)
|
||||||
self.label_2.setFont(font)
|
self.label_2.setFont(font)
|
||||||
self.label_2.setObjectName("label_2")
|
self.label_2.setObjectName("label_2")
|
||||||
self.scenario_label_6 = QtWidgets.QLabel(self.centralwidget)
|
self.scenario_label_6 = QtWidgets.QLabel(self.centralwidget)
|
||||||
self.scenario_label_6.setGeometry(QtCore.QRect(470, 320, 141, 31))
|
self.scenario_label_6.setGeometry(QtCore.QRect(500, 320, 141, 31))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(11)
|
font.setPointSize(11)
|
||||||
self.scenario_label_6.setFont(font)
|
self.scenario_label_6.setFont(font)
|
||||||
self.scenario_label_6.setObjectName("scenario_label_6")
|
self.scenario_label_6.setObjectName("scenario_label_6")
|
||||||
self.force_offroad_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
self.force_offroad_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
self.force_offroad_checkBox.setGeometry(QtCore.QRect(910, 480, 191, 16))
|
self.force_offroad_checkBox.setGeometry(QtCore.QRect(1000, 560, 191, 16))
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setPointSize(9)
|
font.setPointSize(9)
|
||||||
self.force_offroad_checkBox.setFont(font)
|
self.force_offroad_checkBox.setFont(font)
|
||||||
@ -242,6 +214,42 @@ class Ui_MainWindow(object):
|
|||||||
font.setPointSize(11)
|
font.setPointSize(11)
|
||||||
self.defense_checkBox.setFont(font)
|
self.defense_checkBox.setFont(font)
|
||||||
self.defense_checkBox.setObjectName("defense_checkBox")
|
self.defense_checkBox.setObjectName("defense_checkBox")
|
||||||
|
self.e_attack_helos_spinBox = QtWidgets.QSpinBox(self.centralwidget)
|
||||||
|
self.e_attack_helos_spinBox.setGeometry(QtCore.QRect(70, 330, 51, 31))
|
||||||
|
font = QtGui.QFont()
|
||||||
|
font.setPointSize(12)
|
||||||
|
self.e_attack_helos_spinBox.setFont(font)
|
||||||
|
self.e_attack_helos_spinBox.setMinimum(0)
|
||||||
|
self.e_attack_helos_spinBox.setMaximum(50)
|
||||||
|
self.e_attack_helos_spinBox.setProperty("value", 2)
|
||||||
|
self.e_attack_helos_spinBox.setObjectName("e_attack_helos_spinBox")
|
||||||
|
self.scenario_label_7 = QtWidgets.QLabel(self.centralwidget)
|
||||||
|
self.scenario_label_7.setGeometry(QtCore.QRect(140, 330, 231, 31))
|
||||||
|
font = QtGui.QFont()
|
||||||
|
font.setPointSize(11)
|
||||||
|
self.scenario_label_7.setFont(font)
|
||||||
|
self.scenario_label_7.setObjectName("scenario_label_7")
|
||||||
|
self.scenario_label_8 = QtWidgets.QLabel(self.centralwidget)
|
||||||
|
self.scenario_label_8.setGeometry(QtCore.QRect(140, 370, 231, 31))
|
||||||
|
font = QtGui.QFont()
|
||||||
|
font.setPointSize(11)
|
||||||
|
self.scenario_label_8.setFont(font)
|
||||||
|
self.scenario_label_8.setObjectName("scenario_label_8")
|
||||||
|
self.e_attack_planes_spinBox = QtWidgets.QSpinBox(self.centralwidget)
|
||||||
|
self.e_attack_planes_spinBox.setGeometry(QtCore.QRect(70, 370, 51, 31))
|
||||||
|
font = QtGui.QFont()
|
||||||
|
font.setPointSize(12)
|
||||||
|
self.e_attack_planes_spinBox.setFont(font)
|
||||||
|
self.e_attack_planes_spinBox.setMinimum(0)
|
||||||
|
self.e_attack_planes_spinBox.setMaximum(50)
|
||||||
|
self.e_attack_planes_spinBox.setProperty("value", 2)
|
||||||
|
self.e_attack_planes_spinBox.setObjectName("e_attack_planes_spinBox")
|
||||||
|
self.zone_sams_checkBox = QtWidgets.QCheckBox(self.centralwidget)
|
||||||
|
self.zone_sams_checkBox.setGeometry(QtCore.QRect(970, 480, 201, 31))
|
||||||
|
font = QtGui.QFont()
|
||||||
|
font.setPointSize(11)
|
||||||
|
self.zone_sams_checkBox.setFont(font)
|
||||||
|
self.zone_sams_checkBox.setObjectName("zone_sams_checkBox")
|
||||||
self.background_label.raise_()
|
self.background_label.raise_()
|
||||||
self.scenario_comboBox.raise_()
|
self.scenario_comboBox.raise_()
|
||||||
self.scenario_label.raise_()
|
self.scenario_label.raise_()
|
||||||
@ -262,10 +270,6 @@ class Ui_MainWindow(object):
|
|||||||
self.awacs_checkBox.raise_()
|
self.awacs_checkBox.raise_()
|
||||||
self.tankers_checkBox.raise_()
|
self.tankers_checkBox.raise_()
|
||||||
self.apcs_spawn_checkBox.raise_()
|
self.apcs_spawn_checkBox.raise_()
|
||||||
self.enemy_transport_checkBox.raise_()
|
|
||||||
self.enemy_attack_helos_checkBox.raise_()
|
|
||||||
self.enemy_fighters_checkBox.raise_()
|
|
||||||
self.enemy_attack_planes_checkBox.raise_()
|
|
||||||
self.inf_spawn_spinBox.raise_()
|
self.inf_spawn_spinBox.raise_()
|
||||||
self.smoke_checkBox.raise_()
|
self.smoke_checkBox.raise_()
|
||||||
self.scenario_label_5.raise_()
|
self.scenario_label_5.raise_()
|
||||||
@ -276,9 +280,14 @@ class Ui_MainWindow(object):
|
|||||||
self.scenario_label_6.raise_()
|
self.scenario_label_6.raise_()
|
||||||
self.force_offroad_checkBox.raise_()
|
self.force_offroad_checkBox.raise_()
|
||||||
self.defense_checkBox.raise_()
|
self.defense_checkBox.raise_()
|
||||||
|
self.e_attack_helos_spinBox.raise_()
|
||||||
|
self.scenario_label_7.raise_()
|
||||||
|
self.scenario_label_8.raise_()
|
||||||
|
self.e_attack_planes_spinBox.raise_()
|
||||||
|
self.zone_sams_checkBox.raise_()
|
||||||
MainWindow.setCentralWidget(self.centralwidget)
|
MainWindow.setCentralWidget(self.centralwidget)
|
||||||
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
||||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 1140, 26))
|
self.menubar.setGeometry(QtCore.QRect(0, 0, 1209, 26))
|
||||||
self.menubar.setObjectName("menubar")
|
self.menubar.setObjectName("menubar")
|
||||||
MainWindow.setMenuBar(self.menubar)
|
MainWindow.setMenuBar(self.menubar)
|
||||||
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
||||||
@ -329,14 +338,6 @@ class Ui_MainWindow(object):
|
|||||||
self.tankers_checkBox.setText(_translate("MainWindow", "Friendly Tankers"))
|
self.tankers_checkBox.setText(_translate("MainWindow", "Friendly Tankers"))
|
||||||
self.apcs_spawn_checkBox.setStatusTip(_translate("MainWindow", "Friendly/enemy APCs will drop infantry when reaching a new conflict zone."))
|
self.apcs_spawn_checkBox.setStatusTip(_translate("MainWindow", "Friendly/enemy APCs will drop infantry when reaching a new conflict zone."))
|
||||||
self.apcs_spawn_checkBox.setText(_translate("MainWindow", "APCs Spawn Infantry"))
|
self.apcs_spawn_checkBox.setText(_translate("MainWindow", "APCs Spawn Infantry"))
|
||||||
self.enemy_transport_checkBox.setStatusTip(_translate("MainWindow", "Not yet implemented."))
|
|
||||||
self.enemy_transport_checkBox.setText(_translate("MainWindow", "Enemy Transport Helicopters"))
|
|
||||||
self.enemy_attack_helos_checkBox.setStatusTip(_translate("MainWindow", "Not yet implemented."))
|
|
||||||
self.enemy_attack_helos_checkBox.setText(_translate("MainWindow", "Enemy Attack Helicopters"))
|
|
||||||
self.enemy_fighters_checkBox.setStatusTip(_translate("MainWindow", "Not yet implemented."))
|
|
||||||
self.enemy_fighters_checkBox.setText(_translate("MainWindow", "Enemy Fighter Planes"))
|
|
||||||
self.enemy_attack_planes_checkBox.setStatusTip(_translate("MainWindow", "Not yet implemented."))
|
|
||||||
self.enemy_attack_planes_checkBox.setText(_translate("MainWindow", "Enemy Ground Attack Planes"))
|
|
||||||
self.inf_spawn_spinBox.setStatusTip(_translate("MainWindow", "This value is multiplied by the number of spawn zones in the mission template."))
|
self.inf_spawn_spinBox.setStatusTip(_translate("MainWindow", "This value is multiplied by the number of spawn zones in the mission template."))
|
||||||
self.smoke_checkBox.setStatusTip(_translate("MainWindow", "Not yet implemented."))
|
self.smoke_checkBox.setStatusTip(_translate("MainWindow", "Not yet implemented."))
|
||||||
self.smoke_checkBox.setText(_translate("MainWindow", "Smoke Active Zone"))
|
self.smoke_checkBox.setText(_translate("MainWindow", "Smoke Active Zone"))
|
||||||
@ -349,6 +350,12 @@ class Ui_MainWindow(object):
|
|||||||
self.force_offroad_checkBox.setStatusTip(_translate("MainWindow", "May help prevent long travel times or pathfinding issues. Tip: You can change this dynamically from mission triggers."))
|
self.force_offroad_checkBox.setStatusTip(_translate("MainWindow", "May help prevent long travel times or pathfinding issues. Tip: You can change this dynamically from mission triggers."))
|
||||||
self.force_offroad_checkBox.setText(_translate("MainWindow", "Force Offroad"))
|
self.force_offroad_checkBox.setText(_translate("MainWindow", "Force Offroad"))
|
||||||
self.defense_checkBox.setText(_translate("MainWindow", "Defensive Mode"))
|
self.defense_checkBox.setText(_translate("MainWindow", "Defensive Mode"))
|
||||||
|
self.e_attack_helos_spinBox.setStatusTip(_translate("MainWindow", "This value is multiplied by the number of spawn zones in the mission template."))
|
||||||
|
self.scenario_label_7.setText(_translate("MainWindow", "Enemy Attack Helicopters"))
|
||||||
|
self.scenario_label_8.setText(_translate("MainWindow", "Enemy Attack Planes"))
|
||||||
|
self.e_attack_planes_spinBox.setStatusTip(_translate("MainWindow", "This value is multiplied by the number of spawn zones in the mission template."))
|
||||||
|
self.zone_sams_checkBox.setStatusTip(_translate("MainWindow", "Inactive conflict zones will be protected by SAMs. When a zone is cleared, SAMs at next active zone will be destroyed by a large explosion at zone center. "))
|
||||||
|
self.zone_sams_checkBox.setText(_translate("MainWindow", "Inactive Zone SAMs"))
|
||||||
self.action_generateMission.setText(_translate("MainWindow", "_generateMission"))
|
self.action_generateMission.setText(_translate("MainWindow", "_generateMission"))
|
||||||
self.action_scenarioSelected.setText(_translate("MainWindow", "_scenarioSelected"))
|
self.action_scenarioSelected.setText(_translate("MainWindow", "_scenarioSelected"))
|
||||||
self.action_blueforcesSelected.setText(_translate("MainWindow", "_blueforcesSelected"))
|
self.action_blueforcesSelected.setText(_translate("MainWindow", "_blueforcesSelected"))
|
||||||
|
|||||||
@ -6,8 +6,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>1140</width>
|
<width>1209</width>
|
||||||
<height>826</height>
|
<height>900</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="font">
|
<property name="font">
|
||||||
@ -75,8 +75,8 @@
|
|||||||
<widget class="QPushButton" name="generateButton">
|
<widget class="QPushButton" name="generateButton">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>940</x>
|
<x>1020</x>
|
||||||
<y>720</y>
|
<y>790</y>
|
||||||
<width>141</width>
|
<width>141</width>
|
||||||
<height>41</height>
|
<height>41</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -183,8 +183,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QLabel" name="background_label">
|
<widget class="QLabel" name="background_label">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>10</x>
|
<x>-30</x>
|
||||||
<y>430</y>
|
<y>490</y>
|
||||||
<width>801</width>
|
<width>801</width>
|
||||||
<height>371</height>
|
<height>371</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -312,8 +312,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QCheckBox" name="game_status_checkBox">
|
<widget class="QCheckBox" name="game_status_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>1000</x>
|
||||||
<y>510</y>
|
<y>590</y>
|
||||||
<width>191</width>
|
<width>191</width>
|
||||||
<height>16</height>
|
<height>16</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -339,8 +339,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QCheckBox" name="voiceovers_checkBox">
|
<widget class="QCheckBox" name="voiceovers_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>1000</x>
|
||||||
<y>570</y>
|
<y>650</y>
|
||||||
<width>191</width>
|
<width>191</width>
|
||||||
<height>16</height>
|
<height>16</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -363,8 +363,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QCheckBox" name="logistics_crates_checkBox">
|
<widget class="QCheckBox" name="logistics_crates_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>970</x>
|
||||||
<y>320</y>
|
<y>390</y>
|
||||||
<width>251</width>
|
<width>251</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -384,8 +384,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QCheckBox" name="awacs_checkBox">
|
<widget class="QCheckBox" name="awacs_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>970</x>
|
||||||
<y>350</y>
|
<y>420</y>
|
||||||
<width>251</width>
|
<width>251</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -401,12 +401,15 @@ p, li { white-space: pre-wrap; }
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Friendly AWACS</string>
|
<string>Friendly AWACS</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QCheckBox" name="tankers_checkBox">
|
<widget class="QCheckBox" name="tankers_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>970</x>
|
||||||
<y>380</y>
|
<y>450</y>
|
||||||
<width>251</width>
|
<width>251</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -419,11 +422,14 @@ p, li { white-space: pre-wrap; }
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Friendly Tankers</string>
|
<string>Friendly Tankers</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QCheckBox" name="apcs_spawn_checkBox">
|
<widget class="QCheckBox" name="apcs_spawn_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>470</x>
|
<x>500</x>
|
||||||
<y>400</y>
|
<y>400</y>
|
||||||
<width>251</width>
|
<width>251</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
@ -441,106 +447,10 @@ p, li { white-space: pre-wrap; }
|
|||||||
<string>APCs Spawn Infantry</string>
|
<string>APCs Spawn Infantry</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QCheckBox" name="enemy_transport_checkBox">
|
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>70</x>
|
|
||||||
<y>320</y>
|
|
||||||
<width>251</width>
|
|
||||||
<height>31</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>11</pointsize>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="statusTip">
|
|
||||||
<string>Not yet implemented.</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Enemy Transport Helicopters</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QCheckBox" name="enemy_attack_helos_checkBox">
|
|
||||||
<property name="enabled">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>70</x>
|
|
||||||
<y>350</y>
|
|
||||||
<width>251</width>
|
|
||||||
<height>31</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>11</pointsize>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="statusTip">
|
|
||||||
<string>Not yet implemented.</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Enemy Attack Helicopters</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QCheckBox" name="enemy_fighters_checkBox">
|
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>70</x>
|
|
||||||
<y>380</y>
|
|
||||||
<width>251</width>
|
|
||||||
<height>31</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>11</pointsize>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="statusTip">
|
|
||||||
<string>Not yet implemented.</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Enemy Fighter Planes</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QCheckBox" name="enemy_attack_planes_checkBox">
|
|
||||||
<property name="enabled">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>70</x>
|
|
||||||
<y>410</y>
|
|
||||||
<width>251</width>
|
|
||||||
<height>31</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>11</pointsize>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="statusTip">
|
|
||||||
<string>Not yet implemented.</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Enemy Ground Attack Planes</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QSpinBox" name="inf_spawn_spinBox">
|
<widget class="QSpinBox" name="inf_spawn_spinBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>680</x>
|
<x>710</x>
|
||||||
<y>360</y>
|
<y>360</y>
|
||||||
<width>71</width>
|
<width>71</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
@ -567,8 +477,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QCheckBox" name="smoke_checkBox">
|
<widget class="QCheckBox" name="smoke_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>1000</x>
|
||||||
<y>540</y>
|
<y>620</y>
|
||||||
<width>191</width>
|
<width>191</width>
|
||||||
<height>16</height>
|
<height>16</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -628,7 +538,7 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QLabel" name="label">
|
<widget class="QLabel" name="label">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>470</x>
|
<x>500</x>
|
||||||
<y>360</y>
|
<y>360</y>
|
||||||
<width>191</width>
|
<width>191</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
@ -646,8 +556,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QComboBox" name="slot_template_comboBox">
|
<widget class="QComboBox" name="slot_template_comboBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>790</x>
|
<x>870</x>
|
||||||
<y>630</y>
|
<y>700</y>
|
||||||
<width>291</width>
|
<width>291</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -659,8 +569,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QLabel" name="label_2">
|
<widget class="QLabel" name="label_2">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>650</x>
|
<x>750</x>
|
||||||
<y>630</y>
|
<y>700</y>
|
||||||
<width>111</width>
|
<width>111</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -677,7 +587,7 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QLabel" name="scenario_label_6">
|
<widget class="QLabel" name="scenario_label_6">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>470</x>
|
<x>500</x>
|
||||||
<y>320</y>
|
<y>320</y>
|
||||||
<width>141</width>
|
<width>141</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
@ -695,8 +605,8 @@ p, li { white-space: pre-wrap; }
|
|||||||
<widget class="QCheckBox" name="force_offroad_checkBox">
|
<widget class="QCheckBox" name="force_offroad_checkBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>910</x>
|
<x>1000</x>
|
||||||
<y>480</y>
|
<y>560</y>
|
||||||
<width>191</width>
|
<width>191</width>
|
||||||
<height>16</height>
|
<height>16</height>
|
||||||
</rect>
|
</rect>
|
||||||
@ -737,6 +647,117 @@ p, li { white-space: pre-wrap; }
|
|||||||
<string>Defensive Mode</string>
|
<string>Defensive Mode</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
|
<widget class="QSpinBox" name="e_attack_helos_spinBox">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>70</x>
|
||||||
|
<y>330</y>
|
||||||
|
<width>51</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<pointsize>12</pointsize>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="statusTip">
|
||||||
|
<string>This value is multiplied by the number of spawn zones in the mission template.</string>
|
||||||
|
</property>
|
||||||
|
<property name="minimum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
|
<property name="value">
|
||||||
|
<number>2</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QLabel" name="scenario_label_7">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>140</x>
|
||||||
|
<y>330</y>
|
||||||
|
<width>231</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<pointsize>11</pointsize>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Enemy Attack Helicopters</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QLabel" name="scenario_label_8">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>140</x>
|
||||||
|
<y>370</y>
|
||||||
|
<width>231</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<pointsize>11</pointsize>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Enemy Attack Planes</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QSpinBox" name="e_attack_planes_spinBox">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>70</x>
|
||||||
|
<y>370</y>
|
||||||
|
<width>51</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<pointsize>12</pointsize>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="statusTip">
|
||||||
|
<string>This value is multiplied by the number of spawn zones in the mission template.</string>
|
||||||
|
</property>
|
||||||
|
<property name="minimum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
|
<property name="value">
|
||||||
|
<number>2</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QCheckBox" name="zone_sams_checkBox">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>970</x>
|
||||||
|
<y>480</y>
|
||||||
|
<width>201</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<pointsize>11</pointsize>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="statusTip">
|
||||||
|
<string>Inactive conflict zones will be protected by SAMs. When a zone is cleared, SAMs at next active zone will be destroyed by a large explosion at zone center. </string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Inactive Zone SAMs</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
<zorder>background_label</zorder>
|
<zorder>background_label</zorder>
|
||||||
<zorder>scenario_comboBox</zorder>
|
<zorder>scenario_comboBox</zorder>
|
||||||
<zorder>scenario_label</zorder>
|
<zorder>scenario_label</zorder>
|
||||||
@ -757,10 +778,6 @@ p, li { white-space: pre-wrap; }
|
|||||||
<zorder>awacs_checkBox</zorder>
|
<zorder>awacs_checkBox</zorder>
|
||||||
<zorder>tankers_checkBox</zorder>
|
<zorder>tankers_checkBox</zorder>
|
||||||
<zorder>apcs_spawn_checkBox</zorder>
|
<zorder>apcs_spawn_checkBox</zorder>
|
||||||
<zorder>enemy_transport_checkBox</zorder>
|
|
||||||
<zorder>enemy_attack_helos_checkBox</zorder>
|
|
||||||
<zorder>enemy_fighters_checkBox</zorder>
|
|
||||||
<zorder>enemy_attack_planes_checkBox</zorder>
|
|
||||||
<zorder>inf_spawn_spinBox</zorder>
|
<zorder>inf_spawn_spinBox</zorder>
|
||||||
<zorder>smoke_checkBox</zorder>
|
<zorder>smoke_checkBox</zorder>
|
||||||
<zorder>scenario_label_5</zorder>
|
<zorder>scenario_label_5</zorder>
|
||||||
@ -771,13 +788,18 @@ p, li { white-space: pre-wrap; }
|
|||||||
<zorder>scenario_label_6</zorder>
|
<zorder>scenario_label_6</zorder>
|
||||||
<zorder>force_offroad_checkBox</zorder>
|
<zorder>force_offroad_checkBox</zorder>
|
||||||
<zorder>defense_checkBox</zorder>
|
<zorder>defense_checkBox</zorder>
|
||||||
|
<zorder>e_attack_helos_spinBox</zorder>
|
||||||
|
<zorder>scenario_label_7</zorder>
|
||||||
|
<zorder>scenario_label_8</zorder>
|
||||||
|
<zorder>e_attack_planes_spinBox</zorder>
|
||||||
|
<zorder>zone_sams_checkBox</zorder>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QMenuBar" name="menubar">
|
<widget class="QMenuBar" name="menubar">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>1140</width>
|
<width>1209</width>
|
||||||
<height>26</height>
|
<height>26</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
|||||||
@ -142,12 +142,36 @@ class RotorOpsMission:
|
|||||||
if red_forces:
|
if red_forces:
|
||||||
self.addGroundGroups(red_zones[zone_name], self.m.country('Russia'), red_forces, options["red_quantity"])
|
self.addGroundGroups(red_zones[zone_name], self.m.country('Russia'), red_forces, options["red_quantity"])
|
||||||
|
|
||||||
|
if options["zone_protect_sams"]:
|
||||||
|
for zone_name in red_zones:
|
||||||
|
self.m.vehicle_group(
|
||||||
|
self.m.country('Russia'),
|
||||||
|
zone_name + " Protection SAM",
|
||||||
|
random.choice(RotorOpsUnits.e_zone_sams),
|
||||||
|
red_zones[zone_name].position,
|
||||||
|
heading=random.randint(0, 359),
|
||||||
|
group_size=6,
|
||||||
|
formation=dcs.unitgroup.VehicleGroup.Formation.Star
|
||||||
|
)
|
||||||
|
|
||||||
#Add blue ground units
|
#Add blue ground units
|
||||||
for zone_name in blue_zones:
|
for zone_name in blue_zones:
|
||||||
if blue_forces:
|
if blue_forces:
|
||||||
self.addGroundGroups(blue_zones[zone_name], self.m.country('USA'), blue_forces,
|
self.addGroundGroups(blue_zones[zone_name], self.m.country('USA'), blue_forces,
|
||||||
options["blue_quantity"])
|
options["blue_quantity"])
|
||||||
|
|
||||||
|
if options["zone_protect_sams"]:
|
||||||
|
for zone_name in blue_zones:
|
||||||
|
self.m.vehicle_group(
|
||||||
|
self.m.country('USA'),
|
||||||
|
zone_name + " Protection SAM",
|
||||||
|
random.choice(RotorOpsUnits.e_zone_sams),
|
||||||
|
blue_zones[zone_name].position,
|
||||||
|
heading=random.randint(0, 359),
|
||||||
|
group_size=6,
|
||||||
|
formation=dcs.unitgroup.VehicleGroup.Formation.Star
|
||||||
|
)
|
||||||
|
|
||||||
#Add player slots
|
#Add player slots
|
||||||
if options["slots"] == "Multiple Slots":
|
if options["slots"] == "Multiple Slots":
|
||||||
self.addMultiplayerHelos()
|
self.addMultiplayerHelos()
|
||||||
@ -156,6 +180,7 @@ class RotorOpsMission:
|
|||||||
if helicopter == options["slots"]:
|
if helicopter == options["slots"]:
|
||||||
self.addSinglePlayerHelos(dcs.helicopters.helicopter_map[helicopter])
|
self.addSinglePlayerHelos(dcs.helicopters.helicopter_map[helicopter])
|
||||||
|
|
||||||
|
#Add AI Flights
|
||||||
self.addFlights(options)
|
self.addFlights(options)
|
||||||
|
|
||||||
#Set the Editor Map View
|
#Set the Editor Map View
|
||||||
@ -189,6 +214,7 @@ class RotorOpsMission:
|
|||||||
formation=dcs.unitgroup.VehicleGroup.Formation.Scattered,
|
formation=dcs.unitgroup.VehicleGroup.Formation.Scattered,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def getCoalitionAirports(self, side: str):
|
def getCoalitionAirports(self, side: str):
|
||||||
coalition_airports = []
|
coalition_airports = []
|
||||||
for airport_name in self.m.terrain.airports:
|
for airport_name in self.m.terrain.airports:
|
||||||
@ -197,6 +223,14 @@ class RotorOpsMission:
|
|||||||
coalition_airports.append(airport_name)
|
coalition_airports.append(airport_name)
|
||||||
return coalition_airports
|
return coalition_airports
|
||||||
|
|
||||||
|
def getParking(self, airport, aircraft):
|
||||||
|
slot = airport.free_parking_slot(aircraft)
|
||||||
|
if slot:
|
||||||
|
return airport
|
||||||
|
else:
|
||||||
|
print("No parking available for " + aircraft.id + " at " + airport.name)
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
def addSinglePlayerHelos(self, helotype):
|
def addSinglePlayerHelos(self, helotype):
|
||||||
friendly_airports = self.getCoalitionAirports("blue")
|
friendly_airports = self.getCoalitionAirports("blue")
|
||||||
@ -211,7 +245,7 @@ class RotorOpsMission:
|
|||||||
for airport_name in friendly_airports:
|
for airport_name in friendly_airports:
|
||||||
for helotype in RotorOpsUnits.client_helos:
|
for helotype in RotorOpsUnits.client_helos:
|
||||||
fg = self.m.flight_group_from_airport(self.m.country('USA'), airport_name + " " + helotype.id, helotype,
|
fg = self.m.flight_group_from_airport(self.m.country('USA'), airport_name + " " + helotype.id, helotype,
|
||||||
self.m.terrain.airports[airport_name], group_size=1)
|
self.getParking(self.m.terrain.airports[airport_name], helotype), group_size=1)
|
||||||
fg.units[0].set_client()
|
fg.units[0].set_client()
|
||||||
|
|
||||||
|
|
||||||
@ -239,6 +273,8 @@ class RotorOpsMission:
|
|||||||
int(friendly_airport.position.x), int(friendly_airport.position.y - 100 * 1000), int(friendly_airport.position.x - 100 * 1000),
|
int(friendly_airport.position.x), int(friendly_airport.position.y - 100 * 1000), int(friendly_airport.position.x - 100 * 1000),
|
||||||
int(friendly_airport.position.y))
|
int(friendly_airport.position.y))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if options["f_awacs"]:
|
if options["f_awacs"]:
|
||||||
awacs_name = "AWACS"
|
awacs_name = "AWACS"
|
||||||
awacs_freq = 266
|
awacs_freq = 266
|
||||||
@ -247,13 +283,20 @@ class RotorOpsMission:
|
|||||||
usa,
|
usa,
|
||||||
awacs_name,
|
awacs_name,
|
||||||
plane_type=dcs.planes.E_3A,
|
plane_type=dcs.planes.E_3A,
|
||||||
airport=None,
|
airport=self.getParking(friendly_airport, dcs.planes.E_3A),
|
||||||
position=pos,
|
position=pos,
|
||||||
race_distance=race_dist, heading=heading,
|
race_distance=race_dist, heading=heading,
|
||||||
altitude=random.randrange(4000, 5500, 100), frequency=awacs_freq)
|
altitude=random.randrange(4000, 5500, 100), frequency=awacs_freq)
|
||||||
|
|
||||||
awacs_escort = self.m.escort_flight(usa, "AWACS Escort", dcs.countries.USA.Plane.F_15C, None, awacs, group_size=2)
|
awacs_escort = self.m.escort_flight(
|
||||||
|
usa, "AWACS Escort",
|
||||||
|
dcs.countries.USA.Plane.F_15C,
|
||||||
|
airport=self.getParking(friendly_airport, dcs.countries.USA.Plane.F_15C),
|
||||||
|
group_to_escort=awacs,
|
||||||
|
group_size=2)
|
||||||
awacs_escort.load_loadout("Combat Air Patrol") #not working for f-15
|
awacs_escort.load_loadout("Combat Air Patrol") #not working for f-15
|
||||||
|
|
||||||
|
#add text to mission briefing with radio freq
|
||||||
briefing = self.m.description_text() + "\n\n" + awacs_name + " " + str(awacs_freq) + ".00 " + "\n"
|
briefing = self.m.description_text() + "\n\n" + awacs_name + " " + str(awacs_freq) + ".00 " + "\n"
|
||||||
self.m.set_description_text(briefing)
|
self.m.set_description_text(briefing)
|
||||||
|
|
||||||
@ -269,21 +312,30 @@ class RotorOpsMission:
|
|||||||
usa,
|
usa,
|
||||||
t1_name,
|
t1_name,
|
||||||
dcs.planes.KC130,
|
dcs.planes.KC130,
|
||||||
airport=None,
|
airport=self.getParking(friendly_airport, dcs.planes.KC130),
|
||||||
position=pos,
|
position=pos,
|
||||||
race_distance=race_dist, heading=heading,
|
race_distance=race_dist,
|
||||||
altitude=random.randrange(4000, 5500, 100), speed=750, frequency=t1_freq, tacanchannel=t1_tac)
|
heading=heading,
|
||||||
|
altitude=random.randrange(4000, 5500, 100),
|
||||||
|
start_type=dcs.mission.StartType.Warm,
|
||||||
|
speed=750,
|
||||||
|
frequency=t1_freq,
|
||||||
|
tacanchannel=t1_tac)
|
||||||
|
|
||||||
pos, heading, race_dist = self.TrainingScenario.random_orbit(orbit_rect)
|
pos, heading, race_dist = self.TrainingScenario.random_orbit(orbit_rect)
|
||||||
refuel_rod = self.m.refuel_flight(
|
refuel_rod = self.m.refuel_flight(
|
||||||
usa,
|
usa,
|
||||||
t2_name,
|
t2_name,
|
||||||
dcs.planes.KC_135,
|
dcs.planes.KC_135,
|
||||||
airport=None,
|
airport=self.getParking(friendly_airport, dcs.planes.KC_135),
|
||||||
position=pos,
|
position=pos,
|
||||||
race_distance=race_dist, heading=heading,
|
race_distance=race_dist, heading=heading,
|
||||||
altitude=random.randrange(4000, 5500, 100), frequency=t2_freq, tacanchannel=t2_tac)
|
altitude=random.randrange(4000, 5500, 100),
|
||||||
|
start_type=dcs.mission.StartType.Warm,
|
||||||
|
frequency=t2_freq,
|
||||||
|
tacanchannel=t2_tac)
|
||||||
|
|
||||||
|
#add text to mission briefing
|
||||||
briefing = self.m.description_text() + "\n\n" + t1_name + " " + str(t1_freq) + ".00 " + t1_tac + "\n" + t2_name + " " + str(t2_freq) + ".00 " + t2_tac + "\n"
|
briefing = self.m.description_text() + "\n\n" + t1_name + " " + str(t1_freq) + ".00 " + t1_tac + "\n" + t2_name + " " + str(t2_freq) + ".00 " + t2_tac + "\n"
|
||||||
self.m.set_description_text(briefing)
|
self.m.set_description_text(briefing)
|
||||||
|
|
||||||
@ -377,20 +429,42 @@ class RotorOpsMission:
|
|||||||
self.m.triggerrules.triggers.append(mytrig)
|
self.m.triggerrules.triggers.append(mytrig)
|
||||||
|
|
||||||
#Add all zone-based triggers
|
#Add all zone-based triggers
|
||||||
for index, c_zone in enumerate(self.conflict_zones):
|
for index, zone_name in enumerate(self.conflict_zones):
|
||||||
|
|
||||||
z_active_trig = dcs.triggers.TriggerOnce(comment= c_zone + " Active")
|
z_active_trig = dcs.triggers.TriggerOnce(comment= zone_name + " Active")
|
||||||
z_active_trig.rules.append(dcs.condition.FlagEquals(game_flag, index + 1))
|
z_active_trig.rules.append(dcs.condition.FlagEquals(game_flag, index + 1))
|
||||||
z_active_trig.actions.append(dcs.action.DoScript(dcs.action.String("--Add any action you want here!")))
|
z_active_trig.actions.append(dcs.action.DoScript(dcs.action.String("--Add any action you want here!")))
|
||||||
|
#Smoke action not working
|
||||||
|
# if options["smoke_zone"]:
|
||||||
|
# z_active_trig.actions.append(dcs.action.Smoke(zone=zone_name, density=1, preset=1))
|
||||||
|
# if index > 0:
|
||||||
|
# previous_zone = list(self.conflict_zones)[index - 1]
|
||||||
|
# z_active_trig.actions.append(dcs.action.Smoke(zone=previous_zone, density=1, preset=0))
|
||||||
|
#Zone protection SAMs
|
||||||
|
if options["zone_protect_sams"]:
|
||||||
|
z_active_trig.actions.append(dcs.action.DoScript(dcs.action.String("Group.destroy(Group.getByName('" + zone_name + " Protection SAM'))")))
|
||||||
self.m.triggerrules.triggers.append(z_active_trig)
|
self.m.triggerrules.triggers.append(z_active_trig)
|
||||||
|
|
||||||
zone_flag = self.conflict_zones[c_zone].flag
|
#Add attack helos triggers
|
||||||
z_weak_trig = dcs.triggers.TriggerOnce(comment= c_zone + " Weak")
|
for index in range(options["e_attack_helos"]):
|
||||||
z_weak_trig.rules.append(dcs.condition.FlagIsMore(zone_flag, 10))
|
random_zone_obj = random.choice(list(self.conflict_zones.items()))
|
||||||
z_weak_trig.rules.append(dcs.condition.FlagIsLess(zone_flag, random.randrange(20, 80)))
|
zone = random_zone_obj[1]
|
||||||
z_weak_trig.actions.append(dcs.action.DoScript(dcs.action.String("--Add any action you want here!\n\n--Flag value represents the percentage of defending ground units remaining. ")))
|
z_weak_trig = dcs.triggers.TriggerOnce(comment=zone.name + " Attack Helo")
|
||||||
if options["e_attack_helos"]:
|
z_weak_trig.rules.append(dcs.condition.FlagIsMore(zone.flag, 1))
|
||||||
z_weak_trig.actions.append(dcs.action.DoScript(dcs.action.String("mist.respawnGroup('Enemy Attack Helicopters', true)")))
|
z_weak_trig.rules.append(dcs.condition.FlagIsLess(zone.flag, random.randrange(20, 90)))
|
||||||
|
z_weak_trig.actions.append(dcs.action.DoScript(dcs.action.String("---Flag value represents the percentage of defending ground units remaining in zone. ")))
|
||||||
|
z_weak_trig.actions.append(dcs.action.DoScript(dcs.action.String("mist.respawnGroup('Enemy Attack Helicopters', true)")))
|
||||||
|
self.m.triggerrules.triggers.append(z_weak_trig)
|
||||||
|
|
||||||
|
#Add attack plane triggers
|
||||||
|
for index in range(options["e_attack_planes"]):
|
||||||
|
random_zone_obj = random.choice(list(self.conflict_zones.items()))
|
||||||
|
zone = random_zone_obj[1]
|
||||||
|
z_weak_trig = dcs.triggers.TriggerOnce(comment=zone.name + " Attack Plane")
|
||||||
|
z_weak_trig.rules.append(dcs.condition.FlagIsMore(zone.flag, 1))
|
||||||
|
z_weak_trig.rules.append(dcs.condition.FlagIsLess(zone.flag, random.randrange(20, 90)))
|
||||||
|
z_weak_trig.actions.append(dcs.action.DoScript(dcs.action.String("---Flag value represents the percentage of defending ground units remaining in zone. ")))
|
||||||
|
z_weak_trig.actions.append(dcs.action.DoScript(dcs.action.String("mist.respawnGroup('Enemy Attack Planes', true)")))
|
||||||
self.m.triggerrules.triggers.append(z_weak_trig)
|
self.m.triggerrules.triggers.append(z_weak_trig)
|
||||||
|
|
||||||
#Add game won/lost triggers
|
#Add game won/lost triggers
|
||||||
|
|||||||
@ -23,5 +23,8 @@ e_attack_planes = [
|
|||||||
#{'type': dcs.planes.Su_34, 'loadout': "APU-8 Vikhr-M*2,Kh-25ML,R-73*2,SPPU-22*2,Mercury LLTV Pod,MPS-410"},
|
#{'type': dcs.planes.Su_34, 'loadout': "APU-8 Vikhr-M*2,Kh-25ML,R-73*2,SPPU-22*2,Mercury LLTV Pod,MPS-410"},
|
||||||
#{'type': dcs.planes.Su_25, 'loadout': "RKB-250*8,R-60M*2"},
|
#{'type': dcs.planes.Su_25, 'loadout': "RKB-250*8,R-60M*2"},
|
||||||
{'type': dcs.planes.A_10C, 'loadout': ""}
|
{'type': dcs.planes.A_10C, 'loadout': ""}
|
||||||
|
]
|
||||||
|
|
||||||
|
e_zone_sams = [
|
||||||
|
dcs.vehicles.AirDefence.Strela_10M3,
|
||||||
]
|
]
|
||||||
5
Generator/build command.txt
Normal file
5
Generator/build command.txt
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#build UI files
|
||||||
|
pyuic5 -x MissionGeneratorUI.ui -o MissionGeneratorUI.py
|
||||||
|
|
||||||
|
#build exe
|
||||||
|
pyinstaller MissionGenerator.spec --distpath ..\ -i='assets\icon.ico'
|
||||||
@ -438,6 +438,7 @@ end
|
|||||||
|
|
||||||
if (script_enable == 1) then
|
if (script_enable == 1) then
|
||||||
gameMsg("SPLASH DAMAGE 2 SCRIPT RUNNING")
|
gameMsg("SPLASH DAMAGE 2 SCRIPT RUNNING")
|
||||||
|
env.info("SPLASH DAMAGE 2 SCRIPT RUNNING")
|
||||||
timer.scheduleFunction(function()
|
timer.scheduleFunction(function()
|
||||||
protectedCall(track_wpns)
|
protectedCall(track_wpns)
|
||||||
return timer.getTime() + refreshRate
|
return timer.getTime() + refreshRate
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user