Offset(x00346000)
//Remove the previous line if you wish not to override the offset in CONFIG.INI.
Text(x00000392)
//Remove the previous line if you wish text to compile directly after instructions.

OR(x0029,xFFFF)
{43}(r08)
Wait(00100)
{43}(r05)
Camera(+00616,-00028,+00504,+00302,+03584,+00000,+04096,+00032)
WaitForInstruction(x04,x00)
ZERO(x002A)
OR(x002A,x0040)
Wait(00010)
ZERO(x002A)
OR(x002A,x1000)
Wait(00050)
DisplayMessage(x10,x1B,x0001,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x002A)
OR(x002A,x0800)
Wait(00030)
ZERO(x002A)
OR(x002A,x0020)
{7E}(r5600FF00)
Wait(00001)
ZERO(x0028)
OR(x0028,x00FD)
AND(x0029,xEFFF)
AND(x0029,xBFFF)
AND(x0029,xFFDF)
{7E}(r5600FC00)
OR(x0029,xFFFF)
Wait(00008)
DisplayMessage(x10,x1A,x0002,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x0028)
OR(x0028,x00FD)
AND(x0029,xEFFF)
AND(x0029,xBFFF)
AND(x0029,xFFDF)
{7E}(r5600FB00)
ZERO(x0028)
OR(x0028,x0000)
OR(x0029,xFFFF)
Wait(00008)
DisplayMessage(x10,x1A,x0003,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x0029)
ADD(x0029,x0009)
MULT(x0029,x0010)
MULT(x0029,x0010)
ADD(x0029,x00FF)
{7E}(r56000100)
OR(x0029,xFFFF)
Wait(00070)
DisplayMessage(x10,x1A,x0005,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x0029)
ADD(x0029,x00A9)
MULT(x0029,x0010)
MULT(x0029,x0010)
ADD(x0029,x00FF)
{7B}()
{40}(r00F0BC2900)
{FF}()
{FF}()
ZERO(x002A)
OR(x002A,x0040)
Wait(00060)
DisplayMessage(x10,x1A,x0006,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x0028)
ADD(x0028,x00FF)
MULT(x0028,x0010)
MULT(x0028,x0010)
ADD(x0028,x00FE)
{D5}()
{01}()
ZERO(x0000)
ZERO(x0001)
{B1}(x0000,x0056)
ADD(x0001,x0006)
{A2}()
{D0}()
{02}()
{D1}()
{01}()
{D1}()
{02}()
{D4}()
{02}()
ZERO(x0000)
ZERO(x0001)
{B1}(x0000,x0056)
ADD(x0001,x00FA)
{A2}()
{D0}()
{03}()
ZERO(x0029)
ADD(x0029,x00A9)
MULT(x0029,x0010)
MULT(x0029,x0010)
ADD(x0029,x00FF)
{7B}()
{40}(r00F0BE2A00)
OR(x002A,x0040)
Wait(00005)
{D1}()
{03}()
{D4}()
{03}()
ZERO(x0029)
ADD(x0029,x0009)
MULT(x0029,x0010)
MULT(x0029,x0010)
ADD(x0029,x00DF)
{D2}()
{03}()
{D2}()
{02}()
Wait(00001)
{D3}()
{01}()
{D2}()
{01}()
ZERO(x0028)
ADD(x0028,x0000)
MULT(x0028,x0010)
MULT(x0028,x0010)
Wait(00030)
{7B}()
{20}()
{00}()
{F0}()
ZERO(x002A)
OR(x002A,x0020)
Wait(00080)
DisplayMessage(x10,x1A,x0007,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x0029)
ADD(x0029,x0009)
MULT(x0029,x0010)
MULT(x0029,x0010)
ADD(x0029,x00F0)
{90}()
{07}()
{05}()
{00}()
OR(x0029,xFFFF)
Wait(00001)
ZERO(x002A)
OR(x002A,x0020)
Wait(00080)
DisplayMessage(x10,x1A,x0008,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
AND(x0029,xFFDF)
{7E}(r56000100)
Wait(00001)
ZERO(x0028)
OR(x0028,x00FF)
AND(x0029,xEFFF)
AND(x0029,xBFFF)
Wait(00120)
OR(x0029,xFFFF)
Wait(00001)
DisplayMessage(x10,x19,x0009,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
Wait(00001)
ZERO(x0028)
OR(x0028,x00FE)
ZERO(x0029)
ADD(x0029,x00A9)
MULT(x0029,x0010)
MULT(x0029,x0010)
ADD(x0029,x00DF)
{7E}(r56000100)
OR(x0029,xFFFF)
Wait(00001)
ChangeStats(xFD,x00,x02,+00100)
Wait(00001)
ZERO(x0028)
OR(x0028,x0000)
Wait(00010)
ZERO(x002A)
OR(x002A,x4000)
Wait(00030)
ZERO(x002A)
OR(x002A,x4000)
Wait(00060)
ZERO(x002A)
OR(x002A,x0020)
{7E}(r56000100)
Wait(00060)
ZERO(x002A)
OR(x002A,x0020)
Wait(00060)
ZERO(x002A)
OR(x002A,x0020)
{7E}(r56000100)
Wait(00060)
ZERO(x002A)
OR(x002A,x4000)
Wait(00030)
ZERO(x002A)
OR(x002A,x4000)
Wait(00060)
ZERO(x002A)
OR(x002A,x0020)
{7E}(r56000100)
Wait(00060)
ZERO(x002A)
OR(x002A,x0020)
Wait(00060)
ZERO(x002A)
OR(x002A,x0020)
{7E}(r5600FF00)
ZERO(x002A)
OR(x002A,x0040)
Wait(00030)
ZERO(x002A)
OR(x002A,x1000)
Wait(00030)
DisplayMessage(x10,x1B,x000A,xF0,x00,x00,+00000,+00000,+00000,x00)
WaitForInstruction(x01,x00)
{E3}()
EventEnd()

//INSTRUCTION SECTION END -  TEXT START
//Message x01
{font:08}Master Darlavon{br}
{font:00}Now then, let us begin the lesson.{br}
{br}
In this session we shall discuss how to use{br}
magicks.{br}
{br}
As with units, each magick has a charge time,{br}
which starts when a unit begins to cast it,{br}
and ends when the magick goes into effect.{br}
Each magick also has a Speed attribute that{br}
affects how quickly it charges.{br}
{br}
The charge time for magicks begins when a{br}
unit starts to cast them.{br}
{br}
If the unit's next turn arrives before the{br}
casting is complete, the unit cannot perform{br}
another action without canceling the magick.{br}
If the unit chooses the Wait command, it will{br}
continue casting. The unit may also move{br}
without interrupting the casting.{br}
Perhaps the easiest way to learn about magick{br}
is to actually use it.{br}
{br}
First, select "Act" from the unit's menu.{end}

//Message x02
Now select "Black Magicks."{end}

//Message x03
The black magicks available to this unit{br}
are displayed.{br}
{br}
Magicks that are marked with the {D110} icon{br}
may be reflected with the Reflect ability.{br}
{br}
The MP cost of casting the magick is shown{br}
in the column labeled "MP."{br}
{br}
The "Turn" column indicates when the magick{br}
will actually go into effect.{br}
{br}
All magicks require time to cast.{br}
{br}
{br}
The Turn value tells you when the unit{br}
will finish casting the magick in the{br}
current turn order.{br}
It is calculated based on the casting{br}
unit's turn order and the amount of time{br}
it takes to cast the magick.{br}
You can press the left or right button to{br}
see more detailed information.{br}
{br}
Move the cursor to the spell whose timing{br}
you wish to check, and press the left or{br}
right button now.{end}

//Message x04
Empty{end}

//Message x05
The turn list is displayed. The flashing row{br}
with the casting unit's name and the magick's{br}
name indicates when the magick will be cast.{br}
This list may also be viewed at any time by{br}
pressing {D9C7} and selecting "Turn List."{br}
{br}
Now press {D11F} to return to the spell selection{br}
menu.{end}

//Message x06
For now, try casting the first spell{br}
on the list.{end}

//Message x07
The red tiles around the unit indicate the{br}
magick's range.{br}
{br}
You may select any of these tiles as the{br}
target.{br}
{br}
The targeted unit or units will be damaged{br}
by offensive magicks, or aided by support{br}
magicks.{br}
Select that enemy unit's tile as your target.{end}

//Message x08
The green tiles around the target indicate{br}
the magick's area of effect.{br}
{br}
Any units within the the area of effect{br}
will be affected.{br}
{br}
Since you are casting an offensive magick,{br}
units in the area of effect will be damaged.{br}
{br}
Note that allied units and enemy units will{br}
flash in different colors to help you{br}
distinguish friend from foe.{br}
Note that both allies and enemies can be{br}
damaged by your magicks.{br}
{br}
Therefore, you should always ensure that{br}
there are no blue flashing units in the{br}
area of effect.{br}
You may turn off the flashing color effect{br}
with option 10, "Target Colors."{br}
{br}
Press {D9B9} again to confirm your target.{end}

//Message x09
Next, choose whether you wish to target the{br}
unit or the tile beneath him.{br}
{br}
If you select "Unit," that unit will remain{br}
the magick's target, even if he or she moves{br}
while it is being cast.{br}
If you select "Tile" and the unit moves{br}
while the magick is being cast, the magick{br}
will be cast upon the empty tile.{br}
Choosing "Unit" ensures that a magick will affect{br}
the targeted unit. But if the unit moves, the{br}
magick may then affect your own units as well.{br}
This time, let's select the unit as our target.{end}

//Message x0A
Only one magick may be cast at a time. Starting{br}
another action before the initial magick has{br}
been cast will cancel it.{br}
This concludes my explanation of magicks.{br}
{br}
{br}
Let us review. Like units, magicks have a{br}
charge time requirement and a Speed attribute.{br}
{br}
Keep in mind the amount of time required to{br}
cast magicks when choosing one.{br}
{br}
When casting a magick, you must select a target{br}
within its range. The magick will affect all{br}
tiles in its area of effect.{br}
You may choose to cast a magick on either a{br}
unit or a tile.{br}
{br}
If you cast a magick on a unit, the magick's{br}
area of effect will move along with the{br}
targeted unit.{br}
If you cast a magick on a tile and there are no{br}
units within the area of effect when the magick{br}
is finally cast, the magick will be wasted.{br}
Keep these points in mind to make the most{br}
of your units' magicks.{br}
{br}
With that, I shall bring this lesson to a close.{end}

//Message x0B

