My first 2D game in Godot 4.4
This commit is contained in:
9
characters/happy_boo/happy_boo.gd
Normal file
9
characters/happy_boo/happy_boo.gd
Normal file
@@ -0,0 +1,9 @@
|
||||
extends Node2D
|
||||
|
||||
|
||||
func play_idle_animation():
|
||||
%AnimationPlayer.play("idle")
|
||||
|
||||
|
||||
func play_walk_animation():
|
||||
%AnimationPlayer.play("walk")
|
||||
1
characters/happy_boo/happy_boo.gd.uid
Normal file
1
characters/happy_boo/happy_boo.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://dhe20gx73tm5u
|
||||
651
characters/happy_boo/happy_boo.tscn
Normal file
651
characters/happy_boo/happy_boo.tscn
Normal file
@@ -0,0 +1,651 @@
|
||||
[gd_scene load_steps=12 format=3 uid="uid://pbmyh1qru7p"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dhe20gx73tm5u" path="res://characters/happy_boo/happy_boo.gd" id="1_kg7lb"]
|
||||
[ext_resource type="Texture2D" uid="uid://b7rhtttevhxtj" path="res://characters/ground_shadow.png" id="2_62bos"]
|
||||
[ext_resource type="Texture2D" uid="uid://ng8e5ot0dtpd" path="res://characters/happy_boo/square_foot.png" id="3_186qq"]
|
||||
[ext_resource type="Texture2D" uid="uid://dhapxq8y8ow57" path="res://characters/happy_boo/square_lower_leg.png" id="4_plnsd"]
|
||||
[ext_resource type="Texture2D" uid="uid://qmqpm6asge1i" path="res://characters/happy_boo/square_upper_leg.png" id="5_q2t1e"]
|
||||
[ext_resource type="Texture2D" uid="uid://cksiu5gst6fmp" path="res://characters/happy_boo/square_body.png" id="6_w3ck4"]
|
||||
[ext_resource type="Texture2D" uid="uid://cvs0lh814pk7h" path="res://characters/happy_boo/square_face.png" id="7_h5h8s"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_hed62"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Colorizer/SquareUpperLegL:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-10.6303, -27.3998)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Colorizer/SquareUpperLegL:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.4009]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL:position")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 14)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL:rotation")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-2.98023e-08]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL/SquareFootL:position")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 12)]
|
||||
}
|
||||
tracks/5/type = "value"
|
||||
tracks/5/imported = false
|
||||
tracks/5/enabled = true
|
||||
tracks/5/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL/SquareFootL:rotation")
|
||||
tracks/5/interp = 1
|
||||
tracks/5/loop_wrap = true
|
||||
tracks/5/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-3.40666]
|
||||
}
|
||||
tracks/6/type = "value"
|
||||
tracks/6/imported = false
|
||||
tracks/6/enabled = true
|
||||
tracks/6/path = NodePath("Colorizer/SquareUpperLegR:position")
|
||||
tracks/6/interp = 1
|
||||
tracks/6/loop_wrap = true
|
||||
tracks/6/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(9.20459, -29.9444)]
|
||||
}
|
||||
tracks/7/type = "value"
|
||||
tracks/7/imported = false
|
||||
tracks/7/enabled = true
|
||||
tracks/7/path = NodePath("Colorizer/SquareUpperLegR:rotation")
|
||||
tracks/7/interp = 1
|
||||
tracks/7/loop_wrap = true
|
||||
tracks/7/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-0.213676]
|
||||
}
|
||||
tracks/8/type = "value"
|
||||
tracks/8/imported = false
|
||||
tracks/8/enabled = true
|
||||
tracks/8/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR:position")
|
||||
tracks/8/interp = 1
|
||||
tracks/8/loop_wrap = true
|
||||
tracks/8/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-4.76837e-07, 14)]
|
||||
}
|
||||
tracks/9/type = "value"
|
||||
tracks/9/imported = false
|
||||
tracks/9/enabled = true
|
||||
tracks/9/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR:rotation")
|
||||
tracks/9/interp = 1
|
||||
tracks/9/loop_wrap = true
|
||||
tracks/9/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/10/type = "value"
|
||||
tracks/10/imported = false
|
||||
tracks/10/enabled = true
|
||||
tracks/10/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR/SquareFootR:position")
|
||||
tracks/10/interp = 1
|
||||
tracks/10/loop_wrap = true
|
||||
tracks/10/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 12)]
|
||||
}
|
||||
tracks/11/type = "value"
|
||||
tracks/11/imported = false
|
||||
tracks/11/enabled = true
|
||||
tracks/11/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR/SquareFootR:rotation")
|
||||
tracks/11/interp = 1
|
||||
tracks/11/loop_wrap = true
|
||||
tracks/11/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-2.92296]
|
||||
}
|
||||
tracks/12/type = "value"
|
||||
tracks/12/imported = false
|
||||
tracks/12/enabled = true
|
||||
tracks/12/path = NodePath("Colorizer/SquareBody:position")
|
||||
tracks/12/interp = 1
|
||||
tracks/12/loop_wrap = true
|
||||
tracks/12/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-1.73067, -36.6061)]
|
||||
}
|
||||
tracks/13/type = "value"
|
||||
tracks/13/imported = false
|
||||
tracks/13/enabled = true
|
||||
tracks/13/path = NodePath("Colorizer/SquareBody:rotation")
|
||||
tracks/13/interp = 1
|
||||
tracks/13/loop_wrap = true
|
||||
tracks/13/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-0.0250386]
|
||||
}
|
||||
tracks/14/type = "value"
|
||||
tracks/14/imported = false
|
||||
tracks/14/enabled = true
|
||||
tracks/14/path = NodePath("Colorizer/SquareBody/SquareFace:position")
|
||||
tracks/14/interp = 1
|
||||
tracks/14/loop_wrap = true
|
||||
tracks/14/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, -17)]
|
||||
}
|
||||
tracks/15/type = "value"
|
||||
tracks/15/imported = false
|
||||
tracks/15/enabled = true
|
||||
tracks/15/path = NodePath("Colorizer/SquareBody/SquareFace:rotation")
|
||||
tracks/15/interp = 1
|
||||
tracks/15/loop_wrap = true
|
||||
tracks/15/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_sablf"]
|
||||
resource_name = "idle"
|
||||
loop_mode = 1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Colorizer/SquareUpperLegL:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-10.6303, -27.3998)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Colorizer/SquareUpperLegL:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.4009]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL:position")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 14)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL:rotation")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-2.98023e-08]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL/SquareFootL:position")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 12)]
|
||||
}
|
||||
tracks/5/type = "value"
|
||||
tracks/5/imported = false
|
||||
tracks/5/enabled = true
|
||||
tracks/5/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL/SquareFootL:rotation")
|
||||
tracks/5/interp = 1
|
||||
tracks/5/loop_wrap = true
|
||||
tracks/5/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-3.40666]
|
||||
}
|
||||
tracks/6/type = "value"
|
||||
tracks/6/imported = false
|
||||
tracks/6/enabled = true
|
||||
tracks/6/path = NodePath("Colorizer/SquareUpperLegR:position")
|
||||
tracks/6/interp = 1
|
||||
tracks/6/loop_wrap = true
|
||||
tracks/6/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(9.20459, -29.9444)]
|
||||
}
|
||||
tracks/7/type = "value"
|
||||
tracks/7/imported = false
|
||||
tracks/7/enabled = true
|
||||
tracks/7/path = NodePath("Colorizer/SquareUpperLegR:rotation")
|
||||
tracks/7/interp = 1
|
||||
tracks/7/loop_wrap = true
|
||||
tracks/7/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-0.213676]
|
||||
}
|
||||
tracks/8/type = "value"
|
||||
tracks/8/imported = false
|
||||
tracks/8/enabled = true
|
||||
tracks/8/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR:position")
|
||||
tracks/8/interp = 1
|
||||
tracks/8/loop_wrap = true
|
||||
tracks/8/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-4.76837e-07, 14)]
|
||||
}
|
||||
tracks/9/type = "value"
|
||||
tracks/9/imported = false
|
||||
tracks/9/enabled = true
|
||||
tracks/9/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR:rotation")
|
||||
tracks/9/interp = 1
|
||||
tracks/9/loop_wrap = true
|
||||
tracks/9/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/10/type = "value"
|
||||
tracks/10/imported = false
|
||||
tracks/10/enabled = true
|
||||
tracks/10/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR/SquareFootR:position")
|
||||
tracks/10/interp = 1
|
||||
tracks/10/loop_wrap = true
|
||||
tracks/10/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 12)]
|
||||
}
|
||||
tracks/11/type = "value"
|
||||
tracks/11/imported = false
|
||||
tracks/11/enabled = true
|
||||
tracks/11/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR/SquareFootR:rotation")
|
||||
tracks/11/interp = 1
|
||||
tracks/11/loop_wrap = true
|
||||
tracks/11/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-2.92296]
|
||||
}
|
||||
tracks/12/type = "value"
|
||||
tracks/12/imported = false
|
||||
tracks/12/enabled = true
|
||||
tracks/12/path = NodePath("Colorizer/SquareBody:position")
|
||||
tracks/12/interp = 1
|
||||
tracks/12/loop_wrap = true
|
||||
tracks/12/keys = {
|
||||
"times": PackedFloat32Array(0, 0.4, 0.8),
|
||||
"transitions": PackedFloat32Array(0.466516, 0.189465, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-1.73067, -36.6061), Vector2(-1.731, -32), Vector2(-1.731, -38)]
|
||||
}
|
||||
tracks/13/type = "value"
|
||||
tracks/13/imported = false
|
||||
tracks/13/enabled = true
|
||||
tracks/13/path = NodePath("Colorizer/SquareBody:rotation")
|
||||
tracks/13/interp = 1
|
||||
tracks/13/loop_wrap = true
|
||||
tracks/13/keys = {
|
||||
"times": PackedFloat32Array(0, 0.4),
|
||||
"transitions": PackedFloat32Array(2.46229, 0.535887),
|
||||
"update": 0,
|
||||
"values": [-0.0250386, 0.0698132]
|
||||
}
|
||||
tracks/14/type = "value"
|
||||
tracks/14/imported = false
|
||||
tracks/14/enabled = true
|
||||
tracks/14/path = NodePath("Colorizer/SquareBody/SquareFace:position")
|
||||
tracks/14/interp = 1
|
||||
tracks/14/loop_wrap = true
|
||||
tracks/14/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, -17)]
|
||||
}
|
||||
tracks/15/type = "value"
|
||||
tracks/15/imported = false
|
||||
tracks/15/enabled = true
|
||||
tracks/15/path = NodePath("Colorizer/SquareBody/SquareFace:rotation")
|
||||
tracks/15/interp = 1
|
||||
tracks/15/loop_wrap = true
|
||||
tracks/15/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_74kqe"]
|
||||
resource_name = "walk"
|
||||
length = 0.6
|
||||
loop_mode = 1
|
||||
step = 0.0333333
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Colorizer/SquareUpperLegL:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3, 0.466666),
|
||||
"transitions": PackedFloat32Array(1, 0.5, 2),
|
||||
"update": 0,
|
||||
"values": [Vector2(-10.6303, -27.3998), Vector2(-10.6303, -27.3998), Vector2(-16, -40)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Colorizer/SquareUpperLegL:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3, 0.466666),
|
||||
"transitions": PackedFloat32Array(1, 0.5, 2),
|
||||
"update": 0,
|
||||
"values": [0.4009, 0.4009, -0.197871]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL:position")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3),
|
||||
"transitions": PackedFloat32Array(1, 0.5),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 14), Vector2(0, 14)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL:rotation")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3, 0.466667),
|
||||
"transitions": PackedFloat32Array(1, 0.5, 2),
|
||||
"update": 0,
|
||||
"values": [-2.98023e-08, -2.98023e-08, 1.12966]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL/SquareFootL:position")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3),
|
||||
"transitions": PackedFloat32Array(1, 0.5),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 12), Vector2(0, 12)]
|
||||
}
|
||||
tracks/5/type = "value"
|
||||
tracks/5/imported = false
|
||||
tracks/5/enabled = true
|
||||
tracks/5/path = NodePath("Colorizer/SquareUpperLegL/SquareLowerLegL/SquareFootL:rotation")
|
||||
tracks/5/interp = 1
|
||||
tracks/5/loop_wrap = true
|
||||
tracks/5/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3, 0.466667),
|
||||
"transitions": PackedFloat32Array(1, 0.5, 2),
|
||||
"update": 0,
|
||||
"values": [-3.40666, -3.40666, -3.92035]
|
||||
}
|
||||
tracks/6/type = "value"
|
||||
tracks/6/imported = false
|
||||
tracks/6/enabled = true
|
||||
tracks/6/path = NodePath("Colorizer/SquareUpperLegR:position")
|
||||
tracks/6/interp = 1
|
||||
tracks/6/loop_wrap = true
|
||||
tracks/6/keys = {
|
||||
"times": PackedFloat32Array(0, 0.166667, 0.3),
|
||||
"transitions": PackedFloat32Array(0.5, 2, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(9, -27), Vector2(11, -44), Vector2(9, -27)]
|
||||
}
|
||||
tracks/7/type = "value"
|
||||
tracks/7/imported = false
|
||||
tracks/7/enabled = true
|
||||
tracks/7/path = NodePath("Colorizer/SquareUpperLegR:rotation")
|
||||
tracks/7/interp = 1
|
||||
tracks/7/loop_wrap = true
|
||||
tracks/7/keys = {
|
||||
"times": PackedFloat32Array(0, 0.166667, 0.3),
|
||||
"transitions": PackedFloat32Array(0.5, 2, 1),
|
||||
"update": 0,
|
||||
"values": [-0.213676, -0.458455, -0.213676]
|
||||
}
|
||||
tracks/8/type = "value"
|
||||
tracks/8/imported = false
|
||||
tracks/8/enabled = true
|
||||
tracks/8/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR:position")
|
||||
tracks/8/interp = 1
|
||||
tracks/8/loop_wrap = true
|
||||
tracks/8/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3),
|
||||
"transitions": PackedFloat32Array(0.5, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-4.76837e-07, 14), Vector2(-4.76837e-07, 14)]
|
||||
}
|
||||
tracks/9/type = "value"
|
||||
tracks/9/imported = false
|
||||
tracks/9/enabled = true
|
||||
tracks/9/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR:rotation")
|
||||
tracks/9/interp = 1
|
||||
tracks/9/loop_wrap = true
|
||||
tracks/9/keys = {
|
||||
"times": PackedFloat32Array(0, 0.166667, 0.3),
|
||||
"transitions": PackedFloat32Array(0.5, 2, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 0.888296, 0.0]
|
||||
}
|
||||
tracks/10/type = "value"
|
||||
tracks/10/imported = false
|
||||
tracks/10/enabled = true
|
||||
tracks/10/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR/SquareFootR:position")
|
||||
tracks/10/interp = 1
|
||||
tracks/10/loop_wrap = true
|
||||
tracks/10/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3),
|
||||
"transitions": PackedFloat32Array(0.5, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 12), Vector2(0, 12)]
|
||||
}
|
||||
tracks/11/type = "value"
|
||||
tracks/11/imported = false
|
||||
tracks/11/enabled = true
|
||||
tracks/11/path = NodePath("Colorizer/SquareUpperLegR/SquareLowerLegR/SquareFootR:rotation")
|
||||
tracks/11/interp = 1
|
||||
tracks/11/loop_wrap = true
|
||||
tracks/11/keys = {
|
||||
"times": PackedFloat32Array(0, 0.166667, 0.3),
|
||||
"transitions": PackedFloat32Array(0.5, 2, 1),
|
||||
"update": 0,
|
||||
"values": [-2.92296, -3.45549, -2.92296]
|
||||
}
|
||||
tracks/12/type = "value"
|
||||
tracks/12/imported = false
|
||||
tracks/12/enabled = true
|
||||
tracks/12/path = NodePath("Colorizer/SquareBody:position")
|
||||
tracks/12/interp = 1
|
||||
tracks/12/loop_wrap = true
|
||||
tracks/12/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-1.73067, -36.6061)]
|
||||
}
|
||||
tracks/13/type = "value"
|
||||
tracks/13/imported = false
|
||||
tracks/13/enabled = true
|
||||
tracks/13/path = NodePath("Colorizer/SquareBody:rotation")
|
||||
tracks/13/interp = 1
|
||||
tracks/13/loop_wrap = true
|
||||
tracks/13/keys = {
|
||||
"times": PackedFloat32Array(0, 0.166667, 0.3, 0.466667),
|
||||
"transitions": PackedFloat32Array(0.392292, 1.31951, 0.267943, 1.8025),
|
||||
"update": 0,
|
||||
"values": [-0.0250386, -0.209487, 0.0372028, 0.23927]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_wrcpu"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_hed62"),
|
||||
&"idle": SubResource("Animation_sablf"),
|
||||
&"walk": SubResource("Animation_74kqe")
|
||||
}
|
||||
|
||||
[node name="HappyBoo" type="Node2D"]
|
||||
script = ExtResource("1_kg7lb")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
playback_default_blend_time = 0.2
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_wrcpu")
|
||||
}
|
||||
|
||||
[node name="GroundShadow" type="Sprite2D" parent="."]
|
||||
modulate = Color(0.898039, 0.878431, 0.831373, 1)
|
||||
z_index = -1
|
||||
z_as_relative = false
|
||||
scale = Vector2(0.8, 0.8)
|
||||
texture = ExtResource("2_62bos")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="Colorizer" type="Node2D" parent="."]
|
||||
modulate = Color(1, 0.572549, 0.176471, 1)
|
||||
|
||||
[node name="SquareUpperLegL" type="Sprite2D" parent="Colorizer"]
|
||||
position = Vector2(-10.6303, -27.3998)
|
||||
rotation = 0.4009
|
||||
scale = Vector2(0.997829, 0.999794)
|
||||
texture = ExtResource("5_q2t1e")
|
||||
offset = Vector2(0, 6)
|
||||
|
||||
[node name="SquareLowerLegL" type="Sprite2D" parent="Colorizer/SquareUpperLegL"]
|
||||
position = Vector2(0, 14)
|
||||
texture = ExtResource("4_plnsd")
|
||||
offset = Vector2(0, 6)
|
||||
|
||||
[node name="SquareFootL" type="Sprite2D" parent="Colorizer/SquareUpperLegL/SquareLowerLegL"]
|
||||
position = Vector2(0, 12)
|
||||
rotation = -3.40666
|
||||
scale = Vector2(1.01116, 1)
|
||||
texture = ExtResource("3_186qq")
|
||||
offset = Vector2(-4, 0)
|
||||
|
||||
[node name="SquareUpperLegR" type="Sprite2D" parent="Colorizer"]
|
||||
position = Vector2(9.20459, -29.9444)
|
||||
rotation = -0.213676
|
||||
scale = Vector2(0.999794, 0.999794)
|
||||
texture = ExtResource("5_q2t1e")
|
||||
offset = Vector2(0, 6)
|
||||
|
||||
[node name="SquareLowerLegR" type="Sprite2D" parent="Colorizer/SquareUpperLegR"]
|
||||
position = Vector2(-4.76837e-07, 14)
|
||||
texture = ExtResource("4_plnsd")
|
||||
offset = Vector2(0, 6)
|
||||
|
||||
[node name="SquareFootR" type="Sprite2D" parent="Colorizer/SquareUpperLegR/SquareLowerLegR"]
|
||||
position = Vector2(0, 12)
|
||||
rotation = -2.92296
|
||||
texture = ExtResource("3_186qq")
|
||||
offset = Vector2(-4, 0)
|
||||
|
||||
[node name="SquareBody" type="Sprite2D" parent="Colorizer"]
|
||||
position = Vector2(-1.73067, -36.6061)
|
||||
rotation = -0.0250386
|
||||
scale = Vector2(0.9842, 0.990263)
|
||||
texture = ExtResource("6_w3ck4")
|
||||
offset = Vector2(0, -23)
|
||||
|
||||
[node name="SquareFace" type="Sprite2D" parent="Colorizer/SquareBody"]
|
||||
position = Vector2(0, -17)
|
||||
texture = ExtResource("7_h5h8s")
|
||||
metadata/_edit_lock_ = true
|
||||
BIN
characters/happy_boo/square_body.png
Normal file
BIN
characters/happy_boo/square_body.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 750 B |
34
characters/happy_boo/square_body.png.import
Normal file
34
characters/happy_boo/square_body.png.import
Normal file
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cksiu5gst6fmp"
|
||||
path="res://.godot/imported/square_body.png-ef1c56c8912cd968d7fd09a95e6ea8f4.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://characters/happy_boo/square_body.png"
|
||||
dest_files=["res://.godot/imported/square_body.png-ef1c56c8912cd968d7fd09a95e6ea8f4.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
characters/happy_boo/square_face.png
Normal file
BIN
characters/happy_boo/square_face.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 414 B |
34
characters/happy_boo/square_face.png.import
Normal file
34
characters/happy_boo/square_face.png.import
Normal file
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cvs0lh814pk7h"
|
||||
path="res://.godot/imported/square_face.png-e27720ce35d82859f41580927c22ef18.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://characters/happy_boo/square_face.png"
|
||||
dest_files=["res://.godot/imported/square_face.png-e27720ce35d82859f41580927c22ef18.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
characters/happy_boo/square_foot.png
Normal file
BIN
characters/happy_boo/square_foot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 312 B |
34
characters/happy_boo/square_foot.png.import
Normal file
34
characters/happy_boo/square_foot.png.import
Normal file
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ng8e5ot0dtpd"
|
||||
path="res://.godot/imported/square_foot.png-62023e9ce7985c4b370739df29445354.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://characters/happy_boo/square_foot.png"
|
||||
dest_files=["res://.godot/imported/square_foot.png-62023e9ce7985c4b370739df29445354.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
characters/happy_boo/square_lower_leg.png
Normal file
BIN
characters/happy_boo/square_lower_leg.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 319 B |
34
characters/happy_boo/square_lower_leg.png.import
Normal file
34
characters/happy_boo/square_lower_leg.png.import
Normal file
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dhapxq8y8ow57"
|
||||
path="res://.godot/imported/square_lower_leg.png-313909793abe38b44566c8e252c075e0.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://characters/happy_boo/square_lower_leg.png"
|
||||
dest_files=["res://.godot/imported/square_lower_leg.png-313909793abe38b44566c8e252c075e0.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
23
characters/happy_boo/square_modification_stack.tres
Normal file
23
characters/happy_boo/square_modification_stack.tres
Normal file
@@ -0,0 +1,23 @@
|
||||
[gd_resource type="SkeletonModificationStack2D" load_steps=3 format=3 uid="uid://dtf0pmja4mcaa"]
|
||||
|
||||
[sub_resource type="SkeletonModification2DTwoBoneIK" id="SkeletonModification2DTwoBoneIK_7lb5u"]
|
||||
target_nodepath = NodePath("FootLIK")
|
||||
flip_bend_direction = true
|
||||
joint_one_bone_idx = 1
|
||||
joint_one_bone2d_node = NodePath("Center/UpperLegL")
|
||||
joint_two_bone_idx = 2
|
||||
joint_two_bone2d_node = NodePath("Center/UpperLegL/LowerLegL")
|
||||
editor/draw_gizmo = false
|
||||
|
||||
[sub_resource type="SkeletonModification2DTwoBoneIK" id="SkeletonModification2DTwoBoneIK_h82yt"]
|
||||
target_nodepath = NodePath("FootRIK")
|
||||
joint_one_bone_idx = 4
|
||||
joint_one_bone2d_node = NodePath("Center/UpperLegR")
|
||||
joint_two_bone_idx = 5
|
||||
joint_two_bone2d_node = NodePath("Center/UpperLegR/LowerLegR")
|
||||
|
||||
[resource]
|
||||
enabled = true
|
||||
modification_count = 2
|
||||
modifications/0 = SubResource("SkeletonModification2DTwoBoneIK_7lb5u")
|
||||
modifications/1 = SubResource("SkeletonModification2DTwoBoneIK_h82yt")
|
||||
BIN
characters/happy_boo/square_ref.png
Normal file
BIN
characters/happy_boo/square_ref.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
34
characters/happy_boo/square_ref.png.import
Normal file
34
characters/happy_boo/square_ref.png.import
Normal file
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b2ent6mf1y7w7"
|
||||
path="res://.godot/imported/square_ref.png-ad4b2771e34de0b9a0fbda7055a9fe1c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://characters/happy_boo/square_ref.png"
|
||||
dest_files=["res://.godot/imported/square_ref.png-ad4b2771e34de0b9a0fbda7055a9fe1c.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
characters/happy_boo/square_upper_leg.png
Normal file
BIN
characters/happy_boo/square_upper_leg.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 246 B |
34
characters/happy_boo/square_upper_leg.png.import
Normal file
34
characters/happy_boo/square_upper_leg.png.import
Normal file
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://qmqpm6asge1i"
|
||||
path="res://.godot/imported/square_upper_leg.png-e1f848aab7dd8805f40f881c2160a53d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://characters/happy_boo/square_upper_leg.png"
|
||||
dest_files=["res://.godot/imported/square_upper_leg.png-e1f848aab7dd8805f40f881c2160a53d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
Reference in New Issue
Block a user