From c6c72a3c37a44964ec8e6b3353f78635bf588eab Mon Sep 17 00:00:00 2001 From: Juan Linietsky Date: Sun, 22 Mar 2015 01:46:18 -0300 Subject: input events on Area2D is now supported also added a demo showing how this works --- demos/2d/area_input/box_area.png | Bin 0 -> 1246 bytes demos/2d/area_input/circle_area.png | Bin 0 -> 3030 bytes demos/2d/area_input/engine.cfg | 4 ++++ demos/2d/area_input/input.gd | 20 ++++++++++++++++++++ demos/2d/area_input/input.scn | Bin 0 -> 2886 bytes 5 files changed, 24 insertions(+) create mode 100644 demos/2d/area_input/box_area.png create mode 100644 demos/2d/area_input/circle_area.png create mode 100644 demos/2d/area_input/engine.cfg create mode 100644 demos/2d/area_input/input.gd create mode 100644 demos/2d/area_input/input.scn (limited to 'demos/2d') diff --git a/demos/2d/area_input/box_area.png b/demos/2d/area_input/box_area.png new file mode 100644 index 0000000000..ba7c37f7de Binary files /dev/null and b/demos/2d/area_input/box_area.png differ diff --git a/demos/2d/area_input/circle_area.png b/demos/2d/area_input/circle_area.png new file mode 100644 index 0000000000..3cc24c8a0c Binary files /dev/null and b/demos/2d/area_input/circle_area.png differ diff --git a/demos/2d/area_input/engine.cfg b/demos/2d/area_input/engine.cfg new file mode 100644 index 0000000000..3227e9278f --- /dev/null +++ b/demos/2d/area_input/engine.cfg @@ -0,0 +1,4 @@ +[application] + +name="Area 2D Input Events" +main_scene="res://input.scn" diff --git a/demos/2d/area_input/input.gd b/demos/2d/area_input/input.gd new file mode 100644 index 0000000000..acecd095ed --- /dev/null +++ b/demos/2d/area_input/input.gd @@ -0,0 +1,20 @@ + +extends Area2D + +# member variables here, example: +# var a=2 +# var b="textvar" + +#virtual from CollisionObject2D (also available as signal) +func _input_event(viewport, event, shape_idx): + #convert event to local coordinates + if (event.type==InputEvent.MOUSE_MOTION): + event = make_input_local( event ) + get_node("label").set_text(str(event.pos)) + +#virtual from CollisionObject2D (also available as signal) +func _mouse_exit(): + get_node("label").set_text("") + + + diff --git a/demos/2d/area_input/input.scn b/demos/2d/area_input/input.scn new file mode 100644 index 0000000000..0bb3a18834 Binary files /dev/null and b/demos/2d/area_input/input.scn differ -- cgit v1.2.3