소스 검색

A title intro has been added. Levels have been looped. Level_001 has a second exit that leads to the test environment. Test environment given an exit.

master
Bryan Miller 4 년 전
부모
커밋
c0d9472514
24개의 변경된 파일435개의 추가작업 그리고 39개의 파일을 삭제
  1. +3
    -0
      .import/CreationDate.png-22fbe63cad0f066a0ae043ef18318186.md5
  2. BIN
      .import/CreationDate.png-22fbe63cad0f066a0ae043ef18318186.stex
  3. +3
    -0
      .import/Creator.png-d1f9e7c8f53ac0bfdd40ef53c0593275.md5
  4. BIN
      .import/Creator.png-d1f9e7c8f53ac0bfdd40ef53c0593275.stex
  5. +3
    -0
      .import/GameTitle.png-01b2e6251715664903ab98921fb0b733.md5
  6. BIN
      .import/GameTitle.png-01b2e6251715664903ab98921fb0b733.stex
  7. BIN
      Data/Graphics/Logos/CreationDate.png
  8. +34
    -0
      Data/Graphics/Logos/CreationDate.png.import
  9. BIN
      Data/Graphics/Logos/Creator.png
  10. +34
    -0
      Data/Graphics/Logos/Creator.png.import
  11. BIN
      Data/Graphics/Logos/GameTitle.png
  12. +34
    -0
      Data/Graphics/Logos/GameTitle.png.import
  13. +1
    -1
      Data/Objects/Liquid.tscn
  14. +87
    -4
      Data/Scenes/Levels/Level_001.tscn
  15. +3
    -3
      Data/Scenes/Levels/Level_002.tscn
  16. +7
    -1
      Data/Scenes/Levels/Level_TestSite.tscn
  17. +156
    -0
      Data/Scenes/Levels/MainMenuLogo.tscn
  18. +0
    -20
      Data/Scenes/MainMenuLogo.tscn
  19. +8
    -0
      Data/Scripts/Levels/Level_001.gd
  20. +3
    -0
      Data/Scripts/Levels/Level_002.gd
  21. +9
    -1
      Data/Scripts/Levels/Level_TestSite.gd
  22. +23
    -0
      Data/Scripts/Levels/MainMenuLogo.gd
  23. +4
    -1
      Data/Scripts/UI/GUI.gd
  24. +23
    -8
      Data/Scripts/World.gd

+ 3
- 0
.import/CreationDate.png-22fbe63cad0f066a0ae043ef18318186.md5 파일 보기

@@ -0,0 +1,3 @@
source_md5="cb7ce8d8a14a0a241c2a2610d8b62104"
dest_md5="5ad0353abe6e8049f74988c09b001d19"


BIN
.import/CreationDate.png-22fbe63cad0f066a0ae043ef18318186.stex 파일 보기


+ 3
- 0
.import/Creator.png-d1f9e7c8f53ac0bfdd40ef53c0593275.md5 파일 보기

@@ -0,0 +1,3 @@
source_md5="c52a22b38fd33f7dfde93d26589ccba1"
dest_md5="88508923a9027f8b27bfd05761bd4209"


BIN
.import/Creator.png-d1f9e7c8f53ac0bfdd40ef53c0593275.stex 파일 보기


+ 3
- 0
.import/GameTitle.png-01b2e6251715664903ab98921fb0b733.md5 파일 보기

@@ -0,0 +1,3 @@
source_md5="f75f30ba21df9e4254bdd731cd7b398c"
dest_md5="0f2fde94c88198f29c69671ce15f5396"


BIN
.import/GameTitle.png-01b2e6251715664903ab98921fb0b733.stex 파일 보기


BIN
Data/Graphics/Logos/CreationDate.png 파일 보기

Before After
Width: 137  |  Height: 24  |  Size: 1.2KB

+ 34
- 0
Data/Graphics/Logos/CreationDate.png.import 파일 보기

@@ -0,0 +1,34 @@
[remap]

importer="texture"
type="StreamTexture"
path="res://.import/CreationDate.png-22fbe63cad0f066a0ae043ef18318186.stex"
metadata={
"vram_texture": false
}

[deps]

