GE Lua Documentation

Press F to search!

clearMessagesFromSource

Definition


-- @/lua/ge/extensions/ui/gameplayAppContainers.lua:261

-- Clear messages from a specific source (for apps that need to control their message lifecycle)
local function clearMessagesFromSource(source)
  -- Clear queued messages from this source
  for i = #flashMessageQueue, 1, -1 do
    if flashMessageQueue[i].source == source then
      table.remove(flashMessageQueue, i)
    end
  end

  -- Clear current message if it's from this source
  if currentMessage and currentMessage.source == source then
    currentMessage = nil

    -- Hide flash message app if no more messages in queue
    if #flashMessageQueue == 0 then
      hideApp('gameplayApps', 'flashMessage')
    else
      -- Process next message immediately
      processNextMessage()
    end
  end

  -- Messages cleared from source
end

Callers

@/lua/ge/extensions/gameplay/drag/display.lua
        if ui_gameplayAppContainers then
          ui_gameplayAppContainers.clearMessagesFromSource('drag')
        end
@/lua/ge/extensions/gameplay/drag/general.lua
    -- Clear any queued drag flash messages when clearing drag system
    ui_gameplayAppContainers.clearMessagesFromSource('drag')
  end
@/lua/ge/extensions/ui/gameplayAppContainers.lua
        if im.Button("Clear Drag Messages##" .. containerId) then
          clearMessagesFromSource('drag')
        end