List of commits:
Subject Hash Author Date (UTC)
Scriptable lines@, ids@, bugfix 9f606fd2a793fd76a9d1b9e186434d231b973085 mse 2021-09-10 14:43:50
Add array scripting (@ operator, ARRLEN <array>) 3f098b3e0a04922c2c7a981b232efd8d08a8d9a0 mse 2021-09-10 14:02:39
Optimize script runtime a298b01c9b77192b7ed8aba3832a8ab51c9d389a mse 2021-09-09 06:57:49
Scriptable bg$, fg$, caption$ 0ad08aa3887118d2376f4fa7f8b7c66e0f164c73 mse 2021-09-06 11:04:38
Animation command: ANIM <loop|play> <bg|fg> <fps> <directory> 6066e2cae1dc29043902d46549f443c7b683fd88 mse 2021-09-06 06:42:13
Switch to C++17 489987b1b2749f37e0ac76594308635affbd24f2 mse 2021-09-05 10:51:02
Fix stats synchronization bug 3b6195c3321a6f10af43839cc00d24f301eddb3e mse 2021-09-05 04:45:58
Add top-level command: STRLEN, scriptable player name$ ec7a623cdc98b9832f35f0beb3e45179e6094436 mse 2021-09-05 03:17:47
Start work on animation system d2aafd6f46c719342054e3f256f972f4917f2231 mse 2021-09-05 02:41:28
Add string scripting with $ operator 20034a2b658ee8ad4f2082c44301c231b0323fc7 mse 2021-09-03 10:20:55
Enhance console /set command to support operators 61032844fcb833f04e2f6d1e123f8f0f89333107 mse 2021-09-02 11:06:00
Add scriptable bribing & remove hard-coded karma increment 41b4d79da6331b4b1ffd96f36ae1b032a869b482 mse 2021-08-31 17:51:29
Add floor operator (_) 819304b561d474e962afa7397ef68ffae83e8649 mse 2021-08-31 13:49:57
Switch inventories and stats to floating-point c6e4142e664648ca8f4aa913b48526093c985987 mse 2021-08-31 13:35:20
Switch scripting to floating-point & code comments eb067496f4edb4420c05a09dc034ad0a25ad1e56 mse 2021-08-31 11:06:01
Add top-level command: GOSUB 62e9520aec0471fe023ead290595f735a30eb806 mse 2021-08-26 09:31:27
Add persistent VN stats 2d1ffc35afd8ae0f477cbd5aac0559fc02571600 mse 2021-08-23 10:44:16
Bribes increase karma 643f0fc6da65316aa799bbe00cea2030e2c1ccd6 mse 2021-08-17 08:16:36
Add command: #RUMBLE <intensity> <milliseconds> 02964b2ecc57a48192522ef369e33c4912d2f0d2 mse 2021-08-16 07:17:40
Reset position in non-mouse menu selection c21eb6a9d238fa1909dbbbc49907ad09bfca52c8 mse 2021-08-16 03:30:49
Commit 9f606fd2a793fd76a9d1b9e186434d231b973085 - Scriptable lines@, ids@, bugfix
Author: mse
Author date (UTC): 2021-09-10 14:43
Committer name: mse
Committer date (UTC): 2021-09-10 14:43
Parent(s): 3f098b3e0a04922c2c7a981b232efd8d08a8d9a0
Signing key:
Tree: f638d78262e743e71ac56d0fbf557816f0a59c88
File Lines added Lines deleted
confec.cpp 10 3
include/dialogue.h 14 3
File confec.cpp changed (mode: 100644) (index c4db620..60af132)
... ... int main( int argc, char* argv[] ){
1308 1308 DeleteAllUserFiles(); DeleteAllUserFiles();
1309 1309 convo.numbers.clear(); convo.numbers.clear();
1310 1310 convo.strings.clear(); convo.strings.clear();
1311 convo.arrays.clear();
1311 1312 InitSettings(); InitSettings();
1312 1313 recipes = {}; recipes = {};
1313 1314 return 0.0; return 0.0;
 
... ... void Render(){
4857 4858 } }
4858 4859 }else if( key.back() == '@' ){ }else if( key.back() == '@' ){
4859 4860 key.resize( key.length() - 1 ); key.resize( key.length() - 1 );
4860 auto it = convo.arrays.find( key );
4861 if( it != convo.arrays.end() )
4862 result = convo.stringifyArray( it->second );
4861 if( key == "lines" ){
4862 result = convo.stringifyArray( convo.screen.lines );
4863 }else if( key == "ids" ){
4864 result = convo.stringifyArray( convo.screen.ids );
4865 }else{
4866 auto it = convo.arrays.find( key );
4867 if( it != convo.arrays.end() )
4868 result = convo.stringifyArray( it->second );
4869 }
4863 4870 }else{ }else{
4864 4871 result = convo.stringifyNumber( convo.getVariable( key ) ); result = convo.stringifyNumber( convo.getVariable( key ) );
4865 4872 } }
File include/dialogue.h changed (mode: 100755) (index 2e70e69..61525e2)
... ... void Talk::operate( Operation o ){
360 360 off = 0; off = 0;
361 361 } }
362 362 it->second.push_back( o.valueKey.substr( start ) ); it->second.push_back( o.valueKey.substr( start ) );
363 if( o.key == "lines" ){
364 screen.lines = it->second;
365 }else if( o.key == "ids" ){
366 screen.ids = it->second;
367 }
363 368 return; return;
364 369 } }
365 370 // Numerical operations. // Numerical operations.
 
... ... void Talk::transformString( std::string &str ){
421 426 } }
422 427 }else if( key.back() == '@' ){ }else if( key.back() == '@' ){
423 428 key.resize( key.length() - 1 ); key.resize( key.length() - 1 );
424 auto it = arrays.find( key );
425 if( it != arrays.end() )
426 outStr += stringifyArray( it->second );
429 if( key == "lines" ){
430 outStr += stringifyArray( screen.lines );
431 }else if( key == "ids" ){
432 outStr += stringifyArray( screen.ids );
433 }else{
434 auto it = arrays.find( key );
435 if( it != arrays.end() )
436 outStr += stringifyArray( it->second );
437 }
427 438 }else{ }else{
428 439 outStr += stringifyNumber( getVariable( key ) ); outStr += stringifyNumber( getVariable( key ) );
429 440 } }
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/mse/ConfectionerEngine

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/mse/ConfectionerEngine

Clone this repository using git:
git clone git://git.rocketgit.com/user/mse/ConfectionerEngine

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main