diff options
Diffstat (limited to 'demos/2d/pong')
-rw-r--r-- | demos/2d/pong/pong.gd | 82 | ||||
-rw-r--r-- | demos/2d/pong/pong.xml | 206 |
2 files changed, 145 insertions, 143 deletions
diff --git a/demos/2d/pong/pong.gd b/demos/2d/pong/pong.gd index cf6003c659..81afbd9961 100644 --- a/demos/2d/pong/pong.gd +++ b/demos/2d/pong/pong.gd @@ -1,73 +1,67 @@ extends Node2D -#member variables here, example: -#var a=2 -#var b="textvar" +# Member variables const INITIAL_BALL_SPEED = 80 var ball_speed = INITIAL_BALL_SPEED -var screen_size = Vector2(640,400) -#default ball direction -var direction = Vector2(-1,0) -var pad_size = Vector2(8,32) +var screen_size = Vector2(640, 400) + +# Default ball direction +var direction = Vector2(-1, 0) +var pad_size = Vector2(8, 32) const PAD_SPEED = 150 func _process(delta): - - - #get ball position and pad rectangles + # Get ball position and pad rectangles var ball_pos = get_node("ball").get_pos() - var left_rect = Rect2( get_node("left").get_pos() - pad_size*0.5, pad_size ) - var right_rect = Rect2( get_node("right").get_pos() - pad_size*0.5, pad_size ) + var left_rect = Rect2(get_node("left").get_pos() - pad_size*0.5, pad_size) + var right_rect = Rect2(get_node("right").get_pos() - pad_size*0.5, pad_size) - #integrate new ball postion - ball_pos+=direction*ball_speed*delta + # Integrate new ball postion + ball_pos += direction*ball_speed*delta - #flip when touching roof or floor - if ( (ball_pos.y<0 and direction.y <0) or (ball_pos.y>screen_size.y and direction.y>0)): + # Flip when touching roof or floor + if ((ball_pos.y < 0 and direction.y < 0) or (ball_pos.y > screen_size.y and direction.y > 0)): direction.y = -direction.y - - #flip, change direction and increase speed when touching pads - if ( (left_rect.has_point(ball_pos) and direction.x < 0) or (right_rect.has_point(ball_pos) and direction.x > 0)): - direction.x=-direction.x - ball_speed*=1.1 - direction.y=randf()*2.0-1 + + # Flip, change direction and increase speed when touching pads + if ((left_rect.has_point(ball_pos) and direction.x < 0) or (right_rect.has_point(ball_pos) and direction.x > 0)): + direction.x = -direction.x + ball_speed *= 1.1 + direction.y = randf()*2.0 - 1 direction = direction.normalized() - - #check gameover - if (ball_pos.x<0 or ball_pos.x>screen_size.x): - ball_pos=screen_size*0.5 - ball_speed=INITIAL_BALL_SPEED - direction=Vector2(-1,0) - - + + # Check gameover + if (ball_pos.x < 0 or ball_pos.x > screen_size.x): + ball_pos = screen_size*0.5 + ball_speed = INITIAL_BALL_SPEED + direction = Vector2(-1, 0) + get_node("ball").set_pos(ball_pos) - - #move left pad + + # Move left pad var left_pos = get_node("left").get_pos() if (left_pos.y > 0 and Input.is_action_pressed("left_move_up")): - left_pos.y+=-PAD_SPEED*delta + left_pos.y += -PAD_SPEED*delta if (left_pos.y < screen_size.y and Input.is_action_pressed("left_move_down")): - left_pos.y+=PAD_SPEED*delta - + left_pos.y += PAD_SPEED*delta + get_node("left").set_pos(left_pos) - - #move right pad + + # Move right pad var right_pos = get_node("right").get_pos() if (right_pos.y > 0 and Input.is_action_pressed("right_move_up")): - right_pos.y+=-PAD_SPEED*delta + right_pos.y += -PAD_SPEED*delta if (right_pos.y < screen_size.y and Input.is_action_pressed("right_move_down")): - right_pos.y+=PAD_SPEED*delta - - get_node("right").set_pos(right_pos) + right_pos.y += PAD_SPEED*delta - + get_node("right").set_pos(right_pos) + func _ready(): - screen_size = get_viewport_rect().size #get actual size + screen_size = get_viewport_rect().size # Get actual size pad_size = get_node("left").get_texture().get_size() set_process(true) - diff --git a/demos/2d/pong/pong.xml b/demos/2d/pong/pong.xml index cf47a8db9f..2189be7c62 100644 --- a/demos/2d/pong/pong.xml +++ b/demos/2d/pong/pong.xml @@ -1,153 +1,170 @@ <?xml version="1.0" encoding="UTF-8" ?> -<resource_file type="PackedScene" subresource_count="6" version="0.99" version_name="Godot Engine v0.99.3735-pre-beta"> - <ext_resource path="res://pong.*" type="GDScript"></ext_resource> - <ext_resource path="res://separator.*" type="ImageTexture"></ext_resource> - <ext_resource path="res://left_pallete.*" type="ImageTexture"></ext_resource> - <ext_resource path="res://right_pallete.*" type="ImageTexture"></ext_resource> - <ext_resource path="res://ball.*" type="ImageTexture"></ext_resource> +<resource_file type="PackedScene" subresource_count="6" version="2.0" version_name="Godot Engine v2.0.alpha.custom_build"> + <ext_resource path="res://pong.gd" type="Script" index="0"></ext_resource> + <ext_resource path="res://left_pallete.png" type="Texture" index="1"></ext_resource> + <ext_resource path="res://separator.png" type="Texture" index="3"></ext_resource> + <ext_resource path="res://right_pallete.png" type="Texture" index="2"></ext_resource> + <ext_resource path="res://ball.png" type="Texture" index="4"></ext_resource> <main_resource> <dictionary name="_bundled" shared="false"> + <string> "conn_count" </string> + <int> 0 </int> + <string> "conns" </string> + <int_array len="0"> </int_array> + <string> "editable_instances" </string> + <array len="0" shared="false"> + </array> <string> "names" </string> - <string_array len="27"> + <string_array len="11"> <string> "game" </string> - <string> "Node2D" </string> - <string> "visibility/visible" </string> - <string> "visibility/opacity" </string> - <string> "visibility/self_opacity" </string> - <string> "visibility/on_top" </string> - <string> "transform/pos" </string> - <string> "transform/rot" </string> - <string> "transform/scale" </string> <string> "script/script" </string> <string> "__meta__" </string> + <string> "Node2D" </string> <string> "left" </string> - <string> "Sprite" </string> + <string> "transform/pos" </string> <string> "texture" </string> - <string> "centered" </string> - <string> "offset" </string> - <string> "flip_h" </string> - <string> "flip_v" </string> - <string> "vframes" </string> - <string> "hframes" </string> - <string> "frame" </string> - <string> "modulate" </string> - <string> "region" </string> - <string> "region_rect" </string> + <string> "Sprite" </string> <string> "right" </string> <string> "separator" </string> <string> "ball" </string> </string_array> - <string> "version" </string> - <int> 1 </int> - <string> "conn_count" </string> - <int> 0 </int> <string> "node_count" </string> <int> 5 </int> + <string> "node_paths" </string> + <array len="0" shared="false"> + </array> + <string> "nodes" </string> + <int_array len="55"> -1, -1, 3, 0, -1, 2, 1, 0, 2, 1, 0, 0, 0, 7, 4, -1, 2, 5, 2, 6, 3, 0, 0, 0, 7, 8, -1, 2, 5, 4, 6, 5, 0, 0, 0, 7, 9, -1, 2, 5, 6, 6, 7, 0, 0, 0, 7, 10, -1, 2, 5, 8, 6, 9, 0 </int_array> <string> "variants" </string> - <array len="20" shared="false"> - <bool> True </bool> - <real> 1 </real> - <vector2> 0, 0 </vector2> - <real> 0 </real> - <vector2> 1, 1 </vector2> - <resource resource_type="GDScript" path="res://pong.*"> </resource> + <array len="10" shared="false"> + <resource external="0"> </resource> <dictionary shared="false"> + <string> "__editor_plugin_screen__" </string> + <string> "Script" </string> <string> "__editor_plugin_states__" </string> <dictionary shared="false"> - <string> "Script" </string> - <dictionary shared="false"> - <string> "current" </string> - <int> 0 </int> - <string> "sources" </string> - <array len="1" shared="false"> - <string> "res://pong.gd" </string> - </array> - </dictionary> <string> "2D" </string> <dictionary shared="false"> - <string> "pixel_snap" </string> - <bool> True </bool> - <string> "zoom" </string> - <real> 1.108033 </real> <string> "ofs" </string> <vector2> -54.59, -36.0052 </vector2> + <string> "snap_grid" </string> + <bool> False </bool> + <string> "snap_offset" </string> + <vector2> 0, 0 </vector2> + <string> "snap_pixel" </string> + <bool> False </bool> + <string> "snap_relative" </string> + <bool> False </bool> + <string> "snap_rotation" </string> + <bool> False </bool> + <string> "snap_rotation_offset" </string> + <real> 0 </real> + <string> "snap_rotation_step" </string> + <real> 0.261799 </real> + <string> "snap_show_grid" </string> + <bool> False </bool> + <string> "snap_step" </string> + <vector2> 10, 10 </vector2> + <string> "zoom" </string> + <real> 1.108033 </real> </dictionary> <string> "3D" </string> <dictionary shared="false"> - <string> "zfar" </string> - <real> 500 </real> + <string> "ambient_light_color" </string> + <color> 0.15, 0.15, 0.15, 1 </color> + <string> "default_light" </string> + <bool> True </bool> + <string> "default_srgb" </string> + <bool> False </bool> + <string> "deflight_rot_x" </string> + <real> 0.942478 </real> + <string> "deflight_rot_y" </string> + <real> 0.628319 </real> <string> "fov" </string> <real> 45 </real> + <string> "show_grid" </string> + <bool> True </bool> + <string> "show_origin" </string> + <bool> True </bool> + <string> "viewport_mode" </string> + <int> 1 </int> <string> "viewports" </string> <array len="4" shared="false"> <dictionary shared="false"> <string> "distance" </string> <real> 4 </real> + <string> "listener" </string> + <bool> True </bool> + <string> "pos" </string> + <vector3> 0, 0, 0 </vector3> + <string> "use_environment" </string> + <bool> False </bool> + <string> "use_orthogonal" </string> + <bool> False </bool> <string> "x_rot" </string> <real> 0 </real> <string> "y_rot" </string> <real> 0 </real> - <string> "use_orthogonal" </string> - <bool> False </bool> - <string> "use_environment" </string> - <bool> False </bool> - <string> "pos" </string> - <vector3> 0, 0, 0 </vector3> </dictionary> <dictionary shared="false"> <string> "distance" </string> <real> 4 </real> + <string> "listener" </string> + <bool> False </bool> + <string> "pos" </string> + <vector3> 0, 0, 0 </vector3> + <string> "use_environment" </string> + <bool> False </bool> + <string> "use_orthogonal" </string> + <bool> False </bool> <string> "x_rot" </string> <real> 0 </real> <string> "y_rot" </string> <real> 0 </real> - <string> "use_orthogonal" </string> - <bool> False </bool> - <string> "use_environment" </string> - <bool> False </bool> - <string> "pos" </string> - <vector3> 0, 0, 0 </vector3> </dictionary> <dictionary shared="false"> <string> "distance" </string> <real> 4 </real> + <string> "listener" </string> + <bool> False </bool> + <string> "pos" </string> + <vector3> 0, 0, 0 </vector3> + <string> "use_environment" </string> + <bool> False </bool> + <string> "use_orthogonal" </string> + <bool> False </bool> <string> "x_rot" </string> <real> 0 </real> <string> "y_rot" </string> <real> 0 </real> - <string> "use_orthogonal" </string> - <bool> False </bool> - <string> "use_environment" </string> - <bool> False </bool> - <string> "pos" </string> - <vector3> 0, 0, 0 </vector3> </dictionary> <dictionary shared="false"> <string> "distance" </string> <real> 4 </real> + <string> "listener" </string> + <bool> False </bool> + <string> "pos" </string> + <vector3> 0, 0, 0 </vector3> + <string> "use_environment" </string> + <bool> False </bool> + <string> "use_orthogonal" </string> + <bool> False </bool> <string> "x_rot" </string> <real> 0 </real> <string> "y_rot" </string> <real> 0 </real> - <string> "use_orthogonal" </string> - <bool> False </bool> - <string> "use_environment" </string> - <bool> False </bool> - <string> "pos" </string> - <vector3> 0, 0, 0 </vector3> </dictionary> </array> - <string> "viewport_mode" </string> - <int> 1 </int> - <string> "default_light" </string> - <bool> True </bool> - <string> "show_grid" </string> - <bool> True </bool> - <string> "show_origin" </string> - <bool> True </bool> + <string> "zfar" </string> + <real> 500 </real> <string> "znear" </string> <real> 0.1 </real> </dictionary> + <string> "Anim" </string> + <dictionary shared="false"> + <string> "visible" </string> + <bool> False </bool> + </dictionary> </dictionary> <string> "__editor_run_settings__" </string> <dictionary shared="false"> @@ -156,27 +173,18 @@ <string> "run_mode" </string> <int> 0 </int> </dictionary> - <string> "__editor_plugin_screen__" </string> - <string> "Script" </string> </dictionary> <vector2> 67.6875, 183.208 </vector2> - <resource resource_type="ImageTexture" path="res://left_pallete.*"> </resource> - <bool> False </bool> - <int> 1 </int> - <int> 0 </int> - <color> 1, 1, 1, 1 </color> - <rect2> 0, 0, 0, 0 </rect2> + <resource external="1"> </resource> <vector2> 577, 187 </vector2> - <resource resource_type="ImageTexture" path="res://right_pallete.*"> </resource> + <resource external="2"> </resource> <vector2> 320, 200 </vector2> - <resource resource_type="ImageTexture" path="res://separator.*"> </resource> + <resource external="3"> </resource> <vector2> 320.283, 188 </vector2> - <resource resource_type="ImageTexture" path="res://ball.*"> </resource> + <resource external="4"> </resource> </array> - <string> "nodes" </string> - <int_array len="197"> -1, -1, 1, 0, -1, 9, 2, 0, 3, 1, 4, 1, 5, 0, 6, 2, 7, 3, 8, 4, 9, 5, 10, 6, 0, 0, 0, 12, 11, -1, 18, 2, 0, 3, 1, 4, 1, 5, 0, 6, 7, 7, 3, 8, 4, 13, 8, 14, 0, 15, 2, 16, 9, 17, 9, 18, 10, 19, 10, 20, 11, 21, 12, 22, 9, 23, 13, 0, 0, 0, 12, 24, -1, 18, 2, 0, 3, 1, 4, 1, 5, 0, 6, 14, 7, 3, 8, 4, 13, 15, 14, 0, 15, 2, 16, 9, 17, 9, 18, 10, 19, 10, 20, 11, 21, 12, 22, 9, 23, 13, 0, 0, 0, 12, 25, -1, 18, 2, 0, 3, 1, 4, 1, 5, 0, 6, 16, 7, 3, 8, 4, 13, 17, 14, 0, 15, 2, 16, 9, 17, 9, 18, 10, 19, 10, 20, 11, 21, 12, 22, 9, 23, 13, 0, 0, 0, 12, 26, -1, 18, 2, 0, 3, 1, 4, 1, 5, 0, 6, 18, 7, 3, 8, 4, 13, 19, 14, 0, 15, 2, 16, 9, 17, 9, 18, 10, 19, 10, 20, 11, 21, 12, 22, 9, 23, 13, 0 </int_array> - <string> "conns" </string> - <int_array len="0"> </int_array> + <string> "version" </string> + <int> 2 </int> </dictionary> </main_resource> |