Emuera改造版EM+EEで追加された機能の解説。EmueraのOSDNライクに書くつもり
docsもあります。だいたいこっちのほうが最新の情報かつ詳しく書いてあります

EmueraEM+EE用のVSCode拡張機能ができました。使ってみてください

エラー報告、要望などはDiscordサーバーにてご連絡ください

※使用しているセキュリティソフト次第では危険なファイルとして警告・削除される場合があります
 セキュリティソフトの設定を変更して使用することはできますが、自己責任でお願いします

それを踏まえた上でDLする




一般

リソースの占有解除(EM)

プログラム動作中Resourceフォルダーの画像ファイルを常時占用しないようにしました

音声ファイルに対応(EE)

Emueraと同じディレクトリにあるsoundフォルダに音声ファイルを入れることで使用可能
詳しくは後述のPLAYSOUND命令等を参照

リソースファイルのWebP形式に対応

Emuera1824+v11+webp+Secureを参考にWebP形式に対応していましたが、EMv6+EEv13から別のWebPライブラリを使用するように

Emuera-Anchorを同梱

同梱のEmuera-Anchorは英語圏のeraコミュニティで使用されているEmueraです
各UIやエラーメッセージ等が英語になっています。必要に応じて使い分けてください

ホットキー拡張(EE)

Anchorからの機能移植。Ctrl+Tでタイトル画面に戻る、Ctrl+Rで再起動、Ctrl+OでERB再読み込み

定数・変数

ERHで定義した変数の配列に、CSVファイルorERDファイルで名前を付けられるように(EE)

ERHで定義した変数名を準拠にファイルを読み込み、既存のcsv変数と同じように配列に名前を付けることができる。現時点では一次元配列変数にのみ対応
CSVフォルダ内で使えるものは従来どおり「変数名.csv」、ERB内で使えるものは「変数名.ERD」ファイルとなる。書式はCSV変数のファイルと同じ。これらが2つ以上存在する場合は起動時にエラー吐いて終了する

仕様が変更された命令・式中関数

HTML_PRINTで負数を使用可能に(EM)

HTML_PRINTの<space>タグでparaに負数を指定できます

INPUT系でマウスクリックを受け付けるように(EM)

INPUT, INPUTS, ONEINPUT, ONEINPUTS に第二引数追加(整数型,省略可,デフォルトは0)
TINPUT, TINPUTS, TONEINPUT, TONEINPUTS に第五引数追加(整数型,省略可,デフォルトは0)
追加引数==0時、または省略した時 本家版と同じです。
追加引数!=0時 マウスクリックをエンターキーにみなす(RESULTSに空文字列を代入。ボタンを押した場合,ボタンのインデックスをRESULTS:1に代入)、左クリックの時RESULT:1を1、右クリックの時RESULT:1を2にします。また、同時にShift Ctrl Altを押した場合、そのキー状態をRESULT:2に保存します。(bit 17 18 19)

ONEINPUTのデフォルト値に2桁/2文字以上を指定できるように(EM)

ONEINPUT, ONEINPUTS, TONEINPUT, TONEINPUTS デフォルト値に2桁以上/2文字以上を指定できます

LOADTEXT、SAVETEXTでファイル名を指定可能に(EM)

LOADTEXT, SAVETEXT の第一引数が文字列の場合、第一引数をパスとしてファイルをロード/セーブします。Emuera.exeを相対パスで指定(".."は無効)。また、configの「LOADTEXTとSAVETEXTで使える拡張子」で決められた拡張子しか使えません。(デフォルトはtxtのみ)
例文:LOADTEXTとSAVETEXTで使える拡張子:txt,(任意の拡張子),(任意の拡張子)

INPUTMOUSEKEYでボタン使用可能に(EE)

命令実行時にRESULT:0=1(マウスクリック時)だった場合にRESULT:5にボタンの数値が入ります

OUTPUTLOGでファイル名と拡張子を指定可能に(EE)

OUTPUTLOGに引数指定することでそのファイル名.拡張子で出力できる リテラルはPRINTSとかと同じ
v5fixで親ディレクトリを指定できる脆弱性を修正 子ディレクトリは指定可能

GSETFONTでフォントスタイルを指定できるように(EE)

