TURNIWOOD REVOLUTION!!!

This commit is contained in:
Haze Weathers 2024-03-11 15:37:49 -04:00
parent 7993b1d4e5
commit eabc01e512
19 changed files with 285 additions and 41 deletions

View file

@ -1,15 +1,20 @@
tool
extends Node2D
onready var anims = $AnimationPlayer
onready var flip_timer = $FlipTimer
onready var delay_timer = $DelayTimer
onready var static_body = $StaticBody2D
export var time:float = 60
export var delay = 0.0
export(int, "Wood", "Yellow") var color
export var texture: Texture setget _set_texture
onready var time_ms = time / 60.0 # Time is converted from frames @ 60fps to ms
onready var collision_layer = static_body.collision_layer
func _ready():
if Engine.editor_hint:
return
_set_texture(texture)
#Auto start if delay variable is zero
if delay == 0.0:
anims.play("idle")
@ -19,6 +24,11 @@ func _ready():
#Easy mode
time_ms /= Game.enemy_speed_factor
func _set_texture(new_texture: Texture) -> void:
texture = new_texture
if is_inside_tree():
$Sprite.texture = new_texture
func _on_AnimationPlayer_animation_finished(anim_name):
#Return to idle after turn animation
if anim_name == "turn":

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=7 format=2]
[gd_scene load_steps=8 format=2]
[ext_resource path="res://objects/environment/turniwood/turning_platform.gd" type="Script" id=1]
[ext_resource path="res://graphics/turniwood/turning_platform_yellow.png" type="Texture" id=2]
@ -9,12 +9,27 @@ extents = Vector2( 4, 1 )
[sub_resource type="RectangleShape2D" id=4]
extents = Vector2( 3.5, 0.5 )
[sub_resource type="Animation" id=5]
length = 0.001
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": 0,
"values": [ 0 ]
}
[sub_resource type="Animation" id=2]
resource_name = "idle"
loop = true
step = 0.125
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:region_rect")
tracks/0/path = NodePath("StaticBody2D/CollisionShape2D:disabled")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
@ -23,10 +38,10 @@ tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ Rect2( 0, 0, 8, 8 ) ]
"values": [ false ]
}
tracks/1/type = "value"
tracks/1/path = NodePath("Sprite:rotation_degrees")
tracks/1/path = NodePath("Sprite:frame")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
@ -35,19 +50,7 @@ tracks/1/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 0.0 ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("StaticBody2D/CollisionShape2D:disabled")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ false ]
"values": [ 0 ]
}
[sub_resource type="Animation" id=3]
@ -79,37 +82,38 @@ tracks/1/keys = {
"values": [ Rect2( 0, 0, 8, 8 ), Rect2( 8, 0, 8, 8 ), Rect2( 0, 0, 8, 8 ), Rect2( 8, 0, 8, 8 ), Rect2( 0, 0, 8, 8 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("Sprite:rotation_degrees")
tracks/2/path = NodePath("Sprite:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0.4, 0.55, 0.65, 0.8, 0.9 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
"update": 1,
"values": [ 0.0, 90.0, 90.0, 0.0, 0.0 ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("Sprite:position")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0.15, 0.2, 0.35, 0.4 ),
"transitions": PoolRealArray( 1, 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 4, 4 ), Vector2( 5, 4 ), Vector2( 3, 4 ), Vector2( 4, 4 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("Sprite:frame")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 0.55, 0.65, 0.8, 0.9 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
"update": 1,
"values": [ 0, 1, 2, 3, 0 ]
}
[node name="TurningPlatform" type="Node2D"]
script = ExtResource( 1 )
texture = ExtResource( 2 )
[node name="Sprite" type="Sprite" parent="."]
position = Vector2( 4, 4 )
texture = ExtResource( 2 )
region_enabled = true
hframes = 4
region_rect = Rect2( 0, 0, 8, 8 )
[node name="StaticBody2D" type="StaticBody2D" parent="."]
@ -132,6 +136,7 @@ position = Vector2( 4, 4 )
shape = SubResource( 4 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
anims/RESET = SubResource( 5 )
anims/idle = SubResource( 2 )
anims/turn = SubResource( 3 )