source_md5="05fa9547678759c188fd54056bbae5d1" | |||||
dest_md5="c69b0a25c58faddccac66bc0fee28939" | |||||
source_md5="7dca0d73f2612d088326ffc420d70d33" | |||||
dest_md5="4441e90ddb4675a44bc124eeb8d327f5" | |||||
source_md5="33750fa6ceaeaabc7549f50cc86fb035" | |||||
dest_md5="6ee517ae6255a5dc98c9f4522cecb413" | |||||
source_md5="03c06a605a230f1217d49def7b7f778a" | |||||
dest_md5="8345423a2494a1562001f0efac0f399f" | |||||
[remap] | |||||
importer="texture" | |||||
type="StreamTexture" | |||||
path="res://.import/GodotWildJam.png-6aadb0f65791a68e8f9cd08d3c7d0ed5.stex" | |||||
metadata={ | |||||
"vram_texture": false | |||||
} | |||||
[deps] | |||||
source_file="res://Data/Graphics/Logos/GodotWildJam.png" | |||||
dest_files=[ "res://.import/GodotWildJam.png-6aadb0f65791a68e8f9cd08d3c7d0ed5.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 |
[remap] | |||||
importer="texture" | |||||
type="StreamTexture" | |||||
path="res://.import/head_bg_less.png-3a58bfe4f8141f8d0fe42658ca12d6a5.stex" | |||||
metadata={ | |||||
"vram_texture": false | |||||
} | |||||
[deps] | |||||
source_file="res://Data/Graphics/Logos/head_bg_less.png" | |||||
dest_files=[ "res://.import/head_bg_less.png-3a58bfe4f8141f8d0fe42658ca12d6a5.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 |
[remap] | |||||
importer="texture" | |||||
type="StreamTexture" | |||||
path="res://.import/www.png-4f52fd650d53c7242efef7a9e53df725.stex" | |||||
metadata={ | |||||
"vram_texture": false | |||||
} | |||||
[deps] | |||||
source_file="res://Data/Graphics/Logos/www.png" | |||||
dest_files=[ "res://.import/www.png-4f52fd650d53c7242efef7a9e53df725.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 |
[remap] | |||||
importer="texture" | |||||
type="StreamTexture" | |||||
path="res://.import/vortex.png-e1395b58a0be719c5615518db2edd2f5.stex" | |||||
metadata={ | |||||
"vram_texture": false | |||||
} | |||||
[deps] | |||||
source_file="res://Data/Graphics/vortex.png" | |||||
dest_files=[ "res://.import/vortex.png-e1395b58a0be719c5615518db2edd2f5.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 |
[gd_scene load_steps=8 format=2] | |||||
[ext_resource path="res://Data/Graphics/vortex.png" type="Texture" id=1] | |||||
[ext_resource path="res://Data/Scripts/ExitVortex.gd" type="Script" id=2] | |||||
[ext_resource path="res://Data/Shaders/rotation_shader.shader" type="Shader" id=3] | |||||
[sub_resource type="ShaderMaterial" id=9] | |||||
resource_local_to_scene = true | |||||
shader = ExtResource( 3 ) | |||||
shader_param/rot_speed = 0.356 | |||||
[sub_resource type="ShaderMaterial" id=7] | |||||
shader = ExtResource( 3 ) | |||||
shader_param/rot_speed = 1.0 | |||||
[sub_resource type="ShaderMaterial" id=8] | |||||
resource_local_to_scene = true | |||||
shader = ExtResource( 3 ) | |||||
shader_param/rot_speed = -3.5 | |||||
[sub_resource type="CircleShape2D" id=10] | |||||
radius = 64.0 | |||||
[node name="ExitVortex" type="Node2D"] | |||||
script = ExtResource( 2 ) | |||||
[node name="BlueSwirl" type="Sprite" parent="."] | |||||
modulate = Color( 0.552941, 0.54902, 0.996078, 0.784314 ) | |||||
material = SubResource( 9 ) | |||||
scale = Vector2( 0.5, -0.5 ) | |||||
texture = ExtResource( 1 ) | |||||
[node name="GreenSwirl" type="Sprite" parent="."] | |||||
modulate = Color( 0.443137, 0.941176, 0.623529, 0.784314 ) | |||||
material = SubResource( 7 ) | |||||
scale = Vector2( 0.5, 0.5 ) | |||||
texture = ExtResource( 1 ) | |||||
[node name="RedSwirl" type="Sprite" parent="."] | |||||
modulate = Color( 0.996078, 0.54902, 0.54902, 0.784314 ) | |||||
material = SubResource( 8 ) | |||||
scale = Vector2( -0.5, 0.5 ) | |||||
texture = ExtResource( 1 ) | |||||
[node name="Area2D" type="Area2D" parent="."] | |||||
visible = false | |||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] | |||||
shape = SubResource( 10 ) | |||||
[connection signal="body_entered" from="Area2D" to="." method="_on_Area2D_body_entered"] |
[gd_scene load_steps=14 format=2] | |||||
[gd_scene load_steps=15 format=2] | |||||
[ext_resource path="res://Data/Objects/BladeSaw.tscn" type="PackedScene" id=1] | [ext_resource path="res://Data/Objects/BladeSaw.tscn" type="PackedScene" id=1] | ||||
[ext_resource path="res://Data/Graphics/placeholder.png" type="Texture" id=2] | [ext_resource path="res://Data/Graphics/placeholder.png" type="Texture" id=2] | ||||
[ext_resource path="res://Data/Objects/Doorway.tscn" type="PackedScene" id=6] | [ext_resource path="res://Data/Objects/Doorway.tscn" type="PackedScene" id=6] | ||||
[ext_resource path="res://Data/Objects/Pusher.tscn" type="PackedScene" id=7] | [ext_resource path="res://Data/Objects/Pusher.tscn" type="PackedScene" id=7] | ||||
[ext_resource path="res://Data/Scripts/Levels/Level_001.gd" type="Script" id=8] | [ext_resource path="res://Data/Scripts/Levels/Level_001.gd" type="Script" id=8] | ||||
[ext_resource path="res://Data/Objects/ExitVortex.tscn" type="PackedScene" id=9] | |||||
[sub_resource type="Shader" id=3] | [sub_resource type="Shader" id=3] | ||||
code = "shader_type canvas_item; | code = "shader_type canvas_item; | ||||
[sub_resource type="ShaderMaterial" id=1] | [sub_resource type="ShaderMaterial" id=1] | ||||
resource_local_to_scene = true | resource_local_to_scene = true | ||||
shader = SubResource( 3 ) | shader = SubResource( 3 ) | ||||
shader_param/sprite_scale = Vector2( 1.76, 1 ) | |||||
shader_param/sprite_scale = Vector2( 2.8, 1 ) | |||||
shader_param/distortion = 16.265 | shader_param/distortion = 16.265 | ||||
shader_param/liquid_color_main = Color( 0.207843, 0.164706, 0.921569, 1 ) | shader_param/liquid_color_main = Color( 0.207843, 0.164706, 0.921569, 1 ) | ||||
shader_param/liquid_color_surface = Color( 0.360784, 0.352941, 0.972549, 1 ) | shader_param/liquid_color_surface = Color( 0.360784, 0.352941, 0.972549, 1 ) | ||||
[sub_resource type="ShaderMaterial" id=5] | [sub_resource type="ShaderMaterial" id=5] | ||||
resource_local_to_scene = true | resource_local_to_scene = true | ||||
shader = ExtResource( 3 ) | shader = ExtResource( 3 ) | ||||
shader_param/sprite_scale = Vector2( 1, 1 ) | |||||
shader_param/sprite_scale = Vector2( 1.72663, 1.16549 ) | |||||
shader_param/distortion = 16.265 | shader_param/distortion = 16.265 | ||||
shader_param/liquid_color_main = Color( 0.670588, 0.105882, 0.105882, 1 ) | shader_param/liquid_color_main = Color( 0.670588, 0.105882, 0.105882, 1 ) | ||||
shader_param/liquid_color_surface = Color( 0.94902, 0.541176, 0.827451, 1 ) | shader_param/liquid_color_surface = Color( 0.94902, 0.541176, 0.827451, 1 ) | ||||
[node name="Player_Start" type="Position2D" parent="."] | [node name="Player_Start" type="Position2D" parent="."] | ||||
position = Vector2( 128.421, 407.368 ) | position = Vector2( 128.421, 407.368 ) | ||||
[node name="Exit" parent="." instance=ExtResource( 9 )] | |||||
position = Vector2( 1602.84, 4034.27 ) | |||||
next_level = "Level_002.tscn" | |||||
[connection signal="exit_level" from="Exit" to="." method="_on_Exit_exit_level"] |
[gd_scene load_steps=3 format=2] | |||||
[ext_resource path="res://Data/Graphics/Logos/GodotWildJam.png" type="Texture" id=1] | |||||
[ext_resource path="res://Data/Graphics/Logos/head_bg_less.png" type="Texture" id=2] | |||||
[node name="MainMenuLogo" type="Node2D"] | |||||
[node name="GodotFace" type="Node2D" parent="."] | |||||
position = Vector2( 172.95, 351.479 ) | |||||
[node name="Sprite" type="Sprite" parent="GodotFace"] | |||||
scale = Vector2( 0.5, 0.5 ) | |||||
texture = ExtResource( 2 ) | |||||
[node name="GodotJamTitle" type="Node2D" parent="."] | |||||
position = Vector2( -203.938, 372.715 ) | |||||
[node name="Sprite" type="Sprite" parent="GodotJamTitle"] | |||||
scale = Vector2( 0.5, 0.5 ) | |||||
texture = ExtResource( 1 ) |
[node name="Player" parent="." instance=ExtResource( 2 )] | [node name="Player" parent="." instance=ExtResource( 2 )] | ||||
visible = false | visible = false | ||||
[node name="ExitTween" type="Tween" parent="."] | |||||
[node name="GUI" type="CanvasLayer" parent="."] | [node name="GUI" type="CanvasLayer" parent="."] | ||||
pause_mode = 2 | pause_mode = 2 | ||||
script = ExtResource( 10 ) | script = ExtResource( 10 ) | ||||
__meta__ = { | __meta__ = { | ||||
"_edit_use_anchors_": false | "_edit_use_anchors_": false | ||||
} | } | ||||
[connection signal="tween_all_completed" from="ExitTween" to="." method="_on_ExitTween_tween_all_completed"] | |||||
[connection signal="pressed" from="GUI/Menus/PauseMenu/Box/Resume Button/PM_Resume" to="GUI" method="_on_PM_Resume_pressed"] | [connection signal="pressed" from="GUI/Menus/PauseMenu/Box/Resume Button/PM_Resume" to="GUI" method="_on_PM_Resume_pressed"] | ||||
[connection signal="pressed" from="GUI/Menus/PauseMenu/Box/Quit Button/PM_Quit" to="GUI" method="_on_PM_Resume_pressed"] | [connection signal="pressed" from="GUI/Menus/PauseMenu/Box/Quit Button/PM_Quit" to="GUI" method="_on_PM_Resume_pressed"] | ||||
[connection signal="pressed" from="GUI/Menus/PauseMenu/Box/Quit Button/PM_Quit" to="." method="_on_PM_Quit_pressed"] | [connection signal="pressed" from="GUI/Menus/PauseMenu/Box/Quit Button/PM_Quit" to="." method="_on_PM_Quit_pressed"] |
extends Node2D | |||||
export var next_level:String = "" | |||||
signal exit_level; | |||||
func _on_Area2D_body_entered(body): | |||||
if body.is_in_group("Player"): | |||||
emit_signal("exit_level", self, body, next_level) |
extends Node2D | extends Node2D | ||||
signal exit_level | |||||
func get_starting_position(): | func get_starting_position(): | ||||
return get_node("Player_Start").position | return get_node("Player_Start").position | ||||
func get_level_music(): | func get_level_music(): | ||||
return "Fly.ogg" | return "Fly.ogg" | ||||
func _on_Exit_exit_level(exit, body, next_level): | |||||
emit_signal("exit_level", exit, body, next_level) |
extends Node2D | |||||
signal exit_level | |||||
func get_starting_position(): | |||||
return get_node("Player_Start").position | |||||
func get_level_music(): | |||||
return "Industria.ogg" | |||||
func _on_ExitVortex_exit_level(exit, body, next_level): | |||||
emit_signal("exit_level", exit, body, next_level) |
var _timer = 0.0 | var _timer = 0.0 | ||||
var _level_running = true | var _level_running = true | ||||
var _next_level = "" | |||||
var _level_node = null | var _level_node = null | ||||
get_node("Player").hide() | get_node("Player").hide() | ||||
var lvl = get_node("lvl") | var lvl = get_node("lvl") | ||||
if _level_node != null: | if _level_node != null: | ||||
lvl.disconnect("exit_level", self, "_on_exit_level") | |||||
lvl.remove_child(_level_node) | lvl.remove_child(_level_node) | ||||
_level_node.call_deferred("free") | _level_node.call_deferred("free") | ||||
_level_node = null | _level_node = null | ||||
if lvlres: | if lvlres: | ||||
_level_node = lvlres.instance() | _level_node = lvlres.instance() | ||||
lvl.add_child(_level_node) | lvl.add_child(_level_node) | ||||
_level_node.connect("exit_level", self, "_on_exit_level") | |||||
load_and_play_music(_level_node.get_level_music()) | load_and_play_music(_level_node.get_level_music()) | ||||
reset() | reset() | ||||
_level_running = true | |||||
func reset(): | func reset(): | ||||
func _ready(): | func _ready(): | ||||
set_physics_process(true) | set_physics_process(true) | ||||
load_level("Level_001.tscn") | |||||
#var ps = get_node("Level_00/Player_Start") | |||||
#get_node("Player").position = get_node("Level_TestSite").get_starting_position() | |||||
#get_node("Player").show() | |||||
load_level("Level_002.tscn") | |||||
func _animate_level_exit(exit): | |||||
$Player.mode = RigidBody2D.MODE_KINEMATIC | |||||
$ExitTween.interpolate_property($Player, "position", $Player.position, exit.position, 2.0, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT) | |||||
$ExitTween.start() | |||||
func _physics_process(delta): | func _physics_process(delta): | ||||
if _level_running: | if _level_running: | ||||
func _on_PM_Quit_pressed(): | func _on_PM_Quit_pressed(): | ||||
get_tree().quit() | get_tree().quit() | ||||
func _on_exit_level(exit, body, next_level): | |||||
if next_level != "": | |||||
_next_level = next_level | |||||
_animate_level_exit(exit) | |||||
func _on_ExitTween_tween_all_completed(): | |||||
$Player.mode = RigidBody2D.MODE_RIGID | |||||
if _next_level != "": | |||||
load_level(_next_level) |
shader_type canvas_item; | |||||
uniform float rot_speed:hint_range(-6.0, 6.0) = 1.0; | |||||
void fragment(){ | |||||
float ri = TIME * rot_speed; | |||||
mat2 rm = mat2( | |||||
vec2(sin(ri), -cos(ri)), | |||||
vec2(cos(ri), sin(ri)) | |||||
); | |||||
vec2 pos = rm * (UV - vec2(0.5, 0.5)); | |||||
pos = pos + vec2(0.5, 0.5); | |||||
COLOR = texture(TEXTURE, pos); | |||||
} |