Releases: rakugoteam/Rakugo-Dialogue-System
v2.2
Full Changelog: 2.1.1...2.2
What's Changed
Major Updates
- fix #257 use double quotes inside strings by @theludovyc in #261
like the title says, you can do that now
"it is a "really" good one"
- fix #262 Handle common operators for variable assignment by @theludovyc in #263
You can use assignment operators like: =, +=, -=, *=, /= to assign a value to a variable.
Example:gd.bugs -= 1
We would like to handle expressions for the v2.3 (example: damage = dps + boost + 1)
- fix #255 Use variables inside any strings by @Jeremi360 in #256
The big update of this version ! You can now use variables inside any strings, for say, ask, menu, ... and for variables !
Example:player.life_str = "You have <player.life> life points left"
A very important thing: string is replaced with a value when you use/read it, not on assignment.
Example:
player.life = 10
player.life_str = "You have <player.life> life points left"
player.life = 5
narrator "<player.life_str>"
The narrator will say: "You have 5 life points left".
Also,
Rakugo.get_variable("<player.life_str>")
will return same string: "You have 5 life points left".
We took advantage of this to let you a new Rakugo method
replace_variables(text:String)
.
Example:Rakugo.replace_variables("You have <player.life> life points left")
, will return: "You have 5 life points left".
- fix #52 Rakugo not works on itch.io with firefox
Some time ago Rakugo wasn't working on itch.io with firefox for html5 export, because we use multi-threading feature.
it wasn't handled on this website. It is now resolved !
You can see my old post here https://itch.io/post/5713938, and the main one https://itch.io/t/2025776/experimental-sharedarraybuffer-support.
So you have just one thing to remember when you export now, is to not forget to add your .*rk files ! https://rakugoteam.github.io/rakugo-docs/2.1/export/
Fixed Bugs
- fix #49 handle escape characters by @theludovyc in #254
- hotfix for menu index out of range by @theludovyc in #258
Other Changes
- hotfix remove prints in Parser.gd by @theludovyc in #253
- fix #259 remove warning in get_character by @theludovyc in #260
- Bump version to 2.2, clean up rakugo dir from git config files by @Jeremi360 in #267
v2.1.1
What's Changed
18 changed files with 445 additions and 141 deletions : 2.1...2.1.1
Major Updates
- fix #245 ask like doc by @theludovyc in #250
- Now ask is same as the one in the documention
[var_name] = ? [character_tag] [question] [default_answer]
- Plus you can respect or not the number of space arround the '=' and '?'
answer = ? "question"
is correct
answer=?"question"
is also correct- But you should respect spaces between tag, question, and default answer
answer=?tag "question" "default answer"
is correct
answer=?tag"question""default answer"
is not
- fix #243 be threads safe by @theludovyc in #252
Now Rakugo is threads safe, and signals are called correctly. So you will not have errors in the last godot version (4.1).
Other Changes
- Some fixes by @theludovyc in #241
- update project.godot to 4.1
- and other things...
- My Fixes for 2.1.1 #244 by @Jeremi360 in #246
- update project name, addon name and version
- add icon to the godot project
- and other things...
- Removed unsed code form Rakugo by @Jeremi360 in #249
- fix #242 add full doc example by @theludovyc in #247
v2.1
What's Changed
Full Changelog: 2.0.2...2.1
Major Updates
- fix #210 by @Jeremi360 in #216
user can comment line, like in gdscript, if it starts by a '#'
- fix #187 add signal game_loaded by @theludovyc in #228
After call of Rakugo.load_game(...), when it finish send a signal game_loaded.
Also, user can use it to know when Rakugo variables are availables, and by exemple restore their scene state at a good moment.
- fix #217 remove tabs before check empty lines by @theludovyc in #233
- fix #220 do not check indent by @theludovyc in #234
Now, user can indents his code like he wants, and forgets spaces at end of line.
Fixed Bugs
- fix #209 do not define var in middle of a line by @Jeremi360 in #212
- fix #208 can only have numbers that start from 1 and not from 0 by @Jeremi360 in #211
Other Changes
- fix #219 increase line index from 1 into print error by @theludovyc in #229
- fix #223 Executer, does not need to know about StoreManager by @theludovyc in #231
- fix #221 Parser, does not need to know about StoreManager by @theludovyc in #232
1.2.1
Compatibility: Godot version 3.X.X
What's Changed
Full Changelog: 1.2...1.2.1
Fixed Bugs
- Fix #206 replace now works with all types by @theludovyc in #207
2.0.2
Compatibility: Godot version 4.X.X
What's Changed
Fixed Bugs
- Fix #206 replace now works with all types by @theludovyc in #207
Full Changelog: 2.0.1...2.0.2
2.0.1
Compatibility: Godot version 4.X.X
What's Changed
Full Changelog: 2.0...2.0.1
Major Updates
- Fix #203 rename unhandled_regex to custom_regex by @theludovyc in #205
Rename
- signal sg_parser_unhandled_regex to sg_custom_regex
- Rakugo method parser_add_regex_at_runtime() to add_custom_regex()
Fixed Bugs
- Fix #202 : handle sg_parser_unhandled_regex properly and create UT by @theludovyc in #204
2.0
Compatibility: Godot version 4.X.X
What's Changed
121 changed files with 5,546 additions and 5,407 deletions : 1.2...2.0
Major Updates
- Update for Godot V4 by @theludovyc in #201
Rakugo is now updated for Godot version 4 🥳 !!!
1.2
47 changed files with 1,967 additions and 494 deletions : 1.1.1...1.2
What's Changed
Major Updates
- Add variable_changed and character_variable_changed signals by @Jeremi360 in #165
Now when a variable is set, signals are emitted :
variable_changed(var_name, value) or
character_variable_changed(character_tag, var_name, value)
- prepare to replace
character_exists()
byhas_character()
by @Jeremi360 in #170
character_exists() will be removed and replace by has_character(). Send a warning when character_exists() is used.
- Fix #93 : Now variable name can be one letter long by @theludovyc in #179
- Fix #149 : Parser, add error when line is not handled. by @theludovyc in #183
Now when you parse a script and a line can not be read, it send an error.
- Fix #156 : Executer, handle errors by @theludovyc in #185
Add parameter error_str in signal execute_script_finished. If is empty no error, else contain error string. It can be used to show it. Already used with push_error, so do not do it again !
- Fix #134 : Add Rakugo.stop_last_script by @theludovyc in #186
Add Rakugo.stop_last_script() and not Rakugo.stop_script() or Rakugo.stop_script(script_name).
The last one need refactor before implement it. The second one is not enough explicit we think.
So we add first one because in our current philosophy we have : one thread at a time.
We need refactor to handles multiples threads at same time. Work for 1.3.
- Fix #190 : Update rakugo.has_variable by @theludovyc in #194
Rakugo.has_variable can now handle character variable like get_variable
- Fix #88 : Save load thread by @theludovyc in #191
Rakugo.save_game(), now save name of current executed script, plus last line read. So with
Rakugo.load_game(), now parse last executed script.
Rakugo.resume_loaded_script(), run last executed script.We split load in 2 funcs. So you can call Rakugo.load_game(), to loads variables as usual and load your scenes with them. And after everything is ready, call Rakugo.execute_last_script().
- Fix #152 : Autoload Rakugo.gd by @theludovyc in #195
Autoload Rakugo.gd instead of Rakugo.tscn
Remove Rakugo.tscn
Maybe you need to disable/enable the plugin Rakugo
Fixed Bugs
- Fix #188 : Rakugo, get_character_variable push two errors by @theludovyc in #193
Other Changes
- Fix #155 #117 #116 by @theludovyc in #158
- Update #156 : Thread execute_script end properly by @theludovyc in #160
- Fix #168 : Set save_folder_path in _init by @theludovyc in #175
- Update #166 : TestStartFromLabel by @theludovyc in #173
- Fix #174 and #166 : Add RakugoTest class and update all parser tests by @theludovyc in #176
- Fix #169 : "addons/rakugo/save_folder" set to "user://saves" by default by @Jeremi360 in #171
- Fix #159 : Divide parser in 2 classes by @theludovyc in #164
- Fix #133 and #178 : re-add exit keyword to rakuscript, it fix TestStartFromLabel too by @theludovyc in #181
1.1.1
54 changed files with 670 additions and 744 deletions : 1.1...1.1.1
What's Changed
Major Updates
- Add signal
execute_script_start(script_name)
to Rakugo #142 by @theludovyc
Now when script is launch, Rakugo send a signal execute_script_start, with script_name in parameter. - Add
character_exists(char_tag)
andcharacter_has_variable(var_name)
funcs in e5918ee by @Jeremi360
These funcs return false or true if a Raguko has this character or variable.
Other Changes
- Rakugo Clean #150 by @theludovyc
Remove not used scripts: AutoTimer, SkipTimer, History as this would be handle by Kits. So, unused nodes in Rakugo.tscn too. And clean dead code.
Fixed Bugs
- fix TestCharacter by @theludovyc in #148
1.1
7 changed files with 194 additions and 167 deletions : 1.0...1.1
What's Changed
Major Updates
- Finally Removed Settings.gd, fix few bugs that #143 caused by @Jeremi360 in #144
Fixed Bugs
- small improvements for characters and fix bug in RakuScriptDialogue by @Jeremi360 in #143