An iscript entry consists of two distinct parts. One is called the "header" and will be covered later. The other section does not have a name (afaik) and holds the actual iscript code.
Iscript code consists of "opcodes" and "code blocks". Opcodes do various things, such as playing a certain frame/frameset (the playfram opcode [this is not misspelled, there really is no "e"]), creating an image overlay (the imgol opcode), or ending an image (the end opcode). Opcodes are for the most part executed sequentially. This means in the following code:
playfram 0x11
wait 1
end
the playfram would be called first, then wait, then end.
There is a list of iscript opcodes somewhere. If you are using IceCCUI, check your IceCCUI directory. Or I can get you one.
Code blocks are used by the header, the "goto" opcode, and the various "condjmp" opcodes. They consist of a name, a :, and a series of opcodes. This is an example of a code block:
ExampleCodeBlock:
playfram 0x11
wait 1
playfram 0x00
wait 1
goto ExampleCodeBlock
This code block will play frameset 1, wait 1, play frameset 0, wait 1, then jump to itself.
Note that if the code reaches the start of a codeblock, it will keep executing. Take the following code:
ExampleCodeBlock1:
playfram 0x11
wait 1
ExampleCodeBlock2:
setvertpos 1
wait 1
setvertpos 0
wait 1
goto ExampleCodeBlock2
This code will play frameset 1, wait 1, set the image's vertical position to 1 (which causes the image to be drawn one pixel lower than normal), waits 1, sets the image's vertical position to 0 (which causes the image to be drawn at its normal elevation), waits 1, then jumps to "ExampleCodeBlock2".
The last topic that will be covered is the iscript header. The header tells the iscript which code block to call when certain events occur. The header consists of a "type" entry (which specifies which events may occur on this particular image), an IsID entry (which specifies which iscript entry this is), and then a list of events and the associated code block. Look at some existing iscript headers and you should be able to figure it out.
None.