JA AutoLoad - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

AutoLoad、マクロ、スクリプト保存

Home · BASIC · UO API · A–Z · Examples · Languages

ディレクトリ規則

Autoload\
├─ autoload.sc
├─ MyCombat.inj
├─ Crafting.bas
└─ Scripts\
   ├─ Healer.sc
   └─ Hunter.sc

Autoload 直下には AutoLoad ファイルと Scripts フォルダーだけを置きます。AutoLoad は .sc.inj.bas.txt に対応し、ファイル名は自由です。通常の IDE スクリプトは Autoload\Scripts に置きます。

キャラクター用 AutoLoad の選択

  1. Options → Basic IDE を開きます。
  2. AutoLoad 欄でファイルを選択します。
  3. Apply を押します。

選択は YokoAutoloadFile としてキャラクタープロファイルへ保存され、キャラクターごとに別ファイルを使用できます。既定値は autoload.sc です。ゲームシーン開始時は、選択ファイルだけを読み込み、その SUB Main() を起動します。他の AutoLoad は自動実行されません。

新しいファイルが一覧にない場合は、対応拡張子で Autoload 直下にあることを確認し、設定ページを再度開くか更新してください。

Basic Auto Load マクロ

Options → Macros → ClassicBasic Auto Load を追加します:

  • 現在のキャラクターが選択した AutoLoad の procedures だけを一覧化;
  • 実行する procedure を選択;
  • キーまたはボタンへマクロを割り当て;
  • プロファイルを保存;
  • 割り当てキーを押すと、共通 Basic Runtime が procedure を実行。

別の AutoLoad を選ぶと procedure 一覧も変わります。現在の機能名は Basic Auto Load であり、古い Basic Load ではありません。

Basic Example

Basic Example は通常のマクロプロファイル内に保存される独立した完全スクリプトです。Autoload に別ファイルを作る必要はありません。

SUB Main()
    UO.Print('Example macro')
END SUB

手順:

  1. マクロへ Basic Example を追加;
  2. example editor を開く;
  3. SUB Main()END SUB を残し、その間へコードを書く;
  4. キーを割り当て;
  5. 通常のキャラクターマクロを保存;
  6. キーを押すと Runtime がこのスクリプトを実行。

editor は暗い背景、明るい文字、見える caret、明確な selection を使用します。編集面全体が読めないほど黒い場合は、古い UI ファイルやテーマ資源の混在を疑ってください。

IDE の Save 規則

ファイル Save 先
新規の無名ファイル Autoload\Scripts
ディスクから開いたファイル 元の完全パス
Save All 各変更ファイルの本来の保存先

IDE は一般の新規スクリプトを AutoLoad 直下へ自動作成しません。新しい AutoLoad が必要なら、明示的に Autoload 直下へ保存し、Options → Basic IDE で選択します。

実行時の安定性

Basic Auto Load と Basic Example は共通 Runtime のキューから起動され、マクロキー押下時にゲームスレッドを長時間占有しない設計です。ただし、スクリプト内の無限ループ、毎回の重い検索、yielding の欠如は遅延の原因になります。反復ループには適切な UO.Wait(...) を入れてください。

確認項目

  • 同じキャラクターで再ログインしても AutoLoad 選択が保持される;
  • キャラクターごとに別の選択を保存できる;
  • Basic Auto Load が選択ファイルの procedures だけを表示する;
  • 割り当てキーで選択 procedure が実行される;
  • Basic Example が通常のマクロプロファイルへ保存される;
  • 新規 IDE ファイルは Autoload\Scripts、既存ファイルは元の場所へ保存される。