shiny-cuty-excel-chiffon/data/e320_throw3.asd

198 lines
10 KiB
Common Lisp
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

*start
[if exp="sprite.clinchPlayer.chara == chrChocolat"]
[load id=stThrow4]
[endif]
[iscript]
mp.p = sprite.clinchPlayer;
sprite.holdPlayer(0,1,0);
mp.p.rootX = sprite.rootX;
switch(mp.p.cosState){
case 0:
mp.s = 'e320_throw3';
break;
case 1:
mp.s = 'e321_throw3';
break;
case 2:
mp.s = 'e322_throw3';
break;
case 3:
mp.s = 'e323_throw3';
break;
case 4:
switch(sf.adjCosVariation){
case 6:
mp.s = 'e326_throw3';
break;
case 9:
mp.s = 'e329_throw3';
break;
default:
mp.s = 'e324_throw3';
break;
}
}
mp.p.loadSprite(stDummy);
mp.p.altitude = 20;
mp.p.spriteTableChangeFlag = true;
mp.p.sprites[stClinched] = ['dummy2', 'dummy2', 'dummy2', 'dummy2', 'dummy2'];
mp.p.sprites[stClinchedStruggle] = ['dummy2', 'dummy2', 'dummy2', 'dummy2', 'dummy2'];
mp.p.sprites[stUntangle] = ['p00_recovery', 'p01_recovery', 'p02_recovery', 'p03_recovery', 'p04_recovery'];
mp.p.layer.conductor.mp.noEffectAtRecovery = true;
[endscript]
[state enablemove=false enableAttack=false]
[image storage=&(mp.s+'_1')]
[dispsize width=112 height=134 centerpos=56 baseline=0]
[disp left=0 top=0 opacity=255][wait frame=5]
[dispsize width=112 height=134 centerpos=62 baseline=1]
[disp left=1 top=0 opacity=255][wait frame=4]
[dispsize width=112 height=134 centerpos=63 baseline=1]
[disp left=2 top=0 opacity=255][hit rect="(29,8,101,122)"][wait frame=3]
[image storage=&(mp.s+'_2')]
[dispsize width=98 height=148 centerpos=45 baseline=2]
[disp left=0 top=0 opacity=255][hit rect="(12,16,89,137)"][wait frame=4]
[disp left=1 top=0 opacity=255][hit rect="(12,16,89,137)"][wait frame=4]
[disp left=0 top=0 opacity=255][hit rect="(12,16,89,137)"][wait frame=4]
[disp left=1 top=0 opacity=255][hit rect="(12,16,89,137)"][wait frame=4]
[disp left=0 top=0 opacity=255][hit rect="(12,16,89,137)"][wait frame=4]
[disp left=1 top=0 opacity=255][hit rect="(12,16,89,137)"][wait frame=4]
[dispsize width=98 height=148 centerpos=49 baseline=4]
[disp left=2 top=0 opacity=255][hit rect="(16,12,87,137)"][wait frame=4]
[iscript]
bao.informLayer.setFace(mp.p, 2);
mp.p.layer.tag_voice(%['storage'=>'a9010']);
kag.bgVoice[0] = 'a9068';
[endscript]
[image storage=&(mp.s+'_1')]
[dispsize width=112 height=134 centerpos=56 baseline=5]
[disp left=3 top=0 opacity=255][hit rect="(22,23,101,122)"][wait frame=5]
[playse storage=se269 buf=1]
;[playse storage="a9105" buf=2]
[quake frame=20 vmax=10]
[eval exp="mp.p.HP-=getDamageRate(mp.p)*45,mp.p.damage.tick=bao.tickCount"]
[jump target=*end cond="mp.p.HP <= 0"]
[image storage=&(mp.s+'_3')]
[dispsize width=106 height=98 centerpos=53 baseline=4]
[disp left=0 top=0 opacity=255][attack rect="(-4,40,112,92)" strength=20 kind=atkBrowOut][wait frame=3]
[disp left=1 top=0 opacity=255][wait frame=3]
[disp left=2 top=0 opacity=255][hit rect="(8,30,99,92)"][wait frame=8]
[iscript]
bao.showIcon('icon_shake', mp.p.chara);
sprite.nowSpriteId = stClinching;
sprite.holdPlayer(0,1,0);
mp.p.clinchedBy = sprite;
mp.p.nowSpriteId = stClinched;
mp.p.clinchedStrength = 200;
[endscript]
*loop
[disp left=3 top=0 opacity=255][hit rect="(8,30,99,92)"][wait frame=4][call target=*check]
[disp left=2 top=0 opacity=255][hit rect="(8,30,99,92)"][wait frame=4][call target=*check]
[eval exp="mp.p.HP -= 2"]
[jump target=*end cond="mp.p.HP <= 0"]
[jump target=*loop]
*end
[iscript]
kag.bgVoice[0] = '';
kag.se[4].stop();
[endscript]
;投げ捨て
[eval exp="mp.p.rootY=sprite.rootY+1"]
[eval exp="mp.p.inverse=!sprite.inverse"]
[eval exp="mp.p.layer.setInverse()"]
[eval exp="mp.p.layer.opacity=0"]
[eval exp="mp.p.altitude=30"]
[if exp="sprite.inverse"]
[eval exp="mp.p.rootX=sprite.rootX+10"]
[else]
[eval exp="mp.p.rootX=sprite.rootX-10"]
[endif]
[eval exp="sprite.holdPlayerPos=void"]
[eval exp="mp.p.noGravity=false"]
;[if exp="mp.p.HP<=1"]
; [eval exp="mp.p.HP=0"]
;[endif]
[eval exp="mp.p.loadSprite(stDamage2)"]
[eval exp="mp.p.damageFrom=sprite"]
[eval exp="mp.p.damageFromStr='ヘルオーク'"]
;立ち上がる
[image id=stStandUp num=1]
[dispsize width=116 height=102 centerpos=40 baseline=0]
[disp left=0 top=0 opacity=255][wait frame=5]
[image id=stStandUp num=2]
[dispsize width=100 height=120 centerpos=58 baseline=0]
[disp left=0 top=0 opacity=255][wait frame=10]
[dispsize width=100 height=120 centerpos=59 baseline=0]
[disp left=1 top=0 opacity=255][wait frame=7]
[eval exp="sprite.invincibleCount=15"]
[load id="stStanding"]
*check
[if exp="mp.p.nowSpriteId == stSpecial1"]
[image id=stStandUp num=1]
[dispsize width=116 height=102 centerpos=68 baseline=0]
[disp left=0 top=0 opacity=255][hit rect=(0,0,116,102)][wait frame=6]
[image id=stStandUp num=2]
[dispsize width=100 height=120 centerpos=58 baseline=0]
[disp left=0 top=0 opacity=255][hit rect=(0,0,100,120)][wait frame=6]
[dispsize width=100 height=120 centerpos=59 baseline=0]
[disp left=1 top=0 opacity=255][hit rect=(0,0,100,120)][wait frame=5]
[load id="stStanding"]
[endif]
[return]