Initial commit

This commit is contained in:
Mestima 2020-11-01 00:59:39 +03:00
commit 49560b2ac1
No known key found for this signature in database
GPG Key ID: 30B59EB1D7F18807
69 changed files with 1535 additions and 0 deletions

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
# Auto detect text files and perform LF normalization
* text=auto

9
.gitignore vendored Normal file
View File

@ -0,0 +1,9 @@
# Godot-specific ignores
.import/
export.cfg
export_presets.cfg
# Mono-specific ignores
.mono/
data_*/

21
LICENSE Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 Mestima
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

2
README.md Normal file
View File

@ -0,0 +1,2 @@
# trashsort
An example of a small trash sorting game on a Godot Engine

BIN
build/trashsort.exe Normal file

Binary file not shown.

7
fonts/pixel.tres Normal file
View File

@ -0,0 +1,7 @@
[gd_resource type="DynamicFont" load_steps=2 format=2]
[ext_resource path="res://fonts/src/pixel.ttf" type="DynamicFontData" id=1]
[resource]
size = 26
font_data = ExtResource( 1 )

7
fonts/pixelBig.tres Normal file
View File

@ -0,0 +1,7 @@
[gd_resource type="DynamicFont" load_steps=2 format=2]
[ext_resource path="res://fonts/src/pixel.ttf" type="DynamicFontData" id=1]
[resource]
size = 72
font_data = ExtResource( 1 )

BIN
fonts/src/pixel.ttf Normal file

Binary file not shown.

BIN
icon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

34
icon.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.png"
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,52 @@
[gd_scene load_steps=4 format=2]
[ext_resource path="res://fonts/pixel.tres" type="DynamicFont" id=1]
[ext_resource path="res://scripts/animatedAuthorsTextAnim.gd" type="Script" id=2]
[sub_resource type="Animation" id=1]
resource_name = "idle"
length = 3.0
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("CanvasLayer/Label:rect_rotation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 1.5, 3 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ 13.8, 51.2, 13.8 ]
}
[node name="animatedAuthorsText" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 2 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="CanvasLayer" type="CanvasLayer" parent="."]
layer = 3
[node name="Label" type="Label" parent="CanvasLayer"]
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
margin_left = -232.706
margin_top = 117.64
margin_right = -5.70618
margin_bottom = 144.64
rect_rotation = 13.8
custom_fonts/font = ExtResource( 1 )
text = "Об Авторах UwU"
align = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="anim" type="AnimationPlayer" parent="."]
anims/idle = SubResource( 1 )

55
objects/dog.tscn Normal file
View File

@ -0,0 +1,55 @@
[gd_scene load_steps=8 format=2]
[ext_resource path="res://sprites/dog1.png" type="Texture" id=1]
[ext_resource path="res://sprites/dog2.png" type="Texture" id=2]
[ext_resource path="res://sprites/cloud.png" type="Texture" id=3]
[ext_resource path="res://scripts/dog.gd" type="Script" id=4]
[ext_resource path="res://scripts/dogBtn.gd" type="Script" id=5]
[sub_resource type="SpriteFrames" id=1]
animations = [ {
"frames": [ ExtResource( 1 ), ExtResource( 2 ) ],
"loop": true,
"name": "default",
"speed": 5.0
} ]
[sub_resource type="Animation" id=2]
resource_name = "idle"
length = 3.0
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("cloud:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 1.5, 3 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 0, 0 ), Vector2( 5, 0 ), Vector2( 0, 0 ) ]
}
[node name="dog" type="Node2D"]
script = ExtResource( 4 )
[node name="cloud" type="Sprite" parent="."]
texture = ExtResource( 3 )
[node name="tail" type="AnimatedSprite" parent="cloud"]
position = Vector2( -0.0646362, -9.76372 )
frames = SubResource( 1 )
[node name="btn" type="TextureButton" parent="cloud"]
margin_left = -31.0167
margin_top = -25.7713
margin_right = 31.9833
margin_bottom = 14.2287
script = ExtResource( 5 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="anim" type="AnimationPlayer" parent="."]
anims/idle = SubResource( 2 )

