Compare commits
5 Commits
Author | SHA1 | Date |
---|---|---|
Spencer Killen | 31af1360f2 | |
Spencer Killen | 20646c952b | |
Spencer Killen | d7a766dc9f | |
Spencer Killen | c4ceeca1d4 | |
Spencer Killen | b468dac283 |
|
@ -0,0 +1,16 @@
|
|||
# Goodnight Jellybean
|
||||
|
||||
Your parents took your games away. All you have to play is this boring learning game your Aunt handed down to you. I wonder why she didn't want to keep it for her youngest? You're a kid, computer controls are challenging, especially when the industry has yet to establish good design paradigms. Read and reread the instructions carefully; Learning takes time!
|
||||
|
||||
A 90s-esque edutainment game with a psychedelic horror aesthetic
|
||||
|
||||
Play-time: ~10 minutes to reach final end-screen
|
||||
|
||||
The very first game to leverage FunMouse(tm) (licensed by ExaSoft) an exciting new technology guaranteed to elevate your child's learning.
|
||||
|
||||
Created by Spencer for GamesDenUoA F22 Anthology
|
||||
|
||||
https://itch.io/jam/games-den-anthology/rate/1859515
|
||||
|
||||
|
||||
[Download](https://km-k.itch.io/goodnight-jellybean)
|
BIN
blends/environment.blend (Stored with Git LFS)
BIN
blends/environment.blend (Stored with Git LFS)
Binary file not shown.
Binary file not shown.
|
@ -1,3 +1,3 @@
|
|||
source_md5="f6f19525174d964bcfbd5e0d10af60f4"
|
||||
dest_md5="b244913244895512a1541ec37a177db9"
|
||||
source_md5="7c602c98ab6b6d162738d3826a346a58"
|
||||
dest_md5="58079185907704af747ce80864c8e4a0"
|
||||
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,3 @@
|
|||
source_md5="7c7297785e72c853ef99942fb2a995d0"
|
||||
dest_md5="92315a7fb8e813c3a546ecd8d2eeb343"
|
||||
|
Binary file not shown.
|
@ -104,10 +104,9 @@ func _process(_delta):
|
|||
set_color()
|
||||
|
||||
|
||||
var locked = false
|
||||
func _physics_process(delta):
|
||||
inc_time_buffer(delta)
|
||||
if locked:
|
||||
if GlobalCursorState.is_frozen:
|
||||
return
|
||||
var dir = input_direction()
|
||||
var speed = input_speed()
|
||||
|
@ -117,8 +116,3 @@ func _physics_process(delta):
|
|||
sound_bump()
|
||||
elif speed != 0.0:
|
||||
sound_click()
|
||||
|
||||
|
||||
|
||||
func _on_AnimationTree_motion_status(value):
|
||||
locked = value
|
||||
|
|
|
@ -5,6 +5,9 @@ var is_frozen = false
|
|||
|
||||
signal cursor_interact
|
||||
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
|
||||
func set_cursor(set_as: Node):
|
||||
cursor = weakref(set_as)
|
||||
|
||||
|
@ -17,13 +20,14 @@ func fire_interact():
|
|||
func get_cursor():
|
||||
return cursor.get_ref()
|
||||
|
||||
signal freeze(enabled)
|
||||
signal freeze
|
||||
signal unfreeze
|
||||
func freeze():
|
||||
is_frozen = true
|
||||
emit_signal("freeze", true)
|
||||
emit_signal("freeze")
|
||||
func unfreeze():
|
||||
is_frozen = false
|
||||
emit_signal("freeze", false)
|
||||
emit_signal("unfreeze")
|
||||
|
||||
|
||||
# Interact events:
|
||||
|
|
|
@ -3,14 +3,27 @@ extends Node
|
|||
onready var drone_fsm: AnimationNodeStateMachinePlayback = $DroneAudioFSM.get("parameters/playback")
|
||||
|
||||
func _ready():
|
||||
GlobalCursorState.connect("set_camera_zone", self, "check_attic")
|
||||
$NormalDrone.play()
|
||||
yield(get_tree().create_timer(.1), "timeout")
|
||||
$SicklyDrone.play()
|
||||
|
||||
|
||||
var has_scared = false
|
||||
|
||||
func _on_AnimationTree_motion_status(value):
|
||||
if value:
|
||||
drone_fsm.travel("play_sickly_drone")
|
||||
else:
|
||||
drone_fsm.travel("play_normal_drone")
|
||||
|
||||
func check_attic(where):
|
||||
if where == "camera_attic_inner" and not has_scared:
|
||||
yield(GlobalCursorState, "unfreeze")
|
||||
$NormalDrone.stop()
|
||||
$SicklyDrone.stop()
|
||||
|
||||
$SicklyDrone2.play()
|
||||
yield($SicklyDrone2, "finished")
|
||||
$NormalDrone.play()
|
||||
$SicklyDrone.play()
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
[gd_scene load_steps=13 format=2]
|
||||
[gd_scene load_steps=17 format=2]
|
||||
|
||||
[ext_resource path="res://assets/audio/sicky_drone.ogg" type="AudioStream" id=1]
|
||||
[ext_resource path="res://assets/audio/vocal_drone.ogg" type="AudioStream" id=2]
|
||||
[ext_resource path="res://assets/audio/AmbientSound.gd" type="Script" id=3]
|
||||
[ext_resource path="res://assets/audio/sicky_drone_2.ogg" type="AudioStream" id=4]
|
||||
|
||||
[sub_resource type="Animation" id=1]
|
||||
length = 0.001
|
||||
|
@ -88,6 +89,9 @@ tracks/1/keys = {
|
|||
[sub_resource type="AnimationNodeAnimation" id=4]
|
||||
animation = "play_normal_drone"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id=11]
|
||||
animation = "play_sicker"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id=5]
|
||||
animation = "play_sickly_drone"
|
||||
|
||||
|
@ -95,12 +99,18 @@ animation = "play_sickly_drone"
|
|||
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id=7]
|
||||
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id=12]
|
||||
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id=13]
|
||||
|
||||
[sub_resource type="AnimationNodeStateMachine" id=8]
|
||||
states/play_normal_drone/node = SubResource( 4 )
|
||||
states/play_normal_drone/position = Vector2( 336, 128 )
|
||||
states/play_sicker/node = SubResource( 11 )
|
||||
states/play_sicker/position = Vector2( 524, 446 )
|
||||
states/play_sickly_drone/node = SubResource( 5 )
|
||||
states/play_sickly_drone/position = Vector2( 683, 227 )
|
||||
transitions = [ "play_normal_drone", "play_sickly_drone", SubResource( 6 ), "play_sickly_drone", "play_normal_drone", SubResource( 7 ) ]
|
||||
transitions = [ "play_normal_drone", "play_sickly_drone", SubResource( 6 ), "play_sickly_drone", "play_normal_drone", SubResource( 7 ), "play_normal_drone", "play_sicker", SubResource( 12 ), "play_sicker", "play_normal_drone", SubResource( 13 ) ]
|
||||
start_node = "play_normal_drone"
|
||||
|
||||
[sub_resource type="AnimationNodeStateMachinePlayback" id=9]
|
||||
|
@ -116,6 +126,10 @@ volume_db = -10.0
|
|||
stream = ExtResource( 1 )
|
||||
volume_db = -10.0
|
||||
|
||||
[node name="SicklyDrone2" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 4 )
|
||||
volume_db = -10.0
|
||||
|
||||
[node name="DroneAudioAnimation" type="AnimationPlayer" parent="."]
|
||||
anims/RESET = SubResource( 1 )
|
||||
anims/play_normal_drone = SubResource( 2 )
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="ogg_vorbis"
|
||||
type="AudioStreamOGGVorbis"
|
||||
path="res://.import/sicky_drone_2.ogg-2840f8c9e588a8dc24ba32874f0439b2.oggstr"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/audio/sicky_drone_2.ogg"
|
||||
dest_files=[ "res://.import/sicky_drone_2.ogg-2840f8c9e588a8dc24ba32874f0439b2.oggstr" ]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
BIN
godot/assets/room/camera_positions.glb (Stored with Git LFS)
BIN
godot/assets/room/camera_positions.glb (Stored with Git LFS)
Binary file not shown.
|
@ -40,3 +40,28 @@ application/product_name=""
|
|||
application/file_description=""
|
||||
application/copyright=""
|
||||
application/trademarks=""
|
||||
|
||||
[preset.1]
|
||||
|
||||
name="Linux/X11"
|
||||
platform="Linux/X11"
|
||||
runnable=true
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="../../Downloads/gb/Goodnight Jellybean.x86_64"
|
||||
script_export_mode=1
|
||||
script_encryption_key=""
|
||||
|
||||
[preset.1.options]
|
||||
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
binary_format/64_bits=true
|
||||
binary_format/embed_pck=false
|
||||
texture_format/bptc=false
|
||||
texture_format/s3tc=true
|
||||
texture_format/etc=false
|
||||
texture_format/etc2=false
|
||||
texture_format/no_bptc_fallbacks=true
|
||||
|
|
|
@ -53,7 +53,7 @@ margin_bottom = 842.0
|
|||
mouse_filter = 1
|
||||
text = "Welcome to Goodnight Jellybean! We're excited to have you join us on this educational adventure.
|
||||
|
||||
We will be interacting with our virutal environment using FunMouse (tm). Simply use the left and right mouse buttons to change the direction of the cursor and use the scroll wheel to move the cursor in its current direction. Interact with nearby objects by pressing the middle mouse button.
|
||||
We will be interacting with our virutal environment using FunMouse (tm). Simply use the left and right mouse buttons to change the direction of the cursor and use the scroll wheel to move the cursor in its current direction. Interact with nearby objects by pressing the middle mouse button. Please make sure your audio is turned on.
|
||||
|
||||
Don't have a mouse with a scroll wheel? You can also use the arrow keys and space bar to navigate and interact with the game. However, your child will be missing out on learning an important skill.
|
||||
|
||||
|
|
|
@ -241,10 +241,15 @@ on_leave_func = "_on_Cursor_set_camera"
|
|||
call_string = "camera_outer_attic"
|
||||
|
||||
[node name="SecretEnter" parent="CameraMoveZones" instance=ExtResource( 6 )]
|
||||
transform = Transform( 8.71637, 0, 0, 0, 13.8749, 0, 0, 0, 5.83956, 0, 0, 15.4817 )
|
||||
transform = Transform( 8.71637, 0, 0, 0, 13.8749, 0, 0, 0, 6.0468, 0, 0, 15.4817 )
|
||||
on_enter_func = "_on_Cursor_set_camera"
|
||||
call_string = "camera_bookshelf_secret"
|
||||
|
||||
[node name="SecretLeave" parent="CameraMoveZones" instance=ExtResource( 6 )]
|
||||
transform = Transform( 8.71637, 0, 0, 0, 13.8749, 0, 0, 0, 7.8447, 0, 0, 15.4817 )
|
||||
on_leave_func = "_on_Cursor_set_camera"
|
||||
call_string = "camera_pos_corner"
|
||||
|
||||
[node name="AmbientSound" parent="." instance=ExtResource( 7 )]
|
||||
|
||||
[node name="Attic" type="Spatial" parent="."]
|
||||
|
@ -325,7 +330,6 @@ hop = true
|
|||
transform = Transform( -0.23556, 0, -0.0837355, 0, 0.25, 0, 0.0837355, 0, -0.23556, 1.2157, -3.69864, 14.5479 )
|
||||
hop = true
|
||||
|
||||
[connection signal="motion_status" from="AnimationTree" to="3DCursor" method="_on_AnimationTree_motion_status"]
|
||||
[connection signal="motion_status" from="AnimationTree" to="AmbientSound" method="_on_AnimationTree_motion_status"]
|
||||
[connection signal="motion_status" from="AnimationTree" to="Attic/AtticAmberLight" method="_on_AnimationTree_motion_status"]
|
||||
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
# This is an Asset Catalog Definition file for Blender.
|
||||
#
|
||||
# Empty lines and lines starting with `#` will be ignored.
|
||||
# The first non-ignored line should be the version indicator.
|
||||
# Other lines are of the format "UUID:catalog/path/for/assets:simple catalog name"
|
||||
|
||||
VERSION 1
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
# This is an Asset Catalog Definition file for Blender.
|
||||
#
|
||||
# Empty lines and lines starting with `#` will be ignored.
|
||||
# The first non-ignored line should be the version indicator.
|
||||
# Other lines are of the format "UUID:catalog/path/for/assets:simple catalog name"
|
||||
|
||||
VERSION 1
|
||||
|
BIN
komodo/dm_dragonskin3.png (Stored with Git LFS)
BIN
komodo/dm_dragonskin3.png (Stored with Git LFS)
Binary file not shown.
BIN
komodo/drooly.jpeg (Stored with Git LFS)
BIN
komodo/drooly.jpeg (Stored with Git LFS)
Binary file not shown.
BIN
komodo/face_scales.jpg (Stored with Git LFS)
BIN
komodo/face_scales.jpg (Stored with Git LFS)
Binary file not shown.
BIN
komodo/front.jpeg (Stored with Git LFS)
BIN
komodo/front.jpeg (Stored with Git LFS)
Binary file not shown.
BIN
komodo/interior_texture.jpeg (Stored with Git LFS)
BIN
komodo/interior_texture.jpeg (Stored with Git LFS)
Binary file not shown.
BIN
komodo/komodo.blend (Stored with Git LFS)
BIN
komodo/komodo.blend (Stored with Git LFS)
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
komodo/level_0_normals.png (Stored with Git LFS)
BIN
komodo/level_0_normals.png (Stored with Git LFS)
Binary file not shown.
BIN
komodo/level_1_normals.png (Stored with Git LFS)
BIN
komodo/level_1_normals.png (Stored with Git LFS)
Binary file not shown.
BIN
komodo/scales.jpg (Stored with Git LFS)
BIN
komodo/scales.jpg (Stored with Git LFS)
Binary file not shown.
BIN
komodo/side_open.jpeg (Stored with Git LFS)
BIN
komodo/side_open.jpeg (Stored with Git LFS)
Binary file not shown.
BIN
komodo/side_view.jpeg (Stored with Git LFS)
BIN
komodo/side_view.jpeg (Stored with Git LFS)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue