Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
b4be08c
blank project
JUB-Yoush Mar 15, 2024
dce74cb
tilemap data structure set up, make as seperate scene
JUB-Yoush Mar 16, 2024
fb61ad1
process based movement system
JUB-Yoush Mar 16, 2024
0b73a6d
next tile checking tile based movement
JUB-Yoush Mar 16, 2024
daaecff
send ppl to boot
JUB-Yoush Mar 16, 2024
86506c2
writing instructions for the 999th time
JUB-Yoush Mar 16, 2024
31c7449
tile collisions, reset ray before checking again
JUB-Yoush Mar 17, 2024
2710291
text is splayed
JUB-Yoush Mar 18, 2024
1854b64
can't act while text is out, paint chests like tiles
JUB-Yoush Mar 19, 2024
d11dade
room shuffling and a fake ui
JUB-Yoush Mar 20, 2024
dea2c62
manually added Tigrans contributions
JUB-Yoush Mar 21, 2024
98ad409
cleaned up codebase a bit
JUB-Yoush Mar 23, 2024
4926e4d
even cleanergit add -A!
JUB-Yoush Mar 23, 2024
8b194d1
Merge pull request #7 from GDYUClub/j
JUB-Yoush Mar 23, 2024
caea77e
Changed maps from dictionary to array
Haigsov Mar 23, 2024
9380c62
Merge pull request #8 from GDYUClub/hiking_branch
Haigsov Mar 23, 2024
a56df15
Update .gitignore
Haigsov Mar 24, 2024
ae719de
Added new case for opening chest when wearing boots
Haigsov Mar 25, 2024
3e23f3c
Merge pull request #9 from GDYUClub/hiking_branch
Haigsov Mar 25, 2024
b8518ca
Create The Maze.md
Haigsov Mar 31, 2024
92013e5
Merge pull request #10 from GDYUClub/hiking_branch
Haigsov Mar 31, 2024
9f38007
Updated Maze.md
Haigsov Apr 8, 2024
397c144
Merge pull request #11 from GDYUClub/hiking_branch
Haigsov Apr 8, 2024
e94a094
Rework to add room specific stairs
TigranExe Apr 10, 2024
ce9c159
Merge pull request #12 from GDYUClub/Tigran-Making-Levels-Connected
JUB-Yoush Apr 10, 2024
cc81381
dialog manager implemented
JUB-Yoush Apr 11, 2024
69479d0
Merge pull request #13 from GDYUClub/j
JUB-Yoush Apr 11, 2024
11dadfb
what is happening
JUB-Yoush Apr 11, 2024
c8b7713
thing should behave?
JUB-Yoush Apr 11, 2024
f18f2df
addon makes it brokey
JUB-Yoush Apr 11, 2024
976a7e7
Merge pull request #15 from GDYUClub/addon-fix
JUB-Yoush Apr 11, 2024
a5bf94d
working on maze gdd
JUB-Yoush Apr 13, 2024
72d14b7
wrote out gdd
JUB-Yoush Apr 13, 2024
758c1d7
obsidian vault, didn't track any of the hidden files
JUB-Yoush Apr 13, 2024
544fb88
moved gdd to obsidian
JUB-Yoush Apr 13, 2024
b11083d
I should review that thing that lets you combine commits
JUB-Yoush Apr 13, 2024
d6cdc55
added a rule
JUB-Yoush Apr 13, 2024
1f2d522
item database and resources
JUB-Yoush Apr 13, 2024
efb8dca
item system2
JUB-Yoush Apr 15, 2024
66b8552
I think i fixed main
JUB-Yoush Apr 15, 2024
4dac484
tilemap data structure set up, make as seperate scene
JUB-Yoush Mar 16, 2024
38523d6
process based movement system
JUB-Yoush Mar 16, 2024
58aa1ab
next tile checking tile based movement
JUB-Yoush Mar 16, 2024
cb4d936
tile collisions, reset ray before checking again
JUB-Yoush Mar 17, 2024
0acb0fb
text is splayed
JUB-Yoush Mar 18, 2024
ee72c04
can't act while text is out, paint chests like tiles
JUB-Yoush Mar 19, 2024
33f4eb7
room shuffling and a fake ui
JUB-Yoush Mar 20, 2024
69d141e
manually added Tigrans contributions
JUB-Yoush Mar 21, 2024
28d3737
cleaned up codebase a bit
JUB-Yoush Mar 23, 2024
221788d
even cleanergit add -A!
JUB-Yoush Mar 23, 2024
f38e93d
Changed maps from dictionary to array
Haigsov Mar 23, 2024
c7b90cb
Update .gitignore
Haigsov Mar 24, 2024
ca8bb9f
Added new case for opening chest when wearing boots
Haigsov Mar 25, 2024
13babcd
Create The Maze.md
Haigsov Mar 31, 2024
7878569
Updated Maze.md
Haigsov Apr 8, 2024
ba07e40
Rework to add room specific stairs
TigranExe Apr 10, 2024
fb9745e
dialog manager implemented
JUB-Yoush Apr 11, 2024
55bcbf0
what is happening
JUB-Yoush Apr 11, 2024
2b99e40
thing should behave?
JUB-Yoush Apr 11, 2024
1214f6a
addon makes it brokey
JUB-Yoush Apr 11, 2024
52a1881
working on maze gdd
JUB-Yoush Apr 13, 2024
6e8e29c
wrote out gdd
JUB-Yoush Apr 13, 2024
e8f8230
obsidian vault, didn't track any of the hidden files
JUB-Yoush Apr 13, 2024
e5374dd
moved gdd to obsidian
JUB-Yoush Apr 13, 2024
a83611c
I should review that thing that lets you combine commits
JUB-Yoush Apr 13, 2024
0dd32f7
added a rule
JUB-Yoush Apr 13, 2024
a5f3740
item database and resources
JUB-Yoush Apr 13, 2024
2fea0be
item system2
JUB-Yoush Apr 15, 2024
c38e7df
shouldn't be pushing directly but now re-has dialogue manager set up
JUB-Yoush Apr 15, 2024
e25b9f4
totally gonna push
JUB-Yoush Apr 15, 2024
b87fc21
working off main yipee
JUB-Yoush Apr 15, 2024
93b43c6
send ppl to boot
JUB-Yoush Mar 16, 2024
c463d03
writing instructions for the 999th time
JUB-Yoush Mar 16, 2024
45d14de
rebasing j
JUB-Yoush Apr 16, 2024
b471734
Update .gitignore
Haigsov Mar 24, 2024
8a2871b
blank project
JUB-Yoush Mar 15, 2024
f41ee5d
tilemap data structure set up, make as seperate scene
JUB-Yoush Mar 16, 2024
5973f93
Merge branch 'main' into j
JUB-Yoush Apr 16, 2024
6ef67b6
Merge pull request #19 from GDYUClub/j
JUB-Yoush Apr 16, 2024
6112e81
re-added .obsidain to ignore
JUB-Yoush Apr 16, 2024
8243a7d
Merge branch 'main' into j
JUB-Yoush Apr 16, 2024
e173863
items rendering in menu, not using ui nodes
JUB-Yoush Apr 17, 2024
d2bd749
ui with ui nodes
JUB-Yoush Apr 18, 2024
1804444
item scenes are being instanced, get cursor movement working
JUB-Yoush Apr 19, 2024
5bbd228
menu stuff is working
JUB-Yoush Apr 19, 2024
34c3f13
cleaned and added extra functions for menu
JUB-Yoush Apr 19, 2024
629c35d
cleaning up the codebase
JUB-Yoush Apr 21, 2024
bf0c3ce
Teleportation And Preparing for next levels
TigranExe Apr 21, 2024
1fe5fb3
Map puzzles Now in!
TigranExe Apr 21, 2024
1043484
cleaning up the codebase
JUB-Yoush Apr 21, 2024
7455c05
re-wrote some functions
JUB-Yoush Apr 21, 2024
315fc58
no return value for teleport func
JUB-Yoush Apr 21, 2024
7286f7f
Teleportation And Preparing for next levels
TigranExe Apr 21, 2024
e76246a
Map puzzles Now in!
TigranExe Apr 21, 2024
f72eb34
cleaning up the codebase
JUB-Yoush Apr 21, 2024
e7e613e
Teleportation And Preparing for next levels
TigranExe Apr 21, 2024
7fe45ec
Map puzzles Now in!
TigranExe Apr 21, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
# Godot 4+ specific ignores
.godot/
.vscode/
.vscode/settings.json
# don't keep the addons in the repo

