@@ -394,6 +394,46 @@ public enum ScriptActionType {
394394 }
395395 })),
396396
397+ IF_WITHIN_RANGE (builder -> builder .name ("If Number Within Range" )
398+ .description ("Checks if a number is between\n 2 different numbers (inclusive)." )
399+ .icon (Items .CHEST )
400+ .category (ScriptActionCategory .NUMBERS )
401+ .arg ("Value" , ScriptActionArgumentType .NUMBER )
402+ .arg ("Minimum" , ScriptActionArgumentType .NUMBER )
403+ .arg ("Maximum" , ScriptActionArgumentType .NUMBER )
404+ .hasChildren (true )
405+ .group (ScriptGroup .CONDITION )
406+ .action (ctx -> {
407+ double value = ctx .value ("Value" ).asNumber ();
408+
409+ if (value >= ctx .value ("Minimum" ).asNumber ()) {
410+ if (value <= ctx .value ("Maximum" ).asNumber ()) {
411+ ctx .setLastIfResult (true );
412+ }
413+ }
414+ })),
415+
416+ IF_NOT_WITHIN_RANGE (builder -> builder .name ("If Number Not Within Range" )
417+ .description ("Checks if a number isn't between\n 2 different numbers (inclusive)." )
418+ .icon (Items .TRAPPED_CHEST )
419+ .category (ScriptActionCategory .NUMBERS )
420+ .arg ("Value" , ScriptActionArgumentType .NUMBER )
421+ .arg ("Minimum" , ScriptActionArgumentType .NUMBER )
422+ .arg ("Maximum" , ScriptActionArgumentType .NUMBER )
423+ .hasChildren (true )
424+ .group (ScriptGroup .CONDITION )
425+ .action (ctx -> {
426+ double value = ctx .value ("Value" ).asNumber ();
427+
428+ if (value >= ctx .value ("Minimum" ).asNumber ()) {
429+ if (value <= ctx .value ("Maximum" ).asNumber ()) {
430+ return ;
431+ }
432+ }
433+
434+ ctx .setLastIfResult (true );
435+ })),
436+
397437 CANCEL_EVENT (builder -> builder .name ("Cancel Event" )
398438 .description ("Cancels the event." )
399439 .icon (Items .BARRIER )
0 commit comments