1. Builds
  2. CommandHelper (snyk-fix-0aafa47e1e75f5f28fc6c981f5a82c66)
  3. Build #4017

CommandHelper Build #4017

Be aware that this branch (snyk-fix-0aafa47e1e75f5f28fc6c981f5a82c66) is not the main branch (master)!

Branches other than the main one may be experimental. In addition, you should be using stable releases rather than these test builds.

Go to main branch View stable downloads
Date2 months ago

Sponsored by
1773524dfix: pom.xml to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JAVA-ORGYAML-537645snyk-bot2 months ago
41c54ddfAdd HIDE_DYE item meta flag pseudoknight2 months ago
2c666b7dAdd block_explode event pseudoknight2 months ago
b780a89bFix split() for strings ending with the split Allow `split()` (and non-regex `reg_split()`) to match the split on the last possible part of the string as well. Fixes `split('b', 'ab')` resulting in `{'ab'}`, rather than `{'a', ''}`. pieter123452 months ago
cdc6c62aMerge pull request #1240 from Murreey/day-functions Add get/set functions for world daymichael smith3 months ago
2cac88e3Add get_world_day murray coghill3 months ago
ed12160bAdd set_world_day murray coghill3 months ago
5a471148Fix cmdline install tool unsupported OS check `OSUtils.GetOS()` cannot return null, so the previous check never triggered. pieter123453 months ago
ea2e3e27Fix entity_unleash reason in event docs pseudoknight3 months ago
7b0aad6fAdd support for Minecraft 1.16.2 pseudoknight3 months ago
55a5e0a6Fix NPE in LangServ while generating environment (#1237) Fix NPE in LangServ while generating the environment without having a profiles file in the MethodScript directory. This fix creates an empty ProfilesImpl, such that any usage of the Profiles object will simply be like if the profiles file were empty.pieter123453 months ago
60f238b7Handle exceeding max string size in string_multiply - Detect when exceeding max string size in `string_multiply` and throw a `RangeException` when that happens. - Optimize `string_multiply` implementation. Fixes #1234. pieter123453 months ago
4ef81cc4Fix smart strings being rewritten to non-strings Rewrite smart strings to either a `concat()` of their string and variable parts, the string itself if no variables are present, or a `string()` cast variable if it consists of a single variable. This ensures that smart strings will always have have the `string` type in user code. Fixes #1232. pieter123453 months ago
1dd871eeFix '@' escaping in smart strings Pass literal `\` as literal `\\` to `__smart_string__`, so that `__smart_string__` can disambiguate between `"\@"` and `"\\@"`, rather than getting the same input for both. As this function is an internal compiler function, and users that do use it would now have to pass double escaped `\` into the function to make it work properly, the function has also been renamed to `__smart_string__` to fit the other compiler functions. Fixes #1229. pieter123453 months ago
566f8c72Add entity_unleash event (#1227) malonnnn3 months ago
bf4419a9Move static final function names to function classes - Move static final function names to the static final `NAME` field in their corresponding function classes. - Add a test that validates that when a `NAME` field exists in a function class, it will return the same value `func.getName()` returns. pieter123453 months ago
bcf811d9Centralize function name references Replace all hard-coded string function names and `new funcClass().getName()` with a static final field in the `Function` class. This puts all 'static' function references in one place, allowing for shared function name caching and an easier way to find all references to a certain function. pieter123453 months ago
3512ac46Persist running `x_new_thread` threads over recompiles (#1224) Make threads remove themselves from the active threads map when they finish execution, rather than when the construct containing the thread ID string gets garbage collected.pietje3 months ago
1747e2f5Merge pull request #1223 from Pieter12345/delay-keyword-compile-errors Allow keywords to be part of other syntaxpietje3 months ago
980bd983Don't remove if keyword on process error Prevent the `if` keyword from removing itself from the AST when it fails to parse. This allows us to generate an error for it later, if it is not handled as part of some other syntax. pieter123453 months ago
1dcd0cb8Don't rewrite AST on try keyword process error Rewrite the `try` keyword processor to not make changes to the AST unless it can finish parsing without exceptions. pieter123453 months ago
f496a780Allow keywords to be part of other syntax Allow keywords to be part of other syntax than their keyword processing code is written for. An example is code `array(static: 1)`, which generates a compile error when attempting to process the keyword `static`, while it is actually part of valid `array()` syntax. Fixes #1220. pieter123453 months ago
f44e6f58Create AbstractCompileException This exception should be used as parent exception for compile exceptions, and can be useful to handle any compile exception in a single catch clause. pieter123453 months ago
0b00fc75Accept null arg in psend_block_change() to send existing block pseudoknight3 months ago
7d6c37a7Fix cast exception for fireworks in projectile events pseudoknight3 months ago
9c887c8dAdd 'unexpected keyword/label' compile errors Add "unexpected keyword" and "unexpected label" compile errors to static analysis. The caught cases are considered syntax errors and already caused a more generic 'fallback' compile error in static analysis. pieter123453 months ago
68e56fe9Add class name conventions ladycailin3 months ago
5b26f52aresource -> Resource *Probably* no one was using this? The impact should be very low at this point at least, but the longer we wait, the more impact it will have, so I'm going ahead and making this hard cut now. ladycailin3 months ago
e83eed22Fix NPE in static analysis on re-including empty files Fix a NullPointerException that occurs in static analysis when a file is included after an empty file has been dynamically included. Fixes #1221. pieter123454 months ago
1789f79aProc arguments handling optimization Set passed proc arguments first and then fill in the default values for the remaining arguments, rather than setting all default values and overwriting them with the passed proc arguments. pieter123454 months ago
18d26d2eFix proc @arguments order Fix procedure `@arguments` order in the case that the procedure contains more arguments than the procedure call passes to it. This is only noticable when default argument values are given, since otherwise the order wouldn't matter. Fixes #1197. pieter123454 months ago
b752e1bbFix post parse AST rewriting for single-function scripts Fixes post parse AST rewrites not using the rewritten AST for scripts with a single root function that is rewritten. Fixes #1219. pieter123454 months ago
7df115a3More feature for multithreading (#1214) * More feature for multithreading * Fix docs * Fix x_thread_is_alive thrown * Separation x_is_interrupted([id], [clearFlag]) * Interrupted status -> interrupt status * Fix docs core.functions.Threading * Fix docs x_clear_interrupt and x_is_interruptedudartsev anatoliy4 months ago
f4b78d7fFix bugs in localization ui ladycailin4 months ago
1a5ff308Add CRIMSON_FUNGUS and WARPED_FUNGUS tree types pseudoknight4 months ago
c8c2794dAdd 'anchor_spawn' boolean to player_spawn event pseudoknight4 months ago
52b1b1c8Add compass item meta pseudoknight4 months ago
eba81c00Add SWAP_OFFHAND click type in inventory_click event pseudoknight4 months ago
4b7613f9Add Strider's 'saddled'; Item Frame's 'fixed' and 'visible' to entity_spec() pseudoknight4 months ago
6ecc8df6Fix legacy material builder on pre-1.16 pseudoknight4 months ago
093c41e0Manage baby state for piglin, zoglin, and hoglin. Fixes wrapper class for zombified piglin. pseudoknight4 months ago
deab85b9Update entity_explode to reflect changes in the underlying event. A null entity is no longer possible. pseudoknight4 months ago
0fe660dbAdd support for Minecraft 1.16 pseudoknight4 months ago
bc3f00a0Add MCEffect.INSTANT_POTION_BREAK. Remove unused id value from enum. pseudoknight4 months ago
625ea38eMake Script's 'right' field a local variable pseudoknight4 months ago
784191d9Fix color() docs not listing color names pseudoknight4 months ago
41eb7fbeStatic analysis optimization Increase static analysis performance by creating less unnecessary collections. pieter123454 months ago
d835316eUpdate portal events to reflect 1.15.1. Add creationallowed event data. Fix searchradius and creationradius support in 1.13.2. pseudoknight4 months ago
bbd3adacAdd support for SQL Server in query and the PN (#1212) ladycailin4 months ago
e6fe6c2aFix header issue in telemetry.ini Use UTC time in the telemetry event ladycailin4 months ago
889d8652Add metric for static analysis ladycailin4 months ago
11c49181Update tree_grow event documentation (#1211) Document missing keys.pietje4 months ago
7afbf9d8Lazily get keyword name from annotation. The name was only used for exception messages, yet this method can be called multiple times per line, which was noticeable in profiling. This improves compile time around 6%. pseudoknight4 months ago
d37f1a70Fix duping when getting held item meta on block_place. The item's tags were being modified on read, causing this and probably other lesser issues. This affected shulker boxes, bee nests, beehives, and shields. pseudoknight4 months ago
675fab07Re-use environment for compilation (#1209) * Re-use environment for compilation This is an optimization which uses the same environment to compile multiple msa scripts, rather than creating a new environment every time. Environment creation reads and parses a few files, so this is an expensive operation. * Create StaticRuntimeEnv for static final functionality - Create StaticRuntimeEnv and move functionality from GlobalEnv to this class if it is static and final accross compile units. - Replace reflection in RandomTests test with Mockito, as this allows for the accessed field to be made final like it should. * Use a fresh environment per script Clone the environment for every (msa) script. Since StaticRuntimeEnv returns itself when cloned, its contents act like a cache. * Move test code out of production code Use Mockito to mock unused environment objects instead. * Use cheaper newline replacement in read() There's no need to replace "\n" with "\n".pietje5 months ago
ca0531dcCheck for associative array usage in spawn_particle Fixes #1210 ladycailin5 months ago
726dd6a8Add new methods in BukkitMCArmorStand ladycailin5 months ago
cc39b8f0Speculative fix for case sensitivity in InjectedPlayers ladycailin5 months ago
067118a0Fix NPEs in CClassType (#1208) * Fix NPEs in CClassType The CClassType invalidType is cached in a thread-unsafe way. This causes problems when LangServ is performing an operation on the same CClassType, since one thread can start using the Mixed[1] created by the other thread before it is populated with data, getting null when reading its first element. * Switch LangServ back to cmdline mode LangServ is currently running in EMBEDDED mode, which is a refactoring mistake. This commit changes it back to CMDLINE mode.pietje5 months ago
d8def74aStatic Analysis patch (#1207) * [SA] Fix exception on invalid typeless variable assign - Fix exception during scope graph generation for assign(var, val) with an invalid variable type. - For default or AUTO declarations, still require the value to be instanceof Mixed to prevent things such as void assigns. * [SA] Fix NPEs in requireIVariable() and requireClassType() Fix NPE in StaticAnalysis.requireIVariable() and StaticAnalysis.requireClassType() that occurs when passing in invalid syntax. Eventually, the parse has to catch these errors and halt compilation such that the AST in further steps only contains valid terms. For now, catch possible NPEs in the later stage and print invalid term classes instead such that it doesn't crash.pietje5 months ago
1b754e6aUse cache instead of FunctionList lookups (#1206) Cache the required environments for each function in CFunction and use that for lookups where possible. Also don't do FunctionList lookups where the function is already cached. This makes the flow as follows: 1. postParseRewrite() caches all existing functions. 2. Other compiler steps use the cached functions, or get null when they don't exist. 3. checkFunctionsExist() does a lookup in the FunctionList if the function is not cached, and generates the compile exception if it doesn't exist.pietje5 months ago
d7897501Merge branch 'master' of github.com:EngineHub/CommandHelper pseudoknight5 months ago
9f294f4eOptimize binds to get Event from BoundEvent when possible. pseudoknight5 months ago
ccb1a64eImproved registering/unregistering commands. - unregister_command() will now remove all aliases and prefixed variants of the command, so it is symmetrical with register_command(). - unregister_command() now supports unregistering other plugin's commands. - register_command() will now remove aliases that are no longer in the array, and add aliases that are added to the array. - Improved documentation and examples. pseudoknight5 months ago
3661ebd7Merge pull request #1205 from Pieter12345/master Fix exception target for single include() exceptionsmichael smith5 months ago
47a242a8Fix exception target for single include() exceptions pieter123455 months ago
5c503dbfStatic analysis (#1198) * Add basic static type checking framework This is still a WIP. A few points to work on: - A solution with less code in Function classes is preferred. - To get the type of IVariables (which are non-existent in the parse tree?), some sort of scoping simulation should be added. - Functions should be able to optimize based on the argument types that they receive. This allows for example sconcat() to not toString() its parameters when passed at least one statement that returns void. * Fix broken javadoc * Move function name validation to its own method Move function name validation out of link() and link() before optimization. * Fix or() typechecking implementation Support 0 to n arguments, rather than 2. * Add static analysis framework Functions that have scoping behavior or functions that make declarations / references to variables/procs/etc should override the linkScope() method. Variable references are already checked at this point, but declarations are not. Comes with a boolean to do or don't do static analysis. This is necessary to run optimization tests that are semantically incorrect. * Implement variable declarations - Creates declarations in the scope graph for variables passed to assign(). - Throws a compile error on variable declarations in places where that variable is already defined. - Converts typeless assigns into declarations of type AUTO when variables are not yet declared, but are being assigned to. * Implement ControlFlow scopes * Implement closure scopes * Implement bind scope * Implement proc scope Proc declarations are being made (without signature), but references are not checked yet. This commit is mainly about the proc declaration scope behavior. * Disable static analysis for 'invalid' tests These tests exist to test other things. Static analysis isn't necessary here. * Disable static analysis for composite functions Composite functions come with an inj...pietje5 months ago
3ef53379Clean log tests (#1202) * Clean log tests * Clean tests with dyn()udartsev anatoliy5 months ago
eeb3b33aThrow NPE on clear_task(null). Fixes #1201 ladycailin5 months ago
cff540beUpdate public suffix list ladycailin5 months ago
9e938ad7Fix getting offline players by name in offline mode pseudoknight5 months ago
e680b563Merge pull request #1199 from Anatoliy057/patch-1 Delete duplicates in entity_specmichael smith5 months ago
822aa4e1 Delete duplicates in entity_specudartsev anatoliy5 months ago
268cfd4eCorrect exception message for integer() (Fixes #1193) pseudoknight5 months ago
010a2544Update make_effect(). This adds data support for material and facing names, and improves documentation. pseudoknight5 months ago
53916597Fix reflect_type, add copy button to code on site. Update jQuery. Exclude LLVMFunctions from trying to be site-deployed. Add documentation on options for bind. Rename getSuperclasses/InterfacesForType to getTypeSuperclasses/Interfaces. ladycailin5 months ago
e2ab8089Fix new assignment not getting the defined target. pseudoknight5 months ago
309df09dGet CommandSender for executeas() and scriptas(). This allows for injected players that are currently offline, which is already a possibility for closures. Also now checks if executeas() has the minimum number of arguments and updates the docs. (Fixes 1194) pseudoknight5 months ago
f111a7a8Fix extraneous bare string warnings in tests pseudoknight5 months ago
2c6dbab2pass current MCCommandSender on null for executeas (#1195) * pass current MCCommandSender on null for executeas * CH syntax requirements * use current env not the closuresluke fairchild5 months ago
0a50d664Implement Booleanish in remaining classes ladycailin5 months ago
b8a07c42Add reflect_type, class_type, and Typing documentation. As part of writing examples for the documentation, I came across the error in #1192, which allowed me to reliably reproduce it, so this fixes #1192 also. ladycailin5 months ago
5813d34eFix negative array index lookup overflow messages (Fixes #1188) pseudoknight5 months ago
52316a72Fix incorrect ivar redefined error message in loops. pseudoknight5 months ago
64bc0956Fix documentation in reflect_pull ladycailin5 months ago
1e51e2b1Add include_dir(). ladycailin5 months ago
62468ea6Checkstyle ladycailin5 months ago
324626c2Add .msfileoption support. Add file options to reflect_pull. ladycailin5 months ago
c70037a5Add more tests for define_object ladycailin5 months ago
095dc258Checkstyle ladycailin5 months ago
c54b7011Procudure -> Procedure ladycailin5 months ago
dd3c6627Handle void correctly in the procedure type hinting Fixes #1191 ladycailin5 months ago
eeb36e7eUpdate issues link from youtrack to github ladycailin5 months ago
debbde05Fix iclosure retaining unused cloned variable list. Also adds an iclosure test. pseudoknight5 months ago
bd424bfcFix error for remove_recipe() on Spigot versions earlier than 1.15.2 pseudoknight5 months ago
71e7ca23Add player prefilter to entity_damage_player event (#1189) pseudoknight5 months ago
8ff888ddAdd cmdline mode fuzzer ladycailin6 months ago
afd97f94Create .cache folder first if it doesn't exist ladycailin6 months ago
9fc14f1bUpdate readmeladycailin6 months ago
55ebb57aUpdate readmeladycailin6 months ago
64ef2de8Add remove_recipe(). (#1187) * Add remove_recipe(). * doc clarification Co-authored-by: Lildirt <[email protected]>lildirt6 months ago
8799c64cAdd pflying(), pblocking(), psprinting() and is_entity_sleeping(). These are more readable than using pinfo(). pseudoknight6 months ago
62849f8eImprove set_blockdata docs pseudoknight6 months ago
1ffa65d0Add entity immunity functions pseudoknight6 months ago
ef8ea789Add "model" item meta key for matching functions pseudoknight6 months ago
87bf7727Don't rely on appspot for the site to load. Need to replace this longterm with apps.methodscript.com, but this is a short term fix, and a better approach regardless of which particular site we rely on. ladycailin6 months ago
08d13dc6Nag nag nag. ladycailin6 months ago
3c799335Add support for telemetry This branch adds the ability to send telemetry data to Azure Application Insights. This proxies through apps.methodscript.com however, so in addition to the basic telemetry framework, this also includes the swagger framework, which both the server and the client have autogenerated code for. See the LadyCailin/apps.methodscript.com repo for the server side of this. Telemetry is diabled by default, but nags the user to enable it where relevant.ladycailin6 months ago
596a64b5Fix cmdline file access security checks (#1183) - Bypass Security.CheckSecurity(File) checks in cmdline mode. - Move existing in-cmdline-mode checks before Security checks, since Security checks can throw an IOEx that shouldn't have to occur in cmdline mode.pietje6 months ago
3a7df5ecAdd missing CommandHelperEnvironments (#1184) Add CommandHelperEnvironment `@api` annotation arguments for Minecraft dependent functions, such that these functions can no longer be used in cmdline mode (and crash due to NoClassFoundDefErrors).pietje6 months ago
c1fa0522CheckStyle (#1182) Fix CheckStyle violations.pietje6 months ago
7b89531bAdd x_thread_join ladycailin6 months ago
dfa23310Parallelize startup and deduplicate work at startup. This shaves off about half a second on my system. ladycailin6 months ago
1e4034bfAdd player prefilter to pressure_plate_activated event. pseudoknight6 months ago
e052ce22Improve target for unexpected end curly braces. Fixes EmptyStackException when encountering more than one unexpected end curly brace. pseudoknight6 months ago
d118a918fix: Fix bug #1180 misspelled class name (#1181) The DuplicateObjectDefintionException.java class is misspelled, it should be DuplicateObjectDefinitionException.java This commit fixes the class name. Resolves: #1180alejandro casado quijada6 months ago
7833b862Finish writing my sente ladycailin6 months ago
33c054cdAdd cycle tool, to test the startup and shutdown cycle ladycailin6 months ago
1be2ece4Add / at the end ladycailin6 months ago
87341338Add reflect_pull('dir') ladycailin6 months ago
b733ab3bCheckstyle ladycailin6 months ago
2064220aAdd initial llvm framework. This currently mostly just includes the LLVM installer, but also includes a first pass at actually compiling a simple mscript program. The biggest issue right now is actually just figuring out the llvm ir necessary, so I've short circuited this right now, making it currently unusable, but neither the wrapper IR nor the exit() function itself are properly implemented yet anyways. ladycailin6 months ago
dd8b5258Fix puuid() returning invalid UUID for invalid name. Optimize get_offline_players(). pseudoknight7 months ago
c86736dfFix bug where errors in events in cmdline would fail to render the error properly ladycailin7 months ago
5026fe9aFix hidden function issue on the site Fixes #1175 ladycailin7 months ago
90f7bef0Fix class load warnings for extension dependencies pseudoknight7 months ago
7592c6e8Set alias functions to CommandHelperEnvironment pseudoknight7 months ago
6be24775Ensure server type is set for fast startup modes pseudoknight7 months ago
ef32fe0dImprove clarity of player event warning. Saying it's "missing" is misleading, and the cause is unlikely to be an NPC anymore. pseudoknight7 months ago
15614fdeImprove API docs for clear_commands(), spawn_entity(), and player_interact pseudoknight7 months ago
de11f40cFix spelling pseudoknight7 months ago
b1511e00Add phantom size to entity_spec pseudoknight7 months ago
c06d22feFinish work on search bar on the site ladycailin7 months ago
a02a5bdbfix: pom.xml to reduce vulnerabilities (#1177) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JAVA-COMMONSCODEC-561518snyk bot7 months ago
c21eb045checkstyle ladycailin7 months ago
d7b8e99eSite search is 80% complete now ladycailin7 months ago
b063add0Update switch() documentation (#1176) pietje7 months ago
74d14857Override deepClone in CByteArray to allow cloning byte_arrays ladycailin7 months ago
1101071dUpdate VersionFrontPage Update link to bug tracker.ladycailin7 months ago
1cc870d4Warn on use of variable named pass/password Also, allow PATCH http verb, though it looks like java still prohibits that at a deeper level, so need to do some playing dirty to finish making that work. ladycailin8 months ago
fe99506fUpdate Sponsorsladycailin8 months ago
ce840aadMerge pull request #553 from PseudoKnight/master Ignore fake player entities for eventsmichael smith8 months ago
75f9234dIgnore fake player entities for events pseudoknight8 months ago
533b5ab9Overload getResources in the DynamicClassLoader Fix bug in is_proc ladycailin8 months ago
f3aa3954Update Sponsorsladycailin9 months ago
7f765b61Update sponsors page ladycailin9 months ago
8a212c3fUpdate pom.xml to use enginehub.org with https pseudoknight9 months ago
eb697191Fix import pseudoknight9 months ago
998b5cf0Update deprecation logging at compile time to CompilerWarning. Improves visibility in VSCode. pseudoknight9 months ago
2bf991b2Update sponsors ladycailin9 months ago
18dc2828Fix interpreter mode stopping on compile error (#550) - Fix in-game interpreter mode from disabling when the executed code results in a compile error. - Prevent players from being set to interpreter mode through the CommandHelperInterpreterListener.execute() method.pietje9 months ago
cc89f729Bump checkstyle from 8.28 to 8.29 (#549) Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 8.28 to 8.29. - [Release notes](https://github.com/checkstyle/checkstyle/releases) - [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-8.28...checkstyle-8.29) Signed-off-by: dependabot[bot] <[email protected]>dependabot[bot]9 months ago
0fa2489dMerge pull request #548 from Pieter12345/master Add get/set_skull_owner functionsmichael smith9 months ago
701f4a79Add get/set_skull_owner functions These functions can be used to get/set/clear the skull owner on player heads. pieter123459 months ago
e68358bfBukkitGetCorrectBlockState optimization Divide into a Container or not-Container check to do roughly half the checks on average. pieter123459 months ago
d7a653d2Fix BukkitMCBlock returning wrong BlockState pieter123459 months ago
5fdf61edFix cases where a branching implementation error is incorrectly detected pseudoknight9 months ago
e4a5d39fFix quantity remaining when attempting to add empty items to a full inventory pseudoknight9 months ago
c2a2cc2fEnable all event functions in cmdline pseudoknight9 months ago
874130eaAdd to the sponsors page ladycailin9 months ago
bfe75c0bRemove log4j dependency. ladycailin9 months ago
cd0ef419Update CheckStyle (#547) * Fix obvious JavaDoc syntax errors No functional changes. * Update CheckStyle Update CheckStyle to be compatible with the latest version. This prevents users from getting errors from IDE CheckStyle plugins that use the latest CheckStyle version. pietje9 months ago
e73a7649Quote argument in bash launcher ladycailin9 months ago
31084c29Add new gamerules for 1.15.2 pseudoknight9 months ago
298ed5c0Merge pull request #546 from Pieter12345/master Fix NPE in entity_spec for Endermanmichael smith9 months ago
a6b0edbbFix NPE in entity_spec for Enderman Fix calling entity_spec on an Enderman that is not carrying a block resulting in a NullPointerException. pieter123459 months ago
475ae052Fix TC build pseudoknight9 months ago
50102b59Use https for pluginRepositories pseudoknight9 months ago
fcaac78dRemove remnants of old documentation deployment pseudoknight9 months ago
07d13cdfUse https for repositories pseudoknight9 months ago
5be884b1Fix misleading documentation pseudoknight9 months ago
a74a09c4Set nested array parent when creating array using labels. Fixes old string representation for parent array being returned even after nested arrays are modified. pseudoknight9 months ago
78d3173eUpdate sponsors page ladycailin10 months ago
8f853814Update Advanced_Guide Define UTF-8 as the standard source file encoding.ladycailin10 months ago
97f543e7Update Crypto.java Sha-1 has now been totally broken, so make a note of this in the documentation.ladycailin10 months ago
7d5c44e1Update PlayerManagement.java (#545) Pfacing() documentation was incorrect. It indicated yaw 0 is dead west and 90 is north, but all the testing I'm doing is showing 0 as south and 90 west, etc. Same for pfacing(F). It says 0-West, 1-South, 2-East, 3-North. My testing shows F0=South, F1=West, F2=North and F3=East.jjkrause10 months ago
ea07e0feAdd lockable block functions pseudoknight10 months ago
f1f9cd93Merge pull request #544 from Pieter12345/master Add affectedBlocks to piston_retract eventmichael smith10 months ago
3e6eccc5Add affectedBlocks to piston_retract event Add affectedBlocks key to the piston_retract event. This is used when slime or honey blocks are pulled, pulling adjacent blocks with them. pieter1234510 months ago
c88780cdAdd separate light level functions for sky and block sources pseudoknight10 months ago
330f1cffAdd BEEHIVE SpawnReason for 1.15.1 pseudoknight10 months ago
e51603d8Fix bug in StringUtils.HumanReadableByteCount. There's an interesting story behind this, see https://programming.guide/worlds-most-copied-so-snippet.html for the details if you're curious. Also, I have proper attribution for the code snippet now as well. ladycailina year ago
7f001718Add support for Minecraft 1.15 pseudoknighta year ago
b6aa64b8Fix bare string warnings in sample scripts pseudoknighta year ago
06a064dcSupport virtual inventories for get_inventory_name() pseudoknighta year ago
85f41eeeAdd vex charging to entity_spec() pseudoknighta year ago
706a3c64Update docs for player_interact ladycailina year ago
804aad2aCheckstyle ladycailina year ago
4e96d88dUpdate public-suffix.dat ladycailina year ago
aa617823Begin work on a built-in webserver ladycailina year ago
e614b254Add support for particles that require additional data in Area Effect Clouds. Make particle data creation more forgiving. pseudoknighta year ago
01e37d42Add timeout to GCUtil. It really is just best effort to call System.gc, so we can't make this work in a generic way, without a JNI integration perhaps. ladycailina year ago
7cd37d00Reverse debug flag in GCUtil ladycailina year ago
6f79faf2Debug build for GCUtil ladycailina year ago
a1a86eb7Begin work on CGI directions in IIS ladycailina year ago
444167e7Ignore keywords again when checking bare strings pseudoknighta year ago
e9735c84Check only native types in Construct for isInstanceOf(). (#543) This is optimal in cases we can expect it to not be a UserObject.michael smitha year ago
da19ddd0Fix core error when trying to set an ocelot type in 1.14 in deprecated spawn_mob() pseudoknighta year ago
98c85f4eAdd a fallback for getting a player entity when its missing from a world's entity list. pseudoknighta year ago
50ff6758Document deprecated MC functions better pseudoknighta year ago
1b71b624Add CGIBin example ladycailina year ago
a8235180Add several entity attribute functions. Also fixes item attribute meta when modifier name is null. pseudoknighta year ago
c444b1d5Add BlockUntilGC method. This wraps System.gc(), but provides a way to actually ensure that a garbage collection has actually run. This is no still guarantee that a given object has been garbage collected, but is as good as it can get from a java code perspective. There are a few places where System.gc() has been changed to use this new method instead. ladycailina year ago
7aee86ecExclude dependency conflict. The conflict causes NoSuchMethodError for Spigot methods in BukkitMCItemMeta. Relocation alone can't resolve this. Initially included for lsp4j, com.google.common.collect doesn't appear to be used in the functionality LangServ is using at the moment, and so it should be safe to exclude it for now. This also reduces the jar size. pseudoknighta year ago
337b9808Support attribute modifiers in item arrays pseudoknighta year ago
6f7e278bAdd Nilleke Dark theme ladycailina year ago
2478f798Add dark mode to the website. Actually, this is more like "dark theme" because the mechanism is a generic theming mechanism, which should be pretty straightforward to add other themes to down the road. Simply add a new theme css file in resources/css/themes, and add a link to it in the place specified in frame.html (ensuring that the data- attribute is there). The rest should figure itself out on its own. ladycailina year ago
23bb6264Scrub it in both places... ladycailina year ago
e9d2a9f1Scrub password from error message ladycailina year ago
43d03996Update docs for extraParameters in MySQL connection ladycailina year ago
d5ff95bbAdd proper separator for extra parameters ladycailina year ago
93d736d7Add support for arbitrary parameters in mysql persistence ladycailina year ago
fe09cbfaBump mysql connector from 8.0.16->8.0.18 ladycailina year ago
7c73cae7Add get_cmd_completions() pseudoknighta year ago
758ad8c0Add documentation for running as a CGI script. This is not advertised, since this is mostly just proof of concept, but for completeness sake, this is the documentation for how to set it up, if that becomes useful to link to people in the future. ladycailina year ago
b72cfc54Add better grouping in prefs files ladycailina year ago
e9c11a99Fix incorrect warnings of missing players in events. pseudoknighta year ago
ecfcde82Fix numArgs for enchant_item() and change arrow damage to doubles pseudoknighta year ago
4a6cc6feFix exception matching in old try() function format pseudoknighta year ago
e9160333Update Architecture page ladycailina year ago
c7f4aab2Expand edit-prefs command a bit ladycailina year ago
ff15ef91Add edit-prefs command, which opens the prefs directory in a text editor By default, vim/VSCode is used depending on platform, but this can be overridden with environment variables, or by command line parameter. Also fixed bug where the java version in the windows wrapper was wrong. ladycailina year ago
a77ca4b9Use exe wrapper on Windows There was a bug with the old batch->powershell->java wrapper when it came to quoted arguments. To fix this became a rabbit hole, and it ended up being easier to just revist the C# wrapper. This removes the ClickOnce installation, so this is just a simple wrapper executable. Still need to revisit the installation mechanisms later to re-add double click support in windows, but for the time being this is good enough as a replacement in cmdline. ladycailina year ago
7350575eImprove bare string detection and limit to one warning per file pseudoknighta year ago
6c596d94Add villager experience/level and panda genes to entity_spec pseudoknighta year ago
9118c597Support categories with spaces in them. For some reason, Java's Preferences class parses spaces as if they were =, so categories with spaces in them don't work right. If the key simply starts with left bracket, then we skip the whole value. ladycailina year ago
b8cd9e15Add help-topic command, which reads Learning Trail topics This functionality is also available to extensions, through the getHelpTopics() function in the Extension interface. ladycailina year ago
ae406b32Support grouping in preference files Add a few groups to the preferences.ini file also, to take advantage of this new feature. Groups are sorted alphabetically, and within groups, items are sorted alphabetically, though within the group, another sort order may be given to override this. This allows for more precise sorting of values, and for larger preference files, makes them much easier for users to read. Values without a group will be placed at the top of the file. ladycailina year ago
d252b26cUse simple name for exceptions on API page pseudoknighta year ago
d46cb4bbLower-case material enums for blockdata pseudoknighta year ago
60e3cf22Add array_get_rand() pseudoknighta year ago
1e08b46cFix startup on Java 9+ again pseudoknighta year ago
0563305cUpdate Statistics.javaladycailina year ago
bc763968[email protected] == @val ladycailina year ago
4ecd6740Add ImmutableKeyword ladycailina year ago
e620ee2bAdd ImmutableKeyword ladycailina year ago
56adaca4Add documentation for immutable classes/fields ladycailina year ago
1f076095Checkstyle ladycailina year ago
5043191dAlways do ExtensionManager init, since we need to for cmdline tools ladycailina year ago
8c94a049Preliminarily support untitled files in LangServ Also modify_event does not need CHEnv. ladycailina year ago
f2fe6cd7Add SemVer2, an implementation of Version that supports Semantic Versioning This is currently only used in MSVersion, and is not intended to necessarily be a replacement for SimpleVersion, as it is more strict, and only useful when a platform can dictate the version number format. This will come in useful later, however. ladycailina year ago
325b6dfdCheckstyle ladycailina year ago
9fe1287fAdd support for method line numbers (ish) in ClassDiscovery The line number the method declaration is on isn't actually available in class files, so it's not possible to get that directly, but we can get a relatively close proxy, the line number of the first executable statement. This is good enough for most purposes, which is to direct users attention to roughly where the code is defined. This will hopefully be good enough for most purposes, because it's the best we can do without actually parsing java source code. ladycailina year ago
9a00f477Make array_index_exists work with negative numbers in normal arrays ladycailina year ago
6d5d7e73Fix bounds exception when a brace is used inside brackets (CMDHELPER-3165) pseudoknighta year ago
a90f47b7Merge pull request #542 from PseudoKnight/master Fix issues w/ multiple contiguous symbols in assignment (CMDHELPER-3174)michael smitha year ago
2d949910Fix issues w/ multiple contiguous symbols in assignment (CMDHELPER-3174) pseudoknighta year ago
4c847390Fix serializing closures with labels in them ladycailina year ago
6f6f5b75Disabling logging of compiler warnings in interpreter mode pseudoknighta year ago
9fd1bcbcFix core error when compile error affects branching pseudoknighta year ago
3d7d61dfFix NPE when foreach() given invalid argument format pseudoknighta year ago
69497b37parseXML first, so the server content-type doesn't matter ladycailina year ago
a0527fbfUse the current protocol ladycailina year ago
1fe82b46Continue work on localization Still several tasks to be done before this can be crossed off, but the matching is pretty good now on the front page. Remaining tasks detailed in src/main/java/com/ls/tools/docgen/l10n/TODO.md. Also fixed a bunch of examples that were throwing compiler warnings due to bare strings. ladycailina year ago
aace269aFix unacceptable typos pseudoknighta year ago
1b3a412eCorrectly create associative arrays in a few places pseudoknighta year ago
340b111aAdd new compiler warnings for deprecated functions pseudoknighta year ago
991b4861Add PATROL and RAID entity spawn reasons pseudoknighta year ago
ba52fc84Merge pull request #541 from PseudoKnight/master Support executing closures in variables using function syntax.michael smitha year ago
80b0fd55Add more closure tests pseudoknighta year ago
7e489298Support executing closures in variables using function syntax. This is an early implementation that makes `@closure(@arg1, @arg2)` equivalent to `execute(@arg1, @arg2, @closure)`. Also fixes LangServ incorrectly checking procedures as functions. pseudoknighta year ago
62e6867eImprove handling of improperly formatted docs(). This prevents the vscode extension and json-api mode from entirely breaking when given an extension with bad docs, and gives a more helpful message in vscode. pseudoknighta year ago
4d123ef4Checkstyle ladycailina year ago
257909e8Add switch_ic, an ignore-case version of switch ladycailina year ago
621c79bbAdd support for varying priorities of warnings Different warnings are classified differently in the LangServ, including the low category, which prevents the issues from showing up in problem lists. ladycailina year ago
9991bdbdUse event name target instead of bind function when event does not exist pseudoknighta year ago
291befb1Prevent extension startup in LangServ pseudoknighta year ago
49256148Add better logging for an Error thrown in optimize ladycailina year ago
e7c7abe2Don't loge on exceptions in document link ladycailina year ago
2034cb78Stop compiling on change, and do compile on save only. A delay needs to be implemented, otherwise for larger source files, this causes useability issues, since it would attempt to be compiled once per character typed. Creating a delay is necessary, so it waits until no changes have been made for a delay, and only then compiling once. In the meantime, it will just have to be compile on save. ladycailina year ago
032a0dacSupport multiple paths in base-dir ladycailina year ago
e5e1ec1aAdd compiler warning for functional usage of operators This commit adds a compiler warning for when functional notation is used for a function that supports an operator syntax. This only occurs in strict mode, and is still suppressable. ladycailina year ago
1a24743bFix dor() when no values are truthy pseudoknighta year ago
2cbffbd3Add an optional player argument to sudo() pseudoknighta year ago
7eaaf558Checkstyle ladycailina year ago
f1617cf4Use proper document models on change Previously, we just always read from the file system to get the document truth, but that caused issues, and also required users to save to get the compilation hints. Now, the document is only read from disk if the client isn't managing it, otherwise, it reads it from the internal cache which is managed by the client for open files. ladycailina year ago
cb1c84b5Update tellraw functionality. This fixes ptellraw() for non-ops, adds tellraw() for running from console, adds default selectors, and updates documentation and examples to explain the differences. pseudoknighta year ago
2763fcd8Remove and ignore test file ladycailina year ago
219480d1Remove compile time caching of includes. This is too aggressive of a change for now. However, I am keeping the warning if the file doesn't exist (which is now suppressable). ladycailina year ago
1446d8a3Compile included files at compile time. Also add DocumentLink support in the Language Server. This is implemented in a generic way, so extensions can take advantage of this, and if I missed any functions, it should be trivial to add them to the system later as well. ladycailina year ago
27c15796Fix build and typos pseudoknighta year ago
f19e1948Properly support msa files in LangServ ladycailina year ago
305ccd99Keyword errors don't stop compilation Also added object related keywords, which currently all give compile errors. This could break code, but it was going to break sooner or later anyways. Also fixed issues with file options in most of the native classes. ladycailina year ago
8be301d1LangServ now scans the full workspace on the low priority queue. This allows for compile errors to be shown in all files, not just the ones that are open. Fix concurrency issue in NativeTypeList. ladycailina year ago
0b7ee4b0Add checking of bare strings. In strict mode, this is a compile error, in non-strict mode, it's a suppressable warning.Add checking of bare strings. ladycailina year ago
964e9433Don't startup extensions in json-api or verify cmdline modes. This increases the number of current extensions that are usable in these modes. pseudoknighta year ago
d51c0e52Add support for stdio based language clients ladycailina year ago
6771f58eEnable compiler warnings and fix but in json-api Compiler warnings were just printed to the log, but couldn't be returned in a usuable format by the language server. Now, in addition to logging, the warnings are added to the compiler environment, and can be retrieved later. Unfortunately, this meant that the lexer needed access to the Environment, so a new parameter needed to be introduced, and that caused lots of code changes. Additionally, older extensions that lacked the MSExtension annotation would cause issues when loading, because that caused the json-api command to fail. This fixes it so that if the identifier would be missing (thus causing a NPE), we generate an identifier based on the jar name. The VSCode Extension only loaded the language server after the json-api call completed successfully, so this fixes that issue as well, if the user has older extensions. ladycailina year ago
15ecf79aMove target to string in regex functions Also offset column by -2. This is probably done in the wrong place in the code, but this is a quick fix that can quickly be reverted once the compiler itself is fixed. ladycailina year ago
78f4cd03Implement a basic language server. This includes support for code completion, as well as error checking! There are a few issues still, for instance, event and object completion is not working, I'm not entirely sure why not, but that can be solved later. ladycailina year ago
28b18d38Add player statistic functions pseudoknighta year ago
642834dbContinue work on the language server. The basic RequestMessage framework is complete, and we succesfully read in most of the initialize method parameters. It's quite a large method though, and converting the typescript to java is tedious, so there is still more work to be done before the request itself is finished, but the framework is complete and works well, so it's just a matter of finishing the conversion. After that, I need to work on the framework to handle responses, and that's the next big task. ladycailina year ago
3d85856aAdd documentation about how to use extensions ladycailina year ago
bddf2dedUse cached Function in CFunction (#540) michael smitha year ago
e257473bSupport void in booleanish (falsey value) ladycailina year ago
514f4c87Add support for enums in JSONUtil ladycailina year ago
7b19bd85Disable ElementSignature for now There is an unaccounted for signature type, if a method returns a non static inner class, in an outer class which contains generics, this breaks processing, and causes a StackOverflowError. Therefore, since this functionality isn't directly needed, I'm just disabling it for now. Before it can be re-enabled, this bug will have to be fixed. The binary name that it fails on is something like: "()Lobj/Name<TT;>.InnerClass" ladycailina year ago
770e1f17Fix player() in events where the player is offline pseudoknighta year ago
8b888a57Begin the basic structure of the LanguageServer I have also created a basic json->java object->json mapper utility. It has very basic support, but it is in some ways an improvement above gson, and allows for generic support in a bit of an easier way. Due to type erasure, there are still serious problems with really supporting this unfortunately, but this is probably the best that can be done. One remaining task is to implement enums support, before the work on implemenation of the language server protocol can begin in earnest. ladycailina year ago
c20276f9Improve operation time when getting a list of types (#539) TreeSet is much faster since it doesn't have to hash the CClassType. It might even be faster than ArrayList in this case.michael smitha year ago
522b5b49checkstyle ladycailina year ago
36034740Fix 2 bugs in cmdline utilities ladycailina year ago
5bbc3930Checkstyle ladycailina year ago
deb202adDon't use concurrent hash map v2.0 ladycailina year ago
ae6d1340Don't use concurrent hash map ladycailina year ago
595f2b5cCache getAnnotation result ladycailina year ago
3059810eUse cached CClassType earlier in isInstanceOf() (#538) This avoids getting the FullyQualifiedClassName from the annotation again.michael smitha year ago
5b78b4e2Git push origin masterMerge branch 'Pieter12345-trigger_support2' ladycailina year ago
7742ab0dUpdate to newer code styles ladycailina year ago
2afb174cMerge branch 'trigger_support2' of https://github.com/Pieter12345/CommandHelper into Pieter12345-trigger_support2 ladycailina year ago
b33c2f06Merge branch 'master' into trigger_support2ladycailina year ago
84f109c3Trigger Travis CI build The last build timed out. pieter123452 years ago
5b5c7753Merge branch 'master' into trigger_support2pietje2 years ago
70d872c4Hide trigger function Since the trigger() function is completely broken at this time, nothing depends on it. Its documentation should not be on the API for the time being. Hiding this function will also allow us to change its behaviour and implement it properly without breaking peoples scripts. pieter123452 years ago
4522cbe0Fix severe NPE on trigger() + add broadcast_message trigger support - Using the EventBuilder class always resulted in an exception since its static code block threw a NullPointerException. This was caused by attempting to find a BindableEvent implementation for an (in)direct child through only its interfaces, instead of its interfaces and interfaces of (in)direct superclasses. - Add trigger() support for the broadcast_event event. pieter123452 years ago
c3f25a5cRemove CommandHelperEnvironment from the standalone environment ladycailina year ago
9bc6382cGive the Main class some TLC All cmdline tools are in the new @tool format, and the docgen for the tool should be back to being complete, and should also be more accurate as well. The verify tool has a few more options added now, particularly it was too difficult to load extra extensions previously, but with the new format, this was easy to do, and is now done. ladycailina year ago
5004af66Add a check for environment in the compiler This considerable change now adds a distinction between embedded and core functions. Embedded functions have a dependency on CommandHelperEnvironment, and core functions are available everywhere. Now the compiler makes a distinction between the two, allowing for compile time errors for functions that aren't available in that environment. However, there is a need in some cases to compile against other environments, so the tooling and compiler infrastructure has been modified to support the notion of a target environment, not the current runtime environment, hence the size of this change. Additionally, some tooling, such as the verify tool takes advantage of this distinction, to allow users to specify what environments they actually want to compile against. ladycailina year ago
f5efbed6Update the Metrics class for bStats pseudoknighta year ago
9f03cd22Add missing item meta into documentation pseudoknighta year ago
3228e449Rewrite item meta documentation pseudoknighta year ago
89f1f509Add update operation and fork operation Also created a framework to easily wrap github api functionality. The update operation is accessed from the File menu, and essentially is a git pull on the local repo. The fork operation forks the master repo on github, clones it locally, then loads it in the UI. Next up is creating a mechanism to make commits and then make a PR back to the master repo. ladycailina year ago
d741a9d9Add github auth to L10N app. Mostly this was just about expanding support in the OAuth functions to be more robust. It should correctly support more OAuth implementations now. ladycailina year ago
e69603ddCheckstyle ladycailina year ago
961cc3e5Add default url for translations db ladycailina year ago
2c25df01Continue tweaking segment generation, implement filters ladycailina year ago
def3892dCheckstyle ladycailina year ago
c7d8e9eaThe basic features of the l10n ui work, segments are replaced The basic features of the UI are all completed now, including the machine translation integration with azure. There are still a few minor features that need implementing, particularly the segment search feature, the segment filters, and the help file needs to be brought up to speed. The basic replacement logic for the site is implemented as well, and should start working if pointed to a translation DB in the settings, however, the replacement is still not working in several edge cases. Additionally, the site deployment pipeline will need to be updated with the translation DB link once it exists. The logic to select the language needs to be implemented as well. Futher, there are still lots and lots of segments that shouldn't be in the DB, and so I need to add some more filters to get rid of several hundred more. By and large however, the segmentation logic is complete, and anyways bogus segments are a lower priority. The main blocker at this point is the re-application logic on the site. There are a few other things on the website that bypass the segmentation logic currently, particularly menu items and other strings that are defined in frame.html. I think the best approach here is to just manually create entries for them. The UI can probably be modified to add a hidden UI to add new segments, such that it hampers people enough to not casually add segments, but still allow the rare cases where that makes sense to easily and consistently occur, and take full advantage of the UI's validity checking. ladycailina year ago
c61d9310Update recipes to support 1.14 recipe types, input choices, recipe book 'group', cooking 'experience', and 'cookingtime'. This also finally removes legacy support for '0:0' format. pseudoknighta year ago
9c6095cbAdd and improve command tabcompleter examples pseudoknighta year ago
21c1d57eFix 1.13.2 compatibility pseudoknighta year ago
0eac533eLoad extension classes synchronously. CMDHELPER-3179 pseudoknighta year ago
c0ccab3bLog error message when the incorrect jar is used pseudoknighta year ago
e4e791f0Add get|set_blockdata() functions that support blockdata arrays pseudoknighta year ago
5c43a363Add item matching examples for inventory functions pseudoknighta year ago
4f98c63aFix error during compile when proc is not given ivars after classtypes pseudoknighta year ago
f0a6eaeeUpdate SourceVersion for annotation processors pseudoknighta year ago
c61bbac2Checkstyle pseudoknighta year ago
dde3854bLaunch l10n-ui in new process ladycailina year ago
3b14bed5Checkstyle ladycailina year ago
85df0cdcL10N Interface is useful now! Changing settings and saving works now, which is enough to move on to the next step, which is making a local deployment of the site use the translations. There are still a lot of steps to go back and finish up, but I want to get this validated first, so I'm moving on. ladycailina year ago
89017ed2Merge pull request #536 from EntryPointKR/master Add all_materials() functionmichael smitha year ago
47190413Using isLegacy() instead of startsWith() entrypointkra year ago
2b28b20fAdd all_materials() function entrypointkra year ago
231c27d8L10N - Summary segment display works now ladycailina year ago
b624e3faFix concurrency issue in async_read ladycailina year ago
f818c132Fix wrong import ladycailina year ago
7010d012Continue work on localization UI ladycailina year ago
44351ec8First pass at creating UI for localization Most of the periphrial UI components are in place, but a few minor things still need doing. ladycailina year ago
baae127eContinue tuning segments ladycailina year ago
8fdc1d47Fix NPE when the item is null (#535) junhyeong lima year ago
a530bb0eContinue tuning segmentation logic ladycailina year ago
3852734eNearly finished with segmentation. Still need to do a comprehensive review, but by and large it appears to be correct now. ladycailina year ago
cc45597dGeneration of the memory files is nearly complete. Still remaining to do is to finish the segmentation. After that, the remaining total tasks are to write a localization interface for localizers to use, and of course make the site use the translations. Finally, we need to go through all the summary file translations, and decide if a translation is eligible for machine translation or not. Strings that have no values that need to be kept in english can be marked as such, and all locales will accept the machine translation for that string. Then, a tool to actually do the machine translation for the eligible values needs to be written. ladycailina year ago
a8d201beFix composite function stack trace ladycailina year ago
047831b1Fix unknown target in CompositeFunction (#534) * Fix unknown target in CompositeFunction * Not can be cached * Change to catching exception for setTarget * Only set if target file is unknown junhyeong lima year ago
2da3ea62Merge pull request #533 from EntryPointKR/master Fix api usage of offers in item_pre_enchantmichael smitha year ago
304395a3Fix api usage of offers in item_pre_enchant entrypointkra year ago
ff0407f0Fix example in get_values ladycailina year ago
eb6f95ccAdd profiling of compilation of individual files ladycailina year ago
458a3500Begin work on site translation framework. This is still not done, and the generated memories are not currently useable. However, this is a good enough of a stopping place for now. Still to do is to parse tables, which will solve most of the remaining problems on the translation memory side. Still to do is write out the individual pages memories, as well as of course set the site itself up to start using the translations, but this is a good start on the process. ladycailina year ago
2c1e900aAdd ptellraw, which is a simple wrapper around /tellraw ladycailina year ago
467bd445Fix listing dynamic enums in documentation pseudoknighta year ago
8268c0e5Add fireworks "strength" and "effects" to entity_spec() pseudoknighta year ago
0c1d0b2cFix TC build status badge pseudoknighta year ago
8f6841faUpdate build status badge pseudoknighta year ago
3b5cb360Add resource_pack_status event pseudoknighta year ago
9866ea7eAdd html description to api function pages Fix line length in SiteDeploy, and collapse lambdas. ladycailina year ago
847174baMerge pull request #532 from jb-aero/trade Recognize Wandering Traders as Merchantsmichael smitha year ago
c2f6c414Recognize Wandering Traders as Merchants jb-aeroa year ago
6426a8a4Add autoReconnect=true to mysql profile ladycailina year ago
21ecde57Fix more outdated links in documentation pseudoknighta year ago
ff36a0c7Fix some event documentation pseudoknighta year ago
9b6461a0Fix numArgs for set_mob_effect() too pseudoknighta year ago
ea3a36f0Fix numArgs to allow set_peffect icon parameter usage. (#531) bardi harborowa year ago
78bd06fdDeploy jar to root as well ladycailina year ago
3fd99549Totally remove githook ladycailina year ago
43fca260Remove githook ladycailina year ago
c37e83a6Add "result" to player_bed_event event pseudoknighta year ago
d3136aaeAdd Statistics class Also fixed a bug with SiteDeploy where a bad example prevented all the functions from generating. ladycailina year ago
903f256dFix bug in http_request and parse_date ladycailina year ago
e2058a10Add map_implode ladycailina year ago
88a283dfFix build issues in other platforms ladycailina year ago
e491b771Add pre-push commit hook to build first ladycailina year ago
3796bd70Add complex example to parse_args ladycailina year ago
72962e0bFix iclosure() execution polluting the stacktrace pseudoknighta year ago
8a62aeb0Fix outdated links and Minecraft item ids in docs pseudoknighta year ago
7b7e3dc9Allow ~console for scriptas() and executeas() pseudoknighta year ago
691d1d42Fixed issue where ArgumentParser failed to validate long args ladycailina year ago
beb2cca4Change default of USE_COLORS to always be true Not sure why it was dependent on OS before, but it works perfectly fine in modern versions, so we'll default to "useful". ladycailina year ago
380aa4fdFix capitalization on documentation replacements pseudoknighta year ago
091e7893Update Execution_Queueladycailina year ago
fba650bbFix sprintf() when given a dynamic array of arguments pseudoknighta year ago
7aafe064Fix infinite loop in array_rand() when number arg exceeds array size pseudoknighta year ago
72019b9eMerge branch 'master' of github.com:EngineHub/CommandHelper ladycailina year ago
a6489999Word wrap pre blocks ladycailina year ago
a4f4888cAdd Crossbow meta to item arrays pseudoknighta year ago
3609fed4Add EXPLOSION SpawnReason and disableRaids GameRule for 1.14.3 pseudoknighta year ago
8803dd93Update VersionFrontPage recommenededladycailina year ago
6d4ed81fUpdate VersionFrontPage Update info for Windows installation.ladycailina year ago
be70ba8fCheckstyle ladycailina year ago
4757e6f5Now the jar uploads itself with site-deploy Meta. ladycailina year ago
2dbd7073Fix bug that prevented some pages from being generated ladycailina year ago
e9e7d41fFix bug that prevented many pages from uploading ladycailina year ago
b61a184eProvide directions for testing site deploy locally Also have the FrontPage automatically redirect to VersionFrontPage, instead of requiring selection of the version. Add a link to the version directory in the VersionFrontPage. ladycailina year ago
f5bc5d67Merge pull request #530 from PseudoKnight/master Fix void handling for proc return types and assignmentmichael smitha year ago
ebe6fb12Ignore returned value's type when procedure's returnType is auto pseudoknighta year ago
38d94b78Fix void handling for proc return types and assignment pseudoknighta year ago
039763a1Fix operator order documentation and add operator associativity (#529) * Fix Array Subindices operator order + Missing || - Array Subincides operator order should be between Unary and Postfix (to be consistent with the compiler's current behavior). - Add missing || symbol for OR. It could depends on the Markdown parser whether this will work. * Remove empty list entry This fixes an error in alternate colorizing the list rows. * Add associativity to operator order docs pietjea year ago
e8a4cefaAdd support for overriding the id_rsa location ladycailina year ago
2940abeaAdd override-post-script to site-deploy ladycailina year ago
e62742cfUpdate azure-pipelines.ymlladycailina year ago
f3ca081dUpdate azure-pipelines.ymlladycailina year ago
9382b583Update azure-pipelines.ymlladycailina year ago
ca6d2f1bUpdate azure-pipelines.ymlladycailina year ago
e835c36dUpdate azure-pipelines.ymlladycailina year ago
2a6b3965Update azure-pipelines.ymlladycailina year ago
ca6b3019Update azure-pipelines.ymlladycailina year ago
b0c07dfaUpdate azure-pipelines.ymlladycailina year ago
a2ca5f56Update azure-pipelines.ymlladycailina year ago
b2fc818aUpdate azure-pipelines.ymlladycailina year ago
a2aab12eUpdate README.mdladycailina year ago
203eb286ALL_UNNAMED -> ALL-UNNAMED ladycailina year ago
e06c4679Add cmdline-args util, for future compatibility. ladycailina year ago
28715f4bCheckstyle fix ladycailina year ago
729341f8Add cmdline support for Windows. This temporarily removes GUI based support for .ms files, since that was unreliable. It will be re-added at a later date. This adds support for a mscript command in cmd.exe, as well as a PowerShell module, Invoke-MethodScript. The command syntax for these are slightly different, for the cmdline tools, you must use the -Tool switch, rather than the -- switch, but otherwise, it is identical to the unix based system. ladycailina year ago
2066f5c5Add "model" key to item meta to manipualte vanilla's CustomModelData tag for resource packs. pseudoknighta year ago
c01443beMove null check before type check. pseudoknighta year ago
16b5ac50Fix duplicate branding when MSLog prints messages to screen pseudoknighta year ago
d492668aLog a warning about using Java version above 8 and fix related initial loading errors. pseudoknighta year ago
56b405c3Disallow void assignments explicitely, instead of stacktracing ladycailina year ago
2ba2eeadImprove environment cloning on procedure calls. This moves cloning into execute(), avoids the overhead of cloning the IVariableList, and some other minor improvements. This also removes a duplicate proc test. pseudoknighta year ago
627bacc7Fix CVoid check order in IVariable constructor, and create a new constructor for when the value's type does not need to be checked. This improves performance, particularly with procedure calls, by not performing isInstanceOf() unecessarily, which is slower than it once was. pseudoknighta year ago
8732754eFix convertor intializing before class discovery pseudoknighta year ago
a2d26f92Remove unused imports pseudoknighta year ago
a61f13c5Comment out broken Mixed argument check for now. This code doesn't appear to have worked for over seven years and is currently just slowing down script evaluation time, particularly when isInstanceOf() was added in this workhorse section of the code. It might not even be needed, or should possibly be done at compile time only. In any case, we haven't depended on it for several years. pseudoknighta year ago
168e2667Fix array_remove() returning a Java null when an associative array index doesn't exist pseudoknighta year ago
2a183b54Move dynamically registered listeners back to regular listeners for now. pseudoknighta year ago
8f68ededDo code maintenance on CommandHelper and AliasCore. A lot of this code was ancient and had built up cruft over the years. So, this cleans up a number of unused or redundant bits of code (especially in AliasCore.alias(), which is heavily rewritten to be more readable and maintainable), moves logging to the plugin logger where appropriate (avoids issues like double tagging in Spigot), and improves line lengths. pseudoknighta year ago
cf219831Use the plugin logger when possible pseudoknighta year ago
abfdf9dcUse eval when we don't use the return value pseudoknighta year ago
7f9d5ad4Add temporary fix to "Using undefined variable" runtime error message during compile pseudoknighta year ago
c022369fAdd missing SHEARED spawn reason pseudoknighta year ago
d16b2fd2Add execute_array ladycailina year ago
9a16aba2Fix player event documentation formatting pseudoknighta year ago
e2a8697bFix some block_break issues pseudoknighta year ago
ebfef602Fix refactor mistake "CHLog" -> "MSLog" (#527) pietjea year ago
fde15a9aFix and update more out-dated documentation pseudoknighta year ago
860b809eBuild against Spigot 1.14.2 pseudoknighta year ago
e65233b9Fix ClassCastException when setting potion meta for an arrow in 1.14 pseudoknighta year ago
6cde22d5Fix bug in iclosure() Fix bug in iclosure() returning the wrong type of closure given an empty closureladycailina year ago
c66c7267Update assign(NotAnIvar, ...) error message (#525) pietjea year ago
1a11de25Loosen restrictions on spawnable entity types with spawn_entity() and fix exception for an invalid hanging spawn location. pseudoknighta year ago
553b7555Add SPECTRAL_ARROW to entity_spec and fix arrow/trident handling on 1.14. Spigot's Arrow class was basically renamed to AbstractArrow, which Arrow, Trident, and SpectralArrow extend. Also, TippedArrow was renamed to Arrow. This makes it tricky to support both 1.13 and 1.14 here, so I've just implemented all the AbstractArrow methods in each entity abstraction class, and no longer extend MCArrow to avoid cast exceptions. pseudoknighta year ago
45d2d45dFix getting Lectern inventory pseudoknighta year ago
97deebd7Address deprecated BroadcastMessageEvent constructor in 1.14 pseudoknighta year ago
8b6a629eFix site deployment on Windows pseudoknighta year ago
34faf08cFix heap_dump() where only hprof file suffix is allowed pseudoknighta year ago
2dd1e8c0Add arrow "damage" to entity_spec pseudoknighta year ago
2f3ff7cfUpdate Datahandling docs (#524) - Fix + extend proc() docs (proc name is not optional). - Fix closure docs (they take variables, not variable names). - Use `params` for proc and closure parameters. This is what they actually are and this is consistent with bind(), which calls them custom_params.pietjea year ago
f5c7327eFix docs for nameof ladycailina year ago
7bc6e2b3Replace deprecated entity max health methods pseudoknighta year ago
c02f6ef4Add set_keep_spawn_loaded() function for worlds pseudoknighta year ago
d0d4a9d9Update regen_chunk's deprecation and operational status pseudoknighta year ago
73537941Unwrap InvalidProfileException so that it can be caught further up the stack (CMDHELPER-3175) pseudoknighta year ago
9a2d06a4Fix broken links and add missing Prefilters page in documentation pseudoknighta year ago
7cbdf86fMerge pull request #523 from EngineHub/1.14 1.14 Supportmichael smitha year ago
dccb4302Fix a few entity management issues. - Fix OCELOT and MUSHROOM_COW entity_spec in 1.13.2. - Add DROWNED to entity_spec, which was already in the docs. - Clarify the removal of LINGERING_POTION in docs. pseudoknighta year ago
4852ddc0Move control flow functions to ControlFlow class (#521) Control flow functions were divided over BasicLogic, DataHandling and Echoes. This commit creates one class with all control flow (branching) functions. - Move control flow functions to ControlFlow. - Move corresponding test cases to ControlFlowTest. - Fix 120 character line limit in moved code.pietjea year ago
394f88a0fix: pom.xml to reduce vulnerabilities (#522) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JAVA-MYSQL-174574snyk bota year ago
19bf62b8Fix foreachelse documentation (#520) The optional 'key' argument was missing.pietjea year ago
dbcb5d47Add new banner pattern: GLOBE pseudoknight2 years ago
de3d87a4Add foxes and mushroom cows to entity_spec() pseudoknight2 years ago
58020789Fix enabling plugin on 1.13.2 servers pseudoknight2 years ago
911deb10Add support for Minecraft 1.14 The following breaking changes exist for all servers: - Virtual inventories can no longer be larger than 54 in size. - You can no longer create virtual beacons. The following breaking changes exist for 1.14 servers only: - Villager professions have completely changed. - The "creationradius" and "searchradius" in entity_portal_travel and player_portal_travel have been removed. - Ocelots can no longer be tamed or sit. - The following materials are removed but will be converted in legacy item arrays or when using set_block(): CACTUS_GREEN, DANDELION_YELLOW, ROSE_RED, SIGN, WALL_SIGN. - TIPPED_ARROW and LINGERING_POTION entity types no longer exist and will be converted to ARROW and SPLASH_POTION respectively. In addition, shoot_projectile() has been rewritten to be more consistent and support almost all entities. pseudoknight2 years ago
2cb51828Checkstyle ladycailin2 years ago
40be0834Add nameof() ladycailin2 years ago
04746507Fix error reporting bug ladycailin2 years ago
3b7110d5Checkstyle ladycailin2 years ago
25a19a4adefine_object now accepts superclasses and interfaces ladycailin2 years ago
5ef3f89eRemove whitespace from logo ladycailin2 years ago
2b31771c`@var =` now throws a proper compiler error ladycailin2 years ago
793c0773Merge branch 'master' of github.com:EngineHub/CommandHelper ladycailin2 years ago
a05dfbe6Add test for closure(), and fix bug related to that ladycailin2 years ago
f7f46eb5Add tracking info to an Error, so we can see what's causing it ladycailin2 years ago
c298e458instanceof -> isInstanceOf, add unit test for define_object ladycailin2 years ago
32ddbf8fContinue work on native code, normalize indentation ladycailin2 years ago
bec22722Checkstyle ladycailin2 years ago
2a849b28Create UnqualifiedClassName Elements that are not yet fully defined, but can't be defined yet can now use UnqualifiedClassName. This can't be used during normal use, but can be used in the middle of compilation. This solves the bootstrapping problem that is faced when a class definition extends/implements a class that hasn't been defined yet, and so thus cannot be fully qualified. Once the classes have all been initially defined, we can go back through the list of ObjectDefinitions and call qualifyClasses, which will fully qualify the previously unqualified class names, and throw an appropriate exception if any of them are unknown. Also, rename Objects to ObjectManagement, to match the theme. ladycailin2 years ago
62eb4e30Adjust compiler to pass commas through for ObjectDefinitions. Begin work on ObjectDefinitionKeyword to rewrite classic class definitions into the functional declaration. Implements keyword is nearly supported, but only in the happiest path, more test cases are needed, and certainly there are some currently unsupported cases. The tests are Ignored for now, since they still fail. ladycailin2 years ago
9dfbabf5Support windows newlines in modules file ladycailin2 years ago
e304652eUse a more efficient mechansim for scanning for Functions/Events Also, use a simpler (but no more efficient) method for loading jarInfo.ser ladycailin2 years ago
c43380a6Seriously improve startup time from cmdline ladycailin2 years ago
21a7103eWhen loading classes from ClassReferenceMirror, use the default CL Don't use the loader that loaded the CRM class, it doesn't know about dynamically added extensions. ladycailin2 years ago
455979b0Update README.mdladycailin2 years ago
5d227a1fAccidentally a line ladycailin2 years ago
9303034fUpdate README.mdladycailin2 years ago
c8235b4eProvide a stopgap measure for isInstanceof CFunction ladycailin2 years ago
d2063678Provide a stopgap measure for isInstanceof CFunction ladycailin2 years ago
b89f8b4aCache CompilerEnvironment in AliasCore, and use it in alias() Additional changes have been made in the core classes, after some further thinking on the situation. ladycailin2 years ago
e2887b41Update README.mdladycailin2 years ago
f30b06cbUpdate README.mdladycailin2 years ago
3ee1bdf1Use isInstanceOf everywhere. (#518) * Use isInstanceOf everywhere. This changes the code everwhere to use .isInstanceof instead of instanceof, since this is needed for user objects to work. However, the code is *incredibly* slow, so much so that RandomTests takes 60 seconds on my computer. I added some caches, but that didn't really work well enough either. So the next thought is to add this to the jarInfo perhaps, but even still, once user classes are added,that will increase startup time even more, so I think this has to be solved in a more general way. I think the next step is to very closely examine the code path of isInstanceOf, and see what steps are there today, and figure up if any can be removed, replaced with more efficient mechanisms, or at least further cached. This will serve as the basis of the continued work on objects, but until this is fixed, it utterly kills the runtime performance, and simply cannot be merged in to master. * Add some caches to speed things up in the course of operation * Add minor optimization to CClassType If both compared classes are native, and one extends the other, we can reliably say it is an instanceof, so just use the native java instanceof mechanism. This only helps a tiny bit, but it does help, so this will stay, even though this is not the correct solution. * Probable fix for slowness. This commit caches the native class along with the FQCN, which can be used to seriously speed up the lookup elsewhere, particularly when using instanceof. The only exception to this is DynamicEnums, but there are so few of those that it doesn't cause enough of a performance hit. This speeds up RandomTests by an order of magnitude, but there were other performance increases that should have helped some as well (though not an order of magnitude.) The end result is that this should actually be a bit faster than the original code anyways. * Add better logging when the NoClassDefError is thrown ladycailin2 years ago
9b1fc862Update README.mdladycailin2 years ago
327949d1Expand the native class library, and add more detail to the design docs ladycailin2 years ago
33ba80bbFix core error when setting a single trade to a merchant pseudoknight2 years ago
ab5eba9fIgnore this deprecation pseudoknight2 years ago
d46d14a4Add better logging when getting a broken BlockState from item meta pseudoknight2 years ago
775d757cFix format errors in event documentation pseudoknight2 years ago
b1ad0396Fix optimizer-test error when comp_read was used Also clarify documentation in a few places. ladycailin2 years ago
4f688776Checkstyle ladycailin2 years ago
93875304Improve trace, remove uselessly verbose debug startup logs ladycailin2 years ago
0b710903Add array_push_all, x_find, string_contains_ic. Also fixed a bug in parse_args, and rewrote string_contains as a CompositeFunction. ladycailin2 years ago
3594c5c4Don't use profiles in the standalone environment if they don't exist ladycailin2 years ago
2d41ef20Revert changes in ArgumentValidation. This proved to have devastating consequences to the performance of the system, and for the time being, reverting this is the best course of action. Something downstream of isInstanceOf is taking far too long, and for a method that would be called extremely frequently, this needs to be heavily optimized before it can be widely used. ladycailin2 years ago
f1cd232aDon't enumerate types without typeof, just check for typeof. ladycailin2 years ago
d08de403Include a compiler environment in AliasCore ladycailin2 years ago
a1427057Continue working on Objects ladycailin2 years ago
0515a362CHLog->MSLog Also make the categories/modules loaded dynamically, instead of depending entirely on the enum. This now allows categories to be defined elsewhere in code, including in extensions. Continue work on Objects as well. ladycailin2 years ago
756e3c3bUpdate NewObjects Add roadmap for inner classes.ladycailin2 years ago
89254c24Continue working on the functional approach to object creation. define_object and new_object are new functions, which will serve as the foundation of the object management system. They will not be used directly, the compiler will support specific syntax sugar for these methods, but the methods themselves are separated from the compiler. Currently, defining the class works, (it successfully puts an empty class into the ObjectDefinitionTable) though most of the rest of the system works with the NativeTypeList, rather than the ObjectDefinitionTabble, which is a problem that must be corrected before most things will recognize user defined classes. new_object does not work yet, but progress has been made at least. Additionally, FileOptions has added a copyright and license field, as well as an UltraStrict compiler option. This will be used in the future to make a super pedantic mode, and will be used in all native classes to ensure perfect compliance with all standards. It is not necessarily recommended for use in user code, but none-the-less will be available and advertised. ladycailin2 years ago
103cb548Use super not @super ladycailin2 years ago
8fb54fafObject table (#517) I am going ahead and merging this in to master, as it will be too difficult to manage two different branches for that long. So instead, I am going to do a slow rollout, while making some features available sooner than others, though until the features are all ready, they should not be used, and are subject to complete change. "The features" refers to anything at all related to objects. * Begin work on creating the ObjectTable object chain. This will eventually be the underlying mechanism which holds the defintion of all objects. The first step is to create the structure, the second step is to be able to fill it in with native classes. There are several other steps after this to make it useable, but these are the steps necessary to make it complete. After it is complete, the next step will probably be to just allow native types to provide properties, but this will require quite a bit of work, especially when it comes to ensuring that all the necessary info is available through annotations, and parameters are all compatible with Mixed, etc. However, finishing the ObjectTable will be a great first step. * Add ObjectHelpers. Support generic parameters in NonInheritsImplements. Begin work on a POJOConversion framework, which will allow the exposed methods in a native object to use POJOs, while transparently in the background, the values are converted to and from Mixed values for use in user code. This should make the code much easier to write, and much faster as well. It may also assist in the future if there is a need to map third party classes into the ecosystem. * Expand on the object model in the design docs Also write the design docs for dependency injection. * Wrote more on topics, write some of the standard library. Several more sections have been added to the objects design doc, as well as a small section about manifests and annotations. In addition to this, a new cmdline tool, new-type has been a...ladycailin2 years ago
daf2cabcAdd "color" to potion item meta pseudoknight2 years ago
9bad4e20Bump version of checkstyle ladycailin2 years ago
b1264f75Update front page with VSC link ladycailin2 years ago
02126bc4Add compile check for unexpected symbols ladycailin2 years ago
c3628ab5Add Closure.executeClosure, and deprecate .execute .execute required the programmer to ensure that the FunctionReturnException was caught, and if not caught, would cause errors. By default, one does not catch runtime exceptions, so executeClosure does that, and if one is thrown, returns it as a value. Additionally, some deprecated code was cleaned up, and a bugfix in site-deploy was made. ladycailin2 years ago
d776c66eAdd exceedingly basic support for annotations. They do nothing yet. ladycailin2 years ago
a1b5c5e9Expand further on the UnitTest design doc ladycailin2 years ago
33b2902aMove hypot to use the bundled code paradigm ladycailin2 years ago
c483aea0Add hypot function ladycailin2 years ago
b1853e2bAdd design doc for unit testing ladycailin2 years ago
faa60253Add design doc for unit testing Also update the Style Guide with more details, and add a package name to FileWriteMode. ladycailin2 years ago
b85e9cd1Move more cmdline tools out of the if/else chain ladycailin2 years ago
435c098dAdd json-api cmdline tool, to print api.json locally ladycailin2 years ago
34871956Fix bug in cmdline documentation ladycailin2 years ago
b7439c9eFix a bug in site-deploy and syntax highlighter ladycailin2 years ago
4dcd9f27checkstyle ladycailin2 years ago
eda91d55Fix parsing bug for httpVersion in http_request ladycailin2 years ago
7b8726e9Revert strict mode change, as it has further reaching impact than expected ladycailin2 years ago
4d9f8bf3Implement no bare-strings in strict mode. Additionally, implement a runtime setting to enable strict mode. This is mostly useful in the interpreter, but can also be used by other code. ladycailin2 years ago
78c30268Show different colors for restricted functions in api tool ladycailin2 years ago
92c2955dAdd runtime option that totally disables eval() ladycailin2 years ago
ea0363ffRemove get_runtime_setting and other minor changes ladycailin2 years ago
b6a1b336Add runtime settings. Primarily, this adds the ability to check and set runtime settings. Generally speaking, this is a very generic mechanism though, but currently console and remove_runtime_setting now use this mechanism. ladycailin2 years ago
dc1d0373Add compilerOption file option setup Currently, AllowAmbiguousCommands is the only option, but if present, this disables the ambiguous command checking for that script. In general, it is now also set up so that in the future, more compilerOptions can easily be added. ladycailin2 years ago
ea32c2a0Fix ambiguous alias definition in sample code pseudoknight2 years ago
7e3cda6bFurther clarify valid lengths for scoreboards pseudoknight2 years ago
69b7daf1Add functions to manage the player list header and footer pseudoknight2 years ago
410fc3b8Throw a helpful exception when errant new lines are in a persistence key pseudoknight2 years ago
659a3c28Implement array_index_exists per the specification. Previously, it only accepted one element, but the documentation stated that it should support dereferencing multi dimensional arrays. Now the documented behavior is implemented. Ironically, due to the way the code functioned, the example showing that code was correct, but for the wrong reason. ladycailin2 years ago
0c174369Finish implementing branch statements generically (#516) Finish implementing branch statements generically This allows for new functions to define themselves as branch functions in a more precise way, and allows for dead code removal in all cases.ladycailin2 years ago
b11eceebCheckstyle ladycailin2 years ago
6e95fcaaAdd BranchStatement and VariableScope. Neither of these are used yet, and not all the functions that need to implement them do. Still to be implemented are (at least) dowhile, while, foreach, foreachelse, for, proc, closure, (iclosure, rclosure), and probably some others. Once all of these functions implement these, then the compiler/runtime can be modified to start using them. The BranchStatement implementation will have less impact (none, other than catching user bugs), but the VariableScope implementation will have a LARGE impact, and needs to be more carefully implemented. Since many BranchStatements will also be VariableScopes, it is worth going ahead and implementing that part of the logic though. ladycailin2 years ago
9f7caf7bFix a bug in foreach ladycailin2 years ago
b74c4900Highlight @arguments differently in vimladycailin2 years ago
46f59931anyDoubles now checks for double-like strings This will eventually be the basis of the doubleish type, but for now this will apply to everything. ladycailin2 years ago
b24666baExpose prompt_char as a java function ladycailin2 years ago
bb995738Provide a dynamic method to add cmdline tools. This allows better categorization and organization of cmdline tools, but most importantly, it allows for extensions to snap in tools. Both the old and the new mechanism are currently supported, but in the future, these will all be ported to the new system. ladycailin2 years ago
e5ff148aClean up DataSource classes Also add always_trace, which works like trace, but always shows, regardless of debug-mode. ladycailin2 years ago
934848eaCheckstyle ladycailin2 years ago
6c5b7542Delete obsolete DocGen UI, update UI tool Update Help file in PNViewer to link to the new website. ladycailin2 years ago
22b465ceAllow regex search in api tool and interpreter ladycailin2 years ago
60a58799Update public-suffix.dat ladycailin2 years ago
113705d5Add help command to interpreter, which is like the api cmdline tool The api tool gave help information about functions, and now this functionality is available directly within the interpreter. The documentation itself has also been substantially improved, with support for removing html tags, doing some wiki formatting, and formatting tables in a more console friendly way. The underlying code is accessible publicly through the Interpreter class, and may be used elsewhere in the future. ladycailin2 years ago
2efc14ffUpdate LICENSE.txtladycailin2 years ago
a00162d9Add a Booleanish interface. (#514) Add a Booleanish interface. This allows objects to specifically declare that, while not booleans themselves (except CBoolean), they do have a way to convert to a truth value. This distinction allows functions like if and for to formally declare that they accept a Booleanish value, but others, will only accept an actual boolean value. As it stands today, everything accepts booleanish values, and that is unfortunate, but that will be addressed when strong typing is added, so that it will reduce most of the errors that would be runtime. There are a few other refactorings in this PR, mainly the change from Static.getBoolean to ArgumentValidation.getBoolean. Also added an Iterator class, which functions as the old ArrayAccessIterator, but in a slightly more generic way, working with Iterable objects instead. Iterable is just an amalgam of ArrayAccess and Sizeable, and ArrayAccess no longer extends Sizeable, which now allows for things that don't inherently make sense to be iterable still have array access, without Sizeable.ladycailin2 years ago
50fbeb72ArrayAccess is not Sizeable ladycailin2 years ago
d6dedaecDocumentation updates ladycailin2 years ago
67fa0606Add legal disclaimer ladycailin2 years ago
1d990798Grab the modules list from the jar directly This prevents needing a re-install each time the module list changes, which I'm sure it will continue to do. ladycailin2 years ago
a0b8b5c6Fix missing interface declaration ladycailin2 years ago
c4ae56e3Add a Booleanish interface. This allows objects to specifically declare that, while not booleans themselves (except CBoolean), they do have a way to convert to a truth value. This distinction allows functions like if and for to formally declare that they accept a Booleanish value, but others, will only accept an actual boolean value. As it stands today, everything accepts booleanish values, and that is unfortunate, but that will be addressed when strong typing is added, so that it will reduce most of the errors that would be runtime. ladycailin2 years ago
1f0e10aaAdd java.util to the allowed packages ladycailin2 years ago
4842ccd3Update public-suffix data ladycailin2 years ago
ba44e226Remove references to Main from code that shouldn't actually use it ladycailin2 years ago
8428acabNative clamp (#513) Make clamp() work as a composite function Moving forward, this is the most ideal way to code general purpose functions that don't specifically require platform support. This should make these functions portable if the backing engine is changed from Java to something else, as well as once things like compilation to native are supported, etc, these will be automatically picked up once the underlying functions are all supported. clamp() is a good example of a function for this, as it has no external dependencies, is purely a math based function, has a simple implementation, but takes full advantage of the optimization system. There are also improvements to the ArgumentParser, along with a few bug fixes in that area. ladycailin2 years ago
24154e67Checkstyle ladycailin2 years ago
db7182abAdd build-extension tool to cmdline tools This allows for systems with git and maven installed to quickly and easily pull down and build extensions. Assuming the extension is properly set up with git and maven, the only need is to provide the clone url to the tool. The tool will then git clone the repo, and use maven to build it, and finally, copy the artifact into the chose extension directory, defaulting to the current installation's directory. This commit also fixes a couple of bugs. First, there was a potential memory leak in CommandExecutor, as well as the fact that it closed System.out/err. This would, I believe, have minor impact, as only a few things would have used the buggy modes, but it did affect the site-deploy tool, as well as shell_adv. Secondly, when running in Java version 9 or above, every startup would warn of reflective access. When launching MethodScript with the mscript shortcut, it now provides the proper command line parameters to suppress this warning. This would not help when using the jar directly, and anyways is not a permanent fix, but in the meantime should be less annoying until Java 9+ is officially supported. ladycailin2 years ago
0da70ce2Add debug logging to SQLite retry ladycailin2 years ago
3aaeaed9Fix and optimize entities_in_radius(), and avoid unnecessary chunk loading. The chunk radius was off by one and would miss entities on the outside chunks. It would also ignore any entities in the same block location as the center location. Chunks were also being loaded by this and some other functions, causing unexpected performance problems. pseudoknight2 years ago
16d1c45eFix seealso path for function docs ladycailin2 years ago
c5c30872Various more fixes for http_request ladycailin2 years ago
25a26555Support Brotli encoding in http_request Also allow decompression to be skipped in the options. Speed up provisional-build by skipping code coverage calculations. ladycailin2 years ago
082e0c0aCheckstyle fixes. Also, after further consideration, fixed the bug I just introduced. ladycailin2 years ago
f35e4da9Various improvements and bugfixes in http_request ladycailin2 years ago
bdbe7d99Possible fix for unit test failures on Travis ladycailin2 years ago
50f46129Add extra logging for diagnostics ladycailin2 years ago
16ec0099Add requiredExtensions directive, and implmnt compiler warning for name ladycailin2 years ago
b6ffd402Ignore failing unit test while investigation is ongoing ladycailin2 years ago
b20d8708Docgen updates Also fixed a bug in FullyQualifiedClassName that affected vim syntax highlighter generation, and added unit tests for that. ladycailin2 years ago
cb84d45dRename public-suffix.txt->dat ladycailin2 years ago
d650aae7Update Permissions_Settingsladycailin2 years ago
4c327a28Update public-suffix.txt. Also, created a mscript to simplify doing this in the future. ladycailin2 years ago
165f16f0Add x_write, for cmdline use only ladycailin2 years ago
0a7f9d6bFix reflect_pull() for dynamic enums (#512) michael smith2 years ago
4d7bbbf0Update Exceptions docs ladycailin2 years ago
4189a598Correctly handle SOE in includes. Also, add more detailed information to the profiler message for include, and add includes to the stacktrace. ladycailin2 years ago
8f3478adRe-wrap SOE in closure's execute also ladycailin2 years ago
39e5f225Re-wrap SOE and use CRESOE, so we get more useful errors and can generally support this in the exception system. This might need to be added to the execute method as well. ladycailin2 years ago
48e260d8Fix site-deploy Now, in addition to fixing the actual issue (in a way that that won't happen again), we now also print out usable error messages. For whatever reason, Logger was not working, so instead of fixing that, it has simply been removed, and made to work with the existing paradigm anyways. This should make it easier to diagnose errors within the documentation itself in the future. ladycailin2 years ago
06fe308aProperly pass column information through the exception system Previously, the causedBy section of the exceptions were not properly printed in the default unhandled exception handler. Now, the column information that is passed through is properly printed (though I think the column information itself is still not accurate, but this is a problem in the compiler, not the exception system). Also added "at" to the beginning of each stack trace line, which brings the format more in line with other languages stacktrace prints. ladycailin2 years ago
b24b6dc4Add ValueType semantics This allows objects to mark themselves as value types. Currently, all primitives are marked as such. In the future, the compiler may be able to further optimize these types, particularly if true compilation is added. For now, this is unused, and the compiler treats everything as pass by reference, but this is not ideal. At least going forward now, the ValueType class is established, and other classes can go ahead and start marking themselves as such. Eventually, this mechanism can probably be exposed to user classes, but for now it is internal only. ladycailin2 years ago
dbeef875Checkstyle ladycailin2 years ago
bae58755Fix compiler bug when dealing with bad breaks Previously, when using the break(1) format, if the integer wasn't atomic, then this would cause a java stack trace. Now it causes a normal compile error. ladycailin2 years ago
2c40de74Add a more helpful error message ladycailin2 years ago
5128f80dCatch Error too This allows us to always (at least attempt) to print an error message. While OOME will still leave us in a precarious state, we should at least attempt to print out a helpful error message. ladycailin2 years ago
4964181dConstruct to mixed2018 (#511) This set of changes completes the goals of the original construct-to-mixed branch. Function unfortunately worked with Constructs, rather than the Mixed interface. This was a violation of the Dependency Inversion Principal, which has prevented several critical improvements to the language. The problem is that in Java, there is not multiple inheritance, so while normal classes could easily extend Construct and then be added into the ecosystem, for other types of classes, where it's impossible to extend Construct (particularly because they are already extending another class, which is true in at least the cases of enums and exceptions), these objects simply could not be added into the ecosystem. Now, everything accepts and for the most part deals with Mixed, which is an interface. This has the unfortunate side effect of breaking binary compatibility with extensions, but this change has been in the works for at least three years. As part of this change, implementing enums was used as a test case. That has now also been done, and barring a few bugs, seems to mostly work. This allows access of enums as first class objects, rather than as arrays of strings as previously implemented through reflect_pull. The PR opens lots of possibilities in the future, and so is a welcome change to the base, but there are a few short term goals after this PR is merged: * Move exceptions into first class status. Currently they are implemented as arrays, but this is a shoehorn and not ideal. * Write up documentation for Enums. There is some documentation already available, and this may be mostly correct, but it should at least be read through to ensure it is correct, and then linked to the learning trail. It's also possible to iterate enums with foreach, and so this should be added as an example in various places. * There are still a few bugs with enums, particularly it is not possible to assign an enum class to a variable. ClassType @s = ArraySor...ladycailin2 years ago
676db513Fix docs for uuid ladycailin2 years ago
6cb2e611Add NativeObjectArchitecture design doc This is in conflict with the NewObjects design doc, and these conflicts need to be thought through and one or the other changed. My current thinking is to use the style defined in the NativeObjectArchitecture doc, but I need to think more on this. ladycailin2 years ago
9fc3c9ebRefine cross casting docs ladycailin2 years ago
020ebe2aRefine ObjectUsage docs ladycailin2 years ago
1ff50aabCreate documentation for Object Usage. This defines the design and syntax for how objects can be used. ladycailin2 years ago
33140f6dAdd "special casing" blurb to design ethos page ladycailin2 years ago
798a8630Ignore VFSTest file while Travis is failing ladycailin2 years ago
d277e00aSwitch to using windows agent for azure buildladycailin2 years ago
7aa092c8Update README.mdladycailin2 years ago
300cff38Update README.mdladycailin2 years ago
c05414c6Checkstyle ladycailin2 years ago
ff751656Continue work on VFS ladycailin2 years ago
eab485efAdd glob matching to VirtualGlob, and enable unit tests ladycailin2 years ago
3cc5250eMake test code handle null from thrown Fix test failure in uuid() ladycailin2 years ago
38944856Expanded the funcionality of uuid. The default behavior is the same, but now it takes a type parameter, which currently only supports NIL and RANDOM, but will be expanded later to support all 5 versions of UUIDs. The documentation is more detailed, and there are examples now, and it is set up to easily return the other types of UUIDs later. ladycailin2 years ago
dd81cf48Add uuid() to generate uuids ladycailin2 years ago
9952089cSupport tridents for shoot_projectile() and entity_spec() pseudoknight2 years ago
43b2850eFix incrementing/decrementing doubles in arrays pseudoknight2 years ago
f5842d62Merge branch 'master' of github.com:EngineHub/CommandHelper ladycailin2 years ago
30d1b45eCheckstyle fixes ladycailin2 years ago
5b1f3bcaIgnore some failing tests ladycailin2 years ago
5453b915Merge branch 'master' of github.com:EngineHub/CommandHelper ladycailin2 years ago
714e64a0Continue working on VFS. Add more comments and unit tests, though everything is disabled for now, since it's not usable in code yet, and most things don't work. I have identified the tests that need to pass for a minimally viable product, so once those are completed, I will integrate the system into MS proper. ladycailin2 years ago
9e883eaaUpdate azure-pipelines.ymlladycailin2 years ago
4a2e6d35Set up CI with Azure Pipelinesladycailin2 years ago
e84f4299Move subset out of intersect ladycailin2 years ago
52dd0c47Re-add array_subset_of, which disappeared somehow ladycailin2 years ago
8f7d354dMerge branch 'master' of github.com:EngineHub/commandhelper ladycailin2 years ago
d68b63dcAdd ByteArrayUtils class ladycailin2 years ago
60036af6Fix furnace recipes pseudoknight2 years ago
3fbde6f6Add "color" to scoreboard teams pseudoknight2 years ago
27124a46Add get_entity_riders() and clarify behavior of rider functions. Also fix core error when horse and rider are identical in set_entity_rider(). pseudoknight2 years ago
e1fabec4Fix ponline() when given a UUID pseudoknight2 years ago
e88b4400Fix item_pre_craft event pseudoknight2 years ago
de97884eMerge branch 'master' of github.com:EngineHub/CommandHelper ladycailin2 years ago
a7e17987Add additional example with duplicate values ladycailin2 years ago
afe88730Merge pull request #507 from jb-aero/recipes Add functions for managing the Villager-style trading system.jb_aero2 years ago
491c18c9Throw exception when trying to reuse ID jb-aero2 years ago
6a594f1bmerchant_trading -> merchant_trader jb-aero2 years ago
b8996e97Remove trade storage and recipe format reliance. jb-aero2 years ago
754381a8Add merchant_trading check function. jb-aero2 years ago
11110b59Establish Trades class of functions jb-aero2 years ago
0df4eb1eAdd get_merchant_recipes and make extra settings of merchant recipes optional jb-aero2 years ago
e67bc0ebAdd abstraction for merchant recipes. jb-aero2 years ago
81952474Add array_intersect, and others Also added a default hashCode method to Construct, (as well as a very thin hash() method that wraps that), which is used by array_intersect. ArgumentValidation.getEnum is added as well. A -e option has been added to the api command in the cmdline tools, which displays the examples for a function. CArray now implements Iterable, but throws an exception for associative arrays, as that doesn't make as much sense to happen. ladycailin2 years ago
485e430cSupport sprintf in Java 9. Also checkstyle fixes. ladycailin2 years ago
430960a0Implement keySet in CString, and others Use ArrayAccess in array_implode, to allow strings (and other Array-like objects) to be imploded. Support CClassType in array_sort. Move mixed to ms.lang namespace. ladycailin2 years ago
964fd760Update sponsors ladycailin2 years ago
4dc0b425Merge branch 'master' of github.com:EngineHub/CommandHelper ladycailin2 years ago
3de55bc8Add --online parameter to api command ladycailin2 years ago
e745cd42Fix checkstyle and unit test ladycailin2 years ago
c4ddf34dAdd set_debug_output ladycailin2 years ago
97911c00Merge pull request #508 from EngineHub/add-namespaces Add namespacesladycailin2 years ago
ee54b7daChange :: to . in FQ class names ladycailin2 years ago
51eb6e10Add comment ladycailin2 years ago
856ba9f6Checkstyle fixes ladycailin2 years ago
dd1ed43fAdd namespace support for native types For the time being, there is no mechanism to add user classes, or even using() statements, but now at least the mechanism is fully defined, and the fully qualified class types are displayed and internally tracked. The syntax for now is :: as the separator, but it will probably change to . after some discussion and a deprecation period. ms.lang and com.commandhelper are default namespaces, and do not need to be specified, and in fact, at this time cannot be specified, as there is currently no supported way in code to fully qualify a class type. com.commandhelper will eventually be removed once the CH functionality is split out, but will be extensible by the embedding program, so will be added back in specifically for CH scripts. Before . can be used as the path separator, there needs to be a deprecation period, for non-strict mode users, they could potentially be concatenating bare strings, and that would interfere with this mechanism, so this "feature" must be removed. ladycailin2 years ago
867e0716Merge branch 'master' of github.com:EngineHub/commandhelper ladycailin2 years ago
dba776a5Cmdline fixes ladycailin2 years ago
391a19ccUpdate Cross_Casting Documentation updateladycailin2 years ago
eb502a1eMerge pull request #502 from Pieter12345/1.13-dev Add sender type to server_command eventmichael smith2 years ago
2411a0e9Change server_command sender type "type" -> "sendertype" This is a change for the previous commit. pieter123452 years ago
0d5b5271Add sender type to server_command event Add sender type to the server_command event. This can be one of: console, command_block, command_minecart of null when CommandHelper does not know the command sender implementation. pieter123452 years ago
52c69d40Fix modifying item in item_pickup pseudoknight2 years ago
2c9f48a5Support blockdata strings in psend_block_change() pseudoknight2 years ago
67779b53Merge pull request #505 from EntryPointKR/master Fix non include file encoding to UTF-8ladycailin2 years ago
6546bd98Fix not include file encoding to UTF-8 limjunhyeong2 years ago
ddefc886Fix enum lists in event documentation due to formatting issue pseudoknight2 years ago
0b87a48fAddress some deprecations pseudoknight2 years ago
649b753dUpdate documentation for Minecraft functions pseudoknight2 years ago
75dc6d0fAdd keyword support to reflect_pull ladycailin2 years ago
34a6f3f3Add snyk.io badge ladycailin2 years ago
696d76b8Remove substance, update public suffix ladycailin2 years ago
c6dcf7e3Ignore empty skull owner strings pseudoknight2 years ago
dfce8d06Merge pull request #503 from Pieter12345/master Fix get_server_info and world_info documentationmichael smith2 years ago
d56085abFix get_server_info and world_info documentation - Allow flight disables (not enables) the anti-flight. - Add missing maxHeight key. pieter123452 years ago
76145824Fix getting the id of certain virtual inventory types. This is due to a recent change in how Bukkit handles creating certain inventory types like Hoppers. Bukkit now ignores any holder you pass in for these types, returning null if you retrieve the holder from these inventory objects. pseudoknight2 years ago
66cd5102Modernize syntax in advanced scripts page pseudoknight2 years ago
c87a1d3aUpdate Compatibility page pseudoknight2 years ago
7277e87cMerge branch '1.13-dev' of https://github.com/EngineHub/CommandHelper pseudoknight2 years ago
d4744f5aPrepare for merge pseudoknight2 years ago
90d3bc1bRelease 3.3.2 pseudoknight2 years ago
68bedf15Add changelog for 3.3.2 pseudoknight2 years ago
eb709da6Merge pull request #500 from Pieter12345/1.13-dev Handle block-specific trait exceptions in material_infomichael smith2 years ago
7ae28a70Handle block-specific trait exceptions in material_info The hardness and blastResistance traits are unavailable for non-block materials (such as REDSTONE), causing material_info('REDSTONE') to throw an error in core. This commit no longer returns these traits for non-block materials and throws a CREIllegalArgumentException when these traits are specifically asked for on non-block materials. pieter123452 years ago
18205c10Fallback to a modern material name on legacy item conversion. If a script incorrectly uses a modern material name with a data value, we should still try and correct for that. pseudoknight2 years ago
03e94bfbPartially revert item meta enchantments array changes. It is now an array of arrays again, but the new enchantment keys still exist. This should improve compatibility a bit with legacy scripts reading new enchanted item meta arrays, as well as future proof for possible enchantment data additions. pseudoknight2 years ago
568e8cd1Remove deprecated and broken "block" key in entity_enter_portal event pseudoknight2 years ago
aa81d3a3Return associative array of teams for scoreboards pseudoknight2 years ago
3794a57bDocumentation corrections pseudoknight2 years ago
87fdb9afSync registered commands once when one or more commands are added or removed pseudoknight2 years ago
88dbe5f2Remove some unneeded reflection pseudoknight2 years ago
bd2a6a20Add fallback for getting shield basecolor pseudoknight2 years ago
7c14e6a1Build against Bukkit 1.13.1 pseudoknight2 years ago
27498a64Fix get_recipes_for() name and boilerplate error pseudoknight2 years ago
a43155ceAddress some deprecations pseudoknight2 years ago
52753f57BREAKING CHANGE: Move item damage from the "data" key to the "damage" key in the item meta. This also fixes damage on items with meta. pseudoknight2 years ago
39e685ffFix shield banner meta pseudoknight2 years ago
da9e727eFix missed block name in entity_enter_portal pseudoknight2 years ago
cb9885a4Require a recipe key pseudoknight2 years ago
3283090aBetter handle legacy potion data and item conversion pseudoknight2 years ago
6ed53589Address a couple shield and banner meta issues. Notably there's a spigot bug with shield specific meta that prevents us from getting and setting colors and patterns. This makes it fail gracefully without destroying all meta on the item. This also fixes a missing color conversion for silver banners. pseudoknight2 years ago
63a411b2Properly throw an exception when set_entity_spec() is given an invalid material pseudoknight2 years ago
36ee1339Update list of commands for players and commandblocks upon register_command() pseudoknight2 years ago
a42c09c9Handle null item arguments in certain inventory functions pseudoknight2 years ago
20de1284Fix unregister_command() pseudoknight2 years ago
d1678aa4Fix commandblock functions pseudoknight2 years ago
18868348Add potion effect type names and modify the potion effect array to reflect this. This probably won't break any existing scripts that read or write potion effects, but it is possible. pseudoknight2 years ago
6e10805eClean up some deprecations pseudoknight2 years ago
a34b3affAlso accept material names as ingredients in recipes pseudoknight2 years ago
4f70fba6Add optional ban reason and source to set_pbanned() pseudoknight2 years ago
60b5c7e8Add functions to check and set whether other entities will collide with a mob pseudoknight2 years ago
0e030eeaMerge branch 'master' of https://github.com/EngineHub/CommandHelper into 1.13-dev pseudoknight2 years ago
06064422Fix core error when reflect_docs() is given one argument pseudoknight2 years ago
5a470cddDon't report a compile exception for a missing function before linking (fixes function_exists() and extension_exists() in many cases) pseudoknight2 years ago
3edc300fConvert entity types that don't match spawn egg material names pseudoknight2 years ago
2dc42b49Update sample aliases pseudoknight2 years ago
62f70c46Update spawn_entity() docs and hide spawn_mob() pseudoknight2 years ago
31bf10f5Add Tropical Fish entity_spec() and bucket item meta pseudoknight2 years ago
45b113daMake BadEntityException message formatting consistent pseudoknight2 years ago
fe32b4f5Do compile time check for valid sounds on our own list pseudoknight2 years ago
73a1ee7bDocument likely scoreboard string length limits pseudoknight2 years ago
f8bf56c0Add compile time warning when using an invalid Effect in make_effect() pseudoknight2 years ago
e450ce66Convert legacy spawnegg meta to new item types pseudoknight2 years ago
035360abMake MainHand and OffHand methods consistent pseudoknight2 years ago
e1fd3954Add 3.3.3 entry to directory page ladycailin2 years ago
28a0dfc3Remove redundant player insertion in event data pseudoknight2 years ago
6d40298dReplace deprecated Bukkit event with equivalent pseudoknight2 years ago
fde172feSupport spaces in old enchantment functions just like before, and depecrate can_enchant_target() for can_enchant_item() pseudoknight2 years ago
90a38b5dUpdate enchantment arrays in item meta arrays to be associative, and update a few enchantment functions. Old enchantment arrays will still be accepted and applied to the item. The functions enchant_inv(), enchant_rm_inv(), and get_enchant_inv() have been deprecated for enchant_item(), remove_item_enchant() and get_item_enchants() respectively. The sandbox function enchant_inv_unsafe() has been removed due to obsolescence. pseudoknight2 years ago
9422e902Remove deprecated player_prelogin event and fix player_login prefilter pseudoknight2 years ago
ea2d406dPrioritise item conversion for anvils pseudoknight2 years ago
1a6b478bRe-add get|set_mob_target() pseudoknight2 years ago
421fe5e0Add more gamerules pseudoknight2 years ago
2daabf8cRemove unused import pseudoknight2 years ago
af858c12Add compile time warnings for invalid sound and biome types pseudoknight2 years ago
d0bd036eAdd better messages for invalid values pseudoknight2 years ago
cd75e1a8Fix durability for legacy items and better handle invalid materials pseudoknight2 years ago
20cdb235Fix spawn_entity() arg limit and add an example usage pseudoknight2 years ago
e39a8b53Remove unused imports pseudoknight2 years ago
a348de6dRemove tab_complete_chat event (non-functional) pseudoknight2 years ago
81c86b9dBREAKING CHANGE: Change SILVER to LIGHT_GRAY for consistency. Banner meta for items will be automatically converted, but hard-coded strings of 'SILVER' should be replaced with 'LIGHT_GRAY' when setting sheep, shulker, or wolf collar colors. pseudoknight2 years ago
a81a6599Fix NPE when given invalid material ids pseudoknight2 years ago
02ce1405Fix missed key change pseudoknight2 years ago
be5dcd63Fix incorrect arg limit pseudoknight2 years ago
e76a76e8Add "hardness" and "blastResistance" to material_info() pseudoknight2 years ago
12ee67abFurther improve legacy material handling pseudoknight2 years ago
709e98eeImprove legacy item conversion pseudoknight2 years ago
e11b715aAlso try converting legacy material names in data_name() pseudoknight2 years ago
6944aba6Better handle air in player_interact pseudoknight2 years ago
74887227Re-add data_name() and data_values() for now. The data_values() function is deprecated, and data_name() returns the modern material name for old values passed in for conversion purposes. pseudoknight2 years ago
04a88163Convert changed Bukkit DyeColor pseudoknight2 years ago
2af196ccFix NPE in player_interact when clicking nothing pseudoknight2 years ago
6a8a2336Add map meta key "mapid" pseudoknight2 years ago
ce6290d8Commit missed diffs pseudoknight2 years ago
0ccb9633Update Sounds to match new names pseudoknight2 years ago
6b266fc5Add spawn_particle() function pseudoknight2 years ago
86d1e750Add closure parameter to spawn_entity() to apply entity attributes before being added to the world pseudoknight2 years ago
03f9d187BREAKING CHANGES: Update to reflect changes in 1.13 to items and blocks. It is highly recommended that you do not run this on a production server running pre-1.13 scripts. While efforts were made to warn and convert where necessary, there will be problems with scripts handling items or blocks! Here is a summary of most of the changes: Numerical material ids and data values have been removed in Minecraft. This requires a significant number of changes to any functions or events that handle items or blocks. Though old inputs should continue to work for the most part, deprecation warnings have been inserted when converting from old values, as these are no longer guaranteed to have perfect conversion. Most affected "get" functions and event data output the new material names, so it's impossible to automatically detect all places scripts need to be updated. Saved item arrays will still work in all functions, but a convert_legacy_item() function has been provided to better guarantee conversion accuracy for certain old materials with name conflicts. (eg. MELON) A key "isInteractable" has been added to material_info(). In the item array output, the "type" key and the redundant "enchants" key were removed. The following functions were removed: data_values() and data_name(). The following functions were deprecated completely: set_block_at() and get_block_at(). The following functions were added: get_blockdata_string(), set_blockdata_string(), and convert_legacy_item() The following functions' inputs and/or outputs may be affected: can_enchant_target(), get_enchants(), entity_spec() and set_entity_spec() for enderman and minecart blocks, phas_item(), pitem_slot(), pgive_item(), ptake_item(), pgive_enderchest_item(), ptake_enderchest_item(), add_to_inventory(), take_from_inventory(), max_stack_size(), material_info(), entity_line_of_sight() and pcursor() (transparent block array), pinfo(), psend_block_change(), and spawn_falling_block(). (not including any item array ...pseudoknight2 years ago
f6fcd5baAdd recipe "key" for furnace recipes pseudoknight2 years ago
ba68da70Fix geshi syntax highlighter function URLs pseudoknight2 years ago
6c566d71Add warning for deprecated tame_mob() pseudoknight2 years ago
ff30bd06Add "icon" parameter to potion effects (and fix missing "particles" key in potion meta) pseudoknight2 years ago
26b2c61bBREAKING CHANGE: Update biome types (affects get|set_biome()) pseudoknight2 years ago
b8dd6667BREAKING CHANGE: Update painting (art) types pseudoknight2 years ago
fd8a8a42Handle plugin channel name requirements pseudoknight2 years ago
68499452Add new particle types: SQUID_INK, BUBBLE_POP, CURRENT_DOWN, BUBBLE_COLUMN_UP, NAUTILUS, DOLPHIN pseudoknight2 years ago
ae880910Add BUFFET world type pseudoknight2 years ago
b4c73ad0Add DROWNED spawn reason pseudoknight2 years ago
9e877f9dAdd SLOW_FALLING and TURTLE_MASTER potion types pseudoknight2 years ago
daede361Add DRYOUT damage cause pseudoknight2 years ago
23d550a3Add new entty types: COD, DOLPHIN, DROWNED, PHANTOM, PUFFERFISH, SALMON, TRIDENT, TROPICAL_FISH, and TURTLE pseudoknight2 years ago
887c7d6cDefer to the server's scoreboard string length limits pseudoknight2 years ago
935ba10bUse GROUP_PREFIX pseudoknight2 years ago
f62e7cacMove misplaced entity interfaces pseudoknight2 years ago
2c74356aClean up backwards compatibility pseudoknight2 years ago
7ab8e52eChange to Bukkit 1.13 pseudoknight2 years ago
1c40cc52Bump to CommandHelper 3.3.3-SNAPSHOT pseudoknight2 years ago
65fa4fe1Documentation updates ladycailin2 years ago
5dc11178Fix missing skull owner key check pseudoknight2 years ago
dedc23dcFix "docs" commandline tool output pseudoknight2 years ago
c89ca551Fix CommandHelper loading pseudoknight2 years ago
eb2deab5Merge pull request #498 from Pieter12345/master Fix set_uncaught_exception_handler closure return behaviourladycailin2 years ago
8f6aea50Make HandleUncaughtException method no longer throw for FATAL result - Make HandleUncaughtException(ConfigRuntimeException e, Environment env, Reaction r) no longer throw an exception when Reaction is FATAL. Instead, handle it the same as REPORT. - Revert return value change from FATAL to REPORT in GetRaction(...). pieter123452 years ago
f9e7a075CheckStyle: Fix violations Fix CheckStyle violations so that CommandHelper builds again. pieter123452 years ago
39dc2c27Fix set_uncaught_exception_handler closure return behaviour Before this commit, the return value of the closure passed to set_uncaught_exception_handler would result in: - true -> Suppress exception. - null -> Use default uncaught exception handler. - false -> Use default uncaught exception handler and print the java stacktrace to the cause. - exception in closure -> Use default uncaught exception handler for the exception in the closure and suppress the first exception. The behaviour set by this commit is: - true -> Suppress exception. - null -> Use default uncaught exception handler. - false -> Use default uncaught exception handler. - exception in closure -> Use default uncaught exception handler to print both exceptions. This new behaviour matches the documentation of set_uncaught_exception_handler. pieter123452 years ago
ab3587c3Fix possible mistake This change should be obvious when looking at the code, considering the "name" variable was unused. This might prevent a NullPointerException in some cases. pieter123452 years ago
992c273dIgnore Metrics in checkstyle ladycailin2 years ago
18380b5dFix checkstyle errors, s/bstats/mcstats ladycailin2 years ago
3e62af93Merge pull request #496 from EngineHub/csharp Csharpladycailin2 years ago
7d3b00f5Merge branch 'master' into csharpladycailin2 years ago
b20792c3Dev Drop ladycailin2 years ago
6660fa44Remove "owneruuid" key for skull meta. This never worked well. Server implementation needs to be fixed. pseudoknight2 years ago
2b107bd6Skip checkstyle on provisional builds pseudoknight2 years ago
2e28bfa8Fix CH loading on server versions prior to MC 1.12 pseudoknight2 years ago
8a87e0c1Merge pull request #495 from Pieter12345/player_move_event_bugfix BugFix: Fix unbinding player_move to unbind multiple player_move eventsmichael smith2 years ago
ccffaa9fBugFix: Fix unbinding player_move to unbind multiple player_move events if no threshold prefilter is supplied When binding multiple player_move events without threshold prefilter and then unbinding one of those events, all events would not trigger anymore until another event with the default treshold prefilter would be bound. This bug is caused by the unbind code removing the default threshold without checking whether more events still use it. pieter123452 years ago
1fecd284Improve matching for dynamic Enums pseudoknight2 years ago
f93d2757Add LLAMA_SPIT and SHULKER_BULLET to projectile types pseudoknight2 years ago
7402c5c2Support all living entity type names in spawn_mob(). (CMDHELPER-2894) spawn_mob(entity_type(@uuid)) should always work now, as long as the entity type is living. pseudoknight2 years ago
9fdbe02eMerge pull request #494 from PseudoKnight/master Add new inventory functions and virtual inventories.michael smith2 years ago
90ddb51cAdd new inventory functions and virtual inventories. New functions: popen_inventory(), pinventory_holder(), get_inventory_viewers(), get_virtual_inventories(), create_virtual_inventory(), and delete_virtual_inventory(). New "virtual" prefilter for inventory_click, inventory_drag, inventory_open, and inventory_close events. New inventory "holder" data for inventory_open and inventory_close events. pseudoknight2 years ago
9fdb6fecMerge pull request #493 from Pieter12345/mismatched-paren-feedback Improve code target for mismatched parensladycailin2 years ago
b2f8bab8Improve code target for mismatched parens Change the code target to the last opening '({[' that does not have a closing ')}]', instead of always returning the last line of the script for such CRE's. pieter123452 years ago
33616632Merge pull request #492 from Pieter12345/broadcast-function-event Fix broadcast() function event consistencyladycailin2 years ago
5097011bFix BukkitMCServer broadcast behaviour + Update broadcast() docs - Remove usage of Server.broadcastMessage(...) methods since they also broadcast to all active command blocks in-game, effectively setting their last output value in their GUI. - Broadcast to console unless a recipients set is supplied without the console command sender in it. - Update broadcast() documentation to match the changes. - Add javadocs to MCServer to describe the broadcastMessage(...) behaviour that implementations should follow. pieter123452 years ago
071371d3Add broadcast(message, array) console support - Add broadcast(message, array('~console', ...)) support to target the console. - Include broadcast to console behaviour in the documentation. pieter123452 years ago
436a1fb9Make broadcast() trigger events consistently + Extend broadcast() docs - Make broadcast(message, players) fire an event through its Bukkit implementation so that it matches the broadcast(message) and broadcast(message, permission) behaviour. - Extend broadcast() documentation to include all behaviour. pieter123452 years ago
401d4c22CheckStyle: Fix IDE compatibility + gitignore - Fix Eclipse's (and according to Google IntelliJ's) CheckStyle plugins failing on finding the checkstyle_suppressions.xml file. This change does not affect Maven builds. - Add .checkstyle to the git ignore file. pieter123452 years ago
8f94455eRemove some deprecations pseudoknight2 years ago
d97c4b53Fix some documentation pseudoknight2 years ago
a278c72fAdd ENDER_EYE to entity_spec() pseudoknight2 years ago
bdb29c3eMerge pull request #491 from Pieter12345/randomtest-optimization Disable secure_string and get_locales boilerplate testmichael smith2 years ago
dacb0741Disable secure_string and get_locales boilerplate test Disable secure_string and get_locales boilerplate test because these slow down the build time by Travis CI significantly. secure_string's boilerplate test can easily take 6 minutes and even cause Travis CI to time out (>10 minutes combined). pieter123452 years ago
950ccc3cMerge pull request #489 from Pieter12345/randomtest-optimization RandomTest optimizationladycailin2 years ago
4fba2786RandomTest optimization - Optimize `testFunctionsAreOnlyDefinedOnce` test to run in O(n) instead of O(n^2) where n = 743 (and n^2 = 552049). Locally, this reduces the test time of te RandomTests class (being 12±2 seconds on my system) by roughly 3 or 4 seconds on my system. - Fixed javadoc comment. - Fixed case where not setting up the global environment makes the `testFunctionsAreOnlyDefinedOnce` test fail when executed on itself in an IDE. pieter123452 years ago
d79972e1Update entity_spec() - Add DRAGON_FIREBALL direction - Fix SMALL_FIREBALL - Add block and offset to all minecarts - Update wrapper classes pseudoknight2 years ago
764a69feAllow all line endings pseudoknight2 years ago
0925e6bcMerge pull request #485 from Pieter12345/checkstyle3 CheckStyle: Add more rulesmichael smith2 years ago
d02e642fCheckStyle: Fix or suppress remaining violations Fixing public name violations might cause incompatibility with dependents (e.g. CH extensions and plugins depending on CH). Therefore, ignoring the current violations and ensuring it does not get worse is a safe choice for now. pieter123452 years ago
333e0097CheckStyle: Update rule set - Remove HideUtilityClassConstructor check. Fixing these violations would require adding ~104 empty private constructors to hide default constructors. This should not be forced upon contributors. - Ignore MethodName check. Changing public method names will break any extensions that uses them. This should not be done without deprecating all violating methods first. - Remove MissingCtor check. This would require adding ~1100 empty constructors to not directly rely on the default one. This should not be forced upon contributors and does not make the code more clear. - Change whitespace check for "try", which now enforces whitespace usage "try(" and "try {". - Disable "SuperClone" and "SuperFinalize" check. These checks even require to call super.clone() and super.finalize() when their class extends directly from Object, in which case adding them is pointless and at most distracting. - Fix whitespace check for between if/for/while and their '('. pieter123452 years ago
065ca39eCheckStyle: Fix name violations pieter123452 years ago
fc08e991CheckStyle: Fix MultipleVariableDeclarations violations pieter123452 years ago
aaf0798fCheckStyle: Fix FinalClass violations pieter123452 years ago
bbbfaf6fCheckStyle: Fix whitespace violations pieter123452 years ago
4421fe88CheckStyle: Fix ModifierOrder violations pieter123452 years ago
bb96a7eaCheckStyle: Fix whitespace and EmptyStatement violations pieter123452 years ago
3c71b692CheckStyle: Fix EmptyStatement violations pieter123452 years ago
19327ef4CheckStyle: Fix MissingDeprecated violations Fix MissingDeprecated checkstyle violations. pieter123452 years ago
8f3c5f39CheckStyle: Suppress FallThrough violation Fallthrough is efficiently used here, so suppress the violation. pieter123452 years ago
7fd0a514CheckStyle: Enable SuppressWarnings annotation Allow @SuppressWarnings("checkstyle:<CHECK>") to suppress checkstyle violations. pieter123452 years ago
041c0de9Revert "CheckStyle: Remove FallThrough" This reverts commit ff0ccaec66489586a46386957b301653eeeb02f4. pieter123452 years ago
d399ba5dCheckStyle: Fix merge violations Fix all introduced checkstyle violations in the last merge. pieter123452 years ago
60f75f85Merge branch 'master' of https://github.com/EngineHub/CommandHelper into checkstyle3 pieter123452 years ago
62189af8CheckStyle: Fix 41 OverloadMethodsDeclarationOrderCheck violations Fix 41 OverloadMethodsDeclarationOrderCheck checkstyle violations. This is just changing method order. pieter123452 years ago
d25fc362CheckStyle: Fix 6 UnusedImportsCheck violations Remove 6 unused imports. pieter123452 years ago
03bfc16bCheckStyle: Fix 1372 try/catch whitespace violations - Fix 1362 checkstyle violations where 'catch' is not followed by a whitespace. - Fix 10 checkstyle violations where 'try' is not followed by a whitespace. pieter123452 years ago
7d60e35bCheckStyle: Fix 301 if/for/while whitespace violations. Fix 301 whitespace violations where one or multiple whitespace characters exist between an if/for/while and its corresponding '('. pieter123452 years ago
527edcafCheckStyle: Fix missing continue in switchcase violation This rule is no longer in the CheckStyle set, but in this place in the code, fallthrough is not necessary and increases the chance of future mistakes being made. pieter123452 years ago
e10990ecBugFix: Fix escaped characters in file options ending the file options - Any escaped character other than '\>' would be recognised as FILE_OPTIONS_END ('>') due to a missing break. - Code rewrite so it no longer relies on a while(true) where it does not have to. pieter123452 years ago
94835690BugFix: Fix expected CRE not being thrown when setting block dispense item to AIR Fix expected CRE not being thrown when setting block dispense item to AIR due to using a ref-equals on a String literal. pieter123452 years ago
aa289d19CheckStyle: Fix mistake Fix a copy-paste mistake. pieter123452 years ago
ff0ccaecCheckStyle: Remove FallThrough Fallthrough can be useful and should be allowed for that reason. pieter123452 years ago
3a7d49dbCheckStyle: Add more rules A CheckStyle configuration which will ensure more consistent sourcecode in the future. pieter123452 years ago
78f10856Merge pull request #486 from Ecconia/Fix-Playerinsertion-JoinEvent JoinEvent inject Entitymichael smith2 years ago
1a703a24JoinEvent inject Entity The function "set_metadata" and similar require an entity to be online. The entity (player) is known by the event already, but not the rest of the server. Injecting it, to make it accessible.ecconia2 years ago
ca72bc5cIgnore queue interruptions during reload pseudoknight2 years ago
4924b5d8Add boat "type" to entity_spec() pseudoknight2 years ago
fbd63c09Add "source" for EVOKER_FANGS in entity_spec() and make them spawnable pseudoknight2 years ago
377fc5fdFix FALLING_BLOCK in entity_spec() and add "damage" boolean pseudoknight2 years ago
69483e77Add pvelocity() to documentation pseudoknight2 years ago
77387973Add shulker color to entity_spec() pseudoknight2 years ago
b802db5cFix typos and missing block in data_names.txt pseudoknight2 years ago
fb12c5cdUpdate entity wrapper classes pseudoknight2 years ago
88a131aaFix core error when given an invalid potion type (CMDHELPER-3172) pseudoknight2 years ago
6cb2fb34Merge pull request #484 from Pieter12345/checkstyle2 Checkstyle updateladycailin2 years ago
baa509a9CheckStyle: Add suppression filter for star imports in test classes. Added a suppression filter that effectively allows star imports in test classes. pieter123452 years ago
4c220e17Move checkstyle execution to test phase - Moved the checkstyle execution from the validate phase to the test phase. - Renamed the maven plugin execution to "checkstyle". pieter123452 years ago
b4993e81Merge pull request #483 from Pieter12345/checkstyle Checkstyleladycailin2 years ago
79612550Added checkstyle parenthesis padding check. Disallow whitespaces after '(' anf before ')'. pieter123453 years ago
f4889ab6Removed checkstyle empty block check. - Removed EmptyBlock checkstyle check since it triggered for cases where it is not necessarily bad. - Removed several empty blocks where they were not necessary. pieter123453 years ago
726aac86Formatting: Replaced star imports. Replaced star imports with the actually used imports. pieter123453 years ago
68d33268Formatting: Removed trailing whitespaces/tabs. Removed trailing whitespaces and tabs. pieter123453 years ago
232db3a2Formatting: Disallow whitespaces. - Replaced leading 4-wide whitespaces with tabs. - Removed/replaced remaining leading whitespaces to maintain consistency. - Added *'s to multiline docs where they were missing. pieter123453 years ago
d74d3159Added checkstyle. - Added maven's checkstyle plugin (applies to main and test .java files). - Added a check for line length <= 120 (currently marked as ignored due to >7000 violations). - Disallow whitespace indents (force TABs). - Disallow star imports (import blabla.*). - Disallow empty blocks ({}). - Disallow trailing whitespaces/tabs. pieter123453 years ago
6c607f22Formatting: pom.xml Made Tab/whitespace usage consistent. pieter123453 years ago
95670d2bChange a few uses of math to TimeConversionUtil ladycailin2 years ago
dc1c6887Merge branch 'master' of me.github.com:EngineHub/CommandHelper ladycailin2 years ago
3dec134aAdd TimeConversionUtil class ladycailin2 years ago
f3dd494dDynamically register broadcast_message if it exists pseudoknight3 years ago
09684e16Added broadcast_message event. Added support for Bukkit's BroadcastMessageEvent. pieter123453 years ago
86d4f785Removed unused fields. If this is necessary for anything in the future, the reference can be obtained through BukkitMCWorldEvent. pieter123453 years ago
86c05b36Moved server events to their own class. Moved BukkitMCServerCommandEvent and BukkitMCServerPingEvent from BukkitMiscEvents to BukkitServerEvents. pieter123453 years ago
314146ebAdd "delay" meta for MOB_SPAWNER pseudoknight3 years ago
a7b6d8caDocumentation updates pseudoknight3 years ago
a09855f4Use locationArray more consistently in function docs pseudoknight3 years ago
0f38f19aImprove executeas() test pseudoknight3 years ago
eeceb294Fix "See more..." links in documentation pseudoknight3 years ago
c5b87afeAdd executeas() to change player/label context when running a closure pseudoknight3 years ago
bcf6ac35Add player prefilter for item_held event pseudoknight3 years ago
04343125Update mysql shade pattern pseudoknight3 years ago
d2490dffMerge pull request #480 from Pieter12345/lexer_minus_fix Fixed invalid minus sign interpretation.ladycailin3 years ago
b3f6bec8Unit tests for '+' lexer handling. Added unit tests for '+' sign absorbtion. pieter123453 years ago
90aae5ffExtra unit tests for '-' lexer handling. Added extra tests. pieter123453 years ago
d51ae037Fixed invalid minus sign interpretation. Bug examples: array(5)[0] - 3 would become 2, but array(5)[0] -3 would become string '5 -3'. 2 - 3, 2-3 and 2- 3 would become -1, but 2 -3 and 2 -3 would become string '2 -3'. This commit fixes the minus sign interpretation by the lexer, ignoring whitespaces in front of the '-' sign and with an additional case to support array_get's in format "@a[0]-value". pieter123453 years ago
35527f91Make Crypto functions aware of secure_string. Also fixed a bug in secure_string where the decrypted char array was the wrong size due to padding. ladycailin3 years ago
550706d2Use new lines when listing multiple include compile exceptions pseudoknight3 years ago
f8fd570dFix deprecated class usages pseudoknight3 years ago
0fcd35ecMerge pull request #479 from Pieter12345/furnace_nbt_data_support Add blockstate meta support for various containersmichael smith3 years ago
23378b22Replaced null checks with empty itemstack checks. Due to these objects being wrapped into a BukkitMCItemStack, they are never null. So check for empty item stacks instead. pieter123453 years ago
5d055bf1Added brewing stand bottle slot meta support. Brewing stands only had support for fuel and ingredient meta, this adds support for the 3 remaining bottle slots. pieter123453 years ago
9575c85fSelected proper datatype for some metadata. Fixup for the previous 2 commits. pieter123453 years ago
d301d21dAdded item meta support to containers. The now supported containers are: BrewingStand, Chest, Dispenser, Dropper and Hopper. pieter123453 years ago
49f1061aAdded blockstate data support for furnaces. Furnaces will now have a "burntime", "cooktime" and "inventory" metadata tag. "inventory" is an array with 3 possible keys: "result", "fuel" and "smelting". This commit prevents set_pinv(pinv()) to erase furnace metadata and adds the ability to get/modify it. pieter123453 years ago
474e45e5Added NonInheritImplements. This allows classes to declare that they implement a specific interface, but does not strictly require that subclasses also implement this interface as well (through inheritance). There is a custom compile check as well, but in general, this requires using the Helper class as well to correctly cast to the interface and check instanceof. The use case imagined here is for serialization and/or cloning, where you want some classes in the heirarchy to be serializable or cloneable, but not necessarily subclasses of those classes. ladycailin3 years ago
b6a7a6f2Add cmdline-install mechanism for Windows. This installs a C# based launcher, which provides all the Windows specific utilities to the system, but otherwise forwards all processing on to the jar. This works much the same as the Linux launcher/bash frontend. Unlike Linux, however, this is a much more complicated task, and so there is a Visual Studios solution and everything included in this commit. There are still a few tasks remaining: Add the mscript.exe to the Path so that it can be run from the cmd utility. Make the uninstall-cmdline tool work. The prompt_* functions do not work yet. Once these three things are done, this should be merged to master.ladycailin3 years ago
8b9e709bNormalize all the line endings ladycailin3 years ago
5f62cc3dSaving files before refreshing line endings ladycailin3 years ago
0844d147Fix missing ENUMs being logged as errors on startup pseudoknight3 years ago
7dd4957bCoercion of string "false" to boolean now provides a warning. This is usually not what the user meant to do, as string "false" evaluates to boolean true. Therefore, when we try to coerce a string into a boolean, we first check to see if it is the string "false" and if so, issue a warning. Eventually, I would like this to be configurable per file, or at least at a more granular level, but anyways, for now this is a globally configurable warning in the logger-preferences.ini settings. This also required a change to the Static.getBoolean method, which has been updated throughout the codebase to add a Target parameter. However, because extensions may be using this method, it remains backwards compatible for now, but the no Target method is deprecated and should be removed at next major version change.ladycailin3 years ago
e17b850fAdd plast_known_name() pseudoknight3 years ago
a63cd4bdFix parameter encoding for http_request() pseudoknight3 years ago
0b7c52caLots of minor refactoringladycailin3 years ago
e3277698Re-format code with correct spaces in control keywordsladycailin3 years ago
eae33999Commit nb-configuration.xml. This should standardize formatting across development platforms where developers are using NetBeans. If a developer is not using NetBeans, they need to replicate these settings in their editor.ladycailin3 years ago
f8d8b548Update gitattributes with a few more text file definitionsladycailin3 years ago
f243a14cFormat the entire project. This likely breaks all other branches diffs. Those branches will also need to re-format the code first.ladycailin3 years ago
f45cee0fRemove unused importsladycailin3 years ago
9778f462Merge origin/masterladycailin3 years ago
40dc779eBump several versions of dependencies in mavenladycailin3 years ago
6ce8968dFix bug for array params in WebUtility ladycailin3 years ago
3034645cAdd strict mode to preferences.ini. This allows a global setting. Additionally, cleaned up the lexer code a bit, and made file options higher priority than comments. Additionally, file options now have to be the first non-comment, non-whitespace line in the file, but do not have to be the VERY first thing in the file. Whitespace changes, now that I have figured out how to use an IDE correctly, these changes should start to have to happen less and less.ladycailin3 years ago
3073a226Update contribution guidelines ladycailin3 years ago
487fe9bfAdd docs for File_Options and Strict_Mode. Support file options docgen syntax highlighter. Also, added support for using class based styling, instead of style based styling. In the future, I will create a css class to do the styling, but for now, it remains hardcoded. ladycailin3 years ago
5307cf39Finish importing Learning Trail articles ladycailin3 years ago
9993d358Update public-suffix ladycailin3 years ago
ef2ca55eAdd string_contains, to be clearer in code ladycailin3 years ago
ceede3e8Merge pull request #478 from Pieter12345/lexer_optimization Lexer file option support+optimization+bugfix.ladycailin3 years ago
e395707fFixup commit. Addicentally ticked off 2 lines when reviewing changes, these are part of the last commit. pieter123453 years ago
320830fcLex + preprocess + compile optimization. Replaced ArrayList usage by a LinkedList. This has the following effect: - get() goes from O(1) to O(n) unless an iterator is used, in which case it remains O(1). - remove() in an iterator over the list goes from O(n) to O(1). This commit also changes all iterations over the list to iterations using an iterator, making both get() and remove() O(1). pieter123453 years ago
86dfce79Halved preprocessor runtime. On a local ~140.000 character (3305 line) script, 3000 runs on each script with one untimed run for possible initialization resulted in a runtime of ~1.19ms on average for the old code and ~0.60ms on average for this new code. pieter123453 years ago
fafc90ffRemoved unnecessary assigns in the lexer. Removed unnecessary assigns in the lexer. pieter123453 years ago
0e8a1022Lexer file option support+optimization+bugfix. - Fixed a bug where the token for CONCAT_ASSIGNMENT would get assigned string "/=" instead of ".=". - Fixed a bug where ending a file with an unfinished unicode character in a quote would throw an uncaught exception (ending file with '\u). - Optimized the lexer. Using a script from my server, the lex time of 100 runs (with one untimed run before the loop) was ~108ms, this has been improved to ~83ms (~23% runtime decrease). - Added file options support in the lexer. Start with '<!', end with '>' and a literal '>' could be obtained using '\>'. File options are only allowed at the top of a file. pieter123453 years ago
656db803Git bug - Committing no changes. When undoing this "change", it automatically returns. Committing might be a way to get rid of it so I can use git again. pieter123453 years ago
fe865b9aMerge pull request #477 from Pieter12345/extension_event_error_handler Extra error management for event handlers.ladycailin3 years ago
3ff3ef43Extra error management for event handlers. When CH or a CH extension receives an event it cannot handle due to being binary incompatible with a dependency, the error remained uncaught and was passed to the server software that fired the event. This commit makes sure those errors are caught and logged with useful additional details for a bug report. pieter123453 years ago
610827e1Git bug - Committing no changes. When undoing this "change", it automatically returns. Committing might be a way to get rid of it so I can use git again. pieter123453 years ago
ca1b939dCache native types to improve compile time. Static.resolveConstruct() constituted over 16% of the total compile time on my test server. This reduces that to less than 1%. pseudoknight3 years ago
2bd9c670Further clarify get_entity_vehicle() docs pseudoknight3 years ago
c8ddc433Fix cslice on strings being off by one pseudoknight3 years ago
30211d3cMerge branch 'master' of me.github.com:EngineHub/CommandHelper ladycailin3 years ago
019dc132Add utility classes ladycailin3 years ago
b166c64bFix test pseudoknight3 years ago
9643098cAdd clear_peffects() pseudoknight3 years ago
d7960bc3Add clear_pinv() pseudoknight3 years ago
370f146cFix Husk in spawn_mob() again pseudoknight3 years ago
1259b75dPass FileOptions through the compiler and elsewhere properly Still need to implement the parsing in the lexer, but anyways, once that's done, it should go through the rest of the system just fine.ladycailin3 years ago
67dc918cCreate the shaded jar in addition to the non-shaded jar. This allows CH to be independently included by other projects. The biggest difference is that people now need to download the commandhelper-version-SNAPSHOT-full.jar instead of the non -full version. Cmdline users need to re-run install-cmdline to update the bash command, as the name of the jar is encoded in the script. ladycailin3 years ago
56c5c2baMerge pull request #475 from Pieter12345/compile_optimization BugFix for ambigous command detection.ladycailin3 years ago
732baef4Unit tests + static cmd text fix. - Added unit tests for command ambiguity. - Changed "LITERAL" ConstructType check to "STRING" to support static strings and since I did not manage to find an example of something that compiled to a literal in the command descriptor (it becomes either a string or doesn't compile anyways). pieter123453 years ago
a15045bfSyntax convention. Syntax convention.pietje3 years ago
ff404b8fBugFix for ambigous command detection. Many commands were not detected as ambigous properly. Examples: - *:/cmd2 $arg AND *:/cmd2 $arg - *:/cmd11 $arg $arg2 AND *:/cmd11 $arg $arg2 [$arg3] - *:/cmd14 arg AND *:/cmd14 $arg - *:/cmd15 arg AND *:/cmd15 [$arg] This commit will cause ambigous commands to throw a compile exception as expected. The previous code caught an IndexOutOfBoundsException, which's fillInStacktrace() costed ~35% runtime spent in AliasCore.LocalPackage.consoleMSA(). This has been replaced with a size check to reduce runtime for MSA compiles by roughly this 35% (as tested with my scripts and setup on my server with 254 defined aliases). pieter123453 years ago
81f18582Merge branch 'master' of me.github.com:EngineHub/CommandHelper ladycailin3 years ago
2f3df3ffMerge branch 'Lildirt-string_func_optimize' ladycailin3 years ago
11e778cbMerge branch 'string_func_optimize' of https://github.com/Lildirt/CommandHelper into Lildirt-string_func_optimize ladycailin3 years ago
f7a23c6cAdded optimizations to string_starts_with, string_ends_with, and char_is_uppercase as well as example usage. lildirt5 years ago
78d77189Merge pull request #476 from Pieter12345/compile_optimization2 Keyword compile optimization.ladycailin3 years ago
0e8018fbKeyword compile optimization. Replaced an exception throw + catch with equivalent logic. On my server with my setup, this removes ~6.5% of the total script recompile time. pieter123453 years ago
98bebd34White space ladycailin3 years ago
79ec7a9dFix compile errors ladycailin3 years ago
ae0adf9dMerge branch 'master' of me.github.com:EngineHub/CommandHelper ladycailin3 years ago
a03492eaAdded Mixed.isInstanceof Going forward, it would be super helpful if code didn't use instanceof, but instead used this new method, as it will be required eventually. I can probably make a thing that scans bytecode for usages of this, but in the meantime it'll just be the honor system :D ladycailin3 years ago
c2de1dd8Expand Preferences to add typesafe versions of methodsladycailin3 years ago
08d2c375Merge pull request #474 from PseudoKnight/master Add Events and other fixes to site deploymentladycailin3 years ago
a37a3d98Add Events and other fixes to site deployment pseudoknight3 years ago
e7df36c2Merge pull request #472 from Pieter12345/compatibility_fixes Compatibility fixesladycailin3 years ago
6c6d45feIDE with whitespace in workspace dir compatibility. - Added URL decoding and encoding to support having a workspace with whitespaces in the path (before this commit, many tests would be unable to run due to ClassInitializationErrors). pieter123453 years ago
09ac5472Removed JVM error file. This should likely have never been added. pieter123453 years ago
b0a4ce0aAdd distance() pseudoknight3 years ago
590e10b4Update deprecations pseudoknight3 years ago
d249200cAdd get_bars() pseudoknight3 years ago
eb5f6842Clarify get_entity_vehicle() documentation pseudoknight3 years ago
15693581Merge pull request #473 from Pieter12345/patch-1 Updated sk89q repo in pom.ladycailin3 years ago
d2962a2fUpdated sk89q repo in pom. Repository "mvn2.sk89q.com" has been replaced with "maven.sk89q.com" long ago. The mvn2 repository is currently offline and might never come back, the replacing repository is online and recommended over the deprecated one (source: wizjany).pietje3 years ago
ea39a1dfAdd get_vector() that returns a vector array from the yaw/pitch in a location array pseudoknight3 years ago
628dd3b7Remove minor redundant array casting and logic pseudoknight3 years ago
87330f83Support a direction in location_shift() in place of a target location pseudoknight3 years ago
6d4d446dWorld functions formatting pseudoknight3 years ago
14a024d3Fix array_sort() when given an associative array pseudoknight3 years ago
a6576059Formatting pseudoknight3 years ago
274104d1Support an array of recipient players for broadcast() pseudoknight3 years ago
3a2943c7Update Minecraft example scripts pseudoknight3 years ago
d350ce04Echoes formatting pseudoknight3 years ago
8ac8d8caFix vehicle_destroy error when there's no damager pseudoknight3 years ago
ea39c18bUpdate entity_enter_portal to use block material name pseudoknight3 years ago
00ca10fdRemove old test pseudoknight3 years ago
fa12924dClean up pseudoknight3 years ago
f392447aImprove core error logging. Logging these errors is already slow, but the slow Main.loadSelfVersion() makes it take almost twice as long. This can cause noticeable tick lag. If this occurs with enough frequency the server will become unresponsive. So here we use the cached version from Bukkit when possible. The messaging is also improved a little. pseudoknight3 years ago
b7deec72Fix version check for snowman derp pseudoknight3 years ago
69743091Update entity_interact to use block name pseudoknight3 years ago
7e9d9e45Fix get_leashholder() pseudoknight3 years ago
3172d314Fix broad compatibility for Llama, SkeletonHorse, ZombieHorse, Donkey and Mule in entity_spec(). pseudoknight3 years ago
82a3af1eUpdate maven-shade-plugin. Previous versions were incompatible with lambdas and possibly other Java 8 features. pseudoknight3 years ago
27c43d25Fix exceptions when getting out-of-bounds string indexes pseudoknight3 years ago
8e0c57b2Fix build pseudoknight3 years ago
96a6dcc1Formatting pseudoknight3 years ago
f9ea6036Override methods in CSecureString that don't make sense to inherit Also, needed to change array_get to work properly with ArrayAccess, instead of assuming it is a string, if it is ArrayAccess and not a CArray. array_normalize only makes sense with an actual array, so that change to ArrayAccess was a bit premature. That change might actually break some people's code, but whatever they were doing didn't make sense in the first place, so you're welcome? ladycailin3 years ago
99e78a00Shoring up secure_string ladycailin3 years ago
c0ca35beAdd (decrypt_)secure_string. These functions actually allow access to the CSecureString mechanisms. In the future, it will now be possible to backport other methods to use this data type. ladycailin3 years ago
5a2016e7Merge branch 'master' of me.github.com:EngineHub/CommandHelper ladycailin3 years ago
b43adf42Implement base classes for CDecimal and CSecureString At current, these are not useable, as they are not constructable from mscript. The CDecimal can be constructed in *some* cases in code using 0m notation, but it cannot be used beyond general Object use. ladycailin3 years ago
8e11e27dMerge pull request #471 from Pieter12345/GetConstruct_improvement Improved runtime complexity GetConstruct/GetPOJOmichael smith3 years ago
0888be09Improved runtime complexity GetConstruct/GetPOJO Both the GetConstruct and GetPOJO methods contained loops over Lists/Maps with a getter of a value from those Lists/Maps in them, effectively being O(n^2) runtime complexity (with an exception of Hash implementations, where a lookup is O(1) instead of O(n)). In this commit, those loops have been changed to loops over the entryset (for Maps) or changed to using an iterator (Lists). The new runtime complexity for both is O(n). pieter123453 years ago
f487f4f5Add what was hit in the projectile_hit event pseudoknight3 years ago
b966728aFormatting pseudoknight3 years ago
6eebf68bSupport item arrays for phas_item(), pitem_slot(), ptake_item(), ptake_enderchest_item(), and take_from_inventory(). This adds new filtering possibilities with those functions as well. Only specified keys in the item array are compared, with the following keys supported: data, display, lore, and enchants. If not specified, the key can have any value and be a match. (eg. phas_item(array('name': 'DIAMOND_SWORD', 'meta': array('display': 'Pointy'))); will match all diamond swords named Pointy, regardless of enchants, lore or durability) More keys may be added later. pseudoknight3 years ago
8b5fa25dFix missed getHandle() pseudoknight3 years ago
f6d10220Return number of files recompiled for x_recompile_includes() pseudoknight3 years ago
73539a86Various cleanup pseudoknight3 years ago
c11369cdAccept item array ingredients for shapeless recipes pseudoknight3 years ago
379cd93eAdd ExhaustiveVisitor This is a PureUtility which allows for a much more compact and smarter implementation of the Visitor/Double Dispatch pattern, and allows it to work similarly to C++'s virtual methods, though even better, it has compile errors if you leave off an implementation when a new subclass is added. ladycailin3 years ago
bba7e43fMerge pull request #470 from EngineHub/new-html-docs New html docsladycailin3 years ago
a06d7424git rm coredump ladycailin3 years ago
f99fa881Merge branch 'master' into new-html-docs ladycailin3 years ago
4f10f818Documentation updates ladycailin3 years ago
0c51befeAdd Boss Bar functions (MC 1.9+) pseudoknight3 years ago
7033636eFix change in item string output. Previously we were always including a data suffix ":0" for block items, but not for other items. This restores that behavior. pseudoknight3 years ago
a4ffb5f9Simplify item durability pseudoknight3 years ago
26ff57cfAdd set_mob_owner() and hide tame_mob() (CMDHELPER-2792) pseudoknight3 years ago
36dd8263Re-organize entity functions pseudoknight3 years ago
d5e43872Fix incorrect array index pseudoknight3 years ago
0f78d5b6Support item arrays for: pgive_item(), pgive_enderchest_item(), add_to_inventory(), can_enchant_target(), get_enchants() pseudoknight3 years ago
cc354416Support doubles for potion effect seconds pseudoknight3 years ago
8e6f8e61Merge pull request #468 from Ecconia/Sublime3Export Sublime Text 3 - Syntax Highlightingladycailin3 years ago
70f3ce45Missing space in console-output ecconia3 years ago
297ed1a9Sublime Text 3 - Syntax Highlight Added the syntax file for sublime3. No themes are required, since the syntax only sets scopes which a "Color Scheme" uses. Instalation details are in the Syntax file, no need to increase the mess in terminal. It was created based of the old sublime syntax file provided by CH.ecconia3 years ago
9dad3f44Fixed gore intendation Replaced 4 spaces with tabs. (Seems like LC also uses tabs, but in mixed form) "Organized Imports" - Removed java Annotations.ecconia3 years ago
43b1b9b6Java 8 pseudoknight3 years ago
1295f103Fix exception when skull owneruuid is null pseudoknight3 years ago
fa61ee78Fix modifying the entity type in creature_spawn event pseudoknight3 years ago
4b8ec36cHide refresh_chunk() due to unreliability and deprecation pseudoknight3 years ago
54985127Document player UUID support in player functions pseudoknight3 years ago
5f18dc38Add block "name" to block events pseudoknight3 years ago
7858186fAdd "unbreakable" to item meta and "owneruuid" to skull item meta pseudoknight3 years ago
4fc76c49Catch duplicate recipe keys pseudoknight3 years ago
74c4ca76Deprecate get_player_from_entity_id() pseudoknight3 years ago
ac76763dUse UUID.compareTo() pseudoknight3 years ago
36b4ad33Update out-dated warning pseudoknight3 years ago
50ada0fdFix set_spawner_type() pseudoknight3 years ago
2d31baecAdd recipe keys pseudoknight3 years ago
11f7d0aeMerge branch 'master' into new-html-docs ladycailin3 years ago
d5ffeb81Line endings fix ladycailin3 years ago
40530bffAdd sponsors ladycailin3 years ago
6bcbc478Add the verify command to cmdline toolsladycailin3 years ago
d23b40ceDocument scoreboard team option values pseudoknight3 years ago
c78461f7Fix error in location_shift() and shoof_projectile() when locations are the same pseudoknight3 years ago
5dd9e82eAdd maxfuseticks and explosionradius to Creeper entity_spec() pseudoknight3 years ago
f4832fd4Add new 1.12.2 entity effects to play_entity_effect() pseudoknight3 years ago
d36e3483Allow getting just a specific trait using materal_info() and document indexes. pseudoknight3 years ago
96abbd5cMerge branch 'master' into new-html-docs ladycailin3 years ago
78e902baWhitespace fix on Static.java ladycailin3 years ago
6665f26eAdd parenthesis to API page ladycailin3 years ago
ad6771d3Merge branch 'master' into new-html-docs ladycailin3 years ago
583f7ee0Harmonize how void works There is some formatting change, but the meat of the commit can be seen in Static and BasicLogic. In Static, we change resolveConstruct to return CVoid.VOID instead of CVoid.TYPE. Then, in sequals, we check .typeof() not .getClass(). This is an important distinction, because we want to base the equality on whether or not mscript says it's the same type, not if java does. Actually, because of this change, the change to Static isn't strictly necessary, but it is beneficial, since now we standardize what we are returning. ladycailin3 years ago
70d58606Minor doc changes ladycailin3 years ago
08761ec4Minor doc changes ladycailin3 years ago
0ea5ad96Fix string escaping in geshi template 2.0ladycailin3 years ago
edf9b949Fix string escaping in geshi templateladycailin3 years ago
9e9ded6eMerge branch 'master' into new-html-docs ladycailin3 years ago
e0c028c2Merge branch 'master' into new-html-docs Supermerge! Fixed a number of merge conflicts due to spacing issues. Hopefully that is the last time I have to do that. ladycailin3 years ago
93326ffdFix boilerplate test pseudoknight3 years ago
8101ed3cImprove array_set() handling of invalid normal array keys pseudoknight3 years ago
fd2e2d94Add pcooldown() and set_pcooldown() pseudoknight3 years ago
8833e514Remove commented out plugin_cmd() function that is redundant pseudoknight3 years ago
bc5913e2Massively speed up reflect_pull() for enums. This avoids loading classes that we don't need to load, since we only need to do that to get the ENUM values for the one class. This also improves getting ENUM inner classes. Previously when getting the class's common name it would change "$" to "." for inner classes. However, the only case where this method is used it needs to the "$" to find the class. So it throws an exception, we catch it, add the "$" back and try again. This is very expensive and seeminlgy not needed. Finally, I removed a redundant HashSet creation that used about 25% of the remaining time. Overall this went from freezing the server for a few seconds to completing in less than a millisecond. pseudoknight3 years ago
7015e9d7Deprecate and hide entity_id() and entity_uuid() pseudoknight3 years ago