30
objects/sun.tscn Normal file
View File

@ -0,0 +1,30 @@
[gd_scene load_steps=4 format=2]
[ext_resource path="res://sprites/sun.png" type="Texture" id=1]
[ext_resource path="res://scripts/sunAnim.gd" type="Script" id=2]
[sub_resource type="Animation" id=1]
resource_name = "idle"
length = 3.0
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("sun:scale")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 1.5, 3 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 1, 1 ), Vector2( 1.5, 1.5 ), Vector2( 1, 1 ) ]
}
[node name="sun" type="Node2D"]
script = ExtResource( 2 )
[node name="sun" type="Sprite" parent="."]
texture = ExtResource( 1 )
[node name="anim" type="AnimationPlayer" parent="."]
anims/idle = SubResource( 1 )

29
project.godot Normal file
View File

@ -0,0 +1,29 @@
; Engine configuration file.
; It's best edited using the editor UI and not directly,
; since the parameters that go here are not all obvious.
;
; Format:
; [section] ; section goes between []
; param=value ; assign values to parameters
config_version=4
_global_script_classes=[ ]
_global_script_class_icons={
}
[application]
config/name="Trash sort game!"
run/main_scene="res://scenes/MainMenu.tscn"
config/icon="res://icon.png"
[autoload]
_G="*res://scripts/_G.gd"
[display]
window/stretch/mode="2d"
window/stretch/aspect="expand"

104
scenes/Authors.tscn Normal file
View File

