KO 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 โ†’ Classic์—์„œ Basic 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 ํ๋ฅผ ํ†ตํ•ด ์‹œ์ž‘๋˜๋ฏ€๋กœ ๋งคํฌ๋กœ ํ‚ค๋ฅผ ๋ˆ„๋ฅผ ๋•Œ ๊ฒŒ์ž„ ์Šค๋ ˆ๋“œ๋ฅผ ์˜ค๋ž˜ ์ ์œ ํ•˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์Šคํฌ๋ฆฝํŠธ์˜ ๋ฌดํ•œ ๋ฐ˜๋ณต, ๋งค iteration์˜ ๋ฌด๊ฑฐ์šด ๊ฒ€์ƒ‰, yielding ๋ถ€์กฑ์€ ์—ฌ์ „ํžˆ ์ง€์—ฐ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋ฐ˜๋ณต๋ฌธ์—๋Š” ์ ์ ˆํ•œ UO.Wait(...)๋ฅผ ๋„ฃ์œผ์‹ญ์‹œ์˜ค.

๋น ๋ฅธ ํ™•์ธ ๋ชฉ๋ก

  • ๊ฐ™์€ ์บ๋ฆญํ„ฐ๋กœ ๋‹ค์‹œ ๋กœ๊ทธ์ธํ•ด๋„ AutoLoad ์„ ํƒ์ด ์œ ์ง€๋จ;
  • ์บ๋ฆญํ„ฐ๋งˆ๋‹ค ๋‹ค๋ฅธ ์„ ํƒ์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Œ;
  • Basic Auto Load๊ฐ€ ์„ ํƒ ํŒŒ์ผ์˜ procedures๋งŒ ํ‘œ์‹œํ•จ;
  • ์ง€์ • ํ‚ค๊ฐ€ ์„ ํƒ procedure๋ฅผ ์‹ค์ œ๋กœ ์‹คํ–‰ํ•จ;
  • Basic Example์ด ์ผ๋ฐ˜ ๋งคํฌ๋กœ ํ”„๋กœํ•„์— ์ €์žฅ๋จ;
  • ์ƒˆ IDE ํŒŒ์ผ์€ Autoload\Scripts, ๊ธฐ์กด ํŒŒ์ผ์€ ์›๋ž˜ ์œ„์น˜์— ์ €์žฅ๋จ.