From 2c5d588bc593929a96f0e58d7d1ab52f269add55 Mon Sep 17 00:00:00 2001
From: David Luevano Alvarado <david@luevano.xyz>
Date: Wed, 1 Jun 2022 03:27:11 -0600
Subject: make working basic snake, refactor code and made gif recorder its
 separate thing

---
 src/tools/ScreenRecorder.tscn | 31 +++++++++++++++++++++++++++++++
 src/tools/screen_recorder.gd  | 13 +++++++++++++
 2 files changed, 44 insertions(+)
 create mode 100644 src/tools/ScreenRecorder.tscn
 create mode 100644 src/tools/screen_recorder.gd

(limited to 'src/tools')

diff --git a/src/tools/ScreenRecorder.tscn b/src/tools/ScreenRecorder.tscn
new file mode 100644
index 0000000..d29753a
--- /dev/null
+++ b/src/tools/ScreenRecorder.tscn
@@ -0,0 +1,31 @@
+[gd_scene load_steps=4 format=2]
+
+[ext_resource path="res://addons/GifMaker/GifRectangle.gd" type="Script" id=1]
+[ext_resource path="res://tools/screen_recorder.gd" type="Script" id=2]
+[ext_resource path="res://addons/GifMaker/GifRecorder.gd" type="Script" id=3]
+
+[node name="ScreenRecorder" type="CanvasLayer"]
+script = ExtResource( 2 )
+
+[node name="Control" type="Control" parent="."]
+anchor_right = 1.0
+anchor_bottom = 1.0
+
+[node name="GifRectangle" type="ReferenceRect" parent="Control"]
+anchor_left = 0.5
+anchor_top = 0.5
+anchor_right = 0.5
+anchor_bottom = 0.5
+margin_left = -128.0
+margin_top = -128.0
+margin_right = 128.0
+margin_bottom = 128.0
+script = ExtResource( 1 )
+
+[node name="GifRecorder" type="Viewport" parent="Control"]
+size = Vector2( 2, 2 )
+script = ExtResource( 3 )
+render_type = 1
+seconds = 4.0
+autostart = true
+capture_node_path = NodePath("../GifRectangle")
diff --git a/src/tools/screen_recorder.gd b/src/tools/screen_recorder.gd
new file mode 100644
index 0000000..2ab77e5
--- /dev/null
+++ b/src/tools/screen_recorder.gd
@@ -0,0 +1,13 @@
+extends CanvasLayer
+
+onready var gif_recorder: GifRecorder = $Control/GifRecorder
+
+
+func _input(event: InputEvent) -> void:
+	if event is InputEventKey and event.scancode == KEY_G and event.pressed:
+		print("Encoding GIF.")
+		gif_recorder.render_to_file("res://test.gif")
+		yield(gif_recorder, "done_encoding")
+		print("Done encoding GIF.")
+		gif_recorder.clear()
+		gif_recorder.start()
-- 
cgit v1.2.3-70-g09d2