@ -0,0 +1,104 @@
[gd_scene load_steps=5 format=2]
[ext_resource path="res://fonts/pixel.tres" type="DynamicFont" id=1]
[ext_resource path="res://objects/animatedAuthorsText.tscn" type="PackedScene" id=2]
[ext_resource path="res://scripts/authorsAnim.gd" type="Script" id=3]
[sub_resource type="Animation" id=1]
resource_name = "onLoad"
length = 5.0
tracks/0/type = "value"
tracks/0/path = NodePath("borderLeft:rect_size")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 0, 600 ), Vector2( 250, 600 ) ]
}
tracks/1/type = "value"
tracks/1/path = NodePath("borderRight:rect_size")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0, 1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 0, 600 ), Vector2( 250, 600 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("borderRight:rect_position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0, 1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 1024, 0 ), Vector2( 774, 0 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("CanvasLayer/authorsText:rect_position")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 0, -177 ), Vector2( 0, 650 ) ]
}
[node name="Authors" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 3 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="borderLeft" type="ColorRect" parent="."]
anchor_bottom = 1.0
color = Color( 0, 0, 0, 0.784314 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="borderRight" type="ColorRect" parent="."]
anchor_left = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
color = Color( 0, 0, 0, 0.784314 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="anim" type="AnimationPlayer" parent="."]
anims/onLoad = SubResource( 1 )
[node name="animatedAuthorsText" parent="." instance=ExtResource( 2 )]
margin_left = 839.099
margin_top = 437.926
margin_right = 839.099
margin_bottom = 437.926
[node name="CanvasLayer" type="CanvasLayer" parent="."]
layer = 3
[node name="authorsText" type="Label" parent="CanvasLayer"]
anchor_right = 1.0
margin_top = -177.0
margin_bottom = -157.0
custom_fonts/font = ExtResource( 1 )
text = "<--- информация об авторах --->"
align = 1
__meta__ = {
"_edit_use_anchors_": false
}

165
scenes/MainMenu.tscn Normal file
View File

@ -0,0 +1,165 @@
[gd_scene load_steps=14 format=2]
[ext_resource path="res://sprites/trashcan.png" type="Texture" id=1]
[ext_resource path="res://objects/sun.tscn" type="PackedScene" id=2]
[ext_resource path="res://fonts/pixel.tres" type="DynamicFont" id=3]
[ext_resource path="res://scripts/exitBtn.gd" type="Script" id=4]
[ext_resource path="res://scripts/authorsBtn.gd" type="Script" id=5]
[ext_resource path="res://scripts/playBtn.gd" type="Script" id=6]
[ext_resource path="res://objects/dog.tscn" type="PackedScene" id=7]
[ext_resource path="res://scripts/fallingTrashcans.gd" type="Script" id=8]
[ext_resource path="res://scripts/mainMenuLoadout.gd" type="Script" id=9]
[sub_resource type="CanvasItemMaterial" id=1]
[sub_resource type="Curve" id=2]
min_value = -360.0
max_value = 360.0
_data = [ Vector2( 0, 360 ), 0.0, 0.0, 0, 0, Vector2( 1, -360 ), 0.0, 0.0, 0, 0 ]
[sub_resource type="CurveTexture" id=3]
curve = SubResource( 2 )
[sub_resource type="ParticlesMaterial" id=4]
render_priority = 1
emission_shape = 2
emission_box_extents = Vector3( 600, 1, 1 )
flag_disable_z = true
gravity = Vector3( 0, 100, 0 )
orbit_velocity = 0.0
orbit_velocity_random = 0.0
linear_accel_random = 1.0
angle = 25.0
angle_random = 1.0
angle_curve = SubResource( 3 )
scale = 0.5
scale_random = 1.0
[node name="MainMenu" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 9 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="background" type="Node" parent="."]
[node name="ColorRect5" type="ColorRect" parent="background"]
anchor_right = 1.0
anchor_bottom = 1.0
color = Color( 0, 0.694118, 1, 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="ColorRect4" type="ColorRect" parent="background"]
anchor_right = 1.0
anchor_bottom = 1.0
margin_top = 331.0
color = Color( 0, 0, 0, 0.392157 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="ColorRect3" type="ColorRect" parent="background"]
anchor_right = 1.0
anchor_bottom = 1.0
margin_top = 350.0
color = Color( 0, 0, 0, 0.588235 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="ColorRect2" type="ColorRect" parent="background"]
anchor_right = 1.0
anchor_bottom = 1.0
margin_top = 368.0
color = Color( 0, 0, 0, 0.784314 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="dog" parent="background" instance=ExtResource( 7 )]
position = Vector2( 113, 60.9998 )
[node name="fallingTrashcans" type="Particles2D" parent="background"]
material = SubResource( 1 )
position = Vector2( 503.427, -72.738 )
z_index = 1
amount = 50
lifetime = 4.0
speed_scale = 1.5
randomness = 1.0
process_material = SubResource( 4 )
texture = ExtResource( 1 )
script = ExtResource( 8 )
[node name="CanvasLayer" type="CanvasLayer" parent="background"]
[node name="ColorRect" type="ColorRect" parent="background/CanvasLayer"]
anchor_right = 1.0
anchor_bottom = 1.0
margin_top = 392.0
color = Color( 0, 0, 0, 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="sun" parent="background" instance=ExtResource( 2 )]
position = Vector2( 1017.56, 12.2434 )
[node name="buttons" type="Node" parent="."]
[node name="CanvasLayer" type="CanvasLayer" parent="buttons"]
layer = 2
[node name="Play" type="Button" parent="buttons/CanvasLayer"]
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
margin_left = -256.0
margin_top = 126.5
margin_right = 256.0
margin_bottom = 161.5
custom_fonts/font = ExtResource( 3 )
text = "Играть"
script = ExtResource( 6 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Authors" type="Button" parent="buttons/CanvasLayer"]
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
margin_left = -256.0
margin_top = 165.5
margin_right = 256.0
margin_bottom = 200.5
custom_fonts/font = ExtResource( 3 )
text = "Авторы"
script = ExtResource( 5 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Exit" type="Button" parent="buttons/CanvasLayer"]
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
margin_left = -256.0
margin_top = 204.5
margin_right = 256.0
margin_bottom = 239.5
custom_fonts/font = ExtResource( 3 )
text = "Выход"
script = ExtResource( 4 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="sound" type="AudioStreamPlayer" parent="."]

262
scenes/Playground.tscn Normal file
View File

@ -0,0 +1,262 @@
[gd_scene load_steps=17 format=2]
[ext_resource path="res://sprites/trashcanBtnHover.png" type="Texture" id=1]
[ext_resource path="res://sprites/trashcanBtnPressed.png" type="Texture" id=2]
[ext_resource path="res://sprites/trash/plasticbottle.png" type="Texture" id=3]
[ext_resource path="res://sprites/trashcanBtnMain.png" type="Texture" id=4]
[ext_resource path="res://fonts/pixel.tres" type="DynamicFont" id=5]
[ext_resource path="res://scripts/onCardLoad.gd" type="Script" id=6]
[ext_resource path="res://scripts/trashcanBtns/plastic.gd" type="Script" id=7]
[ext_resource path="res://fonts/pixelBig.tres" type="DynamicFont" id=8]
[ext_resource path="res://scripts/scorePlayground.gd" type="Script" id=9]
[ext_resource path="res://scripts/trashcanBtns/paper.gd" type="Script" id=10]
[ext_resource path="res://scripts/trashcanBtns/glass.gd" type="Script" id=11]
[ext_resource path="res://scripts/trashcanBtns/other.gd" type="Script" id=12]
[sub_resource type="Animation" id=1]
resource_name = "onLoad"
tracks/0/type = "value"
tracks/0/path = NodePath("sprite:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 512, -256 ), Vector2( 512, 200 ) ]
}
[sub_resource type="Animation" id=2]
resource_name = "onUnload"
tracks/0/type = "value"
tracks/0/path = NodePath("sprite:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 512, 200 ), Vector2( 512, -256 ) ]
}
[sub_resource type="Animation" id=3]
resource_name = "lose"
length = 2.0
tracks/0/type = "value"
tracks/0/path = NodePath("false:rect_position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5, 1.5, 2 ),
"transitions": PoolRealArray( 1, 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 400, 650 ), Vector2( 400, 350 ), Vector2( 400, 350 ), Vector2( 400, 650 ) ]
}
[sub_resource type="Animation" id=4]
resource_name = "win"
length = 2.0
tracks/0/type = "value"
tracks/0/path = NodePath("true:rect_position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5, 1.5, 2 ),
"transitions": PoolRealArray( 1, 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 400, 650 ), Vector2( 400, 350 ), Vector2( 400, 350 ), Vector2( 400, 650 ) ]
}
[node name="Playground" type="Node2D"]
script = ExtResource( 6 )
[node name="background" type="ColorRect" parent="."]
margin_left = -59.0
margin_top = -54.0
margin_right = 1103.0
margin_bottom = 653.0
color = Color( 0, 0.576471, 1, 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="sprite" type="Sprite" parent="."]
position = Vector2( 512, 200 )
scale = Vector2( 0.5, 0.5 )
texture = ExtResource( 3 )
[node name="anim" type="AnimationPlayer" parent="."]
anims/onLoad = SubResource( 1 )
anims/onUnload = SubResource( 2 )
[node name="winloseAnim" type="AnimationPlayer" parent="."]
anims/lose = SubResource( 3 )
anims/win = SubResource( 4 )
[node name="buttons" type="Node" parent="."]
[node name="plastic" type="TextureButton" parent="buttons"]
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
margin_left = -399.638
margin_top = -165.329
margin_right = -129.638
margin_bottom = 214.671
rect_scale = Vector2( 0.3, 0.3 )
texture_normal = ExtResource( 4 )
texture_pressed = ExtResource( 2 )
texture_hover = ExtResource( 1 )
script = ExtResource( 7 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="glass" type="TextureButton" parent="buttons"]
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
margin_left = -172.638
margin_top = -165.329
margin_right = 97.3621
margin_bottom = 214.671
rect_scale = Vector2( 0.3, 0.3 )
texture_normal = ExtResource( 4 )
texture_pressed = ExtResource( 2 )
texture_hover = ExtResource( 1 )
script = ExtResource( 11 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="paper" type="TextureButton" parent="buttons"]
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
margin_left = 95.3621
margin_top = -165.329
margin_right = 365.362
margin_bottom = 214.671
rect_scale = Vector2( 0.3, 0.3 )
texture_normal = ExtResource( 4 )
texture_pressed = ExtResource( 2 )
texture_hover = ExtResource( 1 )
script = ExtResource( 10 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="other" type="TextureButton" parent="buttons"]
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
margin_left = 313.362
margin_top = -165.329
margin_right = 583.362
margin_bottom = 214.671
rect_scale = Vector2( 0.3, 0.3 )
texture_normal = ExtResource( 4 )
texture_pressed = ExtResource( 2 )
texture_hover = ExtResource( 1 )
script = ExtResource( 12 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="plasticTxt" type="Label" parent="buttons"]
margin_left = 117.422
margin_top = 550.0
margin_right = 186.422
margin_bottom = 566.0
custom_fonts/font = ExtResource( 5 )
text = "Пластик"
valign = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="glassTxt" type="Label" parent="buttons"]
margin_left = 344.602
margin_top = 550.0
margin_right = 413.602
margin_bottom = 566.0
custom_fonts/font = ExtResource( 5 )
text = "Стекло"
align = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="paperTxt" type="Label" parent="buttons"]
margin_left = 613.813
margin_top = 550.0
margin_right = 682.813
margin_bottom = 566.0
custom_fonts/font = ExtResource( 5 )
text = "Бумага"
align = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="otherTxt" type="Label" parent="buttons"]
margin_left = 832.904
margin_top = 550.0
margin_right = 901.904
margin_bottom = 566.0
custom_fonts/font = ExtResource( 5 )
text = "Другое"
align = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="true" type="Label" parent="."]
margin_left = 400.0
margin_top = 650.0
margin_right = 654.0
margin_bottom = 722.0
custom_fonts/font = ExtResource( 8 )
custom_colors/font_color = Color( 0, 1, 0, 1 )
text = "Верно!"
__meta__ = {
"_edit_use_anchors_": false
}
[node name="false" type="Label" parent="."]
margin_left = 400.0
margin_top = 650.0
margin_right = 717.0
margin_bottom = 722.0
custom_fonts/font = ExtResource( 8 )
custom_colors/font_color = Color( 1, 0, 0, 1 )
text = "Ошибка!"
__meta__ = {
"_edit_use_anchors_": false
}
[node name="score" type="Label" parent="."]
margin_left = 22.4396
margin_top = 15.4756
margin_right = 160.44
margin_bottom = 42.4756
custom_fonts/font = ExtResource( 5 )
text = "Ваш счет: "
script = ExtResource( 9 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="sound" type="AudioStreamPlayer" parent="."]

