touhou-reimpl/research/stgenm05.tanm

643 lines
12 KiB
Plaintext

#pragma mapfile "utils/v4.anmm"
entry {
path: "stgenm/stg5enm.png",
img_width: 256,
img_height: 256,
img_format: FORMAT_ARGB_4444,
sprites: {
sprite0: {x: 0.0, y: 0.0, w: 64.0, h: 64.0},
sprite1: {x: 64.0, y: 0.0, w: 64.0, h: 64.0},
sprite2: {x: 128.0, y: 0.0, w: 64.0, h: 64.0},
sprite3: {x: 192.0, y: 0.0, w: 64.0, h: 64.0},
sprite4: {x: 0.0, y: 64.0, w: 64.0, h: 64.0},
sprite5: {x: 64.0, y: 64.0, w: 64.0, h: 64.0},
sprite6: {x: 0.0, y: 128.0, w: 64.0, h: 64.0},
sprite7: {x: 64.0, y: 128.0, w: 64.0, h: 64.0},
sprite8: {x: 128.0, y: 128.0, w: 64.0, h: 64.0},
sprite9: {x: 192.0, y: 128.0, w: 64.0, h: 64.0},
},
}
script 0 script0 {
loop {
posTime(64, 9, 0.0, 6.0, 0.0);
sprite(sprite0);
+8: // 8
sprite(sprite1);
+8: // 16
sprite(sprite2);
+8: // 24
sprite(sprite1);
+8: // 32
sprite(sprite0);
+8: // 40
sprite(sprite1);
+8: // 48
sprite(sprite2);
+8: // 56
sprite(sprite1);
+8: // 64
posTime(64, 9, 0.0, 0.0, 0.0);
sprite(sprite0);
+8: // 72
sprite(sprite1);
+8: // 80
sprite(sprite2);
+8: // 88
sprite(sprite3);
+8: // 96
sprite(sprite0);
+8: // 104
sprite(sprite1);
+8: // 112
sprite(sprite2);
+8: // 120
sprite(sprite1);
+8: // 128
}
}
script 1 script1 {
pos(4.0, 0.0, 0.0);
sprite(sprite4);
+8: // 8
sprite(sprite5);
stop();
}
script 2 script2 {
flipX();
pos(-4.0, 0.0, 0.0);
sprite(sprite4);
+8: // 8
sprite(sprite5);
stop();
}
script 3 script3 {
pos(4.0, 0.0, 0.0);
sprite(sprite5);
+8: // 8
sprite(sprite4);
pos(0.0, 0.0, 0.0);
loop {
posTime(64, 9, 0.0, 6.0, 0.0);
sprite(sprite0);
+8: // 16
sprite(sprite1);
+8: // 24
sprite(sprite2);
+8: // 32
sprite(sprite1);
+8: // 40
sprite(sprite0);
+8: // 48
sprite(sprite1);
+8: // 56
sprite(sprite2);
+8: // 64
sprite(sprite1);
+8: // 72
posTime(64, 9, 0.0, 0.0, 0.0);
sprite(sprite0);
+8: // 80
sprite(sprite1);
+8: // 88
sprite(sprite2);
+8: // 96
sprite(sprite3);
+8: // 104
sprite(sprite0);
+8: // 112
sprite(sprite1);
+8: // 120
sprite(sprite2);
+8: // 128
sprite(sprite1);
+8: // 136
}
}
script 4 script4 {
flipX();
pos(-4.0, 0.0, 0.0);
sprite(sprite5);
+8: // 8
sprite(sprite4);
pos(0.0, 0.0, 0.0);
loop {
posTime(64, 9, 0.0, 6.0, 0.0);
sprite(sprite0);
+8: // 16
sprite(sprite1);
+8: // 24
sprite(sprite2);
+8: // 32
sprite(sprite1);
+8: // 40
sprite(sprite0);
+8: // 48
sprite(sprite1);
+8: // 56
sprite(sprite2);
+8: // 64
sprite(sprite1);
+8: // 72
posTime(64, 9, 0.0, 0.0, 0.0);
sprite(sprite0);
+8: // 80
sprite(sprite1);
+8: // 88
sprite(sprite2);
+8: // 96
sprite(sprite3);
+8: // 104
sprite(sprite0);
+8: // 112
sprite(sprite1);
+8: // 120
sprite(sprite2);
+8: // 128
sprite(sprite1);
+8: // 136
}
}
script 5 script5 {
scriptNew(script6);
scriptNew(script7);
sprite(sprite6);
+4: // 4
sprite(sprite7);
stop();
}
script 6 script6 {
sprite(sprite8);
alpha(0);
blendMode(1);
alphaTime(30, 0, 128);
pos(20.0, -24.0, 0.0);
scale(0.0, 0.0);
scaleTime(60, 0, 1.0, 1.0);
loop {
color(128, 128, 128);
+2: // 2
color(255, 255, 255);
+2: // 4
}
}
script 7 script7 {
sprite(sprite9);
alpha(0);
type(1);
blendMode(1);
alphaTime(30, 0, 128);
pos(20.0, -24.0, 0.0);
scale(0.0, 0.0);
scaleTime(60, 0, 1.0, 1.0);
angleVel(0.0, 0.0, -1.8318324);
color(255, 0, 0);
loop {
+2: // 2
}
}
script 8 script8 {
flipX();
scriptNew(script9);
scriptNew(script10);
I4 = 60 / 4;
do {
sprite(sprite10);
+2: // 2
sprite(sprite11);
+2: // 4
} while (--I4);
alphaTime(60, 0, 0);
I4 = 60 / 4;
do {
sprite(sprite10);
+2: // 6
sprite(sprite11);
+2: // 8
} while (--I4);
flipX();
alphaTime(20, 0, 255);
sprite(sprite7);
+120: // 128
sprite(sprite6);
+4: // 132
nop();
loop {
posTime(64, 9, 0.0, 6.0, 0.0);
sprite(sprite0);
+8: // 140
sprite(sprite1);
+8: // 148
sprite(sprite2);
+8: // 156
sprite(sprite1);
+8: // 164
sprite(sprite0);
+8: // 172
sprite(sprite1);
+8: // 180
sprite(sprite2);
+8: // 188
sprite(sprite1);
+8: // 196
posTime(64, 9, 0.0, 0.0, 0.0);
sprite(sprite0);
+8: // 204
sprite(sprite1);
+8: // 212
sprite(sprite2);
+8: // 220
sprite(sprite3);
+8: // 228
sprite(sprite0);
+8: // 236
sprite(sprite1);
+8: // 244
sprite(sprite2);
+8: // 252
sprite(sprite1);
+8: // 260
}
}
script 9 script9 {
sprite(sprite8);
alpha(0);
blendMode(1);
alphaTime(30, 0, 128);
pos(0.0, 0.0, 0.0);
scale(0.0, 0.0);
scaleTime(60, 4, 4.0, 4.0);
posTime(120, 9, 20.0, -24.0, 0.0);
I4 = 60 / 4;
do {
color(128, 128, 128);
+2: // 2
color(255, 255, 255);
+2: // 4
} while (--I4);
scaleTime(90, 1, 0.0, 0.0);
I4 = 60 / 4;
do {
color(128, 128, 128);
+2: // 6
color(255, 255, 255);
+2: // 8
} while (--I4);
+30: // 38
delete();
}
script 10 script10 {
sprite(sprite9);
alpha(0);
type(1);
blendMode(1);
alphaTime(30, 0, 128);
scale(0.0, 0.0);
scaleTime(120, 0, 1.0, 1.0);
angleVel(0.0, 0.0, -1.8318324);
color(255, 0, 0);
posTime(120, 9, 20.0, -24.0, 0.0);
+120: // 120
nop();
scaleTime(30, 0, 4.0, 4.0);
alphaTime(30, 0, 0);
+30: // 150
delete();
}
entry {
path: "stgenm/stg4enm2.png",
img_width: 256,
img_height: 256,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {
sprite10: {x: 0.0, y: 0.0, w: 48.0, h: 48.0},
sprite11: {x: 48.0, y: 0.0, w: 48.0, h: 48.0},
sprite12: {x: 0.0, y: 48.0, w: 48.0, h: 48.0},
sprite13: {x: 48.0, y: 48.0, w: 48.0, h: 48.0},
sprite14: {x: 96.0, y: 48.0, w: 48.0, h: 48.0},
sprite15: {x: 144.0, y: 48.0, w: 48.0, h: 48.0},
},
}
script 11 script11 {
loop {
sprite(sprite10);
+3: // 3
sprite(sprite11);
+3: // 6
}
}
script 12 script12 {
flipX();
sprite(sprite12);
+6: // 6
sprite(sprite13);
+6: // 12
sprite(sprite14);
stop();
}
script 13 script13 {
sprite(sprite12);
+6: // 6
sprite(sprite13);
+6: // 12
sprite(sprite14);
stop();
}
script 14 script14 {
flipX();
sprite(sprite15);
+6: // 6
sprite(sprite12);
+16: // 22
nop();
loop {
sprite(sprite10);
+3: // 25
sprite(sprite11);
+3: // 28
}
}
script 15 script15 {
sprite(sprite15);
+6: // 6
sprite(sprite12);
+16: // 22
nop();
loop {
sprite(sprite10);
+3: // 25
sprite(sprite11);
+3: // 28
}
}
entry {
path: "face/enemy5/face05no.png",
img_width: 402,
img_height: 128,
memory_priority: 0,
sprites: {sprite16: {x: 0.0, y: 0.0, w: 402.0, h: 128.0}},
}
entry {
path: "face/enemy5/face05n2.png",
img_width: 402,
img_height: 128,
memory_priority: 0,
sprites: {sprite17: {x: 0.0, y: 0.0, w: 402.0, h: 128.0}},
}
entry {
path: "face/dummy.png",
img_width: 8,
img_height: 8,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {sprite18: {x: 0.0, y: 0.0, w: 256.0, h: 128.0}},
}
entry {
path: "face/dummy.png",
img_width: 8,
img_height: 8,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {sprite19: {x: 0.0, y: 0.0, w: 256.0, h: 128.0}},
}
entry {
path: "face/dummy.png",
img_width: 8,
img_height: 8,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {sprite20: {x: 0.0, y: 0.0, w: 256.0, h: 128.0}},
}
entry {
path: "face/enemy5/face05dp.png",
img_width: 402,
img_height: 128,
memory_priority: 0,
sprites: {sprite21: {x: 0.0, y: 0.0, w: 402.0, h: 128.0}},
}
entry {
path: "face/dummy.png",
img_width: 8,
img_height: 8,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {sprite22: {x: 0.0, y: 0.0, w: 256.0, h: 128.0}},
}
entry {
path: "face/enemy5/face05sp.png",
img_width: 402,
img_height: 128,
memory_priority: 0,
sprites: {sprite23: {x: 0.0, y: 0.0, w: 402.0, h: 128.0}},
}
entry {
path: "face/enemy5/face05lo.png",
img_width: 402,
img_height: 128,
memory_priority: 0,
sprites: {sprite24: {x: 0.0, y: 0.0, w: 402.0, h: 128.0}},
}
entry {
path: "face/enemy5/face05no.png",
img_width: 402,
img_height: 128,
offset_y: 128,
memory_priority: 0,
sprites: {
sprite25: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite26: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite27: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite28: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite29: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite30: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite31: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
sprite32: {x: 0.0, y: 0.0, w: 402.0, h: 128.0},
},
}
entry {
path: "face/enemy5/face05lo.png",
img_width: 402,
img_height: 128,
offset_y: 128,
memory_priority: 0,
sprites: {sprite33: {x: 0.0, y: 0.0, w: 402.0, h: 128.0}},
}
entry {
path: "face/enemy5/face05no.png",
img_width: 402,
img_height: 64,
offset_y: 256,
memory_priority: 0,
sprites: {
sprite34: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite35: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite36: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite37: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite38: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite39: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite40: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite41: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
sprite42: {x: 0.0, y: 0.0, w: 402.0, h: 64.0},
},
}
entry {
path: "card/cdbg05a.png",
img_width: 512,
img_height: 512,
img_format: FORMAT_RGB_565,
memory_priority: 0,
sprites: {sprite43: {x: 0.0, y: 0.0, w: 512.0, h: 512.0}},
}
script 16 script16 {
sprite(sprite43);
pos(224.0, 240.0, 0.0);
type(1);
alpha(0);
alphaTime(60, 0, 255);
scale(1.15625, 1.15625);
angleVel(0.0, 0.0, 0.003926991);
stop();
}
entry {
path: "card/cdbg05b.png",
img_width: 256,
img_height: 256,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {sprite44: {x: 0.0, y: 0.0, w: 384.0, h: 448.0}},
}
script 17 script17 {
sprite(sprite44);
type(1);
pos(224.0, 240.0, 0.0);
alpha(0);
alphaTime(60, 0, 255);
color(255, 255, 255);
scrollY(0.0033333334);
stop();
}
entry {
path: "face/enemy5/ename05.png",
img_width: 128,
img_height: 64,
img_format: FORMAT_ARGB_4444,
memory_priority: 0,
sprites: {sprite45: {x: 0.0, y: 0.0, w: 128.0, h: 64.0}},
}
script 18 script18 {
ins_85(1);
randMode(1);
anchor(0, 2);
pos(288.0, 374.0, 0.0);
layer(16);
sprite(sprite45);
alpha(0);
alphaTime(30, 0, 255);
+300: // 300
nop();
interrupt[1]:
alphaTime(20, 0, 0);
+20: // 320
delete();
}
entry {
path: "face/enemy5/face05ct.png",
img_width: 402,
img_height: 512,
memory_priority: 0,
sprites: {sprite46: {x: 0.0, y: 0.0, w: 402.0, h: 512.0}},
}
script 19 script19 {
sprite(sprite46);
layer(5);
anchor(0, 1);
type(2);
pos(624.0, -160.0, 0.0);
color(0, 0, 0);
colorTime(30, 0, 255, 255, 255);
posTime(30, 0, 240.0, -16.0, 0.0);
+30: // 30
posTime(90, 0, 208.0, 0.0, 0.0);
+90: // 120
posTime(30, 0, -176.0, 160.0, 0.0);
colorTime(30, 0, 0, 0, 0);
+30: // 150
delete();
}