第4引数にSETFONTと同じ4ビット数(1=太字 2=斜体 4=打ち消し線 8=下線)指定で装飾を付けられるように 省略可能

REPLACE拡張(EM)

REPLACEの第三引数が文字列配列変数,第四引数が0以外の場合,第二引数と合致する部分を順次に文字列配列の要素で入れ替え、その結果を返します。

新規に追加された命令・式中関数

HTML系

int HTML_STRINGLEN(html{, returnPixel})(EM)
HTML_PRINTでhtmlを表示した結果の幅を返す、複数行がある場合1行目の幅を返す
第2引数は0または省略した場半角文字単位で返す、そうでない場合はピクセル数を返す
int HTML_SUBSTRING(str, int)(EM)
strを2つに分ける
例:
HTML_SUBSTRING "AB<b>CD</b>EFG",4
PRINTSL RESULTS
PRINTSL RESULTS:1
結果:
AB<b>C</b>
<b>D</b>EFG
(太字は普通より幅広いからです)

文字列操作・参照

<1> int REGEXPMATCH(str, pattern{, output})(EM)
<2> int REGEXPMATCH(str, pattern, groupCount, matches)(EM)
strが正規表現パターンpatternに合うなら合致結果の数を返す,そうでない場合0を返す
<1> outputが0以外の整数の場合,マッチグループ数をRESULT:1に、各マッチ結果をRESULTSに代入(合計「グループ数」×「戻り値」個)
<2> マッチグループ数をgroupCount(整数変数)に、各マッチ結果をmatches(文字列変数)に代入(合計「グループ数」×「戻り値」個)

変数操作・変数参照・CSV参照

