20 Commits

Author SHA1 Message Date
死体 4fce8bc27f Add level.chest manipulation 2023-04-21 22:43:32 +02:00
死体 84da90d0e9 Add sign manipulation 2023-04-20 12:52:25 +02:00
死体 372ca68082 Improve implementation 2023-04-18 16:45:59 +02:00
死体 3b8913c109 Apply suggestions from code review 2022-12-05 11:41:27 +01:00
死体 0c4580a8a9 Fix stupid mistake 2022-11-28 13:11:55 +01:00
死体 476d6d14a6 Add support for public function automatically adding the functions to be accessed externally from another script 2022-11-28 10:30:20 +01:00
joey 893aebaaaa - Embed javascript bootstrap file into gserver build
- Changed sendtorc/sendtonc functions to print all arguments to the function
- Modified call signature of onActionServerSide - onActionServerSide(player: Player, params: String[]) {}
- Fixed GS2 triggeractions to serverside
- Slightly improved some runtime execution errors in NC-tab
- Exposed some common functionality into the global object, so you can call them directly without referencing the server object:
  - functions: findlevel, findnpc, findplayer, savelog, sendtorc, sendtonc
  - global variables: allplayers, timevar, timevar2
2022-08-07 02:27:28 -04:00
joey 8e350f4468 Fix an issue where a move-constructed SourceCode would not default-initialize the stringviews 2022-04-29 19:43:03 -04:00
joey 8003369c11 Added support to provide both GS1 and GS2 implementations in a single script. This works for both level npcs and weapons
Simple example script which would work for both v2 and v5+ clients: (gs2default = true)

//#CLIENTSIDE
function onWeaponFired() {
  setani("skip", null);
}

//#GS1
if (weaponfired) {
  setani skip,;
}
2022-04-28 17:55:00 -04:00
joey 801ce5a70f - Fixed an issue where npc scripts were being corrupted. This occurred due to std::move(str) invalidating the existing stringviews, pretty sure this only happened for small strings that aren't allocated on the heap.
- Fixed an issue with no-npcserver builds, all source is considered clientside without an npc-server.
2022-03-19 14:31:48 -04:00
joey feed616fc0 Fix for compiling without V8NPCServer 2022-03-11 01:32:09 -05:00
joey 1275dbfa3d Fix level npc origin position when reporting script errors 2022-03-09 19:23:01 -05:00
joey 763f7d5072 Refactoring - Use unique_ptr for ScriptObjects 2022-02-23 16:55:46 -05:00
joey e737113112 Fix for gs1/gs2 sourcecode parsing - since we can't simultaneously run both gs1/gs2 i changed the behavior to reflect that. all clientside source is either gs1 or gs2. the issue stemmed from gs1 scripts excluding the //#CLIENTSIDE when sent to the clientside since it appeared above //#GS1 2021-09-18 16:13:22 -04:00
joey 08ae4b3dd3 Fix compile error + /serveruptime 2021-09-17 13:36:49 -04:00
joey d7c0087a41 Error reporting for the GS2 compiler - error messages will be logged in logs/scriptlog.txt and NC-channel on RC. 2021-09-16 23:26:27 -04:00
joey d80b1d5340 Refactoring of script compilation 2021-09-06 21:00:43 -04:00
joey 3602adbf50 Some warning fixes, removed deadcode, fixed a crash when saving empty scripts and some refactoring 2021-09-02 16:01:51 -04:00
死体 ed2ae0ab36 Merge branch 'feature/npc-server' of https://github.com/xtjoeytx/gserver-v2 into feature/npc-server 2021-08-20 13:15:11 +02:00
死体 982501a0d9 Restructuring 2021-07-15 01:39:52 +02:00