1
0
Fork 0
mirror of https://github.com/Reuh/anselme.git synced 2025-10-27 08:39:30 +00:00
game scripting engine and language
Find a file
Étienne Reuh Fildadut b192206de0 [stdlib] merge branch! now perform a complete flush before merging by default
Otherwise, events written to the buffer before the merge may only be yielded after the merge is already done; if such an event would lead to the script being interrupted, we would likely want the state not to be merged in the first place, hence the change.
2024-04-29 22:29:37 +02:00
anselme [stdlib] merge branch! now perform a complete flush before merging by default 2024-04-29 22:29:37 +02:00
doc [documentation] incomplete documentation update 2024-04-24 16:39:43 +02:00
test [stdlib] merge branch! now perform a complete flush before merging by default 2024-04-29 22:29:37 +02:00
.gitignore Changed a few things 2021-06-03 15:29:25 +02:00
ideas.md [internal] ; operators now build a block instead of function call 2024-01-17 14:07:14 +01:00
license [documentation] add license 2024-04-20 17:31:17 +02:00
readme.md [documentation] incomplete documentation update 2024-04-24 16:39:43 +02:00
run_tests.sh Move anselme code into its own directory 2023-12-29 18:47:36 +01:00

Anselme

The overengineered dialog scripting system in pure Lua.

This is version 2, a full rewrite. Currently not stable.

:money = 10
:health points = 5

"from": "barista" #
	| Hi, what can I do for you?

*| a latte with a bunch of sugar and a pretty sprinkles please
	"from": "barista" #
		| Good choice. Here you go. Have a colorful day.
	money -= 10
*| triple expresso
	"from": "barista" #
		| Here. Have a nice day.
	money -= 2
*| a slap
	"from": "barista" #
		| With pleasure.

	"type": "sfx" #
		| SLAP
	health points -= 2

	| Thanks, I feel much better.

Supported: Lua 5.4, Lua 5.3, LuaJIT (LuaJIT requires the utf8 module: luarocks --lua-version=5.1 install luautf8). Otherwise all needed files are included in the anselme directory.

Anselme is licensed under the ISC license, meaning you can basically use it for anything as long as you make the content of the license file appear somewhere. I would appreciate it if you don't use Anselme to commit war crimes though. If that's not enough for you or want better support, feel free to contact me, my integrity can be bought.

Documentation

Development

  • Generate documentation: lua doc/gendocs.lua
  • Run test for the current Lua version: lua test/run.lua (require luafilesystem luarocks install luautf8)
  • Run test for every supported Lua version: ./run_tests.sh (require luafilesystem for LuaJIT, Lua 5.3 and Lua 5.4)