addons/

.obsidian/

todo.md
22 changes: 0 additions & 22 deletions DevTextFiles/CODER_NOTES.txt

This file was deleted.

1 change: 0 additions & 1 deletion DevTextFiles/Todo_Tigran.txt

This file was deleted.

2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2023 Tigran
Copyright (c) 2023 Scrimblosoft

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
22 changes: 10 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,19 @@
# The-Maze-With-GDYU
A collaborative experiment between GDYU friends.
CURRENTLY:

-Deciding a ticket system to make it easy to know how to help

-Setting systems for contribution

-Deciding how to iterate on gameplay

Here's a [video](https://youtu.be/xjZsrdWe2jU) to understand what this is!

## Current Goal: Bootstrap Version.
Prototype all of our gameplay mechanics and put them together by MARCH 20TH
To look at what needs to get done, view the [Github Project Page](https://github.com/orgs/GDYUClub/projects/1/views/1)

Here's the [design doc](https://docs.google.com/document/d/1vs-uuo3EVE-bTyuviN5FSpdkm3ZyLSNCJJKOx5uJOF0/edit#heading=h.1jqugjgd3he3) to help contribute!
Here's a [video](https://youtu.be/xjZsrdWe2jU) to understand what this is!

Read [contributing.md](/docs/contributing.md) before working on the repository.
Read [contributing.md](/docs/contributing.md) before working on the repository.

DUE MAY 31 2024 23:59
Read [contributing.md](/docs/contributing.md) before working on the repository.

Read [contributing.md](/docs/contributing.md) before working on the repository.

DUE MAY 31 2024 23:59 EST

![THEMAZEphoto](/docs/gh_readme_assets/THEMAZEhahahahatestingargstuffifyouseethismessagemesayingyoudidhehehe2.png)

5 changes: 0 additions & 5 deletions TEST.md

This file was deleted.

Binary file added assets/Not Jam UI Condensed 16.ttf
Binary file not shown.
33 changes: 33 additions & 0 deletions assets/Not Jam UI Condensed 16.ttf.import
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
[remap]

importer="font_data_dynamic"
type="FontFile"
uid="uid://ddjw625xpmwtc"
path="res://.godot/imported/Not Jam UI Condensed 16.ttf-3435f3f176c8ad289519e69fb68982d4.fontdata"

[deps]

source_file="res://assets/Not Jam UI Condensed 16.ttf"
dest_files=["res://.godot/imported/Not Jam UI Condensed 16.ttf-3435f3f176c8ad289519e69fb68982d4.fontdata"]

[params]

Rendering=null
antialiasing=1
generate_mipmaps=false
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
hinting=1
subpixel_positioning=1
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}
141 changes: 141 additions & 0 deletions assets/dialogue_boxes/balloon.gd
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
extends CanvasLayer

