198 lines
10 KiB
Common Lisp
198 lines
10 KiB
Common Lisp
*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]
|
||
|