40
scenes/dog.tscn Normal file
View File

@ -0,0 +1,40 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://fonts/pixel.tres" type="DynamicFont" id=1]
[ext_resource path="res://scripts/dogLoadout.gd" type="Script" id=2]
[node name="bg" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 2 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="bg_color" type="ColorRect" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
color = Color( 0, 0, 0, 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="text" type="Label" parent="."]
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
margin_left = -288.5
margin_top = -88.5
margin_right = 288.5
margin_bottom = 88.5
custom_fonts/font = ExtResource( 1 )
text = "В память о Умке - замечательной собаке,
жизнь которой была унесена столь рано.
Умка, мы тебя помним и любим.
Будь счастлива в лучшем мире...
-07.08.19-"
align = 1
[node name="sound" type="AudioStreamPlayer" parent="."]

47
scripts/_G.gd Normal file
View File

@ -0,0 +1,47 @@
extends Node
func exit():
get_tree().quit()
func loadScene(scene):
#warning-ignore:return_value_discarded
var path = "res://scenes/"+scene+".tscn"
get_tree().change_scene(path)
func loadLevel(lvl):
var l = load("res://scenes/"+lvl+".tscn").instance()
get_tree().get_root().add_child(l)
func unloadLevel(lvl):
var rootnode = get_tree().get_root().get_children()
for v in rootnode:
if v.get_name() == lvl:
get_tree().get_root().remove_child(v)
func hideMenuButts():
PlayBtn.hide()
AuthorsBtn.hide()
ExitBtn.hide()
func showMenuButts():
PlayBtn.show()
AuthorsBtn.show()
ExitBtn.show()
var PlayBtn
var AuthorsBtn
var ExitBtn
var cans
var currentTrashType = 'none'
var score = 0
var dogLevel = 0
func updateScore(v):
score = int(v)
var trash = {
1: ['res://sprites/trash/plasticbottle.png', 'plastic'],
2: ['res://sprites/trash/glassbottle.png', 'glass'],
3: ['res://sprites/trash/metalcan.png', 'other'],
4: ['res://sprites/trash/newspaper.png', 'paper']
}

View File

@ -0,0 +1,11 @@
extends Node
func _ready():
$anim.play("idle")
# warning-ignore:unused_argument
func _physics_process(delta):
if Input.is_action_just_pressed("ui_cancel"):
_G.unloadLevel("Authors")
_G.showMenuButts()

4
scripts/authorsAnim.gd Normal file
View File

@ -0,0 +1,4 @@
extends Node
func _ready():
$anim.play("onLoad")

8
scripts/authorsBtn.gd Normal file
View File

@ -0,0 +1,8 @@
extends Button
func _ready():
_G.AuthorsBtn = self
func _pressed():
_G.loadLevel("Authors")
_G.hideMenuButts()

5
scripts/dog.gd Normal file
View File

@ -0,0 +1,5 @@
extends Node2D
func _ready():
get_node('./cloud/tail').play()
$anim.play('idle')

7
scripts/dogBtn.gd Normal file
View File

@ -0,0 +1,7 @@
extends Node
func _pressed():
_G.dogLevel += 1
if _G.dogLevel == 3:
_G.dogLevel = 0
_G.loadScene("dog")

10
scripts/dogLoadout.gd Normal file
View File

@ -0,0 +1,10 @@
extends Node
func _ready():
$sound.stream = load("res://sounds/dogMusic.ogg")
$sound.play()
# warning-ignore:unused_argument
func _physics_process(delta):
if Input.is_action_just_pressed("ui_cancel"):
_G.loadScene("MainMenu")

7
scripts/exitBtn.gd Normal file
View File

@ -0,0 +1,7 @@
extends Button
func _ready():
_G.ExitBtn = self
func _pressed():
_G.exit()

View File

@ -0,0 +1,4 @@
extends Particles2D
func _ready():
_G.cans = self

View File

@ -0,0 +1,5 @@
extends Node
func _ready():
$sound.stream = load("res://sounds/menuMusic.ogg")
$sound.play()

20
scripts/onCardLoad.gd Normal file
View File

@ -0,0 +1,20 @@
extends Node
func _ready():
nextCard()
func nextCard():
if !$winloseAnim.is_playing():
if _G.currentTrashType == 'none':
randomize()
var i = randi() % len(_G.trash) + 1
$sprite.texture = load(_G.trash[i][0])
_G.currentTrashType = _G.trash[i][1]
$anim.queue("onLoad")
# warning-ignore:unused_argument
func _physics_process(delta):
nextCard()
if Input.is_action_just_pressed("ui_cancel"):
_G.currentTrashType = 'none'
_G.loadScene("MainMenu")

7
scripts/playBtn.gd Normal file
View File

@ -0,0 +1,7 @@
extends Button
func _ready():
_G.PlayBtn = self
func _pressed():
_G.loadScene('Playground')

View File

@ -0,0 +1,5 @@
extends Label
# warning-ignore:unused_argument
func _physics_process(delta):
text = "Ваш счет: " + str(_G.score)

4
scripts/sunAnim.gd Normal file
View File

@ -0,0 +1,4 @@
extends Node
func _ready():
$anim.play("idle")

View File

@ -0,0 +1,23 @@
extends TextureButton
onready var anim = get_node('../../anim')
onready var animWinLose = get_node('../../winloseAnim')
onready var game = get_node('../../../Playground')
onready var sound = get_node('../../sound')
func _pressed():
if _G.currentTrashType == 'glass' && _G.currentTrashType != 'none':
anim.play('onUnload')
animWinLose.play("win")
_G.updateScore(_G.score+1)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/win.wav")
sound.play()
else:
if(_G.currentTrashType != 'none'):
anim.play('onUnload')
animWinLose.play("lose")
_G.updateScore(0)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/lose.wav")
sound.play()

View File

@ -0,0 +1,23 @@
extends TextureButton
onready var anim = get_node('../../anim')
onready var animWinLose = get_node('../../winloseAnim')
onready var game = get_node('../../../Playground')
onready var sound = get_node('../../sound')
func _pressed():
if _G.currentTrashType == 'other' && _G.currentTrashType != 'none':
anim.play('onUnload')
animWinLose.play("win")
_G.updateScore(_G.score+1)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/win.wav")
sound.play()
else:
if(_G.currentTrashType != 'none'):
anim.play('onUnload')
animWinLose.play("lose")
_G.updateScore(0)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/lose.wav")
sound.play()

View File

@ -0,0 +1,23 @@
extends TextureButton
onready var anim = get_node('../../anim')
onready var animWinLose = get_node('../../winloseAnim')
onready var game = get_node('../../../Playground')
onready var sound = get_node('../../sound')
func _pressed():
if _G.currentTrashType == 'paper' && _G.currentTrashType != 'none':
anim.play('onUnload')
animWinLose.play("win")
_G.updateScore(_G.score+1)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/win.wav")
sound.play()
else:
if(_G.currentTrashType != 'none'):
anim.play('onUnload')
animWinLose.play("lose")
_G.updateScore(0)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/lose.wav")
sound.play()

View File

@ -0,0 +1,23 @@
extends TextureButton
onready var anim = get_node('../../anim')
onready var animWinLose = get_node('../../winloseAnim')
onready var game = get_node('../../../Playground')
onready var sound = get_node('../../sound')
func _pressed():
if _G.currentTrashType == 'plastic' && _G.currentTrashType != 'none':
anim.play('onUnload')
animWinLose.play("win")
_G.updateScore(_G.score+1)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/win.wav")
sound.play()
else:
if(_G.currentTrashType != 'none'):
anim.play('onUnload')
animWinLose.play("lose")
_G.updateScore(0)
_G.currentTrashType = 'none'
sound.stream = load("res://sounds/lose.wav")
sound.play()

BIN
sounds/dogMusic.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/dogMusic.ogg-a73151edd67f9a5840860c1f2a76f739.oggstr"
[deps]
source_file="res://sounds/dogMusic.ogg"
dest_files=[ "res://.import/dogMusic.ogg-a73151edd67f9a5840860c1f2a76f739.oggstr" ]
[params]
loop=true
loop_offset=0

BIN
sounds/lose.wav Normal file

Binary file not shown.

21
sounds/lose.wav.import Normal file
View File

@ -0,0 +1,21 @@
[remap]
importer="wav"
type="AudioStreamSample"
path="res://.import/lose.wav-cb4e7670a5fe2d89b40e499c15bd8f1b.sample"
[deps]
source_file="res://sounds/lose.wav"
dest_files=[ "res://.import/lose.wav-cb4e7670a5fe2d89b40e499c15bd8f1b.sample" ]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop=false
compress/mode=0

BIN
sounds/menuMusic.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/menuMusic.ogg-7b2ef9db38ef9d3195c708db8139d197.oggstr"
[deps]
source_file="res://sounds/menuMusic.ogg"
dest_files=[ "res://.import/menuMusic.ogg-7b2ef9db38ef9d3195c708db8139d197.oggstr" ]
[params]
loop=true
loop_offset=0

BIN
sounds/win.wav Normal file

Binary file not shown.

21
sounds/win.wav.import Normal file
View File

@ -0,0 +1,21 @@
[remap]
importer="wav"
type="AudioStreamSample"
path="res://.import/win.wav-d8985249cb4cbbaa02050ce18417b390.sample"
[deps]
source_file="res://sounds/win.wav"
dest_files=[ "res://.import/win.wav-d8985249cb4cbbaa02050ce18417b390.sample" ]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop=false
compress/mode=0

BIN
sprites/cloud.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

34
sprites/cloud.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/cloud.png-635514b24fe2deefa6d8eecdef9dab61.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/cloud.png"
dest_files=[ "res://.import/cloud.png-635514b24fe2deefa6d8eecdef9dab61.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/dog1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

34
sprites/dog1.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/dog1.png-fa75bec5989ef7a2c2c9ea3682f63eee.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/dog1.png"
dest_files=[ "res://.import/dog1.png-fa75bec5989ef7a2c2c9ea3682f63eee.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/dog2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 B

34
sprites/dog2.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/dog2.png-782f3d9cb6de3f45c615da7c9969fda4.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/dog2.png"
dest_files=[ "res://.import/dog2.png-782f3d9cb6de3f45c615da7c9969fda4.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/sun.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

34
sprites/sun.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/sun.png-9915cd1da25911494b2bd6f3fd6a93e0.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/sun.png"
dest_files=[ "res://.import/sun.png-9915cd1da25911494b2bd6f3fd6a93e0.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/glassbottle.png-e62027e8f6f50acdb3a96233a6c8c8dd.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trash/glassbottle.png"
dest_files=[ "res://.import/glassbottle.png-e62027e8f6f50acdb3a96233a6c8c8dd.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/trash/metalcan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/metalcan.png-5642f5b99d2e94427169a594cd6aec16.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trash/metalcan.png"
dest_files=[ "res://.import/metalcan.png-5642f5b99d2e94427169a594cd6aec16.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/trash/newspaper.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/newspaper.png-4afe3021771fa2134188352ee070a163.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trash/newspaper.png"
dest_files=[ "res://.import/newspaper.png-4afe3021771fa2134188352ee070a163.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/plasticbottle.png-4051a1628427aa7a34d8c9a342976470.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trash/plasticbottle.png"
dest_files=[ "res://.import/plasticbottle.png-4051a1628427aa7a34d8c9a342976470.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/trashcan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/trashcan.png-1c5ca5088782731350d8f342408720dc.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trashcan.png"
dest_files=[ "res://.import/trashcan.png-1c5ca5088782731350d8f342408720dc.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/trashcanBtnHover.png-ee5e8e241e782f99b624eaf7e32269c5.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trashcanBtnHover.png"
dest_files=[ "res://.import/trashcanBtnHover.png-ee5e8e241e782f99b624eaf7e32269c5.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

BIN
sprites/trashcanBtnMain.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/trashcanBtnMain.png-6c9497a0f182b00905599ccab7c5ce38.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trashcanBtnMain.png"
dest_files=[ "res://.import/trashcanBtnMain.png-6c9497a0f182b00905599ccab7c5ce38.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/trashcanBtnPressed.png-46f97d0a69fbe43bf379094dde4878d9.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/trashcanBtnPressed.png"
dest_files=[ "res://.import/trashcanBtnPressed.png-46f97d0a69fbe43bf379094dde4878d9.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0