mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
'Menu changes
This commit is contained in:
parent
4dbfef028e
commit
b6fb7d94c8
@ -730,6 +730,10 @@ do
|
|||||||
-- @field #table customcallsigns
|
-- @field #table customcallsigns
|
||||||
-- @field #boolean ShortCallsign
|
-- @field #boolean ShortCallsign
|
||||||
-- @field #boolean Keepnumber
|
-- @field #boolean Keepnumber
|
||||||
|
-- @field #table CallsignTranslations
|
||||||
|
-- @field #table PlayerFlashMenu
|
||||||
|
-- @field #table PlayerJoinMenu
|
||||||
|
-- @field #table PlayerInfoMenu
|
||||||
-- @extends Core.Fsm#FSM
|
-- @extends Core.Fsm#FSM
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -1027,6 +1031,10 @@ PLAYERTASKCONTROLLER = {
|
|||||||
customcallsigns = {},
|
customcallsigns = {},
|
||||||
ShortCallsign = true,
|
ShortCallsign = true,
|
||||||
Keepnumber = false,
|
Keepnumber = false,
|
||||||
|
CallsignTranslations = nil,
|
||||||
|
PlayerFlashMenu = {},
|
||||||
|
PlayerJoinMenu = {},
|
||||||
|
PlayerInfoMenu = {},
|
||||||
}
|
}
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -1185,7 +1193,7 @@ PLAYERTASKCONTROLLER.Messages = {
|
|||||||
|
|
||||||
--- PLAYERTASK class version.
|
--- PLAYERTASK class version.
|
||||||
-- @field #string version
|
-- @field #string version
|
||||||
PLAYERTASKCONTROLLER.version="0.1.33"
|
PLAYERTASKCONTROLLER.version="0.1.34"
|
||||||
|
|
||||||
--- Constructor
|
--- Constructor
|
||||||
-- @param #PLAYERTASKCONTROLLER self
|
-- @param #PLAYERTASKCONTROLLER self
|
||||||
@ -1238,6 +1246,7 @@ function PLAYERTASKCONTROLLER:New(Name, Coalition, Type, ClientFilter)
|
|||||||
self.customcallsigns = {}
|
self.customcallsigns = {}
|
||||||
self.ShortCallsign = true
|
self.ShortCallsign = true
|
||||||
self.Keepnumber = false
|
self.Keepnumber = false
|
||||||
|
self.CallsignTranslations = nil
|
||||||
|
|
||||||
if ClientFilter then
|
if ClientFilter then
|
||||||
self.ClientSet = SET_CLIENT:New():FilterCoalitions(string.lower(self.CoalitionName)):FilterActive(true):FilterPrefixes(ClientFilter):FilterStart()
|
self.ClientSet = SET_CLIENT:New():FilterCoalitions(string.lower(self.CoalitionName)):FilterActive(true):FilterPrefixes(ClientFilter):FilterStart()
|
||||||
@ -1363,18 +1372,20 @@ end
|
|||||||
-- @param #PLAYERTASKCONTROLLER self
|
-- @param #PLAYERTASKCONTROLLER self
|
||||||
-- @param #boolean ShortCallsign If true, only call out the major flight number
|
-- @param #boolean ShortCallsign If true, only call out the major flight number
|
||||||
-- @param #boolean Keepnumber If true, keep the **customized callsign** in the #GROUP name as-is, no amendments or numbers.
|
-- @param #boolean Keepnumber If true, keep the **customized callsign** in the #GROUP name as-is, no amendments or numbers.
|
||||||
|
-- @param #table CallsignTranslations (optional) Table to translate between DCS standard callsigns and bespoke ones. Does not apply if using customized
|
||||||
|
-- callsigns from playername or group name.
|
||||||
-- @return #PLAYERTASKCONTROLLER self
|
-- @return #PLAYERTASKCONTROLLER self
|
||||||
function PLAYERTASKCONTROLLER:SetCallSignOptions(ShortCallsign,Keepnumber)
|
function PLAYERTASKCONTROLLER:SetCallSignOptions(ShortCallsign,Keepnumber,CallsignTranslations)
|
||||||
if not ShortCallsign or ShortCallsign == false then
|
if not ShortCallsign or ShortCallsign == false then
|
||||||
self.ShortCallsign = false
|
self.ShortCallsign = false
|
||||||
else
|
else
|
||||||
self.ShortCallsign = true
|
self.ShortCallsign = true
|
||||||
end
|
end
|
||||||
self.Keepnumber = Keepnumber or false
|
self.Keepnumber = Keepnumber or false
|
||||||
|
self.CallsignTranslations = CallsignTranslations
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
--- [User] Set repetition options for tasks
|
--- [User] Set repetition options for tasks
|
||||||
-- @param #PLAYERTASKCONTROLLER self
|
-- @param #PLAYERTASKCONTROLLER self
|
||||||
-- @param #boolean OnOff Set to `true` to switch on and `false` to switch off (defaults to true)
|
-- @param #boolean OnOff Set to `true` to switch on and `false` to switch off (defaults to true)
|
||||||
@ -1499,7 +1510,7 @@ function PLAYERTASKCONTROLLER:_GetPlayerName(Client)
|
|||||||
local ttsplayername = nil
|
local ttsplayername = nil
|
||||||
if not self.customcallsigns[playername] then
|
if not self.customcallsigns[playername] then
|
||||||
local playergroup = Client:GetGroup()
|
local playergroup = Client:GetGroup()
|
||||||
ttsplayername = playergroup:GetCustomCallSign(self.ShortCallsign,self.Keepnumber)
|
ttsplayername = playergroup:GetCustomCallSign(self.ShortCallsign,self.Keepnumber,self.CallsignTranslations)
|
||||||
self.customcallsigns[playername] = ttsplayername
|
self.customcallsigns[playername] = ttsplayername
|
||||||
else
|
else
|
||||||
ttsplayername = self.customcallsigns[playername]
|
ttsplayername = self.customcallsigns[playername]
|
||||||
@ -2532,10 +2543,19 @@ end
|
|||||||
-- @return #PLAYERTASKCONTROLLER self
|
-- @return #PLAYERTASKCONTROLLER self
|
||||||
function PLAYERTASKCONTROLLER:_BuildTaskInfoMenu(group,client,playername,topmenu,tasktypes,taskpertype)
|
function PLAYERTASKCONTROLLER:_BuildTaskInfoMenu(group,client,playername,topmenu,tasktypes,taskpertype)
|
||||||
if self.taskinfomenu then
|
if self.taskinfomenu then
|
||||||
local menutaskinfo = self.gettext:GetEntry("MENUTASKINFO",self.locale)
|
local taskinfomenu = nil
|
||||||
|
if self.PlayerInfoMenu[playername] then
|
||||||
|
taskinfomenu = self.PlayerInfoMenu[playername]
|
||||||
|
taskinfomenu:RemoveSubMenus()
|
||||||
|
else
|
||||||
|
local menutaskinfo = self.gettext:GetEntry("MENUTASKINFO",self.locale)
|
||||||
|
taskinfomenu = MENU_GROUP_DELAYED:New(group,menutaskinfo,topmenu)
|
||||||
|
self.PlayerInfoMenu[playername] = taskinfomenu
|
||||||
|
end
|
||||||
|
|
||||||
local ittypes = {}
|
local ittypes = {}
|
||||||
local itaskmenu = {}
|
local itaskmenu = {}
|
||||||
local taskinfomenu = MENU_GROUP_DELAYED:New(group,menutaskinfo,topmenu)
|
|
||||||
for _tasktype,_data in pairs(tasktypes) do
|
for _tasktype,_data in pairs(tasktypes) do
|
||||||
ittypes[_tasktype] = MENU_GROUP_DELAYED:New(group,_tasktype,taskinfomenu)
|
ittypes[_tasktype] = MENU_GROUP_DELAYED:New(group,_tasktype,taskinfomenu)
|
||||||
local tasks = taskpertype[_tasktype] or {}
|
local tasks = taskpertype[_tasktype] or {}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user