## The action to use for advancing the dialogue
@export var next_action: StringName = &"ui_accept"

## The action to use to skip typing the dialogue
@export var skip_action: StringName = &"ui_cancel"

@onready var balloon: Control = %Balloon
@onready var character_label: RichTextLabel = %CharacterLabel
@onready var dialogue_label: DialogueLabel = %DialogueLabel
@onready var responses_menu: DialogueResponsesMenu = %ResponsesMenu

## The dialogue resource
var resource: DialogueResource

## Temporary game states
var temporary_game_states: Array = []

## See if we are waiting for the player
var is_waiting_for_input: bool = false

## See if we are running a long mutation and should hide the balloon
var will_hide_balloon: bool = false

## The current line
var dialogue_line: DialogueLine:
set(next_dialogue_line):
is_waiting_for_input = false
balloon.focus_mode = Control.FOCUS_ALL
balloon.grab_focus()

# The dialogue has finished so close the balloon
if not next_dialogue_line:
queue_free()
return

# If the node isn't ready yet then none of the labels will be ready yet either
if not is_node_ready():
await ready

dialogue_line = next_dialogue_line

character_label.visible = not dialogue_line.character.is_empty()
character_label.text = tr(dialogue_line.character, "dialogue")

dialogue_label.hide()
dialogue_label.dialogue_line = dialogue_line

