mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
Fixed spawn problems, i think ...
This commit is contained in:
parent
f91d8fd07d
commit
aa806e19e1
@ -687,6 +687,8 @@ function EVENT:onEvent( Event )
|
|||||||
return errmsg
|
return errmsg
|
||||||
end
|
end
|
||||||
|
|
||||||
|
self:E( Event )
|
||||||
|
|
||||||
if self and self.Events and self.Events[Event.id] then
|
if self and self.Events and self.Events[Event.id] then
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -233,6 +233,8 @@ function SPAWN:New( SpawnTemplatePrefix )
|
|||||||
error( "SPAWN:New: There is no group declared in the mission editor with SpawnTemplatePrefix = '" .. SpawnTemplatePrefix .. "'" )
|
error( "SPAWN:New: There is no group declared in the mission editor with SpawnTemplatePrefix = '" .. SpawnTemplatePrefix .. "'" )
|
||||||
end
|
end
|
||||||
|
|
||||||
|
self:SetEventPriority( 5 )
|
||||||
|
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -274,6 +276,8 @@ function SPAWN:NewWithAlias( SpawnTemplatePrefix, SpawnAliasPrefix )
|
|||||||
error( "SPAWN:New: There is no group declared in the mission editor with SpawnTemplatePrefix = '" .. SpawnTemplatePrefix .. "'" )
|
error( "SPAWN:New: There is no group declared in the mission editor with SpawnTemplatePrefix = '" .. SpawnTemplatePrefix .. "'" )
|
||||||
end
|
end
|
||||||
|
|
||||||
|
self:SetEventPriority( 5 )
|
||||||
|
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -722,9 +726,10 @@ function SPAWN:SpawnWithIndex( SpawnIndex )
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
_EVENTDISPATCHER:OnBirthForTemplate( SpawnTemplate, self._OnBirth, self )
|
self:HandleEvent( EVENTS.Birth, self._OnBirth )
|
||||||
_EVENTDISPATCHER:OnCrashForTemplate( SpawnTemplate, self._OnDeadOrCrash, self )
|
--_EVENTDISPATCHER:OnBirthForTemplate( SpawnTemplate, self._OnBirth, self )
|
||||||
_EVENTDISPATCHER:OnDeadForTemplate( SpawnTemplate, self._OnDeadOrCrash, self )
|
self:HandleEvent( EVENTS.Dead, self._OnDeadOrCrash )
|
||||||
|
self:HandleEvent( EVENTS.Crash, self._OnDeadOrCrash )
|
||||||
|
|
||||||
|
|
||||||
self.SpawnGroups[self.SpawnIndex].Group = _DATABASE:Spawn( SpawnTemplate )
|
self.SpawnGroups[self.SpawnIndex].Group = _DATABASE:Spawn( SpawnTemplate )
|
||||||
@ -738,13 +743,13 @@ function SPAWN:SpawnWithIndex( SpawnIndex )
|
|||||||
end
|
end
|
||||||
|
|
||||||
if self.Repeat then
|
if self.Repeat then
|
||||||
SpawnGroup:HandleEvent( EVENTS.Takeoff, self._OnTakeOff )
|
self:HandleEvent( EVENTS.Takeoff, self._OnTakeOff )
|
||||||
SpawnGroup:HandleEvent( EVENTS.Land, self._OnLand )
|
self:HandleEvent( EVENTS.Land, self._OnLand )
|
||||||
--_EVENTDISPATCHER:OnTakeOffForTemplate( SpawnTemplate, self._OnTakeOff, self )
|
--_EVENTDISPATCHER:OnTakeOffForTemplate( SpawnTemplate, self._OnTakeOff, self )
|
||||||
--_EVENTDISPATCHER:OnLandForTemplate( SpawnTemplate, self._OnLand, self )
|
--_EVENTDISPATCHER:OnLandForTemplate( SpawnTemplate, self._OnLand, self )
|
||||||
end
|
end
|
||||||
if self.RepeatOnEngineShutDown then
|
if self.RepeatOnEngineShutDown then
|
||||||
SpawnGroup:HandleEvent( EVENTS.EngineShutdown, self._OnEngineShutDown )
|
self:HandleEvent( EVENTS.EngineShutdown, self._OnEngineShutDown )
|
||||||
|
|
||||||
--_EVENTDISPATCHER:OnEngineShutDownForTemplate( SpawnTemplate, self._OnEngineShutDown, self )
|
--_EVENTDISPATCHER:OnEngineShutDownForTemplate( SpawnTemplate, self._OnEngineShutDown, self )
|
||||||
end
|
end
|
||||||
@ -1142,6 +1147,29 @@ function SPAWN:_GetGroupIndexFromDCSUnit( DCSUnit )
|
|||||||
return nil
|
return nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Get the group index from a DCSUnit.
|
||||||
|
-- The method will search for a #-mark, and will return the index behind the #-mark of the DCSUnit.
|
||||||
|
-- It will return nil of no prefix was found.
|
||||||
|
-- @param #SPAWN self
|
||||||
|
-- @param Dcs.DCSWrapper.Unit#Unit DCSUnit The @{DCSUnit} to be searched.
|
||||||
|
-- @return #string The prefix
|
||||||
|
-- @return #nil Nothing found
|
||||||
|
function SPAWN:_GetGroupIndexFromUnit( DCSUnit )
|
||||||
|
self:F3( { self.SpawnTemplatePrefix, self.SpawnAliasPrefix, DCSUnit } )
|
||||||
|
|
||||||
|
local SpawnUnitName = ( DCSUnit and DCSUnit:GetName() ) or nil
|
||||||
|
if SpawnUnitName then
|
||||||
|
local IndexString = string.match( SpawnUnitName, "#.*-" ):sub( 2, -2 )
|
||||||
|
if IndexString then
|
||||||
|
local Index = tonumber( IndexString )
|
||||||
|
return Index
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
--- Return the prefix of a SpawnUnit.
|
--- Return the prefix of a SpawnUnit.
|
||||||
-- The method will search for a #-mark, and will return the text before the #-mark.
|
-- The method will search for a #-mark, and will return the text before the #-mark.
|
||||||
-- It will return nil of no prefix was found.
|
-- It will return nil of no prefix was found.
|
||||||
@ -1165,6 +1193,51 @@ function SPAWN:_GetPrefixFromDCSUnit( DCSUnit )
|
|||||||
return nil
|
return nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Return the prefix of a SpawnUnit.
|
||||||
|
-- The method will search for a #-mark, and will return the text before the #-mark.
|
||||||
|
-- It will return nil of no prefix was found.
|
||||||
|
-- @param #SPAWN self
|
||||||
|
-- @param Dcs.DCSWrapper.Unit#UNIT DCSUnit The @{DCSUnit} to be searched.
|
||||||
|
-- @return #string The prefix
|
||||||
|
-- @return #nil Nothing found
|
||||||
|
function SPAWN:_GetPrefixFromUnit( DCSUnit )
|
||||||
|
self:F3( { self.SpawnTemplatePrefix, self.SpawnAliasPrefix, DCSUnit } )
|
||||||
|
|
||||||
|
local DCSGroup = DCSUnit:GetGroup()
|
||||||
|
local DCSUnitName = ( DCSGroup and DCSGroup:GetName() ) or nil
|
||||||
|
if DCSUnitName then
|
||||||
|
local SpawnPrefix = string.match( DCSUnitName, ".*#" )
|
||||||
|
if SpawnPrefix then
|
||||||
|
SpawnPrefix = SpawnPrefix:sub( 1, -2 )
|
||||||
|
end
|
||||||
|
return SpawnPrefix
|
||||||
|
end
|
||||||
|
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Return the prefix of a SpawnUnit.
|
||||||
|
-- The method will search for a #-mark, and will return the text before the #-mark.
|
||||||
|
-- It will return nil of no prefix was found.
|
||||||
|
-- @param #SPAWN self
|
||||||
|
-- @param Dcs.DCSWrapper.Unit#UNIT DCSUnit The @{DCSUnit} to be searched.
|
||||||
|
-- @return #string The prefix
|
||||||
|
-- @return #nil Nothing found
|
||||||
|
function SPAWN:_GetPrefixFromGroup( SpawnGroup )
|
||||||
|
self:F3( { self.SpawnTemplatePrefix, self.SpawnAliasPrefix, SpawnGroup } )
|
||||||
|
|
||||||
|
local GroupName = SpawnGroup:GetName()
|
||||||
|
if GroupName then
|
||||||
|
local SpawnPrefix = string.match( GroupName, ".*#" )
|
||||||
|
if SpawnPrefix then
|
||||||
|
SpawnPrefix = SpawnPrefix:sub( 1, -2 )
|
||||||
|
end
|
||||||
|
return SpawnPrefix
|
||||||
|
end
|
||||||
|
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
|
||||||
--- Return the group within the SpawnGroups collection with input a DCSUnit.
|
--- Return the group within the SpawnGroups collection with input a DCSUnit.
|
||||||
-- @param #SPAWN self
|
-- @param #SPAWN self
|
||||||
-- @param Dcs.DCSWrapper.Unit#Unit DCSUnit The @{DCSUnit} to be searched.
|
-- @param Dcs.DCSWrapper.Unit#Unit DCSUnit The @{DCSUnit} to be searched.
|
||||||
@ -1173,10 +1246,10 @@ end
|
|||||||
function SPAWN:_GetGroupFromUnit( DCSUnit )
|
function SPAWN:_GetGroupFromUnit( DCSUnit )
|
||||||
self:F3( { self.SpawnTemplatePrefix, self.SpawnAliasPrefix, DCSUnit } )
|
self:F3( { self.SpawnTemplatePrefix, self.SpawnAliasPrefix, DCSUnit } )
|
||||||
|
|
||||||
local SpawnPrefix = self:_GetPrefixFromDCSUnit( DCSUnit )
|
local SpawnPrefix = self:_GetPrefixFromUnit( DCSUnit )
|
||||||
|
|
||||||
if self.SpawnTemplatePrefix == SpawnPrefix or ( self.SpawnAliasPrefix and self.SpawnAliasPrefix == SpawnPrefix ) then
|
if self.SpawnTemplatePrefix == SpawnPrefix or ( self.SpawnAliasPrefix and self.SpawnAliasPrefix == SpawnPrefix ) then
|
||||||
local SpawnGroupIndex = self:_GetGroupIndexFromDCSUnit( DCSUnit )
|
local SpawnGroupIndex = self:_GetGroupIndexFromUnit( DCSUnit )
|
||||||
local SpawnGroup = self.SpawnGroups[SpawnGroupIndex].Group
|
local SpawnGroup = self.SpawnGroups[SpawnGroupIndex].Group
|
||||||
self:T( SpawnGroup )
|
self:T( SpawnGroup )
|
||||||
return SpawnGroup
|
return SpawnGroup
|
||||||
@ -1516,17 +1589,18 @@ end
|
|||||||
-- TODO Need to delete this... _DATABASE does this now ...
|
-- TODO Need to delete this... _DATABASE does this now ...
|
||||||
|
|
||||||
--- @param #SPAWN self
|
--- @param #SPAWN self
|
||||||
-- @param Core.Event#EVENTDATA Event
|
-- @param Core.Event#EVENTDATA EventData
|
||||||
function SPAWN:_OnBirth( Event )
|
function SPAWN:_OnBirth( EventData )
|
||||||
|
self:F( self.SpawnTemplatePrefix )
|
||||||
|
|
||||||
if timer.getTime0() < timer.getAbsTime() then
|
local SpawnGroup = EventData.IniGroup
|
||||||
if Event.IniDCSUnit then
|
|
||||||
local EventPrefix = self:_GetPrefixFromDCSUnit( Event.IniDCSUnit )
|
if SpawnGroup then
|
||||||
self:T( { "Birth Event:", EventPrefix, self.SpawnTemplatePrefix } )
|
local EventPrefix = self:_GetPrefixFromGroup( SpawnGroup )
|
||||||
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
self:T( { "Birth Event:", EventPrefix, self.SpawnTemplatePrefix } )
|
||||||
self.AliveUnits = self.AliveUnits + 1
|
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
||||||
self:T( "Alive Units: " .. self.AliveUnits )
|
self.AliveUnits = self.AliveUnits + 1
|
||||||
end
|
self:T( "Alive Units: " .. self.AliveUnits )
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -1536,13 +1610,15 @@ end
|
|||||||
-- @todo Need to delete this... _DATABASE does this now ...
|
-- @todo Need to delete this... _DATABASE does this now ...
|
||||||
|
|
||||||
--- @param #SPAWN self
|
--- @param #SPAWN self
|
||||||
-- @param Core.Event#EVENTDATA Event
|
-- @param Core.Event#EVENTDATA EventData
|
||||||
function SPAWN:_OnDeadOrCrash( Event )
|
function SPAWN:_OnDeadOrCrash( EventData )
|
||||||
self:F( self.SpawnTemplatePrefix, Event )
|
self:F( self.SpawnTemplatePrefix )
|
||||||
|
|
||||||
if Event.IniDCSUnit then
|
local SpawnGroup = EventData.IniGroup
|
||||||
local EventPrefix = self:_GetPrefixFromDCSUnit( Event.IniDCSUnit )
|
|
||||||
self:T( { "Dead event: " .. EventPrefix, self.SpawnTemplatePrefix } )
|
if SpawnGroup then
|
||||||
|
local EventPrefix = self:_GetPrefixFromGroup( SpawnGroup )
|
||||||
|
self:T( { "Dead event: " .. EventPrefix } )
|
||||||
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
||||||
self.AliveUnits = self.AliveUnits - 1
|
self.AliveUnits = self.AliveUnits - 1
|
||||||
self:T( "Alive Units: " .. self.AliveUnits )
|
self:T( "Alive Units: " .. self.AliveUnits )
|
||||||
@ -1552,17 +1628,19 @@ end
|
|||||||
|
|
||||||
--- Will detect AIR Units taking off... When the event takes place, the spawned Group is registered as airborne...
|
--- Will detect AIR Units taking off... When the event takes place, the spawned Group is registered as airborne...
|
||||||
-- This is needed to ensure that Re-SPAWNing only is done for landed AIR Groups.
|
-- This is needed to ensure that Re-SPAWNing only is done for landed AIR Groups.
|
||||||
-- @todo Need to test for AIR Groups only...
|
-- @param #SPAWN self
|
||||||
function SPAWN:_OnTakeOff( event )
|
-- @param Core.Event#EVENTDATA EventData
|
||||||
self:F( self.SpawnTemplatePrefix, event )
|
function SPAWN:_OnTakeOff( EventData )
|
||||||
|
self:F( self.SpawnTemplatePrefix )
|
||||||
|
|
||||||
if event.initiator and event.initiator:getName() then
|
local SpawnGroup = EventData.IniGroup
|
||||||
local SpawnGroup = self:_GetGroupFromUnit( event.initiator )
|
if SpawnGroup then
|
||||||
if SpawnGroup then
|
local EventPrefix = self:_GetPrefixFromGroup( SpawnGroup )
|
||||||
self:T( { "TakeOff event: " .. event.initiator:getName(), event } )
|
self:T( { "TakeOff event: " .. EventPrefix } )
|
||||||
self:T( "self.Landed = false" )
|
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
||||||
self.Landed = false
|
self:T( "self.Landed = false" )
|
||||||
end
|
SpawnGroup:SetState( SpawnGroup, "Spawn_Landed", false )
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -1570,18 +1648,17 @@ end
|
|||||||
-- This is needed to ensure that Re-SPAWNing is only done for landed AIR Groups.
|
-- This is needed to ensure that Re-SPAWNing is only done for landed AIR Groups.
|
||||||
-- @param #SPAWN self
|
-- @param #SPAWN self
|
||||||
-- @param Core.Event#EVENTDATA EventData
|
-- @param Core.Event#EVENTDATA EventData
|
||||||
-- @todo Need to test for AIR Groups only...
|
|
||||||
function SPAWN:_OnLand( EventData )
|
function SPAWN:_OnLand( EventData )
|
||||||
self:F( self.SpawnTemplatePrefix )
|
self:F( self.SpawnTemplatePrefix )
|
||||||
|
|
||||||
local SpawnUnit = EventData.IniUnit
|
local SpawnGroup = EventData.IniGroup
|
||||||
if SpawnUnit and SpawnUnit:IsAlive() and SpawnUnit:GetCategory() == Object.Category.UNIT then
|
if SpawnGroup then
|
||||||
local SpawnGroup = self:_GetGroupFromUnit( SpawnUnit )
|
local EventPrefix = self:_GetPrefixFromGroup( SpawnGroup )
|
||||||
if SpawnGroup then
|
self:T( { "Land event: " .. EventPrefix } )
|
||||||
self:T( { "Landed event:" .. SpawnUnit:GetName() } )
|
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
||||||
self.Landed = true
|
|
||||||
-- TODO: Check if this is the last unit of the group that lands.
|
-- TODO: Check if this is the last unit of the group that lands.
|
||||||
if self.Landed and self.RepeatOnLanding then
|
SpawnGroup:SetState( SpawnGroup, "Spawn_Landed", true )
|
||||||
|
if self.RepeatOnLanding then
|
||||||
local SpawnGroupIndex = self:GetSpawnIndexFromGroup( SpawnGroup )
|
local SpawnGroupIndex = self:GetSpawnIndexFromGroup( SpawnGroup )
|
||||||
self:T( { "Landed:", "ReSpawn:", SpawnGroup:GetName(), SpawnGroupIndex } )
|
self:T( { "Landed:", "ReSpawn:", SpawnGroup:GetName(), SpawnGroupIndex } )
|
||||||
self:ReSpawn( SpawnGroupIndex )
|
self:ReSpawn( SpawnGroupIndex )
|
||||||
@ -1594,18 +1671,18 @@ end
|
|||||||
-- When the event takes place, and the method @{RepeatOnEngineShutDown} was called, the spawned Group will Re-SPAWN.
|
-- When the event takes place, and the method @{RepeatOnEngineShutDown} was called, the spawned Group will Re-SPAWN.
|
||||||
-- But only when the Unit was registered to have landed.
|
-- But only when the Unit was registered to have landed.
|
||||||
-- @param #SPAWN self
|
-- @param #SPAWN self
|
||||||
-- @see _OnTakeOff
|
-- @param Core.Event#EVENTDATA EventData
|
||||||
-- @see _OnLand
|
function SPAWN:_OnEngineShutDown( EventData )
|
||||||
-- @todo Need to test for AIR Groups only...
|
self:F( self.SpawnTemplatePrefix )
|
||||||
function SPAWN:_OnEngineShutDown( event )
|
|
||||||
self:F( self.SpawnTemplatePrefix, event )
|
|
||||||
|
|
||||||
local SpawnUnit = event.initiator
|
local SpawnGroup = EventData.IniGroup
|
||||||
if SpawnUnit and SpawnUnit:isExist() and Object.getCategory(SpawnUnit) == Object.Category.UNIT then
|
if SpawnGroup then
|
||||||
local SpawnGroup = self:_GetGroupFromUnit( SpawnUnit )
|
local EventPrefix = self:_GetPrefixFromGroup( SpawnGroup )
|
||||||
if SpawnGroup then
|
self:T( { "EngineShutdown event: " .. EventPrefix } )
|
||||||
self:T( { "EngineShutDown event: " .. SpawnUnit:getName(), event } )
|
if EventPrefix == self.SpawnTemplatePrefix or ( self.SpawnAliasPrefix and EventPrefix == self.SpawnAliasPrefix ) then
|
||||||
if self.Landed and self.RepeatOnEngineShutDown then
|
-- todo: test if on the runway
|
||||||
|
local Landed = SpawnGroup:GetState( SpawnGroup, "Spawn_Landed" )
|
||||||
|
if Landed and self.RepeatOnEngineShutDown then
|
||||||
local SpawnGroupIndex = self:GetSpawnIndexFromGroup( SpawnGroup )
|
local SpawnGroupIndex = self:GetSpawnIndexFromGroup( SpawnGroup )
|
||||||
self:T( { "EngineShutDown: ", "ReSpawn:", SpawnGroup:GetName(), SpawnGroupIndex } )
|
self:T( { "EngineShutDown: ", "ReSpawn:", SpawnGroup:GetName(), SpawnGroupIndex } )
|
||||||
self:ReSpawn( SpawnGroupIndex )
|
self:ReSpawn( SpawnGroupIndex )
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
||||||
env.info( 'Moose Generation Timestamp: 20170321_2007' )
|
env.info( 'Moose Generation Timestamp: 20170323_1110' )
|
||||||
|
|
||||||
local base = _G
|
local base = _G
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
||||||
env.info( 'Moose Generation Timestamp: 20170321_2007' )
|
env.info( 'Moose Generation Timestamp: 20170323_1110' )
|
||||||
|
|
||||||
local base = _G
|
local base = _G
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user