Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal
  • 0
north

Event.listen handling

Question

Is there a way to get event data when using event.listen()?

I'm trying to display "X" where the user touches the screen. It works with event.pull() as I can get all the necessary parameters to pass to the GPU component, however, this yields the computer.

while true do
   local _, _, x, y = event.pull("touch")

   gpu.set(x, y, "X")
end

Is there a way to do this in the background using event.listen()? Something along the lines of
 

event.listen("touch", mark)


function mark(e) --e being the event that was registered
   _, _, x, y = e
   gpu.set(x, y, "X")
end
Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0
  • Solution

After some tinkering, it seems I wasn't far off. Here's the way to do this if anyone was dealing with something similar.

 

event.listen("touch", mark)


function mark(_, _, x, y)
   gpu.set(x, y, "X")
end

Mod Edit: When using event.listen() the function you call in the 2nd parameter gets passes the data as arguments to it. Specifically, touch has the following arguments event: string, screenAddress: string, x: number, y: number, button: number, playerName: string. You can find more info on the screen's touch signal here http://ocdoc.cil.li/component:signals#screen

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.