簡単なモジュールを作っていたのですが・・・
#module #deffunc print_ex str txt, int posx, int posy, int indent, local ptr // print_ex "文字列", [Xpos], [Ypos], [行間] if indent = 0 : goto *@forward if instr(txt, 0, "\n") = -1 : goto *@forward flg = 0 : ptr = 0 while flg = 0 npos = instr(txt, ptr, "\n") if npos = -1 : _break ptxt = strmid(txt, ptr, npos) color 170, 170, 170 : pos posx-1, posy-1 : print ptxt color 40, 40, 40 : pos posx, posy : print ptxt posy += indent : ptr += npos + 1 wend ptxt = strmid(txt, ptr, strlen(txt)) color 170, 170, 170 : pos posx-1, posy-1 : print ptxt color 40, 40, 40 : pos posx, posy : print ptxt return *@ color 170, 170, 170 : pos posx-1, posy-1 : print txt color 40, 40, 40 : pos posx, posy : print txt return #global screen 0, 640, 480 gsel 0, 1 print_ex "テスト\nテスト", 10, 10, 20 stop
ファンクション内の3行目&6行目のinstr命令の部分で
「変数が指定されていない」というエラーが出てしまいます。
local定義が必要なのかと思い、モジュール中の変数を全部localで
定義してみましたがエラー。
それではと、#deffunc等のモジュール定義をコメントアウトして
ためしに走らせてみると全くエラーが出ませんでした。
モジュール内でのinstr命令は、なにか別の書式ルールとかがあるんでしょうか。
さっぱりわかりません・・・(´・ω・`)