Difference between revisions of "Os.queueEvent"

From ComputerCraft Wiki
Jump to: navigation, search
(Created page with "{{lowercase}} {{Function |name=os.queueEvent |args=string eventName, param1, param2, param3 |api=os |returns=? |addon=ComputerCraft |desc=Adds an event <var>eventNam...")
 
m (Updated references from "os" to "OS")
 
(11 intermediate revisions by 5 users not shown)
Line 3: Line 3:
 
  |name=os.queueEvent
 
  |name=os.queueEvent
 
  |args=[[string]] eventName, param1, param2, param3
 
  |args=[[string]] eventName, param1, param2, param3
  |api=os
+
  |api=OS
|returns=?
+
 
  |addon=ComputerCraft
 
  |addon=ComputerCraft
 
  |desc=Adds an event <var>eventName</var> with the specified parameters to the event queue.
 
  |desc=Adds an event <var>eventName</var> with the specified parameters to the event queue.
Line 10: Line 9:
 
{{Example
 
{{Example
 
|desc=The program adds an event which it will eventually pull.
 
|desc=The program adds an event which it will eventually pull.
|code=[[function]] clear()
+
|code=
    [[term.clear]]()
+
  os.queueEvent("abc", 2, "meow")
    [[term.setCursorPos]] (1,1)
+
end
+
  os.queueEvent("abc",2,"meow")
+
 
  while true do
 
  while true do
    local event, param1 = os.pullEvent()
+
    local event, param1, param2 = os.pullEvent()
    if event == "abc"
+
    if event == "abc" then
        print("ABC EVENT! Parameters: " .. param1 .. " / " .. param2)
+
        print("ABC EVENT! Parameters: " .. param1 .. " / " .. param2)
    else
+
    else
        print("Event: " .. event )
+
        print("Event: " .. event)
    end
+
    end
 
  end
 
  end
 +
}}
 
}}
 
}}
 
{{Example
 
{{Example
Line 31: Line 28:
 
     local event, param1 = os.pullEvent()
 
     local event, param1 = os.pullEvent()
 
     if event == "redstone" then
 
     if event == "redstone" then
      if rs.getInput("left") then
+
        if rs.getInput("left") then
        os.queueEvent("key",28)
+
            os.queueEvent("key", 28)
      end
+
        end
 
     elseif event == "key" then
 
     elseif event == "key" then
      if param1 == 28 then
+
        if param1 == 28 then
        print("Hello")
+
            print("Hello")
      end
+
        end
 
     end
 
     end
 
  end
 
  end
 
}}
 
}}
 +
 +
[[Category:Lua_Core_Functions]]

Latest revision as of 14:09, 30 November 2012


Grid Redstone.png  Function os.queueEvent
Adds an event eventName with the specified parameters to the event queue.
Syntax os.queueEvent(string eventName, param1, param2, param3)
Returns nil
Part of ComputerCraft
API OS

Examples

Grid paper.png  Example
The program adds an event which it will eventually pull.
Code
os.queueEvent("abc", 2, "meow")
while true do
    local event, param1, param2 = os.pullEvent()
    if event == "abc" then
        print("ABC EVENT! Parameters: " .. param1 .. " / " .. param2)
    else
        print("Event: " .. event)
    end
end


Grid paper.png  Example
To easily have a redstone and a key input do the same,
it queues a key event with the appropriate key if a redstone event happens.
Code
while true do
    local event, param1 = os.pullEvent()
    if event == "redstone" then
        if rs.getInput("left") then
            os.queueEvent("key", 28)
        end
    elseif event == "key" then
        if param1 == 28 then
            print("Hello")
        end
    end
end