Additions

This commit is contained in:
Applevangelist 2022-12-14 14:48:49 +01:00
parent 21e12068c7
commit 52d20ed8ef
2 changed files with 17 additions and 8 deletions

View File

@ -3884,9 +3884,9 @@ do -- SET_CLIENT
--- Builds a set of clients of certain callsigns. --- Builds a set of clients of certain callsigns.
-- @param #SET_CLIENT self -- @param #SET_CLIENT self
-- @param #string Callsigns Can be a string e.g. "Ford", or a table of strings e.g. {"Uzi","Enfield","Chevy"} -- @param #string Callsigns Can be a single string e.g. "Ford", or a table of strings e.g. {"Uzi","Enfield","Chevy"}. Refers to the callsigns as they can be set in the mission editor.
-- @return #SET_CLIENT self -- @return #SET_CLIENT self
function SET_CLIENT:Filtercallsigns( Callsigns ) function SET_CLIENT:FilterCallsigns( Callsigns )
if not self.Filter.Callsigns then if not self.Filter.Callsigns then
self.Filter.Callsigns = {} self.Filter.Callsigns = {}
end end
@ -3894,14 +3894,14 @@ do -- SET_CLIENT
Callsigns = { Callsigns } Callsigns = { Callsigns }
end end
for callsignID, callsign in pairs( Callsigns ) do for callsignID, callsign in pairs( Callsigns ) do
self.Filter.Coalitions[Callsigns] = Callsigns self.Filter.Callsigns[callsign] = callsign
end end
return self return self
end end
--- Builds a set of clients of certain playernames. --- Builds a set of clients of certain playernames.
-- @param #SET_CLIENT self -- @param #SET_CLIENT self
-- @param #string Playernames Can be a string e.g. "Apple", or a table of strings e.g. {"Walter","Hermann","Gonzo"} -- @param #string Playernames Can be a single string e.g. "Apple", or a table of strings e.g. {"Walter","Hermann","Gonzo"}. Useful if you have e.g. a common squadron prefix.
-- @return #SET_CLIENT self -- @return #SET_CLIENT self
function SET_CLIENT:FilterPlayernames( Playernames ) function SET_CLIENT:FilterPlayernames( Playernames )
if not self.Filter.Playernames then if not self.Filter.Playernames then
@ -3910,8 +3910,8 @@ do -- SET_CLIENT
if type( Playernames ) ~= "table" then if type( Playernames ) ~= "table" then
Playernames = { Playernames } Playernames = { Playernames }
end end
for PlayernameID, Playernames in pairs( Playernames ) do for PlayernameID, playername in pairs( Playernames ) do
self.Filter.Coalitions[Playernames] = Playernames self.Filter.Playernames[playername] = playername
end end
return self return self
end end

View File

@ -1435,7 +1435,7 @@ PLAYERTASKCONTROLLER.Messages = {
--- PLAYERTASK class version. --- PLAYERTASK class version.
-- @field #string version -- @field #string version
PLAYERTASKCONTROLLER.version="0.1.52" PLAYERTASKCONTROLLER.version="0.1.53"
--- Create and run a new TASKCONTROLLER instance. --- Create and run a new TASKCONTROLLER instance.
-- @param #PLAYERTASKCONTROLLER self -- @param #PLAYERTASKCONTROLLER self
@ -2731,6 +2731,7 @@ end
-- @param #PLAYERTASKCONTROLLER self -- @param #PLAYERTASKCONTROLLER self
-- @param Ops.PlayerTask#PLAYERTASK PlayerTask -- @param Ops.PlayerTask#PLAYERTASK PlayerTask
-- @param #boolean Silent If true, make no "has new task" announcement -- @param #boolean Silent If true, make no "has new task" announcement
-- @param #boolen TaskFilter If true, apply the white/black-list task filters here, also
-- @return #PLAYERTASKCONTROLLER self -- @return #PLAYERTASKCONTROLLER self
-- @usage -- @usage
-- Example to create a PLAYERTASK of type CTLD and give Players 10 minutes to complete: -- Example to create a PLAYERTASK of type CTLD and give Players 10 minutes to complete:
@ -2751,9 +2752,17 @@ end
-- ) -- )
-- --
-- taskmanager:AddPlayerTaskToQueue(PlayerTask) -- taskmanager:AddPlayerTaskToQueue(PlayerTask)
function PLAYERTASKCONTROLLER:AddPlayerTaskToQueue(PlayerTask,Silent) function PLAYERTASKCONTROLLER:AddPlayerTaskToQueue(PlayerTask,Silent,TaskFilter)
self:T(self.lid.."AddPlayerTaskToQueue") self:T(self.lid.."AddPlayerTaskToQueue")
if PlayerTask and PlayerTask.ClassName and PlayerTask.ClassName == "PLAYERTASK" then if PlayerTask and PlayerTask.ClassName and PlayerTask.ClassName == "PLAYERTASK" then
if TaskFilter then
if self.UseWhiteList and (not self:_CheckTaskTypeAllowed(PlayerTask.Type)) then
return self
end
if self.UseBlackList and self:_CheckTaskTypeDisallowed(PlayerTask.Type) then
return self
end
end
PlayerTask:_SetController(self) PlayerTask:_SetController(self)
PlayerTask:SetCoalition(self.Coalition) PlayerTask:SetCoalition(self.Coalition)
self.TaskQueue:Push(PlayerTask) self.TaskQueue:Push(PlayerTask)