Game #2: Piggy

This commit is contained in:
Felipe M 2021-01-22 23:21:58 +01:00
parent 21399f904f
commit a00ebe12f3
Signed by: fmartingr
GPG key ID: 716BC147715E716F
12 changed files with 375 additions and 0 deletions

16
piggy/Objects/Apple.tscn Normal file
View file

@ -0,0 +1,16 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://Assets/Apple.png" type="Texture" id=1]
[sub_resource type="CircleShape2D" id=1]
radius = 5.0
[node name="Apple" type="Area2D"]
collision_layer = 2147483650
collision_mask = 0
[node name="Sprite" type="Sprite" parent="."]
texture = ExtResource( 1 )
[node name="Collision" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )

45
piggy/Objects/Pig.gd Normal file
View file

@ -0,0 +1,45 @@
extends Area2D
export (int) var SPEED = 100
onready var animationPlayer = $Animation
var moving = false
var goingLeft = false
func _process(delta):
moving = false
if Input.is_action_pressed("ui_right"):
goingLeft = false
move(SPEED, 0, delta)
if Input.is_action_pressed("ui_left"):
goingLeft = true
move(-SPEED, 0, delta)
if Input.is_action_pressed("ui_up"):
move(0, -SPEED, delta)
if Input.is_action_pressed("ui_down"):
move(0, SPEED, delta)
if moving:
animationPlayer.play("Run")
else:
animationPlayer.play("Idle")
$Sprite.flip_h = goingLeft
# var areas = get_overlapping_areas()
# for area in areas:
# area.queue_free()
func move(xspeed, yspeed, delta):
moving = true
position.x += xspeed * delta
position.y += yspeed * delta
func _on_Pig_area_entered(apple):
apple.queue_free()
scale *= 1.1
SPEED *= 0.9

67
piggy/Objects/Pig.tscn Normal file
View file

@ -0,0 +1,67 @@
[gd_scene load_steps=6 format=2]
[ext_resource path="res://Objects/Pig.gd" type="Script" id=1]
[ext_resource path="res://Assets/Pig.png" type="Texture" id=2]
[sub_resource type="CapsuleShape2D" id=1]
radius = 6.0
height = 8.0
[sub_resource type="Animation" id=2]
resource_name = "Idle"
length = 0.1
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 0 ]
}
[sub_resource type="Animation" id=3]
resource_name = "Run"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 0, 1, 2 ]
}
[node name="Pig" type="Area2D"]
script = ExtResource( 1 )
__meta__ = {
"_edit_group_": true
}
SPEED = 129
[node name="Sprite" type="Sprite" parent="."]
position = Vector2( -0.132351, 0.0703354 )
texture = ExtResource( 2 )
offset = Vector2( 0, -4 )
hframes = 3
frame = 2
[node name="Collision" type="CollisionShape2D" parent="."]
position = Vector2( 0, 0.125 )
rotation = 1.5708
shape = SubResource( 1 )
[node name="Animation" type="AnimationPlayer" parent="."]
playback_speed = 0.65
anims/Idle = SubResource( 2 )
anims/Run = SubResource( 3 )
[connection signal="area_entered" from="." to="." method="_on_Pig_area_entered"]

46
piggy/Objects/World.tscn Normal file
View file

@ -0,0 +1,46 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://Objects/Pig.tscn" type="PackedScene" id=1]
[ext_resource path="res://Objects/Apple.tscn" type="PackedScene" id=2]
[node name="World" type="Node"]
[node name="ColorRect" type="ColorRect" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
color = Color( 0, 0, 0, 1 )
__meta__ = {
"_edit_lock_": true,
"_edit_use_anchors_": false
}
[node name="Pig" parent="." instance=ExtResource( 1 )]
position = Vector2( 97.3289, 73.3904 )
collision_mask = 2
[node name="Apple" parent="." instance=ExtResource( 2 )]
position = Vector2( 165.365, 112.448 )
[node name="Apple2" parent="." instance=ExtResource( 2 )]
position = Vector2( 221.431, 70.2406 )
[node name="Apple3" parent="." instance=ExtResource( 2 )]
position = Vector2( 131.032, 26.4584 )
[node name="Apple4" parent="." instance=ExtResource( 2 )]
position = Vector2( 60.7912, 70.8706 )
[node name="Apple5" parent="." instance=ExtResource( 2 )]
position = Vector2( 88.1945, 121.897 )
[node name="Apple6" parent="." instance=ExtResource( 2 )]
position = Vector2( 27.7182, 25.1984 )
[node name="Apple7" parent="." instance=ExtResource( 2 )]
position = Vector2( 266.788, 22.0486 )
[node name="Apple8" parent="." instance=ExtResource( 2 )]
position = Vector2( 260.804, 133.867 )
[node name="Apple9" parent="." instance=ExtResource( 2 )]
position = Vector2( 59.3904, 75.6582 )