Difference between revisions of "Animation string"
Jump to navigation
Jump to search
(Add some more notes) |
(Add some notes from cbm on the bp* tags) |
||
Line 106: | Line 106: | ||
| bo<n> || | | bo<n> || | ||
|- | |- | ||
− | | bpb<n> || | + | | bpb<n> || store n in a global ''I think the bp* tags relate to drawing lightning flashes'' |
|- | |- | ||
− | | bpd<n> || | + | | bpd<n> || store n in a global |
|- | |- | ||
− | | bpf || | + | | bpf || if (some global flag) then bps48bpn48 else bps1bpf47 |
|- | |- | ||
− | | bpn<n> || | + | | bpn<n> || store n in a local value |
|- | |- | ||
| bpo || | | bpo || | ||
|- | |- | ||
− | | bpp<n> || | + | | bpp<n> || bpp<n> sets the same value as bpb<n> but also sets another global |
|- | |- | ||
− | | bps<n> || | + | | bps<n> || store n in a local value |
|- | |- | ||
| br || ''Draw additively'' | | br || ''Draw additively'' |
Revision as of 13:10, 21 November 2009
Basic format
Animation strings are of the form:
<frame descriptor 1>-<frame descriptor 2>-...-<frame descriptor n>
Frame descriptors are a sequence of lowercase tags followed by an uppercase frame letter and an integer frame duration:
zzA1
For instance:
x-5A3-x-3B2-x-2C1-x-1D1
divides up as:
Tags | Frame | Duration |
---|---|---|
x-5 | A | 3 |
x-3 | B | 2 |
x-2 | C | 1 |
x-1 | D | 1 |
Tags
There are a lot of available tags. Not all of them are understood. Some of them take numeric parameters, which are indicated in angle brackets below. Such parameters must match the regular expression:
-?+\?[0-9]*
An omitted parameter is treated as 0.
Here's a complete list of all tags up to t. There are some other tags previously known at the end as well. Descriptions in italics may be unreliable.
Tag | Notes |
---|---|
aa | |
ab | |
ac | |
ad | |
ae | |
af | |
ag | |
ai | |
am | |
ao | |
as | |
at | |
aw | |
ax | |
ar | |
al | |
b1 | |
b2 | |
ba<n> | |
bb<n> | Screen shake with magnitude n |
bc<n> | |
bd | |
be | |
bf<n> | Blend finish with opacity n < 256 |
bg | |
bh | |
bi<n> | |
bj<n> | |
bk<n> | crashes if not in arena? |
bl<n> | |
bm<n> | |
bn | |
bo<n> | |
bpb<n> | store n in a global I think the bp* tags relate to drawing lightning flashes |
bpd<n> | store n in a global |
bpf | if (some global flag) then bps48bpn48 else bps1bpf47 |
bpn<n> | store n in a local value |
bpo | |
bpp<n> | bpp<n> sets the same value as bpb<n> but also sets another global |
bps<n> | store n in a local value |
br | Draw additively |
bs<n> | Blend start with opacity n < 256 (the sprite is drawn at this opacity at the start of the frame and gradually transitioned to whatever is set as the blend finish value) |
bt | |
bu | |
bw | |
bx | |
by | |
bz | |
cf | |
cg | |
cl | |
cp | Apply the damage for the current animation to opponent |
cw | |
cx<n> | |
cy<n> | |
d<n> | d1 is the animation string for the third to last frame in all the scrap metal damage bits that fall off of a HAR |
e | |
f | toggle flag Flip sprite verticially |
g | |
h | |
i | |
jf2 | |
jf | |
jg | |
jh | |
jj | |
jl | |
jm | |
jn<n> | |
jp | |
jz | combination of all other j flags except jn |
k<n> | |
l<n> | |
ma<n> | if n == 1000 then n := random(360) |
mc | |
md<n> | Destroy animation n |
mg<n> | |
mi<n> | |
mm<n> | mm := n |
mn<n> | |
mo | something involving HARs, applied to object mm |
mp<n> | |
mrx<n> | mx := random(320 - 2*mm) + n |
mry<n> | my := random(200 - 2*mm) + n |
ms | my := -4 * (f1C - 188) |
mu<n> | similar to mo, n < 1024, applied to object mm |
mx<n> | mx := n |
my<n> | my := n |
m<n> | Create instance of animation n |
n | |
ox<n> | ox := n |
oy<n> | oy := n |
p[...] | all p tags have special cleanup code |
pa | |
pb<n> | n < 512 |
pc<n> | n < 512 |
pd<n> | n < 256 |
pe | make pa, pb, pc, pd operate on the other HAR |
ph | disable pa, pb, pc, pd |
pp<n> | |
ps | update a color palette |
ptd<n> | |
ptp<n> | |
ptr<n> | |
q | |
r | toggle a global Flip sprite horizontally |
s<n> | Play sound n |
sa | |
sb<n> | same as se<n> plus setting one other value to n |
sc<n> | sc0 is different from other sc tags |
sd | |
se<n> | similar to sl<n+1> (the latter also clears the high byte of the value) |
sf<n> | Sound frequency n |
sl<n> | Sound loudness n |
smf<n> | |
smo<n> | |
sp<n> | Sound panning n? |
sw<n> | sw<n> sets an internal counter to max(current value, n). This counter is decreased at a rate of either 2 or 4 units per game tick, down to 0. If the counter gets to 100 or above, the game pauses for a little while. |
t | |
sp<n> | |
ub | motion blur |
zz | Player is invincible for this frame |