responses_menu.hide()
responses_menu.set_responses(dialogue_line.responses)

# Show our balloon
balloon.show()
will_hide_balloon = false

dialogue_label.show()
if not dialogue_line.text.is_empty():
dialogue_label.type_out()
await dialogue_label.finished_typing

# Wait for input
if dialogue_line.responses.size() > 0:
balloon.focus_mode = Control.FOCUS_NONE
responses_menu.show()
elif dialogue_line.time != "":
var time = dialogue_line.text.length() * 0.02 if dialogue_line.time == "auto" else dialogue_line.time.to_float()
await get_tree().create_timer(time).timeout
next(dialogue_line.next_id)
else:
is_waiting_for_input = true
balloon.focus_mode = Control.FOCUS_ALL
balloon.grab_focus()
get:
return dialogue_line


func _ready() -> void:
balloon.hide()
Engine.get_singleton("DialogueManager").mutated.connect(_on_mutated)

# If the responses menu doesn't have a next action set, use this one
if responses_menu.next_action.is_empty():
responses_menu.next_action = next_action


func _unhandled_input(_event: InputEvent) -> void:
# Only the balloon is allowed to handle input while it's showing
get_viewport().set_input_as_handled()


## Start some dialogue
func start(dialogue_resource: DialogueResource, title: String, extra_game_states: Array = []) -> void:
temporary_game_states = [self] + extra_game_states
is_waiting_for_input = false
resource = dialogue_resource
self.dialogue_line = await resource.get_next_dialogue_line(title, temporary_game_states)


## Go to the next line
func next(next_id: String) -> void:
self.dialogue_line = await resource.get_next_dialogue_line(next_id, temporary_game_states)


### Signals


func _on_mutated(_mutation: Dictionary) -> void:
is_waiting_for_input = false
will_hide_balloon = true
get_tree().create_timer(0.1).timeout.connect(func():
if will_hide_balloon:
will_hide_balloon = false
balloon.hide()
)


func _on_balloon_gui_input(event: InputEvent) -> void:
# See if we need to skip typing of the dialogue
if dialogue_label.is_typing:
var mouse_was_clicked: bool = event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT and event.is_pressed()
var skip_button_was_pressed: bool = event.is_action_pressed(skip_action)
if mouse_was_clicked or skip_button_was_pressed:
get_viewport().set_input_as_handled()
dialogue_label.skip_typing()
return

if not is_waiting_for_input: return
if dialogue_line.responses.size() > 0: return

# When there are no response options the balloon itself is the clickable thing
get_viewport().set_input_as_handled()

if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT:
next(dialogue_line.next_id)
elif event.is_action_pressed(next_action) and get_viewport().gui_get_focus_owner() == balloon:
next(dialogue_line.next_id)


func _on_responses_menu_response_selected(response: DialogueResponse) -> void:
next(response.next_id)
Loading