source_file="res://Data/Graphics/Logos/CreationDate.png"
dest_files=[ "res://.import/CreationDate.png-22fbe63cad0f066a0ae043ef18318186.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
Data/Graphics/Logos/Creator.png 파일 보기

Before After
Width: 169  |  Height: 26  |  Size: 1.3KB

+ 34
- 0
Data/Graphics/Logos/Creator.png.import 파일 보기

@@ -0,0 +1,34 @@
[remap]

importer="texture"
type="StreamTexture"
path="res://.import/Creator.png-d1f9e7c8f53ac0bfdd40ef53c0593275.stex"
metadata={
"vram_texture": false
}

[deps]

source_file="res://Data/Graphics/Logos/Creator.png"
dest_files=[ "res://.import/Creator.png-d1f9e7c8f53ac0bfdd40ef53c0593275.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
Data/Graphics/Logos/GameTitle.png 파일 보기

Before After
Width: 512  |  Height: 177  |  Size: 22KB

+ 34
- 0
Data/Graphics/Logos/GameTitle.png.import 파일 보기

@@ -0,0 +1,34 @@
[remap]

importer="texture"
type="StreamTexture"
path="res://.import/GameTitle.png-01b2e6251715664903ab98921fb0b733.stex"
metadata={
"vram_texture": false
}

[deps]

source_file="res://Data/Graphics/Logos/GameTitle.png"
dest_files=[ "res://.import/GameTitle.png-01b2e6251715664903ab98921fb0b733.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

+ 1
- 1
Data/Objects/Liquid.tscn 파일 보기

@@ -38,7 +38,7 @@ orbit_velocity = 0.0
orbit_velocity_random = 0.0
scale = 2.0
scale_curve = SubResource( 4 )
color = Color( 0.94902, 0.541176, 0.827451, 1 )
color = Color( 0.576471, 0.760784, 0.996078, 1 )

[node name="Liquid" type="Sprite"]
material = SubResource( 1 )

+ 87
- 4
Data/Scenes/Levels/Level_001.tscn
파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
파일 보기


+ 3
- 3
Data/Scenes/Levels/Level_002.tscn 파일 보기

@@ -13,7 +13,7 @@
[sub_resource type="ShaderMaterial" id=5]
resource_local_to_scene = true
shader = ExtResource( 6 )
shader_param/sprite_scale = Vector2( 1, 1 )
shader_param/sprite_scale = Vector2( 1.63999, 1 )
shader_param/distortion = 16.265
shader_param/liquid_color_main = Color( 0.741176, 0.741176, 0.741176, 1 )
shader_param/liquid_color_surface = Color( 1, 1, 1, 1 )
@@ -25,7 +25,7 @@ shader_param/wave_scale = 1.0
[sub_resource type="ShaderMaterial" id=3]
resource_local_to_scene = true
shader = ExtResource( 6 )
shader_param/sprite_scale = Vector2( 1, 1 )
shader_param/sprite_scale = Vector2( 1.56, 1 )
shader_param/distortion = 16.265
shader_param/liquid_color_main = Color( 0.305882, 0.129412, 0.745098, 1 )
shader_param/liquid_color_surface = Color( 0.0156863, 0.658824, 0.745098, 1 )
@@ -660,5 +660,5 @@ tile_data = PoolIntArray( -1048590, 1, 0, -1048589, 1, 65537, -1048588, 1, 32768

[node name="ExitVortex" parent="." instance=ExtResource( 3 )]
position = Vector2( 630.493, -32.7922 )
next_level = "Level_TestSite.tscn"
next_level = "MainMenuLogo.tscn"
[connection signal="exit_level" from="ExitVortex" to="." method="_on_ExitVortex_exit_level"]

+ 7
- 1
Data/Scenes/Levels/Level_TestSite.tscn 파일 보기

@@ -1,7 +1,8 @@
[gd_scene load_steps=10 format=2]
[gd_scene load_steps=11 format=2]

[ext_resource path="res://Data/Objects/Liquid.tscn" type="PackedScene" id=1]
[ext_resource path="res://Data/Misc/Tileset.tres" type="TileSet" id=2]
[ext_resource path="res://Data/Objects/ExitVortex.tscn" type="PackedScene" id=3]
[ext_resource path="res://Data/Shaders/Liquid.shader" type="Shader" id=7]
[ext_resource path="res://Data/Objects/Pusher.tscn" type="PackedScene" id=9]
[ext_resource path="res://Data/Objects/BladeSaw.tscn" type="PackedScene" id=10]
@@ -93,3 +94,8 @@ tile_data = PoolIntArray( -393207, 1, 0, -393206, 1, 1, -393205, 1, 2, -262145,

[node name="Player_Start" type="Position2D" parent="."]
position = Vector2( -31.5133, -15.0267 )

[node name="ExitVortex" parent="." instance=ExtResource( 3 )]
position = Vector2( 95.2261, 692.429 )
next_level = "Level_002.tscn"
[connection signal="exit_level" from="ExitVortex" to="." method="_on_ExitVortex_exit_level"]

+ 156
- 0
Data/Scenes/Levels/MainMenuLogo.tscn 파일 보기

@@ -0,0 +1,156 @@
[gd_scene load_steps=8 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]
[ext_resource path="res://Data/Graphics/Logos/GameTitle.png" type="Texture" id=3]
[ext_resource path="res://Data/Graphics/Logos/Creator.png" type="Texture" id=4]
[ext_resource path="res://Data/Graphics/Logos/CreationDate.png" type="Texture" id=5]
[ext_resource path="res://Data/Scripts/Levels/MainMenuLogo.gd" type="Script" id=6]

[sub_resource type="Animation" id=1]
resource_name = "Title"
length = 15.0
tracks/0/type = "value"
tracks/0/path = NodePath("GodotJamTitle:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 4, 4.5 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( -192.752, 375.251 ), Vector2( 627.468, 375.251 ), Vector2( 554.762, 375.251 ) ]
}
tracks/1/type = "value"
tracks/1/path = NodePath("GodotJamFace:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0, 1.5, 2, 3, 3.5, 4 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 174.297, 346.543 ), Vector2( 174.297, 346.543 ), Vector2( 477.778, 346.543 ), Vector2( 477.778, 346.543 ), Vector2( 477.778, 346.543 ), Vector2( 955.556, 346.543 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("GameTitle:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0, 10, 11.5 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 672.58, -129.185 ), Vector2( 672.58, -129.185 ), Vector2( 672.58, 352.496 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("GodotJamTitle/Sprite:modulate")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 4.5, 5, 5.5, 6, 8, 9 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ),
"update": 0,
"values": [ Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0.501961 ), Color( 1, 1, 1, 0.25098 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 0 ) ]
}
tracks/4/type = "value"
tracks/4/path = NodePath("GodotJamFace/Sprite:modulate")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/keys = {
"times": PoolRealArray( 0, 1, 1.5, 2, 3, 3.5, 4, 4.5, 5, 5.5, 8, 9 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ),
"update": 0,
"values": [ Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0.0941176 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0.392157 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0.705882 ), Color( 1, 1, 1, 0.313726 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 0 ) ]
}
tracks/5/type = "value"
tracks/5/path = NodePath("GameTitle:visible")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/keys = {
"times": PoolRealArray( 0, 10 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
}
tracks/6/type = "value"
tracks/6/path = NodePath("CreationDate/Sprite:modulate")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/keys = {
"times": PoolRealArray( 0, 13, 14 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 1 ) ]
}
tracks/7/type = "value"
tracks/7/path = NodePath("Creator/Sprite:modulate")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/keys = {
"times": PoolRealArray( 0, 12, 13 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 1 ) ]
}

[node name="MainMenuLogo" type="Node2D"]
script = ExtResource( 6 )

[node name="GameTitle" type="Position2D" parent="."]
visible = false
position = Vector2( 672.58, -129.185 )

[node name="Sprite" type="Sprite" parent="GameTitle"]
texture = ExtResource( 3 )

[node name="GodotJamFace" type="Position2D" parent="."]
position = Vector2( 174.297, 346.543 )

[node name="Sprite" type="Sprite" parent="GodotJamFace"]
modulate = Color( 1, 1, 1, 0 )
scale = Vector2( 0.5, 0.5 )
texture = ExtResource( 2 )

[node name="GodotJamTitle" type="Position2D" parent="."]
position = Vector2( -192.752, 375.251 )

[node name="Sprite" type="Sprite" parent="GodotJamTitle"]
modulate = Color( 1, 1, 1, 0 )
scale = Vector2( 0.5, 0.5 )
texture = ExtResource( 1 )

[node name="CreationDate" type="Position2D" parent="."]
position = Vector2( 789.418, 451.433 )

[node name="Sprite" type="Sprite" parent="CreationDate"]
modulate = Color( 1, 1, 1, 0 )
texture = ExtResource( 5 )

[node name="Creator" type="Position2D" parent="."]
position = Vector2( 502.814, 239.1 )

[node name="Sprite" type="Sprite" parent="Creator"]
modulate = Color( 1, 1, 1, 0 )
texture = ExtResource( 4 )

[node name="AnimPlayer" type="AnimationPlayer" parent="."]
autoplay = "Title"
anims/Title = SubResource( 1 )

[node name="Player_Start" type="Position2D" parent="."]
position = Vector2( 683, 384 )
[connection signal="animation_finished" from="AnimPlayer" to="." method="_on_AnimPlayer_animation_finished"]

+ 0
- 20
Data/Scenes/MainMenuLogo.tscn 파일 보기

@@ -1,20 +0,0 @@
[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 )

+ 8
- 0
Data/Scripts/Levels/Level_001.gd 파일 보기

@@ -2,6 +2,9 @@ extends Node2D

signal exit_level

func is_main_menu():
return false

func get_starting_position():
return get_node("Player_Start").position

@@ -11,3 +14,8 @@ func get_level_music():

func _on_Exit_exit_level(exit, body, next_level):
emit_signal("exit_level", exit, body, next_level)


func _on_ExitVortex_exit_level(exit, body, next_level):
# Different exit vortex than the signal handler above.
emit_signal("exit_level", exit, body, next_level)

+ 3
- 0
Data/Scripts/Levels/Level_002.gd 파일 보기

@@ -2,6 +2,9 @@ extends Node2D

signal exit_level

func is_main_menu():
return false

func get_starting_position():
return get_node("Player_Start").position


+ 9
- 1
Data/Scripts/Levels/Level_TestSite.gd 파일 보기

@@ -1,7 +1,15 @@
extends Node2D

signal exit_level

func is_main_menu():
return false

func get_starting_position():
return get_node("Player_Start").position

func get_level_music():
return "Fly.ogg"
return "Fly_1.ogg"

func _on_ExitVortex_exit_level(exit, body, next_level):
emit_signal("exit_level", exit, body, next_level)

+ 23
- 0
Data/Scripts/Levels/MainMenuLogo.gd 파일 보기

@@ -0,0 +1,23 @@
extends Node2D


signal exit_level

func _input(event):
if event.is_action_pressed("ButtonA"):
emit_signal("exit_level", null, null, "Level_001.tscn")
if event.is_action_pressed("ui_cancel"):
get_tree().quit()

func is_main_menu():
return true

func get_starting_position():
return get_node("Player_Start").position

func get_level_music():
return ""


func _on_AnimPlayer_animation_finished(anim_name):
set_process_input(true)

+ 4
- 1
Data/Scripts/UI/GUI.gd 파일 보기

@@ -10,9 +10,10 @@ onready var _content_bar_tween = get_node("PlayerUI/MoodBars/Contentment/Bar/Pro
onready var _nrg_bar = get_node("PlayerUI/NRG/Bar/Progress")
onready var _nrg_bar_tween = get_node("PlayerUI/NRG/Bar/Progress/Tween")


# Called when the node enters the scene tree for the first time.
func _ready():
set_process_input(true)
#set_process_input(true)
set_process(true)
_agg_bar.max_value = 100.0
_agg_bar.value = 0.0
@@ -25,6 +26,8 @@ func _ready():
_nrg_bar.value = get_node("../Player").get_current_energy()

func _input(event):
if not $Timer.visible:
return
if event.is_action_pressed("ui_cancel"):
get_parent().pause(true)
$Menus/PauseMenu.show()

+ 23
- 8
Data/Scripts/World.gd 파일 보기

@@ -17,12 +17,14 @@ func get_seconds():


func load_and_play_music(src):
var fn = "res://Data/Sound/Music/" + src
if File.new().file_exists(fn):
$Music.stream = load(fn)
$Music.play()
if src != "":
var fn = "res://Data/Sound/Music/" + src
if File.new().file_exists(fn):
$Music.stream = load(fn)
$Music.play()

func load_level(src):
$Music.stop()
_level_running = false
get_node("Player").hide()
var lvl = get_node("lvl")
@@ -38,7 +40,13 @@ func load_level(src):
_level_node.connect("exit_level", self, "_on_exit_level")
load_and_play_music(_level_node.get_level_music())
reset()
_level_running = true
if _level_node.is_main_menu():
$GUI/PlayerUI.hide()
$GUI/Timer.hide()
else:
$GUI/PlayerUI.show()
$GUI/Timer.show()
_level_running = true


func reset():
@@ -50,7 +58,11 @@ func reset():
else:
p.position = Vector2.ZERO
p.reset()
p.show()
if _level_node.is_main_menu():
p.mode = RigidBody2D.MODE_KINEMATIC
else:
p.mode = RigidBody2D.MODE_RIGID
p.show()
_timer = 0.0
get_tree().paused = false

@@ -62,7 +74,7 @@ func pause(enable = true):

func _ready():
set_physics_process(true)
load_level("Level_002.tscn")
load_level("MainMenuLogo.tscn")

func _animate_level_exit(exit):
$Player.mode = RigidBody2D.MODE_KINEMATIC
@@ -80,7 +92,10 @@ func _on_PM_Quit_pressed():
func _on_exit_level(exit, body, next_level):
if next_level != "":
_next_level = next_level
_animate_level_exit(exit)
if exit != null:
_animate_level_exit(exit)
else:
load_level(next_level)


func _on_ExitTween_tween_all_completed():

Loading…
취소
저장