aya,saori/yaya.dll
charset, Shift_JIS charset.dic, Shift_JIS charset.output, Shift_JIS charset.file, Shift_JIS charset.save, Shift_JIS charset.extension, Shift_JIS
fenum { if ARRAYSIZE(REQ.ARGS) < 1 { -1 return } RES.RESULT = FENUM(REQ.ARGS[0]) }
RES.RESULT = FENUM(REQ.ARGS[0], REQ.ARGS[1])
GetSatoriVarList { _FileName = '..\satori_savedata.txt' _i = 0 _charset = 'Shift_JIS' FCHARSET(_charset) if !FOPEN(_FileName, 'r') { RES.RESULT = -1 return } while 1 { if (_s = FREAD(_FileName)) == -1; break if _n == -1 { continue } else { _s = SUBSTR(_s,1,STRLEN(_s) -1) } _n = STRSTR(_s,CHR(0x09),0) if _n > 0 { _s = SUBSTR(_s,0,_n) } LETTONAME("RES.VALUE%(_i)", _s) LOGGING(EVAL("RES.VALUE%(_s)")) _i++ } FCLOSE(_FileName) RES.RESULT = _i -1 }
sort { if ARRAYSIZE(REQ.ARGS) < 1 { -1 return } arX = SPLIT(REQ.ARGS[0],CHR(0x01)) _x = quicksort(0,ARRAYSIZE(arX)-1) _s = "" for _i = 0; _i < ARRAYSIZE(arX); _i++ { if (_i > 0) { _s = _s + CHR(0x01) } _s = _s + arX[_i] } RES.RESULT =_s ERASEVAR("arX") } quicksort { _first = _argv[0] _last = _argv[1] if (_first == _last) { return } _p = pivot(_first,_last) if (_p != -1) { _k = partition(_first,_last,arX[_p]) _k,_first,_last,arX[_p] quicksort(_first,_k-1) quicksort(_k,_last) } } pivot { _i = _argv[0] _j = _argv[1] _k = _i + 1 while (_k <= _j && arX[_i] == arX[_k]) { _k++ } if (_k > _j) { -1 return } if (arX[_i] >= arX[_k]) { _i } else { _k } } partition { _i = _argv[0] _j = _argv[1] _x = _argv[2] _l = _i _r = _j while (_l <= _r) { while (_l <= _j && arX[_l] < _x) { _l++ } while (_r >= _i && arX[_r] >= _x) { _r-- } if (_l > _r) { break } _t = arX[_l] arX[_l] = arX[_r] arX[_r] = _t _l++ _r-- } _l return }