diff --git a/binary-tiling.cpp b/binary-tiling.cpp index 1a570175..f2a7d2d4 100644 --- a/binary-tiling.cpp +++ b/binary-tiling.cpp @@ -866,16 +866,7 @@ EX namespace bt { return point3(log(2) + log(-h[0]), h[1] / co, h[2] / co); } -#if CAP_COMMANDLINE -auto bt_config = addHook(hooks_args, 0, [] () { - using namespace arg; - if(argis("-btwidth")) { - shift_arg_formula(vid.binary_width); - return 0; - } - return 1; - }); -#endif +auto bt_config = arg::add2("-btwidth", [] {arg::shift_arg_formula(vid.binary_width); }); EX bool pseudohept(cell *c) { if(WDIM == 2) diff --git a/commandline.cpp b/commandline.cpp index 61c9b828..04438311 100644 --- a/commandline.cpp +++ b/commandline.cpp @@ -398,6 +398,7 @@ EX namespace arg { return 1; } + EX int add1(const string& s, const reaction_t& r) { return add_at(s, 1, r); } EX int add2(const string& s, const reaction_t& r) { return add_at(s, 2, r); } EX int add3(const string& s, const reaction_t& r) { return add_at(s, 3, r); } @@ -419,4 +420,11 @@ EX namespace arg { EX } #endif +#if !CAP_COMMANDLINE +EX namespace arg { + EX int add1(const string& s, const reaction_t& r) { } + EX int add2(const string& s, const reaction_t& r) { } + EX int add3(const string& s, const reaction_t& r) { } +EX } +#endif } diff --git a/floorshapes.cpp b/floorshapes.cpp index bdc74e19..74c80c19 100644 --- a/floorshapes.cpp +++ b/floorshapes.cpp @@ -1077,14 +1077,7 @@ EX void viewmat() { } } -#if CAP_COMMANDLINE -auto floor_hook = - addHook(hooks_args, 100, [] () { - using namespace arg; - if(argis("-floordebug")) { floorshape_debug = true; return 0; } - else return 1; - }); -#endif +auto floor_hook = arg::add1("-floordebug", [] { floorshape_debug = true; }); #endif #if MAXMDIM < 4 || !CAP_GL diff --git a/history.cpp b/history.cpp index 4efdc2f5..f38aa2bb 100644 --- a/history.cpp +++ b/history.cpp @@ -702,20 +702,7 @@ EX namespace history { #endif } - #if CAP_COMMANDLINE - int readArgs() { - using namespace arg; - - if(0) ; - else if(argis("-playerpath")) { - history::create_playerpath(); - } - else return 1; - return 0; - } - - auto hookArg = addHook(hooks_args, 100, readArgs); - #endif + auto hookArg = arg::add3("-playerpath", history::create_playerpath); auto hooks = addHook(hooks_clearmemory, 0, [] () { history::renderAutoband();