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

133 lines
7.6 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
[eval exp="sprite.nowRollingAttack=false"]
[iscript]
mp.rescueFlag = false;
if(sprite.damageFrom !== void && isvalid sprite.damageFrom){
mp.damageFromKind = sprite.damageFrom.kind;
if((sprite.lastSpriteId==stClinching || sprite.lastSpriteId==stBackClinch) && mp.clinchPlayer !== void && isvalid mp.clinchPlayer){
if(mp.damageFromKind != mp.clinchPlayer.kind && sprite.damageFrom === bao.nowSelectingPlayer){
mp.rescueFlag = true;
}
}
}
[endscript]
[if exp="mp.rescueFlag"]
[eval exp="sf.clinchedRescueCount++"]
[if exp="sf.clinchedRescueCount >= 5"]
[eval exp="bao.checkMission('抱き付き救助')"]
[endif]
[endif]
;[eval exp="dm(sprite.clinchPlayer)"]
[if exp="sprite.clinchPlayer!==void && sprite.clinchPlayer.nowSpriteId==stDummy"]
[eval exp="sprite.clinchPlayer.loadSprite(stRecovery)"]
[eval exp="sprite.clinchPlayer.layer.conductor.mp.noEffectAtRecovery = true"]
[eval exp="sprite.clinchPlayer = void"]
[endif]
[state enablemove=false enableattack=false]
[playdamagese]
[image num=1]
[dispsize width=136 height=90 centerpos=68 baseline=0]
[ontrigger name=landing target=*landing1]
[if exp="sprite.lastSpriteId==stDamage2"]
[eval exp="mp.damageHeight = int(mp.damageHeight*0.9)"]
[else]
; [if exp="sprite.HP > 0"]
; [playse storage=se9104]
; [else]
; [playse storage=soldier_damage2_1]
; [endif]
[eval exp="mp.damageHeight = 27"]
[endif]
[eval exp="mp.damageHeight = 10" cond="mp.damageHeight < 10"]
[eval exp="mp.path1='(-40,0,'+mp.damageHeight+')'"]
[eval exp="mp.path2='(-20,0,-'+mp.damageHeight+')'"]
;[move path=(-40,0,27) haccel=-1 frame=10]
;[move path=(-20,0,-27) xaccel=-0.2 frame=5]
[move path=&mp.path1 haccel=-1 frame=10]
[move path=&mp.path2 xaccel=-0.2 frame=5]
[disp left=0 top=0 opacity=255][hit rect="(8,0,130,80)"][wait frame=10]
[image num=2]
[dispsize width=158 height=54]
[disp left=0 top=0 opacity=255][hit rect="(17,53,145,54)"]
[wait frame=1]
[s cond="sprite.altitude>0"]
*landing1
[image num=2]
[dispsize width=158 height=54]
[ontrigger name=landing target=*landing2]
;[playse storage=se268]
[playse storage=se278]
[quake frame=10 vmax=5]
[disp left=0 top=1 opacity=255][hit rect="(17,53,145,54)"]
[move path=(-13,0,13) haccel=-1 frame=5][wait frame=5]
[disp left=0 top=0 opacity=255][hit rect="(17,53,145,54)"]
[move path=(-13,0,-13) haccel=1 frame=5]
[s]
*landing2
[ontrigger name=landing target=*landing3]
[eval exp="sprite.invincibleCount=30"]
[disp left=0 top=1 opacity=255][hit rect="(17,53,145,54)"]
[move path=(-3,0,4) haccel=-1 frame=5][wait frame=5]
[disp left=0 top=0 opacity=255][hit rect="(17,53,145,54)"]
[move path=(-3,0,-4) haccel=1 frame=5]
[s]
*landing3
[wait frame=1]
[if exp="sprite.HP > 0"]
[disp left=0 top=0 opacity=255][hit rect="(17,53,145,54)"]
[wait frame=15]
[load id="stStandUp"]
[endif]
*dead
[eval exp="sprite.scriptQueue=[]"]
[jump target=*erase cond="f.inBattleMode"]
[if exp="tf.deathorc !== void && isvalid tf.deathorc && tf.deathorc.HP > 0"]
[eval exp="sprite.isBoss = false"]
[else]
[del]
[endif]
[wait frame=20]
[eval exp="sf.enemyKillCount++"]
[load id=stDown]
*erase
[eval exp="sprite.isBoss = false"]
[del]
[disp left=0 top=0 opacity=235][wait frame=3]
[disp left=0 top=0 opacity=215][wait frame=3]
[disp left=0 top=0 opacity=195][wait frame=3]
[disp left=0 top=0 opacity=175][wait frame=3]
[disp left=0 top=0 opacity=155][wait frame=3]
[disp left=0 top=0 opacity=135][wait frame=3]
[disp left=0 top=0 opacity=115][wait frame=3]
[disp left=0 top=0 opacity= 95][wait frame=3]
[disp left=0 top=0 opacity= 75][wait frame=3]
[disp left=0 top=0 opacity= 55][wait frame=3]
[disp left=0 top=0 opacity= 35][wait frame=3]
[disp left=0 top=0 opacity= 15][wait frame=3]
[disp left=0 top=0 opacity= 0][wait frame=3]
[s]