mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2026-08-21 11:53:30 +00:00
Update CTLD.lua
Removed quantity menu if there is only one set.
This commit is contained in:
@@ -5655,9 +5655,8 @@ function CTLD:_RefreshDropCratesMenu(Group, Unit)
|
|||||||
table.insert(self.CrateGroupList[Unit:GetName()],chunk)
|
table.insert(self.CrateGroupList[Unit:GetName()],chunk)
|
||||||
i=i+needed
|
i=i+needed
|
||||||
end
|
end
|
||||||
for q=1,sets do
|
if sets==1 then
|
||||||
local qm=MENU_GROUP:New(Group,string.format("Drop %d Set%s",q,q>1 and "s" or ""),parentMenu)
|
MENU_GROUP_COMMAND:New(Group,"Drop",parentMenu,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
||||||
MENU_GROUP_COMMAND:New(Group,"Drop",qm,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
|
||||||
local uName=UnitArg:GetName()
|
local uName=UnitArg:GetName()
|
||||||
for k=1,qty do
|
for k=1,qty do
|
||||||
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
||||||
@@ -5671,7 +5670,26 @@ function CTLD:_RefreshDropCratesMenu(Group, Unit)
|
|||||||
if not idx then break end
|
if not idx then break end
|
||||||
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
||||||
end
|
end
|
||||||
end,self,Group,Unit,cName,needed,q)
|
end,self,Group,Unit,cName,needed,1)
|
||||||
|
else
|
||||||
|
for q=1,sets do
|
||||||
|
local qm=MENU_GROUP:New(Group,string.format("Drop %d Set%s",q,q>1 and "s" or ""),parentMenu)
|
||||||
|
MENU_GROUP_COMMAND:New(Group,"Drop",qm,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
||||||
|
local uName=UnitArg:GetName()
|
||||||
|
for k=1,qty do
|
||||||
|
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
||||||
|
if not lst then break end
|
||||||
|
local idx=nil
|
||||||
|
for j=1,#lst do
|
||||||
|
local ch=lst[j]
|
||||||
|
local first=ch and ch[1]
|
||||||
|
if first and (not first:WasDropped()) and first:GetName()==cNameArg and #ch>=neededArg then idx=j break end
|
||||||
|
end
|
||||||
|
if not idx then break end
|
||||||
|
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
||||||
|
end
|
||||||
|
end,self,Group,Unit,cName,needed,q)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
lineIndex=lineIndex+1
|
lineIndex=lineIndex+1
|
||||||
end
|
end
|
||||||
@@ -5715,9 +5733,8 @@ function CTLD:_RefreshDropCratesMenu(Group, Unit)
|
|||||||
table.insert(self.CrateGroupList[Unit:GetName()],chunk)
|
table.insert(self.CrateGroupList[Unit:GetName()],chunk)
|
||||||
i=i+needed
|
i=i+needed
|
||||||
end
|
end
|
||||||
for q=1,sets do
|
if sets==1 then
|
||||||
local qm=MENU_GROUP:New(Group,string.format("Drop %d Set%s",q,q>1 and "s" or ""),parentMenu)
|
MENU_GROUP_COMMAND:New(Group,"Drop",parentMenu,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
||||||
MENU_GROUP_COMMAND:New(Group,"Drop",qm,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
|
||||||
local uName=UnitArg:GetName()
|
local uName=UnitArg:GetName()
|
||||||
for k=1,qty do
|
for k=1,qty do
|
||||||
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
||||||
@@ -5731,9 +5748,9 @@ function CTLD:_RefreshDropCratesMenu(Group, Unit)
|
|||||||
if not idx then break end
|
if not idx then break end
|
||||||
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
||||||
end
|
end
|
||||||
end,self,Group,Unit,cName,needed,q)
|
end,self,Group,Unit,cName,needed,1)
|
||||||
if not ( self:IsUnitInAir(Unit) and self:IsFixedWing(Unit) ) then
|
if not ( self:IsUnitInAir(Unit) and self:IsFixedWing(Unit) ) then
|
||||||
MENU_GROUP_COMMAND:New(Group,"Drop and build",qm,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
MENU_GROUP_COMMAND:New(Group,"Drop and build",parentMenu,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
||||||
local uName=UnitArg:GetName()
|
local uName=UnitArg:GetName()
|
||||||
for k=1,qty do
|
for k=1,qty do
|
||||||
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
||||||
@@ -5748,7 +5765,44 @@ function CTLD:_RefreshDropCratesMenu(Group, Unit)
|
|||||||
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
||||||
end
|
end
|
||||||
selfArg:_BuildCrates(GroupArg,UnitArg)
|
selfArg:_BuildCrates(GroupArg,UnitArg)
|
||||||
|
end,self,Group,Unit,cName,needed,1)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
for q=1,sets do
|
||||||
|
local qm=MENU_GROUP:New(Group,string.format("Drop %d Set%s",q,q>1 and "s" or ""),parentMenu)
|
||||||
|
MENU_GROUP_COMMAND:New(Group,"Drop",qm,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
||||||
|
local uName=UnitArg:GetName()
|
||||||
|
for k=1,qty do
|
||||||
|
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
||||||
|
if not lst then break end
|
||||||
|
local idx=nil
|
||||||
|
for j=1,#lst do
|
||||||
|
local ch=lst[j]
|
||||||
|
local first=ch and ch[1]
|
||||||
|
if first and (not first:WasDropped()) and first:GetName()==cNameArg and #ch>=neededArg then idx=j break end
|
||||||
|
end
|
||||||
|
if not idx then break end
|
||||||
|
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
||||||
|
end
|
||||||
end,self,Group,Unit,cName,needed,q)
|
end,self,Group,Unit,cName,needed,q)
|
||||||
|
if not ( self:IsUnitInAir(Unit) and self:IsFixedWing(Unit) ) then
|
||||||
|
MENU_GROUP_COMMAND:New(Group,"Drop and build",qm,function(selfArg,GroupArg,UnitArg,cNameArg,neededArg,qty)
|
||||||
|
local uName=UnitArg:GetName()
|
||||||
|
for k=1,qty do
|
||||||
|
local lst=selfArg.CrateGroupList and selfArg.CrateGroupList[uName]
|
||||||
|
if not lst then break end
|
||||||
|
local idx=nil
|
||||||
|
for j=1,#lst do
|
||||||
|
local ch=lst[j]
|
||||||
|
local first=ch and ch[1]
|
||||||
|
if first and (not first:WasDropped()) and first:GetName()==cNameArg and #ch>=neededArg then idx=j break end
|
||||||
|
end
|
||||||
|
if not idx then break end
|
||||||
|
selfArg:_UnloadSingleCrateSet(GroupArg,UnitArg,idx)
|
||||||
|
end
|
||||||
|
selfArg:_BuildCrates(GroupArg,UnitArg)
|
||||||
|
end,self,Group,Unit,cName,needed,q)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
lineIndex=lineIndex+1
|
lineIndex=lineIndex+1
|
||||||
|
|||||||
Reference in New Issue
Block a user