int ISDEFINED(str)(EM)
与えられた文字列と同名なマクロ(#DEFINE XXX)が定義されていたら1を返します。定義されていない場合0を返します。
int EXISTVAR(str)(EM)
与えられた文字列と同名な変数が定義されていれば、変数の種類によって正数を返します。定義されていない場合0を返します。
  • 変数が整数型の場合、返り値 setbit 1
  • 変数が文字列型の場合、返り値 setbit 2
  • 変数が定数の場合、返り値 setbit 3
  • 変数が2次元配列の場合、返り値 setbit 4
  • 変数が3次元配列の場合、返り値 setbit 5
例:
#DEFINE VAR_IS_NUM 1
#DEFINE VAR_IS_STRING 1p1
#DEFINE VAR_IS_CONST 1p2
#DEFINE VAR_IS_2DARRAY 1p3
#DEFINE VAR_IS_3DARRAY 1p4

#DIM FOO,10,10

...

IF EXISTVAR("FOO")==(VAR_IS_NUM|VAR_IS_2DARRAY)
 PRINTL TRUE
ELSE
 PRINTL FALSE
ENDIF
IF EXISTVAR("FOO2")
 PRINTL TRUE
ELSE
 PRINTL FALSE
ENDIF
結果:
TRUE
FALSE
int ENUMFUNCBEGINSWITH(str)(EM)
int ENUMVARBEGINSWITH(str)(EM)
int ENUMMACROBEGINSWITH(str)(EM)
int ENUMFUNCENDSWITH(str)(EM)
int ENUMVARENDSWITH(str)(EM)
int ENUMMACROENDSWITH(str)(EM)
int ENUMFUNCWITH(str)(EM)
int ENUMVARWITH(str)(EM)
int ENUMMACROWITH(str)(EM)
定義されたシンボルを返す,結果をRESULTSに代入,総数を返します。
FUNCは関数名,VARは変数名,MACROはマクロ名。
BEGINSWITHはstrで始まるシンボルです。
ENDSWITHはstrで終わるシンボルです。
WITHはstrを含むシンボルです。
int GETVAR(str)(EM)
str GETVARS(str)(EM)
int(1) SETVAR(str, value)(EM)
文字列で表した変数のGET、SET関数です。
例:
#DIM FOO = 10,10

SETVAR "FOO:1", 5
PRINTFORML {FOO} {FOO:1} {GETVAR("FOO:1")}
結果:
10 5 5
int(1) VARSETEX(str, value{, int, int, int})(EM)
VARSETと似ています,第1引数は変数名の代わりに文字列で表した変数名に変更します
第3引数は0以外または省略した場合、配列の全てにvalueを代入、そうでない場合,最低次元の配列に代入
例:
#DIM FOO,2,3

VARSETEX "FOO:1:1", 5, 0
PRINTFORML {FOO:1:0} {FOO:1:2}
VARSETEX "FOO:1:0", 10
PRINTFORML {FOO:0:0} {FOO:1:2}
結果:
0 5
10 10
int(1) ARRAYMSORTEX(str/intArray, strArray{, int})(EM)
ARRAYMSORTと似ています,第1引数は文字列の場合,変数名の代わりに文字列で表した変数配列名に変更します
第2引数は文字列配列,それぞれの要素は並び替えたい配列の変数名を表す
第2引数は0以外または省略した場合正順、0の場合逆順
例:
#DIM IDX = 4,2,3,1
#DIM AA = 1,2,3,4
#DIM BB = 5,3,1,2
#DIMS VARS = "IDX", "AA", "BB" ; IDXを入れないとIDXを並び替えしない

ARRAYMSORTEX IDX, VARS      ;
PRINTFORML > IDX == {IDX},{IDX:1},{IDX:2},{IDX:3}
PRINTFORML > AA == {AA},{AA:1},{AA:2},{AA:3}
PRINTFORML > BB == {BB},{BB:1},{BB:2},{BB:3}
PRINTL
ARRAYMSORTEX "IDX", VARS, 0   ;逆順
PRINTFORML > IDX == {IDX},{IDX:1},{IDX:2},{IDX:3}
PRINTFORML > AA == {AA},{AA:1},{AA:2},{AA:3}
PRINTFORML > BB == {BB},{BB:1},{BB:2},{BB:3}

結果:
> IDX == 1,2,3,4
> AA == 4,2,3,1
> BB == 2,3,1,5

> IDX == 4,3,2,1
> AA == 1,3,2,4
> BB == 5,1,3,2

デバッグ補助・システムフロー制御

QUIT_AND_RESTART(EE)
再起動命令。QUIT同様にWAIT1回相当の入力待ちがある
FORCE_QUIT(EE)
入力待ちせずにQUITする命令
FORCE_QUIT_AND_RESTART(EE)
入力待ちせずにQUIT_AND_RESTARTする命令 入力待ちを挟まず連続実行されるとダイアログボックスで警告が出る
FORCE_BEGIN システム関数(EE)
BEGINの制約を受けずに強制的にBEGINを実行する。フローを意図的に壊すため、予期せぬ不具合が起こる可能性があります

関数系(CALL等)

int EXISTFUNCTION("関数名")(EE)
名前の通り関数が存在するかの式中関数 通常関数なら1を、式中関数(数値型)なら2を、式中関数(文字列型)なら3を返す
TRYC系でCALL機能を付随させたくない場合にお使いください また、システム関数やシステム組み込み式中関数は0を返す
TRYCALLF 関数名(EE)
CALLFのTRY命令 CALLF同様に返り値は破棄されるが、関数が無くてもエラーにならない
TRYCALLFORMF 関数名(EE)
CALLFORMFのTRY命令 CALLFORMF同様に返り値は破棄されるが、関数が無くてもエラーにならない
上記2つをTRYC〜CATCH式に使う場合はEXISTFUNCTIONと併用してください

画像処理関連

int GDRAWTEXT(gID, "テキスト"{, X座標, Y座標})(EE)
指定したgIDにテキストを描写する 座標は省略可能
GSETBRUSH cARGBと組み合わせることで文字の濃度と色を変更できる cARGBは濃度+文字色の16進数8桁
成功すればRESULT:0に1が、RESULT:1には生成したテキスト画像の幅が、RESULT:2には高さが入る(高さはほぼGSETFONTで指定した値)
v7plusから描画フォーマットをGenericTypographicsに変更 実際のPRINT描画と同じ位置になるように
str GGETFONT(gID)(EE)
指定したIDの、GSETFONTで指定したフォント名を呼び出す
int GGETFONTSIZE(gID)(EE)
指定したIDの、GSETFONTで指定したフォントサイズを呼び出す
int GGETFONTSTYLE(gID)(EE)
指定したIDの、GSETFONTで指定したフォントスタイルを数値で返す
GGETTEXTSIZE("テキスト", フォント名, フォントサイズ{, フォントスタイル})(EE)
指定の引数でGDRAWTEXTを行った場合のサイズを取得する 第4引数(フォントスタイル)は省略可能
FONTBOLD相当のスタイルの場合、サイズが微妙に大きくなるため注意
int GDRAWGWITHROTATE(コピー先gID, コピー元gID, 回転させる角度(時計回り){, X座標, Y座標})(EE)
コピー元IDのイメージを、指定した角度回転させてコピー先IDに貼り付ける 座標は省略可能で省略すると中心点(X/2,Y/2)になる
角度はマイナスを指定すれば反時計回りになる 360を超過しても問題ない
中心点はコピー元のサイズに準拠しているが、サイズの違うgIDを扱うとズレが生じる 角度に応じてズレの度合いが違う(90°、270°で最大)ので、その際は中心点を変えてあげるとよい

左のように200*100を90°回転させて100*200のgに移す場合、太枠の100,50地点を中心に回転するため右のようにずれる
なので重なってる部分の中心点、つまり50,50地点(・)を中心点に指定すればきれいにハマる 270°回転なら全体の中心点、100,100を指定するとハマる
┏━┯━┓ ―┏━┓
┃・│―┃ ┌╂┐┃
┣━┿━┛ │┃│┃
│―│―― │┗┿┛
└─┘―― └─┘―

サウンド系

PLAYSOUND "ファイル名.拡張子"(EE)
「sound」フォルダ内にある音声ファイルを1回再生します
v12で10チャンネルに対応。最大10個のファイルを同時再生できる
STOPSOUND(EE)
PLAYSOUNDで再生中の音声ファイルを停止します
PLAYBGM "ファイル名.拡張子"(EE)
「sound」フォルダ内にある音声ファイルをループ再生します
STOPBGM(EE)
PLAYBGMで再生中の音声ファイルを停止します
EXISTSOUND "ファイル名.拡張子"(EE)
「sound」フォルダ内に指定した音声ファイルが存在するか判定します。存在すれば1が、しなければ0がRESULTに入ります
int EXISTSOUND("ファイル名.拡張子")(EE)
同名命令の式中関数版
SETSOUNDVOLUME int(EE)
PLAYSOUNDの音量を変更します。引数には0〜100を指定できます
SETBGMVOLUME int(EE)
PLAYBGMの音量を変更します。引数には0〜100を指定できます

XML系

int XML_DOCUMENT(id, xml)(EM)
xmlを解析し、XmlDocumentで保存する。1を返す
id(整数型)に対応するXmlDocumentがすでに存在している場合,0を返す
int XML_RELEASE(id)(EM)
id(整数型)に対応するXmlDocumentを削除する。1を返す
int XML_EXIST(id)(EM)
id(整数型)に対応するXmlDocumentが存在してい場合1を返す,そうでない場合0を返す
int XML_GET(xml, xpath{, strArray/int, int})(EM)
xpath(文字列型)の規則でxmlからノードを選択し、結果数を返す
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そのIDに対応するXmlDocumentが存在していない場合,-1を返す
第3引数は0以外または省略した場合,総数のみ返す,他の整数の場合,RESULTS結果を返す
第3引数は文字列配列の場合,その配列に結果代入
第4引数は結果のタイプを決めます
  • 1: InnerText
  • 2: InnerXml
  • 3: OuterXml
  • 他: Value
保存したXmlDocumentが存在しない場合,-1を返す
int XML_SET(xml, xpath, str{, setall, int})(EM)
xpath(文字列型)の規則でxmlからノードを選択し、strを代入します。ノードの合致結果の数を返す
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そのIDに対応するXmlDocumentが存在していない場合,-1を返す
第4引数(整数型)は0または省略した場合,一つ以上の合致結果に対して,代入を行わない
第5引数は代入のタイプを決めます
  • 1: InnerText
  • 2: InnerXml
  • 他: Value
保存したXmlDocumentが存在しない場合,-1を返す
str XML_TOSTR(int)(EM)
第一引数で指定したXmlDocumentを文字列に変換して返す。
X保存したmlDocumentが存在しない場合,空文字列を返す
int XML_ADDNODE(xml, xpath, xml{, addmethod, setall})(EM)
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そうでない場合,第1引数が文字列変数でなければならない
第1引数で指定したXMLに対して:
addmethodが0または省略した場合,xpath(文字列型)で選択した要素ノードを親ノードとし、その子ノードリストの最後にxmlを子ノードとして追加する
addmethodが1の場合,xpath(文字列型)の規則で選択した要素ノード(ルートノードではない)を子ノードとし、そのノードの前にxmlを兄弟ノードとして追加する
addmethodが2の場合,xpath(文字列型)の規則で選択した要素ノード(ルートノードではない)を子ノードとし、そのノードの後にxmlを兄弟ノードとして追加する
setallが0または省略した場合,一つ以上の合致結果に対して,追加を行わない
成功した場合,合致結果の数を返す。失敗した場合,0を返す。保存したXmlDocumentが存在しない場合,-1を返す
int XML_REMOVENODE(xml, xpath{, setall})(EM)
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そうでない場合,第1引数が文字列変数でなければならない
第1引数で指定したXMLに対して,xpathで選択した要素ノード(ルートノードは無効)を削除する。
setallが0または省略した場合,一つ以上の合致結果に対して,削除を行わない
成功した場合,合致結果の数を返す。失敗した場合,0を返す。保存したXmlDocumentが存在しない場合,-1を返す
<1> int XML_REPLACE(xml, xml2)(EM)
<2> int XML_REPLACE(xml, xpath, xml2{, setall})(EM)
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そうでない場合,第1引数が文字列変数でなければならない
バリアント<1>の第1引数は整数だけ有効となる
<1> 保存したXmlDocumentの内容をxml2で上書きする
<2> xmlに対し、xpath(文字列型)の規則で選択した要素ノード(ルートノードではない)をxml2で上書きする
成功した場合,合致結果の数を返す。失敗した場合,0を返す。保存したXmlDocumentが存在しない場合,-1を返す
int XML_ADDATTRIBUTE(xml, xpath, name{, value, addmethod, setall})(EM)
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そうでない場合,第1引数が文字列変数でなければならない
第1引数で指定したXMLに対して:
addmethodが0または省略した場合,xpath(文字列型)で選択した要素ノードの属性リストの最後に、属性名name(文字列型)=属性の値value(文字列型)の属性を追加する
addmethodが1の場合,xpath(文字列型)の規則で選択した属性の前に、属性名name(文字列型)=属性の値value(文字列型)を兄弟属性として追加する。valueは省略可
addmethodが2の場合,xpath(文字列型)の規則で選択した属性の後に、属性名name(文字列型)=属性の値value(文字列型)を兄弟属性として追加する。valueは省略可
setallが0または省略した場合,一つ以上の合致結果に対して,追加を行わない
成功した場合,合致結果の数を返す。失敗した場合,0を返す。保存したXmlDocumentが存在しない場合,-1を返す
int XML_REMOVEATTRIBUTE(xml, xpath{, setall})(EM)
第1引数は整数の場合,それをIDにみなして保存したXmlDocumentを使う。そうでない場合,第1引数が文字列変数でなければならない
第1引数で指定したXMLに対して,xpathで選択した属性を削除する。
setallが0または省略した場合,一つ以上の合致結果に対して,削除を行わない
成功した場合,合致結果の数を返す。失敗した場合,0を返す。保存したXmlDocumentが存在しない場合,-1を返す

MAP(連想配列)系

int MAP_CREATE(str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)を作ります。1を返す
すでに存在している場合0を返す
なお、連想配列はセーブデータに記録されません。記録したい場合は後述のMAP_TOXMLとXML_DOCUMENTを併用してください
int MAP_EXIST(str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)の存否をチェックします
存在しているなら1を返す,そうでない場合0を返す
int MAP_RELEASE(str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)を削除します。1を返す
str MAP_GET(str, str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に,第二引数のキーが存在する場合,その値を返す。
存在していない場合,または連想配列自体が存在しない場合も,空文字列を返す
(例外発生しないので必要があればMAP_HASで確認してください)
int MAP_HAS(str, str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に,第二引数のキーの存否をチェックします
存在しているなら1を返す,そうでない場合0を返すください
連想配列自体が存在しない場合,-1を返す
int MAP_SET(str, str, str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に,第二引数のキーとペアした値に第三引数を代入
キーが存在していない場合キーを作る。1を返す。
連想配列自体が存在しない場合,-1を返す
int MAP_REMOVE(str, str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に,第二引数のキーとペアした値を削除する。1を返す。
連想配列自体が存在しない場合,-1を返す
int MAP_SIZE(str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に含まったキー-値ペアを返す
連想配列自体が存在しない場合,-1を返す
int MAP_CLEAR(str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に含まったキー-値ペアを全部削除する。1を返す
連想配列自体が存在しない場合,-1を返す
<1> str MAP_GETKEYS(str)(EM)
<2> str MAP_GETKEYS(str, int)(EM)
<3> str MAP_GETKEYS(str, strArray, int)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に:
<1> "キー1,キー2,キー3,..."のような形の文字列を返す
<2> 第二引数が0ではない場合,RESULTSにキーを順次代入。RESULTS:0を返す
<3> 第三引数が0ではない場合,第二引数が指定した文字列配列変数にキーを順次代入。空文字列を返す
連想配列自体が存在しない場合,空文字列を返す
キーの数をRESULTに代入
str MAP_TOXML(str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)をXML文字列に変換し,XML文字列を返す。
連想配列自体が存在しない場合,空文字列を返す

返したXMLは
<map>
  <p><k>キー1</k><v>値1</v></p>
  <p><k>キー2</k><v>値2</v></p>
  <p><k>キー3</k><v>値3</v></p>
  ....
</map>
のような形です
int MAP_FROMXML(str, str)(EM)
第一引数で指定した連想配列(Dictionary<string, string>)に第二引数のXML文字列からキー-値ペアを読み取る。
キーが存在している場合その値を上書きします。1を返す
連想配列自体が存在しない場合,0を返す

XMLは、必ず
<map>
  <p><k>キー1</k><v>値1</v></p>
  <p><k>キー2</k><v>値2</v></p>
  <p><k>キー3</k><v>値3</v></p>
  ....
</map>
のようにしないといけません

その他

int EXISTFILE(str)(EM)
第一引数をパスとしてファイルの存否をチェックします。Emuera.exeを相対パスで指定(".."は無効)。
存在しているなら1を返す,そうでない場合0を返す
UPDATECHECK(EE)
アップデートチェック命令を追加。以下使い方
  • 1,GameBase.csvに「バージョン名」「バージョン情報URL」を追加
    • バージョン名には文字列型で任意のバージョン名、URLにはバージョン確認用のURLを記載する
  • 2,上記のURLにバージョン情報と最新版リンクを記載したテキストをアップロードする
    • 1行目に最新のバージョン名を書き、2行目にはリンクを書く 3行目以降はコメント等自由に書いてOK
    • オープンなGitを使うならリポジトリにプッシュしてrawで参照するのもあり
  • 3,UPDATECHECK実行時にGameBase.csvに記載したURLにアクセスし、現バージョンと最新バージョンが違えばダイアログボックス経由でサーバー側のリンクを開くかどうかプレイヤーに尋ねる
    • 最新版の場合はRESULTに0が入って終了する
  • 4,「はい」が選ばれればブラウザを開きRESULTに2が入る 「いいえ」が選ばれれば何もせずRESULTに1が入る リンク先が見つからない、リンク先にバージョン情報や最新版リンクが書いてない等、何らかの理由で失敗した場合はRESULTには3が入る
また、コンフィグに「UPDATECHECKを許可しない」の項目を追加、これがオンになってるときにUPDATECHECKを実行した場合は何もしないが、RESULTに4が入る
11fixにてネットワークに接続されていない場合はRESULTに5が入るように
int GETMEMORYUSAGE()(EE)
現在起動中のEmueraのメモリ使用量を返す(byte)。ワーキングセットの値なのでタスクマネージャーの数値とは差異が生じます
int CLEARMEMORY()(EE)
メモリを解放する。解放されたメモリ量(byte)を返す
DELCHARAやセーブデータのロード、RESETDATA等データ削除した際に使うと効果がありますが、それらが行われないタイミングで使用しても特に効果はありません
そこそこ重いため乱用は控えたほうが無難

Menu

メニュー







他OSで動かす方法



リンク

どなたでも編集できます