home *** CD-ROM | disk | FTP | other *** search
/ ProGames 6 / PROGAMES.iso / linked / KOF2003BW.exe / KOF2003BW / CHARS / orochi / Common.cns < prev    next >
Encoding:
Text File  |  2000-11-08  |  36.6 KB  |  1,946 lines

  1. ; Common state file
  2. ;
  3. ; System variables usage
  4. ; ----------------------
  5. ; Var name    Type   Purpose
  6. ; --------    ----   -------
  7. ; sysvar(0)   Temp   Set by state 5081 (HITL_SLIDE) to 1 to prevent
  8. ;                    showing ground hit frame in state 5110 (HIT_LIEDOWN).
  9. ;                    Used by guarding states.
  10. ; sysvar(1)   Temp   Used by state 40 (Jump Start) amd 45 (Air Jump Start)
  11. ;                    to keep track of which way to jump.
  12. ;                    Used by state 5100 and 5110 to remember downward
  13. ;                    velocity of player just before hitting the ground.
  14. ;                    Used in state 5080 for storing the anim # to display.
  15.  
  16. ;---------------------------------------------------------------------------
  17. ; Stand
  18. [Statedef 0]
  19. type = S
  20. physics = S
  21.  
  22. [State 0, 1]
  23. type = ChangeAnim
  24. trigger1 = Anim != 0 && Anim != 5
  25. trigger2 = Anim = 5 && AnimTime = 0 ;Turn anim over
  26. value = 0
  27.  
  28. [State 0, 2]
  29. type = VelSet
  30. trigger1 = Time = 0
  31. y = 0
  32.  
  33. [State 0, 3] ;Stop moving if low velocity or 4 ticks pass
  34. type = VelSet
  35. trigger1 = abs(vel x) < 2
  36. trigger2 = Time = 4
  37. x = 0
  38.  
  39. [State 0, 4]
  40. type = ChangeState
  41. trigger1 = PalNo = [7, 12]
  42. trigger1 = P2BodyDist X > 100
  43. trigger1 = P2Life > 0
  44. value = 1
  45.  
  46. [State 0, 6]
  47. type = PosSet
  48. trigger1 = Pos Y > 0
  49. y = 0
  50.  
  51. [State 0, 7]
  52. type = StateTypeSet
  53. trigger1 = Pos Y < 0
  54. value = A
  55.  
  56. [State 0, 8]
  57. type = ChangeState
  58. trigger1 = Pos Y < 0
  59. value = 50
  60.  
  61. ;---------------------------------------------------------------------------
  62. ; Stand (AI Only)
  63. [Statedef 1]
  64. type = S
  65. physics = S
  66. ctrl = 0
  67.  
  68. [State 1, 1]
  69. type = ChangeAnim
  70. trigger1 = Anim != 0 && Anim != 5
  71. trigger2 = Anim = 5 && AnimTime = 0 ;Turn anim over
  72. value = 0
  73.  
  74. [State 1, 2]
  75. type = VelSet
  76. trigger1 = Time = 0
  77. y = 0
  78.  
  79. [State 1, 3] ;Stop moving if low velocity or 4 ticks pass
  80. type = VelSet
  81. trigger1 = 1
  82. x = const(velocity.walk.fwd.x)
  83.  
  84. [State 1, 4]
  85. type = ChangeState
  86. trigger1 = PalNo = [7, 12]
  87. trigger1 = P2BodyDist X <= 100
  88. trigger2 = P2Life <= 0
  89. value = 0
  90. ctrl = 1
  91.  
  92. [State 1, 6]
  93. type = PosSet
  94. trigger1 = Pos Y > 0
  95. y = 0
  96.  
  97. [State 0, 7]
  98. type = StateTypeSet
  99. trigger1 = Pos Y < 0
  100. value = A
  101.  
  102. [State 0, 8]
  103. type = ChangeState
  104. trigger1 = Pos Y < 0
  105. value = 50
  106.  
  107. [State 1, 9]
  108. type = PowerAdd
  109. trigger1 = TimeMod = 1,0
  110. value = 2
  111.  
  112. [State 1, 10]
  113. type = LifeAdd
  114. trigger1 = TimeMod = 1,0
  115. value = 1
  116.  
  117. ;---------------------------------------------------------------------------
  118. ; Stand to Crouch
  119. [Statedef 10]
  120. type    = C
  121. physics = C
  122. anim = 10
  123.  
  124. [State 10, 1]
  125. type = VelMul
  126. trigger1 = Time = 0
  127. x = .75
  128.  
  129. [State 10, 2]
  130. type = ChangeState
  131. trigger1 = AnimTime = 0
  132. value = 11
  133.  
  134. ;---------------------------------------------------------------------------
  135. ; Crouching
  136. [Statedef 11]
  137. type    = C
  138. physics = C
  139. anim = 11
  140.  
  141. [State 11, 1] ;Change from turning animation
  142. type = ChangeAnim
  143. trigger1 = Anim = 6 && AnimTime = 0
  144. value = 11
  145.  
  146. ;---------------------------------------------------------------------------
  147. ; Crouch to Stand
  148. [Statedef 12]
  149. type    = S
  150. physics = S
  151. anim = 12
  152.  
  153. [State 12, 1]
  154. type = ChangeState
  155. trigger1 = AnimTime = 0
  156. value = 0
  157.  
  158. ;---------------------------------------------------------------------------
  159. ; Walk
  160. [Statedef 20]
  161. type    = S
  162. physics = S
  163.  
  164. [State 20, 1]
  165. type = VelSet
  166. trigger1 = command = "holdfwd"
  167. x = const(velocity.walk.fwd.x)
  168.  
  169. [State 20, 2]
  170. type = VelSet
  171. trigger1 = command = "holdback"
  172. x = const(velocity.walk.back.x)
  173.  
  174. [State 20, 3]
  175. type = ChangeAnim
  176. triggerall = vel x > 0
  177. trigger1 = Anim != 20 && Anim != 5
  178. trigger2 = Anim = 5 && AnimTime = 0
  179. value = 20
  180.  
  181. [State 20, 4]
  182. type = ChangeAnim
  183. triggerall = vel x < 0
  184. trigger1 = Anim != 21 && Anim != 5
  185. trigger2 = Anim = 5 && AnimTime = 0
  186. value = 21
  187.  
  188. ;---------------------------------------------------------------------------
  189. ; Jump Start
  190. [Statedef 40]
  191. type    = S
  192. physics = S
  193. anim = 40
  194. ctrl = 0
  195.  
  196. [State 40, 1]
  197. type = VarSet
  198. trigger1 = Time = 0
  199. sysvar(1) = 0
  200.  
  201. [State 40, 2]
  202. type = VarSet
  203. trigger1 = command = "holdfwd"
  204. sysvar(1) = 1
  205.  
  206. [State 40, 3]
  207. type = VarSet
  208. trigger1 = command = "holdback"
  209. sysvar(1) = -1
  210.  
  211. [State 40, 4]
  212. type = VelSet
  213. trigger1 = AnimTime = 0
  214. x = ifelse(sysvar(1)=0, const(velocity.jump.neu.x), ifelse(sysvar(1)=1, const(velocity.jump.fwd.x), const(velocity.jump.back.x)))
  215. y = const(velocity.jump.y)
  216.  
  217. [State 40, 5]
  218. type = VelSet
  219. trigger1 = AnimTime = 0
  220. trigger1 = prevstateno = 100 ;RUN_FWD
  221. trigger1 = sysvar(1) = 1
  222. x = const(velocity.runjump.fwd.x)
  223.  
  224. [State 40, 6]
  225. type = ChangeState
  226. trigger1 = AnimTime = 0
  227. value = 50
  228. ctrl = 1
  229.  
  230. ;---------------------------------------------------------------------------
  231. ; AirJump Start
  232. [Statedef 45]
  233. type    = A
  234. physics = N
  235. ctrl = 0
  236. velset = 0,0
  237.  
  238. [State 45, 1]
  239. type = ChangeAnim
  240. trigger1 = SelfAnimExist(44)
  241. value = 44
  242.  
  243. [State 45, 2]
  244. type = ChangeAnim
  245. trigger1 = !SelfAnimExist(44)
  246. value = 41
  247.  
  248. [State 45, 3]
  249. type = VarSet
  250. trigger1 = Time = 0
  251. sysvar(1) = 0
  252.  
  253. [State 45, 4]
  254. type = VarSet
  255. trigger1 = command = "holdfwd"
  256. sysvar(1) = 1
  257.  
  258. [State 45, 5]
  259. type = VarSet
  260. trigger1 = command = "holdback"
  261. sysvar(1) = -1
  262.  
  263. [State 45, 6]
  264. type = VelSet
  265. trigger1 = Time = 2
  266. x = ifelse(sysvar(1)=0, const(velocity.airjump.neu.x), ifelse(sysvar(1)=1, const(velocity.airjump.fwd.x), const(velocity.airjump.back.x)))
  267. y = const(velocity.airjump.y)
  268.  
  269. [State 45, 7]
  270. type = ChangeState
  271. trigger1 = Time = 2
  272. value = 50
  273. ctrl = 1
  274.  
  275. ;---------------------------------------------------------------------------
  276. ; Jump Up
  277. [Statedef 50]
  278. type    = A
  279. physics = A
  280.  
  281. [State 50, 1]
  282. type = VarSet
  283. trigger1 = Time = 0
  284. sysvar(1) = 0
  285.  
  286. [State 50, 2]
  287. type = ChangeAnim
  288. trigger1 = Time = 0
  289. value = ifelse((vel x)=0, 41, ifelse((vel x)>0, 42, 43))
  290.  
  291. [State 50, 3]
  292. type = ChangeAnim
  293. trigger1 = Vel y > -2
  294. trigger1 = SelfAnimExist(anim + 3)
  295. persistent = 0
  296. value = Anim + 3
  297.  
  298. ;---------------------------------------------------------------------------
  299. ; Jump Land
  300. [Statedef 52]
  301. type    = S
  302. physics = S
  303. ctrl = 0
  304. anim = 47
  305.  
  306. [State 52, 1]
  307. type = VelSet
  308. trigger1 = Time = 0
  309. y = 0
  310.  
  311. [State 52, 3]
  312. type = PosSet
  313. trigger1 = Time = 0
  314. y = 0
  315.  
  316. [State 52, 3]
  317. type = CtrlSet
  318. trigger1 = Time = 3
  319. value = 1
  320.  
  321. [State 52, 4]
  322. type = ChangeState
  323. trigger1 = AnimTime = 0
  324. value = 0
  325. ctrl = 1
  326.  
  327. ;---------------------------------------------------------------------------
  328. ; RUN_FWD
  329. [Statedef 100]
  330. type    = S
  331. physics = S
  332. anim = 100
  333.  
  334. [State 100, 1]
  335. type = VelSet
  336. trigger1 = 1
  337. x = const(velocity.run.fwd.x)
  338.  
  339. [State 100, 2]
  340. type = ChangeState
  341. trigger1 = command != "holdfwd"
  342. value = 0
  343.  
  344. [State 100, 3]
  345. type = AssertSpecial
  346. trigger1 = 1
  347. flag = NoWalk
  348.  
  349. ;---------------------------------------------------------------------------
  350. ; RUN_BACK
  351. [Statedef 105]
  352. type    = A
  353. physics = A
  354. ctrl = 0
  355. anim = 105
  356.  
  357. [State 105, 1]
  358. type = VelSet
  359. trigger1 = Time = 0
  360. x = const(velocity.run.back.x)
  361. y = const(velocity.run.back.y)
  362.  
  363. [State 105, 2]
  364. type = CtrlSet
  365. trigger1 = Time = 2
  366. value = 1
  367.  
  368. [State 105, 3]
  369. type = ChangeState
  370. trigger1 = Vel Y > 0
  371. trigger1 = Pos Y >= 0
  372. value = 106
  373.  
  374. ;---------------------------------------------------------------------------
  375. ; RUN_BACK2 (land)
  376. [Statedef 106]
  377. type    = S
  378. physics = S
  379. ctrl = 0
  380. anim = 47
  381.  
  382. [State 106, 1]
  383. type = VelSet
  384. trigger1 = Time = 0
  385. y = 0
  386.  
  387. [State 106, 2]
  388. type = PosSet
  389. trigger1 = Time = 0
  390. y = 0
  391.  
  392. [State 106, 3]
  393. type = MakeDust
  394. trigger1 = Time = 2
  395. pos = -5,-2
  396. spacing = 1
  397.  
  398. [State 106, 4]
  399. type = ChangeState
  400. trigger1 = Time = 7
  401. value = 0
  402. ctrl = 1
  403.  
  404. ;---------------------------------------------------------------------------
  405. ; RUN_UP
  406. [Statedef 110]
  407. type    = S
  408. physics = N
  409.  
  410. [State 110, 0]
  411. type = CtrlSet
  412. trigger1 = Time = 0
  413. value = 0
  414.  
  415. [State 110, 1]
  416. type = ChangeAnim
  417. trigger1 = Time = 0
  418. value = 110
  419.  
  420. [State 110, 2]
  421. type = HitBy
  422. trigger1 = Time = 0
  423. value = SCA, NT, ST, HT
  424. time = 30
  425.  
  426. [State 110, 3]
  427. type = VelSet
  428. trigger1 = Time = 0
  429. x = 0
  430. z = -7
  431.  
  432. [State 110, 4]
  433. type = VelMul
  434. trigger1 = 1
  435. z = 0.8
  436.  
  437. [State 110, 5]
  438. type = VelSet
  439. trigger1 = AnimTime = -8
  440. z = 0
  441.  
  442. [State 110, 7]
  443. type = CtrlSet
  444. trigger1 = AnimTime = 0
  445. value = 1
  446.  
  447. [State 110, 8]
  448. type = ChangeState
  449. trigger1 = AnimTime = 0
  450. value = 0
  451.  
  452. ;---------------------------------------------------------------------------
  453. ; RUN_DOWN
  454. [Statedef 115]
  455. type    = S
  456. physics = N
  457.  
  458. [State 115, 0]
  459. type = CtrlSet
  460. trigger1 = Time = 0
  461. value = 0
  462.  
  463. [State 115, 1]
  464. type = ChangeAnim
  465. trigger1 = Time = 0
  466. value = 110
  467.  
  468. [State 115, 2]
  469. type = HitBy
  470. trigger1 = Time = 0
  471. value = SCA, NT, ST, HT
  472. time = 30
  473.  
  474. [State 115, 3]
  475. type = VelSet
  476. trigger1 = Time = 0
  477. x = 0
  478. z = 7
  479.  
  480. [State 115, 4]
  481. type = VelMul
  482. trigger1 = 1
  483. z = 0.8
  484.  
  485. [State 115, 5]
  486. type = VelSet
  487. trigger1 = AnimTime = -8
  488. z = 0
  489.  
  490. [State 115, 7]
  491. type = CtrlSet
  492. trigger1 = AnimTime = 0
  493. value = 1
  494.  
  495. [State 115, 8]
  496. type = ChangeState
  497. trigger1 = AnimTime = 0
  498. value = 0
  499.  
  500. ;---------------------------------------------------------------------------
  501. ; STAND GUARD (guarding)
  502. [Statedef 130]
  503. type    = S
  504. physics = S
  505.  
  506. [State 130, 1]
  507. type = ChangeAnim
  508. trigger1 = Anim != 130
  509. value = 130
  510.  
  511. ;---------------------------------------------------------------------------
  512. ; CROUCH GUARD (guarding)
  513. [Statedef 131]
  514. type    = C
  515. physics = C
  516.  
  517. [State 131, 1]
  518. type = ChangeAnim
  519. trigger1 = Anim != 131
  520. value = 131
  521.  
  522. ;---------------------------------------------------------------------------
  523. ; AIR GUARD (guarding)
  524. [Statedef 132]
  525. type    = A
  526. physics = N
  527.  
  528. [State 132, 1]
  529. type = ChangeAnim
  530. trigger1 = Anim != 132
  531. value = 132
  532.  
  533. [State 132, 2]
  534. type = VelAdd
  535. trigger1 = 1
  536. y = Const(movement.yaccel)
  537.  
  538. [State 132, 3]
  539. type = VarSet
  540. trigger1 = 1
  541. sysvar(0) = (pos y >= 0) && (vel y > 0)
  542.  
  543. [State 132, 4]
  544. type = VelSet
  545. trigger1 = sysvar(0)
  546. y = 0
  547.  
  548. [State 132, 5]
  549. type = PosSet
  550. trigger1 = sysvar(0)
  551. y = 0
  552.  
  553. [State 132, 6]
  554. type = ChangeState
  555. trigger1 = sysvar(0)
  556. trigger1 = command != "holdback"
  557. value = 52
  558.  
  559. [State 132, 7]
  560. type = ChangeState
  561. trigger1 = sysvar(0)
  562. value = 130
  563.  
  564. ;---------------------------------------------------------------------------
  565. ; SGUARDHIT (shaking)
  566. [Statedef 150]
  567. type    = S
  568. movetype= H
  569. physics = N
  570. velset = 0,0
  571.  
  572. [State 150, 1]
  573. type = ChangeAnim
  574. trigger1 = 1
  575. value = 150
  576.  
  577. [State 150, 2]
  578. type = ChangeState
  579. trigger1 = HitShakeOver
  580. value = 151
  581.  
  582. [State 150, 3]
  583. type = ForceFeedback
  584. trigger1 = time = 0
  585. waveform = square
  586. time = 3
  587.  
  588. ;---------------------------------------------------------------------------
  589. ; SGUARDHIT2 (knocked back)
  590. [Statedef 151]
  591. type    = S
  592. movetype= H
  593. physics = S
  594. anim = 150
  595.  
  596. [State 151, 1]
  597. type = HitVelSet
  598. trigger1 = Time = 0
  599. x = 1
  600.  
  601. [State 151, 2]
  602. type = VelSet
  603. trigger1 = Time = GetHitVar(slidetime)
  604. trigger2 = Time >= GetHitVar(hittime)
  605. x = 0
  606.  
  607. [State 151, 3]
  608. type = CtrlSet
  609. trigger1 = Time = GetHitVar(ctrltime)
  610. value = 1
  611.  
  612. [State 151, 4]
  613. type = ChangeState
  614. trigger1 = Time >= GetHitVar(hittime)
  615. value = 130
  616. ctrl = 1
  617.  
  618. ;---------------------------------------------------------------------------
  619. ; CGUARDHIT (shaking)
  620. [Statedef 152]
  621. type    = C
  622. movetype= H
  623. physics = N
  624. velset = 0,0
  625.  
  626. [State 152, 1]
  627. type = ChangeAnim
  628. trigger1 = 1
  629. value = 151
  630.  
  631. [State 152, 3]
  632. type = ChangeState
  633. trigger1 = HitShakeOver
  634. value = 153
  635.  
  636. [State 152, 4]
  637. type = ForceFeedback
  638. trigger1 = time = 0
  639. waveform = square
  640. time = 4
  641.  
  642. ;---------------------------------------------------------------------------
  643. ; CGUARDHIT2 (knocked back)
  644. [Statedef 153]
  645. type    = C
  646. movetype= H
  647. physics = C
  648. anim = 151
  649.  
  650. [State 153, 1]
  651. type = HitVelSet
  652. trigger1 = Time = 0
  653. x = 1
  654.  
  655. [State 153, 2]
  656. type = VelSet
  657. trigger1 = Time = GetHitVar(slidetime)
  658. trigger2 = Time >= GetHitVar(hittime)
  659. x = 0
  660.  
  661. [State 153, 3]
  662. type = CtrlSet
  663. trigger1 = Time = GetHitVar(ctrltime)
  664. value = 1
  665.  
  666. [State 153, 4]
  667. type = ChangeState
  668. trigger1 = Time >= GetHitVar(hittime)
  669. value = 131
  670. ctrl = 1
  671.  
  672. ;---------------------------------------------------------------------------
  673. ; AGUARDHIT (shaking)
  674. [Statedef 154]
  675. type    = A
  676. movetype= H
  677. physics = N
  678. velset = 0,0
  679.  
  680. [State 154, 1]
  681. type = ChangeAnim
  682. trigger1 = 1
  683. value = 152
  684.  
  685. [State 154, 2]
  686. type = ChangeState
  687. trigger1 = HitShakeOver
  688. value = 155 ;AGUARDHIT2
  689.  
  690. [State 154, 3]
  691. type = ForceFeedback
  692. trigger1 = time = 0
  693. waveform = square
  694. time = 4
  695.  
  696. ;---------------------------------------------------------------------------
  697. ; AGUARDHIT2 (knocked away)
  698. [Statedef 155]
  699. type    = A
  700. movetype= H
  701. physics = N
  702. anim = 152
  703.  
  704. [State 155, 1]
  705. type = HitVelSet
  706. trigger1 = Time = 0
  707. x = 1
  708. y = 1
  709.  
  710. [State 155, 2]
  711. type = VelAdd
  712. trigger1 = 1
  713. y = Const(movement.yaccel)
  714.  
  715. [State 155, 3]
  716. type = CtrlSet
  717. trigger1 = Time = GetHitVar(ctrltime)
  718. value = 1
  719.  
  720. [State 155, 4]
  721. type = VarSet
  722. trigger1 = 1
  723. sysvar(0) = (pos y >= 0) && (vel y > 0)
  724.  
  725. [State 155, 5]
  726. type = VelSet
  727. trigger1 = sysvar(0)
  728. y = 0
  729.  
  730. [State 155, 6]
  731. type = PosSet
  732. trigger1 = sysvar(0)
  733. y = 0
  734.  
  735. [State 155, 7]
  736. type = ChangeState
  737. trigger1 = sysvar(0)
  738. trigger1 = command != "holdback"
  739. value = 52
  740.  
  741. [State 155, 8]
  742. type = ChangeState
  743. trigger1 = sysvar(0)
  744. value = 130
  745.  
  746. ;---------------------------------------------------------------------------
  747. ; LOSE (Time over)
  748. [Statedef 170]
  749. type = S
  750. ctrl = 0
  751. anim = 170
  752. velset = 0,0
  753.  
  754. [State 170, 1]
  755. type = NotHitBy
  756. trigger1 = 1
  757. value = SCA
  758. time = 1
  759.  
  760. ;---------------------------------------------------------------------------
  761. ; DRAWGAME (Time over)
  762. [Statedef 175]
  763. type = S
  764. ctrl = 0
  765. velset = 0,0
  766.  
  767. [State 175, 1] ; If no anim, use go to lose state.
  768. type = ChangeState
  769. trigger1 = Time = 0
  770. trigger1 = !SelfAnimExist(175)
  771. value = 170
  772.  
  773. [State 175, 2]
  774. type = ChangeAnim
  775. trigger1 = Time = 0
  776. value = 175
  777.  
  778. [State 175, 3]
  779. type = NotHitBy
  780. trigger1 = 1
  781. value = SCA
  782. time = 1
  783.  
  784. ;---------------------------------------------------------------------------
  785. ; PREINTRO
  786. [Statedef 190]
  787. type = S
  788. ctrl = 0
  789. velset = 0,0
  790.  
  791. [State 190, 1]
  792. type = ChangeAnim
  793. trigger1 = SelfAnimExist(190)
  794. value = 190
  795.  
  796. [State 190, 2] ;Go straight to intro.
  797. type = ChangeState
  798. trigger1 = Time = 0
  799. value = 191
  800.  
  801. ;---------------------------------------------------------------------------
  802. ; INTRO (override this state to give character an intro)
  803. [Statedef 191]
  804. type = S
  805. ctrl = 0
  806.  
  807. [State 191, 1]
  808. type = ChangeState
  809. trigger1 = Time = 0
  810. value = 0
  811.  
  812. ;---------------------------------------------------------------------------
  813. ; HITG_SHAKE
  814. [Statedef 5000]
  815. type    = S
  816. movetype= H
  817. physics = N
  818. velset = 0,0
  819.  
  820. [State 5000, 1] ;Anim for HIT_LIGHT to HIT_HARD
  821. type = ChangeAnim
  822. trigger1 = Time = 0
  823. trigger1 = GetHitVar(animtype) != [3,5]
  824. value = ifelse((GetHitVar(groundtype) = 1),5000,5010) + GetHitVar(animtype)
  825.  
  826. [State 5000, 2] ;Anim for HIT_BACK
  827. type = ChangeAnim
  828. trigger1 = Time = 0
  829. trigger1 = GetHitVar(animtype) = [3,5]
  830. value = 5030
  831.  
  832. [State 5000, 3] ;Anim for HIT_UP/HIT_DIAGUP (only if it exists)
  833. type = ChangeAnim
  834. trigger1 = Time = 0
  835. trigger1 = (GetHitVar(animtype) = [4,5]) && (SelfAnimExist(5047 + GetHitVar(animtype)))
  836. value = 5047 + GetHitVar(animtype) ;5051 - 4 + type
  837.  
  838. [State 5000, 3] ;Freeze anim
  839. type = ChangeAnim
  840. trigger1 = Time > 0
  841. value = anim
  842.  
  843. [State 5000, 4] ;State type gets set to aerial if getting hit up
  844. type = StateTypeSet
  845. trigger1 = Time = 0
  846. trigger1 = GetHitVar(yvel) != 0 && GetHitVar(fall)
  847. trigger2 = Pos Y != 0
  848. value = a
  849.  
  850. [State 5000, 5]
  851. type = ChangeState
  852. trigger1 = HitShakeOver
  853. trigger1 = GetHitVar(yvel) = 0
  854. value = 5001 ;HITG_SLIDE
  855.  
  856. [State 5000, 6]
  857. type = ChangeState
  858. trigger1 = HitShakeOver
  859. value = 5030
  860.  
  861. [State 5000, FFB Light]
  862. type = ForceFeedback
  863. trigger1 = anim = 5000
  864. trigger2 = anim = 5010
  865. persistent = 0
  866. time = 6
  867. waveform = square
  868.  
  869. [State 5000, FFB Medium]
  870. type = ForceFeedback
  871. trigger1 = anim = 5001
  872. trigger2 = anim = 5011
  873. persistent = 0
  874. time = 8
  875. waveform = sinesquare
  876. ampl = 110,-1,-.3
  877.  
  878. [State 5000, FFB Hard]
  879. type = ForceFeedback
  880. trigger1 = anim = 5012
  881. trigger2 = anim = 5002
  882. trigger3 = anim = 5030
  883. persistent = 0
  884. time = 15
  885. waveform = sinesquare
  886. ampl = 140
  887.  
  888. ;---------------------------------------------------------------------------
  889. ; HITG_SLIDE
  890. [Statedef 5001]
  891. type    = S
  892. movetype= H
  893. physics = S
  894.  
  895. [State 5001, 1]
  896. type = HitVelSet
  897. trigger1 = Time = 0
  898. x = 1
  899.  
  900. [State 5001, 2]
  901. type = ChangeAnim
  902. trigger1 = AnimTime = 0
  903. value = 5005 + GetHitVar(animtype) + (GetHitVar(groundtype)=2)*10
  904.  
  905. [State 5001, 3] ;Stop sliding back
  906. type = VelMul
  907. trigger1 = Time >= GetHitVar(slidetime)
  908. x = .6
  909.  
  910. [State 5001, 4]
  911. type = VelSet
  912. trigger1 = HitOver
  913. x = 0
  914.  
  915. [State 5001, 5]
  916. type = DefenceMulSet
  917. trigger1 = HitOver
  918. value = 1
  919.  
  920. [State 5001, 6]
  921. type = ChangeState
  922. trigger1 = HitOver
  923. value = 0
  924. ctrl = 1
  925.  
  926. ;---------------------------------------------------------------------------
  927. ; HITC_SHAKE
  928. [Statedef 5010]
  929. type    = C
  930. movetype= H
  931. physics = N
  932. velset = 0,0
  933.  
  934. [State 5010, 1] ;Anim for HIT_LIGHT to HIT_HARD
  935. type = ChangeAnim
  936. trigger1 = Time = 0
  937. trigger1 = GetHitVar(animtype) != [3,5]
  938. value = 5020 + GetHitVar(animtype)
  939.  
  940. [State 5010, 2] ;Anim for HIT_BACK
  941. type = ChangeAnim
  942. trigger1 = Time = 0
  943. trigger1 = GetHitVar(animtype) = [3,5]
  944. value = 5030
  945.  
  946. [State 5010, 3] ;Anim for HIT_UP/HIT_DIAGUP (only if it exists)
  947. type = ChangeAnim
  948. trigger1 = Time = 0
  949. trigger1 = (GetHitVar(animtype) = [4,5]) && (SelfAnimExist(5047 + GetHitVar(animtype)))
  950. value = 5047 + GetHitVar(animtype) ;5051 - 4 + type
  951.  
  952. [State 5010, 4] ;Freeze anim
  953. type = ChangeAnim
  954. trigger1 = Time > 0
  955. value = anim
  956.  
  957. [State 5010, 5]
  958. type = ChangeState
  959. trigger1 = HitShakeOver
  960. trigger1 = GetHitVar(yvel) = 0
  961. value = 5011 ;HITC_SLIDE
  962.  
  963. [State 5010, 6]
  964. type = ChangeState
  965. trigger1 = HitShakeOver
  966. value = 5030
  967.  
  968. [State 5010, FFB Light]
  969. type = ForceFeedback
  970. trigger1 = anim = 5020
  971. persistent = 0
  972. time = 6
  973. waveform = square
  974.  
  975. [State 5010, FFB Medium]
  976. type = ForceFeedback
  977. trigger1 = anim = 5021
  978. persistent = 0
  979. time = 8
  980. waveform = sinesquare
  981. ampl = 110,-1,-.3
  982.  
  983. [State 5010, FFB Hard]
  984. type = ForceFeedback
  985. trigger1 = anim = 5022
  986. persistent = 0
  987. time = 15
  988. waveform = sinesquare
  989. ampl = 140
  990.  
  991. ;---------------------------------------------------------------------------
  992. ; HITC_SLIDE
  993. [Statedef 5011]
  994. type    = C
  995. movetype= H
  996. physics = C
  997.  
  998. [State 5011, 1]
  999. type = HitVelSet
  1000. trigger1 = Time = 0
  1001. x = 1
  1002.  
  1003. [State 5011, 2]
  1004. type = ChangeAnim
  1005. trigger1 = AnimTime = 0
  1006. value = 5025 + GetHitVar(animtype)
  1007.  
  1008. [State 5011, 3] ;Stop sliding back
  1009. type = VelMul
  1010. trigger1 = Time >= GetHitVar(slidetime)
  1011. x = .6
  1012.  
  1013. [State 5011, 4]
  1014. type = VelSet
  1015. trigger1 = HitOver
  1016. x = 0
  1017.  
  1018. [State 5011, 5]
  1019. type = DefenceMulSet
  1020. trigger1 = HitOver
  1021. value = 1
  1022.  
  1023. [State 5011, 6]
  1024. type = ChangeState
  1025. trigger1 = HitOver
  1026. value = 11
  1027. ctrl = 1
  1028.  
  1029.  
  1030. ;---------------------------------------------------------------------------
  1031. ; HITA_SHAKE
  1032. [Statedef 5020]
  1033. type    = A
  1034. movetype= H
  1035. physics = N
  1036. velset = 0,0
  1037.  
  1038. [State 5020, 1] ;Anim for HIT_LIGHT to HIT_HARD
  1039. type = ChangeAnim
  1040. trigger1 = Time = 0
  1041. trigger1 = GetHitVar(animtype) != [3,5]
  1042. value = ifelse((GetHitVar(airtype) = 1),5000,5010) + GetHitVar(animtype)
  1043.  
  1044. [State 5020, 2] ;Anim for HIT_BACK
  1045. type = ChangeAnim
  1046. trigger1 = Time = 0
  1047. trigger1 = GetHitVar(animtype) = [3,5]
  1048. value = 5030
  1049.  
  1050. [State 5020, 3] ;Anim for HIT_UP/HIT_DIAGUP (only if it exists)
  1051. type = ChangeAnim
  1052. trigger1 = Time = 0
  1053. trigger1 = (GetHitVar(animtype) = [4,5]) && (SelfAnimExist(5047 + GetHitVar(animtype)))
  1054. value = 5047 + GetHitVar(animtype) ;5051 - 4 + type
  1055.  
  1056. [State 5020, 4] ;Freeze anim
  1057. type = ChangeAnim
  1058. trigger1 = Time > 0
  1059. value = anim
  1060.  
  1061. [State 5020, 5]
  1062. type = ChangeState
  1063. trigger1 = HitShakeOver
  1064. value = 5030
  1065.  
  1066. [State 5020, FFB Light]
  1067. type = ForceFeedback
  1068. trigger1 = anim = 5000
  1069. trigger2 = anim = 5010
  1070. persistent = 0
  1071. time = 6
  1072. waveform = square
  1073.  
  1074. [State 5020, FFB Medium]
  1075. type = ForceFeedback
  1076. trigger1 = anim = 5001
  1077. trigger2 = anim = 5011
  1078. persistent = 0
  1079. time = 8
  1080. waveform = sinesquare
  1081. ampl = 110,-1,-.3
  1082.  
  1083. [State 5020, FFB Hard]
  1084. type = ForceFeedback
  1085. trigger1 = anim = 5012
  1086. trigger2 = anim = 5002
  1087. trigger3 = anim = 5030
  1088. trigger4 = anim = [5051,5059]
  1089. persistent = 0
  1090. time = 15
  1091. waveform = sinesquare
  1092. ampl = 140
  1093.  
  1094. ;---------------------------------------------------------------------------
  1095. ; HITA_UP (initial going up)
  1096. [Statedef 5030]
  1097. type    = A
  1098. movetype= H
  1099. physics = N
  1100.  
  1101. [State 5030, 1]
  1102. type = VelAdd;Gravity
  1103. trigger1 = 1
  1104. y = GetHitVar(yaccel)
  1105.  
  1106. [State 5030, 2]
  1107. type = HitVelSet
  1108. trigger1 = Time = 0
  1109. x = 1
  1110. y = 1
  1111.  
  1112. [State 5030, 3]
  1113. type = ChangeState
  1114. triggerall = !HitFall
  1115. trigger1 = HitOver
  1116. trigger2 = Vel Y > 0    ;Hit ground
  1117. trigger2 = Pos Y >= 10  ;.
  1118. value = 5040 ;HITA_RECOV
  1119.  
  1120. [State 5030, 4]
  1121. type = ChangeState
  1122. triggerall = HitFall
  1123. trigger1 = HitOver
  1124. trigger2 = Vel Y > 0    ;Hit ground
  1125. trigger2 = Pos Y >= 10  ;.
  1126. value = 5050 ;HITA_FALL
  1127.  
  1128. [State 5030, 5]
  1129. type = ChangeState
  1130. trigger1 = AnimTime = 0
  1131. value = 5035 ;HITA_UP (transition)
  1132.  
  1133. ;---------------------------------------------------------------------------
  1134. ; HITA_UP_T (transition)
  1135. [Statedef 5035]
  1136. type    = A
  1137. movetype= H
  1138. physics = N
  1139.  
  1140. [State 5035, 1]
  1141. type = ChangeAnim
  1142. trigger1 = Time = 0
  1143. trigger1 = SelfAnimExist(5035)
  1144. trigger1 = Anim != [5051,5059] ;Not if in hit up anim
  1145. trigger1 = Anim != 5090 ;Not if hit off ground anim
  1146. value = 5035
  1147.  
  1148. [State 5035, 2]
  1149. type = VelAdd
  1150. trigger1 = 1
  1151. y = GetHitVar(yaccel)
  1152.  
  1153. [State 5035, 3]
  1154. type = ChangeState
  1155. triggerall = !HitFall
  1156. trigger1 = HitOver  ;Hit is over
  1157. trigger2 = AnimTime = 0 ;Animation over
  1158. trigger3 = Vel Y > 0    ;Hit ground
  1159. trigger3 = Pos Y >= 10  ;.
  1160. trigger4 = Time = 0     ;No transition anim
  1161. trigger4 = Anim != 5035 ;.
  1162. value = 5040 ;HITA_RECOV
  1163.  
  1164. [State 5035, 4]
  1165. type = ChangeState
  1166. triggerall = HitFall
  1167. trigger1 = HitOver  ;Hit is over
  1168. trigger2 = AnimTime = 0 ;Anim is over
  1169. trigger3 = Vel Y > 0    ;Hit ground
  1170. trigger3 = Pos Y >= 10  ;.
  1171. trigger4 = Time = 0     ;No transition anim
  1172. trigger4 = Anim != 5035 ;.
  1173. value = 5050 ;HITA_FALL
  1174.  
  1175. ;---------------------------------------------------------------------------
  1176. ; HITA_RECOV (recovering in air, not falling)
  1177. [Statedef 5040]
  1178. type    = A
  1179. movetype= H
  1180. physics = N
  1181.  
  1182. [State 5040, 1]
  1183. type = ChangeState
  1184. trigger1 = !Alive
  1185. value = 5050
  1186.  
  1187. [State 5040, 2]
  1188. type = ChangeAnim
  1189. trigger1 = AnimTime = 0
  1190. trigger1 = Anim != 5040
  1191. trigger2 = Time = 0
  1192. trigger2 = Anim != 5035
  1193. value = 5040
  1194.  
  1195. [State 5040, 3]
  1196. type = CtrlSet
  1197. trigger1 = HitOver
  1198. value = 1
  1199.  
  1200. [State 5040, 4]
  1201. type = StateTypeSet
  1202. trigger1 = HitOver
  1203. movetype = I
  1204.  
  1205. [State 5040, 5]
  1206. type = VelAdd
  1207. trigger1 = 1
  1208. y = GetHitVar(yaccel)
  1209.  
  1210. [State 5040, 6]
  1211. type = ChangeState
  1212. trigger1 = Vel Y > 0
  1213. trigger1 = Pos Y >= 0
  1214. value = 52 ;JUMPLAND
  1215.  
  1216. ;---------------------------------------------------------------------------
  1217. ; HITA_FALL (knocked up, falling)
  1218. [Statedef 5050]
  1219. type    = A
  1220. movetype= H
  1221. physics = N
  1222.  
  1223. [State 5050, 1] ;Change anim when done with transition
  1224. type = ChangeAnim
  1225. trigger1 = AnimTime = 0
  1226. trigger1 = Anim = 5035
  1227. trigger2 = Time = 0     ;If no transition anim
  1228. trigger2 = Anim != 5035
  1229. trigger2 = (Anim != [5051, 5059]) && (Anim != [5061, 5069])
  1230. trigger2 = Anim != 5090 ;Not if hit off ground anim
  1231. value = 5050
  1232.  
  1233. [State 5050, 2] ;Coming down anim
  1234. type = ChangeAnim
  1235. trigger1 = anim = [5050,5059]
  1236. trigger1 = Vel Y >= ifelse(anim = 5050, 1, -2)
  1237. trigger1 = SelfAnimExist(anim+10)
  1238. value = anim+10
  1239. persistent = 0
  1240.  
  1241. [State 5050, 3] ;Gravity
  1242. type = VelAdd
  1243. trigger1 = 1
  1244. y = GetHitVar(yaccel)
  1245.  
  1246. [State 5050, 4] ;Recover near ground
  1247. type = ChangeState
  1248. triggerall = Vel Y > 0
  1249. triggerall = Pos Y >= -20
  1250. triggerall = alive
  1251. triggerall = CanRecover
  1252. trigger1 = Command = "recovery"
  1253. value = 5200 ;HITFALL_RECOVER
  1254.  
  1255. [State 5050, 5]; Recover in mid air
  1256. type = ChangeState
  1257. triggerall = Vel Y > -1
  1258. triggerall = alive
  1259. triggerall = CanRecover
  1260. trigger1 = Command = "recovery"
  1261. value = 5210 ;HITFALL_AIRRECOVER
  1262.  
  1263. [State 5050, 6]
  1264. type = ChangeState
  1265. trigger1 = Vel Y > 0
  1266. trigger1 = Pos Y >= ifelse((anim = [5051,5059]) || (anim = [5061,5069]), 0, 25)
  1267. value = 5100 ;HIT_BOUNCE
  1268.  
  1269. ;---------------------------------------------------------------------------
  1270. ; HIT_TRIP (shaking)
  1271. [Statedef 5070]
  1272. type    = A
  1273. movetype= H
  1274. physics = N
  1275. velset = 0,0
  1276.  
  1277. [State 5070, 1]
  1278. type = ChangeAnim 
  1279. trigger1 = 1
  1280. value = 5070
  1281.  
  1282. [State 5070, 2]
  1283. type = ChangeState
  1284. trigger1 = HitShakeOver
  1285. value = 5071
  1286.  
  1287. [State 5070, 3]
  1288. type = ForceFeedback
  1289. trigger1 = time = 0
  1290. time = 12
  1291. waveform = sinesquare
  1292. ampl = 140
  1293.  
  1294. ;---------------------------------------------------------------------------
  1295. ; HIT_TRIP2 (fall through air)
  1296. [Statedef 5071]
  1297. type    = A
  1298. movetype= H
  1299. physics = N
  1300.  
  1301. [State 5071, 1]
  1302. type = HitVelSet
  1303. trigger1 = Time = 0
  1304. x = 1
  1305. y = 1
  1306.  
  1307. [State 5071, 2] ;Acceleration
  1308. type = VelAdd
  1309. trigger1 = 1
  1310. y = GetHitVar(yaccel)
  1311.  
  1312. [State 5071, 3] ;Hit ground
  1313. trigger1 = Vel Y > 0
  1314. trigger1 = Pos Y >= 15
  1315. type = ChangeState
  1316. value = 5110
  1317.  
  1318. ;---------------------------------------------------------------------------
  1319. ; HITL_SHAKE
  1320. [Statedef 5080]
  1321. type    = L
  1322. movetype= H
  1323. physics = N
  1324. velset = 0,0
  1325.  
  1326. [State 5080, 1] ;Set default anim
  1327. type = VarSet
  1328. trigger1 = time = 0
  1329. sysvar(2) = ifelse (GetHitVar(yvel) = 0, 5080, 5090)
  1330.  
  1331. [State 5080, 2]
  1332. type = VarAdd
  1333. trigger1 = time = 0
  1334. trigger1 = (anim = [5081,5089]) || (anim = [5111,5119])
  1335. trigger1 = SelfAnimExist(sysvar(2) + (anim % 10))
  1336. sysvar(2) = anim % 10
  1337.  
  1338. [State 5080, 3] ;If 5090 doesn't exist, default to 5030
  1339. type = VarSet
  1340. trigger1 = time = 0
  1341. trigger1 = sysvar(2) = 5090
  1342. trigger1 = !SelfAnimExist(5090)
  1343. sysvar(2) = 5030
  1344.  
  1345. [State 5080, 3] ;Freeze
  1346. type = ChangeAnim
  1347. trigger1 = 1
  1348. value = sysvar(2)
  1349.  
  1350. [State 5080, 4]
  1351. type = ChangeState
  1352. trigger1 = HitShakeOver
  1353. trigger1 = GetHitVar(yvel) = 0
  1354. value = 5081 ;HITL_SLIDE
  1355.  
  1356. [State 5080, 5]
  1357. type = ChangeState
  1358. trigger1 = HitShakeOver
  1359. trigger1 = GetHitVar(yvel) != 0
  1360. value = 5030 ;HITA_UP
  1361.  
  1362. ;---------------------------------------------------------------------------
  1363. ; HITL_SLIDE
  1364. [Statedef 5081]
  1365. type    = L
  1366. movetype= H
  1367. physics = C
  1368.  
  1369. [State 5081, 1]
  1370. type = HitVelSet
  1371. trigger1 = Time = 0
  1372. x = 1
  1373.  
  1374. [State 5081, 2]
  1375. type = VelSet
  1376. trigger1 = HitOver
  1377. x = 0
  1378.  
  1379. [State 5081, 3] ;Don't show hit ground frame
  1380. type = VarSet
  1381. trigger1 = Time = 0
  1382. sysvar(0) = 1
  1383.  
  1384. [State 5081, 4]
  1385. type = ChangeState
  1386. trigger1 = HitOver
  1387. value = 5110 ;HIT_LIEDOWN
  1388.  
  1389. ;---------------------------------------------------------------------------
  1390. ; HIT_BOUNCE (hit ground)
  1391. [Statedef 5100]
  1392. type    = L
  1393. movetype= H
  1394. physics = N
  1395.  
  1396. [State 5100, 1]
  1397. type = VelSet
  1398. trigger1 = Time = 0
  1399. trigger1 = GetHitVar(fall.yvel) = 0
  1400. trigger1 = vel x > 1
  1401. x = 1
  1402.  
  1403. [State 5100, Var] ;Save fall velocity
  1404. type = VarSet
  1405. trigger1 = Time = 0
  1406. ;trigger1 = GetHitVar(fall.yvel) = 0
  1407. sysvar(1) = floor(vel y)
  1408.  
  1409. [State 5100, 2] ;Hit ground anim (normal)
  1410. type = ChangeAnim
  1411. triggerall = time = 0
  1412. trigger1 = (anim != [5051,5059]) && (anim != [5061,5069])
  1413. trigger2 = !SelfAnimExist(5100 + (anim % 10))
  1414. value = 5100
  1415.  
  1416. [State 5100, 3] ;Hit ground anim (for hit up)
  1417. type = ChangeAnim
  1418. trigger1 = time = 0
  1419. trigger1 = (anim = [5051,5059]) || (anim = [5061,5069])
  1420. trigger1 = SelfAnimExist(5100 + (anim % 10))
  1421. value = 5100 + (anim % 10)
  1422.  
  1423. [State 5100, 4]
  1424. type = PosSet
  1425. trigger1 = Time = 0
  1426. y = 0
  1427.  
  1428. [State 5100, 5]
  1429. type = VelSet
  1430. trigger1 = Time = 0
  1431. y = 0
  1432.  
  1433. [State 5100, 6] ;Reduce speed
  1434. type = VelMul
  1435. trigger1 = Time = 0
  1436. x = 0.75
  1437.  
  1438. [State 5100, 7]
  1439. type = ChangeState
  1440. trigger1 = Time = 0
  1441. trigger1 = GetHitVar(fall.yvel) = 0
  1442. value = 5110 ;HIT_LIEDOWN
  1443.  
  1444. [State 5100, 8]
  1445. type = GameMakeAnim
  1446. trigger1 = Time = 1
  1447. ;value = 61
  1448. ;pos = 0, 0
  1449. ;under = 1
  1450. value = 60 + (sysvar(1) > 5) + (sysvar(1) > 14)
  1451. pos = 0, 0
  1452. under = sysvar(1) <= 10
  1453.  
  1454. [State 5100, 9]
  1455. type = HitFallDamage
  1456. trigger1 = Time = 3
  1457.  
  1458. [State 5100, 10]
  1459. type = PlaySnd
  1460. trigger1 = Time = 1
  1461. ;value = F7, 0 ;Hit ground
  1462. value = F7, (sysvar(1) > 5) + (sysvar(1) > 14)
  1463.  
  1464. [State 5100, 11]
  1465. type = PosFreeze
  1466. trigger1 = 1
  1467.  
  1468. [State 5100, 12]
  1469. type = ChangeState
  1470. trigger1 = AnimTime = 0
  1471. value = 5101
  1472.  
  1473. [State 5100, 13]
  1474. type = ForceFeedback
  1475. trigger1 = Time = 0
  1476. waveform = sinesquare
  1477. ampl = 128,-3,-.2,.005
  1478. time = 20
  1479.  
  1480. ;---------------------------------------------------------------------------
  1481. ; HIT_BOUNCE (bounce into air)
  1482. [Statedef 5101]
  1483. type    = L
  1484. movetype= H
  1485. physics = N
  1486.  
  1487. [State 5101, 1] ;Coming hit ground anim (normal)
  1488. type = ChangeAnim
  1489. triggerall = time = 0
  1490. trigger1 = anim != [5101,5109]
  1491. trigger2 = !SelfAnimExist(5160 + (anim % 10))
  1492. value = 5160
  1493.  
  1494. [State 5101, 2] ;Coming hit ground anim (for hit up)
  1495. type = ChangeAnim
  1496. triggerall = time = 0
  1497. trigger1 = anim = [5101,5109]
  1498. trigger1 = SelfAnimExist(5160 + (anim % 10))
  1499. value = 5160 + (anim % 10)
  1500.  
  1501. [State 5101, 3]
  1502. type = HitFallVel
  1503. trigger1 = Time = 0
  1504.  
  1505. [State 5101, 4]
  1506. type = PosSet
  1507. trigger1 = Time = 0
  1508. y = 20
  1509.  
  1510. [State 5101, 5] ;Acceleration
  1511. type = VelAdd
  1512. trigger1 = 1
  1513. y = .4
  1514.  
  1515. [State 5101, 6] ;Hit ground
  1516. trigger1 = Vel Y > 0
  1517. trigger1 = Pos Y >= 12
  1518. type = ChangeState
  1519. value = 5110
  1520.  
  1521. ;---------------------------------------------------------------------------
  1522. ; HIT_LIEDOWN
  1523. [Statedef 5110]
  1524. type    = L
  1525. movetype= H
  1526. physics = N
  1527.  
  1528. [State 5110, 1] ;For hit up/up-diag type (from state 5081)
  1529. type = ChangeAnim
  1530. persistent = 0
  1531. trigger1 = SelfAnimExist(5110 + (anim % 10))
  1532. trigger1 = anim = [5081,5089]
  1533. value = 5110 + (anim % 10)
  1534.  
  1535. [State 5110, 2] ;Hit ground anim (normal)
  1536. type = ChangeAnim
  1537. triggerall = time = 0
  1538. triggerall = anim != [5110,5119] ;Not already changed anim
  1539. trigger1 = anim != [5161,5169]
  1540. trigger2 = !SelfAnimExist(5170 + (anim % 10))
  1541. value = 5170
  1542.  
  1543. [State 5110, 3] ;Hit ground anim (for hit up)
  1544. type = ChangeAnim
  1545. triggerall = time = 0
  1546. triggerall = anim != [5110,5119] ;Not already changed anim
  1547. trigger1 = anim = [5161,5169]
  1548. trigger1 = SelfAnimExist(5170 + (anim % 10))
  1549. value = 5170 + (anim % 10)
  1550.  
  1551. [State 5110, 4]
  1552. type = HitFallDamage
  1553. trigger1 = Time = 0
  1554.  
  1555. [State 5110, 5]
  1556. type = PosSet
  1557. trigger1 = Time = 0
  1558. y = 0
  1559.  
  1560. [State 5110, Var] ;Get fall velocity
  1561. type = VarSet
  1562. trigger1 = Time = 0
  1563. trigger1 = GetHitVar(fall.yvel) != 0
  1564. sysvar(1) = floor(vel y)
  1565.  
  1566. [State 5110, 6]
  1567. type = PlaySnd
  1568. trigger1 = Time = 0
  1569. trigger1 = !SysVar(0)
  1570. ;value = F7, 0 ;Hit ground
  1571. value = F7, (sysvar(1) > 5) + (sysvar(1) > 14)
  1572.  
  1573. [State 5110, 7]
  1574. type = GameMakeAnim
  1575. trigger1 = Time = 0
  1576. trigger1 = !SysVar(0)
  1577. value = 60 + (sysvar(1) > 5) + (sysvar(1) > 14)
  1578. pos = 0, 0
  1579. under = sysvar(1) <= 10
  1580.  
  1581. [State 5110, 8]
  1582. type = VelSet
  1583. trigger1 = Time = 0
  1584. y = 0
  1585.  
  1586. [State 5110, 9] ;For hit up type
  1587. type = ChangeAnim
  1588. persistent = 0
  1589. triggerall = anim = [5171,5179]
  1590. triggerall = SelfAnimExist(5110 + (anim % 10))
  1591. trigger1 = AnimTime = 0
  1592. trigger2 = SysVar(0) ;SysVar(0) = 1 avoids hit ground anim
  1593. value = 5110 + (anim % 10)
  1594.  
  1595. [State 5110, 10] ;For normal
  1596. type = ChangeAnim
  1597. persistent = 0
  1598. triggerall = Anim != [5111,5119]
  1599. trigger1 = AnimTime = 0
  1600. trigger2 = SysVar(0) ;SysVar(0) = 1 avoids hit ground frame
  1601. value = 5110
  1602.  
  1603. [State 5110, 11] ;If just died
  1604. type = ChangeState
  1605. triggerall = !alive
  1606. trigger1 = AnimTime = 0
  1607. trigger2 = SysVar(0) ;SysVar(0) = 1 avoids hit ground frame
  1608. trigger3 = Anim = [5110,5119]
  1609. value = 5150
  1610.  
  1611. [State 5110, 12]
  1612. type = VarSet
  1613. trigger1 = SysVar(0)
  1614. trigger1 = Time = 0
  1615. sysvar(0) = 0
  1616.  
  1617. [State 5110, 13] ;Friction
  1618. type = VelMul
  1619. trigger1 = 1
  1620. x = 0.85
  1621.  
  1622. [State 5110, 14]
  1623. type = ForceFeedback
  1624. trigger1 = alive
  1625. trigger1 = Time = 0
  1626. time = 8
  1627. ampl = 240
  1628. waveform = sine
  1629.  
  1630. [State 5110, 15]
  1631. type = ForceFeedback
  1632. trigger1 = !alive
  1633. trigger1 = Time = 0
  1634. ampl = 200, 7, -.467
  1635. time = 30
  1636. waveform = sine
  1637.  
  1638. ;---------------------------------------------------------------------------
  1639. ; HIT_GETUP
  1640. [Statedef 5120]
  1641. type    = L
  1642. movetype= I
  1643. physics = N
  1644.  
  1645. [State 5120, 1a] ;Get up anim (normal)
  1646. type = ChangeAnim
  1647. triggerall = time = 0
  1648. trigger1 = anim != [5111,5119]
  1649. trigger2 = !SelfAnimExist(5120 + (anim % 10))
  1650. value = 5120
  1651.  
  1652. [State 5120, 1b] ;Get up anim (for hit up/diag-up)
  1653. type = ChangeAnim
  1654. triggerall = time = 0
  1655. trigger1 = anim = [5111,5119]
  1656. trigger1 = SelfAnimExist(5120 + (anim % 10))
  1657. value = 5120 + (anim % 10)
  1658.  
  1659. [State 5120, 2]
  1660. type = VelSet
  1661. trigger1 = Time = 0
  1662. x = 0
  1663.  
  1664. [State 5120, 3]
  1665. type = NotHitBy
  1666. trigger1 = 1
  1667. value = SCA
  1668. time = 1
  1669.  
  1670. [State 5120, 4]
  1671. type = HitFallSet
  1672. trigger1 = AnimTime = 0
  1673. value = 1
  1674.  
  1675. [State 5120, 5] ;Can't be thrown right after getting up
  1676. type = NotHitBy
  1677. trigger1 = AnimTime = 0
  1678. value = , NT,ST,HT
  1679. time = 12
  1680.  
  1681. [State 5120, 6] ;Can't be hit right after getting up (short time)
  1682. type = NotHitBy
  1683. trigger1 = AnimTime = 0
  1684. value2 = SCA
  1685. time = 3
  1686.  
  1687. [State 5120, 7]
  1688. type = ChangeState
  1689. trigger1 = AnimTime = 0
  1690. value = 0
  1691. ctrl = 1
  1692.  
  1693. ;---------------------------------------------------------------------------
  1694. ; HIT_LIEDEAD
  1695. [Statedef 5150]
  1696. type    = L
  1697. movetype= H
  1698. physics = N
  1699.  
  1700. [State 5150, 1] ;Normal anim
  1701. type = ChangeAnim
  1702. triggerall = Time = 0
  1703. triggerall = SelfAnimExist(5140)
  1704. trigger1 = (anim != [5111,5119]) && (anim != [5171,5179])
  1705. trigger2 = !SelfAnimExist(5140 + (anim % 10))
  1706. value = 5140
  1707.  
  1708. [State 5150, 3] ;Hit up type anim
  1709. type = ChangeAnim
  1710. trigger1 = Time = 0
  1711. trigger1 = (anim = [5111,5119]) || (anim = [5171,5179])
  1712. trigger1 = SelfAnimExist(5140 + (anim % 10))
  1713. value = 5140 + (anim % 10)
  1714.  
  1715. [State 5150, 4] ;Match over anim
  1716. type = ChangeAnim
  1717. persistent = 0
  1718. ;trigger1 = Time = 0
  1719. trigger1 = MatchOver = 1
  1720. trigger1 = Anim = [5140,5149]
  1721. trigger1 = SelfAnimExist(anim+10)
  1722. value = anim+10
  1723.  
  1724. [State 5150, 5] ;Switch to 5110 if liedead anim does not exist
  1725. type = ChangeAnim
  1726. trigger1 = Time = 0
  1727. trigger1 = Anim != [5140,5159]
  1728. trigger1 = Anim != [5110,5119]
  1729. value = 5110
  1730.  
  1731. [State 5150, 6]
  1732. type = SprPriority
  1733. trigger1 = Time = 0
  1734. value = -3
  1735.  
  1736. [State 5150, 7] ;Friction
  1737. type = VelMul
  1738. trigger1 = 1
  1739. x = 0.85
  1740.  
  1741. [State 5150, 8] ;Friction
  1742. type = VelSet
  1743. trigger1 = Vel x < .05
  1744. persistent = 0
  1745. x = 0
  1746.  
  1747. [State 5150, 9]
  1748. type = NotHitBy
  1749. trigger1 = 1
  1750. value = SCA
  1751. time = 1
  1752.  
  1753. ;---------------------------------------------------------------------------
  1754. ; HIT_FALLRECOVER (still falling)
  1755. [Statedef 5200]
  1756. type    = A
  1757. movetype= H
  1758. physics = N
  1759.  
  1760. [State 5200, 1] ;Change anim if done with transition
  1761. type = ChangeAnim
  1762. trigger1 = Anim = 5035
  1763. trigger1 = AnimTime = 0
  1764. value = 5050
  1765.  
  1766. [State 5200, 2]
  1767. type = VelAdd
  1768. trigger1 = 1
  1769. y = GetHitVar(yaccel)
  1770.  
  1771. [State 5200, 3]
  1772. type = SelfState
  1773. trigger1 = Vel Y > 0
  1774. trigger1 = Pos Y >= 10
  1775. value = 5201
  1776.  
  1777. ;---------------------------------------------------------------------------
  1778. ; HIT_FALLRECOVER (on the ground)
  1779. [Statedef 5201]
  1780. type    = A
  1781. movetype= H
  1782. physics = A
  1783. anim = 5200
  1784.  
  1785. [State 5201, 1] ;Turn if not facing opponent
  1786. type = Turn
  1787. trigger1 = Time = 0
  1788. trigger1 = p2dist X < -5
  1789.  
  1790. [State 5201, 2]
  1791. type = VelSet
  1792. trigger1 = Time = 0
  1793. x = -.15
  1794. y = -3.5
  1795.  
  1796. [State 5201, 3]
  1797. type = PosSet
  1798. trigger1 = Time = 0
  1799. y = 0
  1800.  
  1801. [State 5201, 4]
  1802. type = NotHitBy
  1803. trigger1 = 1
  1804. value = SCA
  1805. time = 1
  1806.  
  1807. [State 5201, 5] ;Blink white
  1808. type = PalFX
  1809. trigger1 = Time = 0
  1810. time = 3
  1811. add = 128,128,128 ;256,256,256
  1812.  
  1813. [State 5201, 6]
  1814. type = GameMakeAnim
  1815. trigger1 = Time = 1
  1816. value = 60
  1817. pos = 0, 0
  1818. under = 1
  1819.  
  1820. ;---------------------------------------------------------------------------
  1821. ; HIT_AIRFALLRECOVER
  1822. [Statedef 5210]
  1823. type    = A
  1824. movetype= I
  1825. physics = N
  1826. anim = 5210
  1827. ctrl = 0
  1828.  
  1829. [State 5210, 1] ;Blink white
  1830. type = PalFX
  1831. trigger1 = Time = 0
  1832. time = 3
  1833. add = 128,128,128 ;256,256,256
  1834.  
  1835. [State 5210, 1]
  1836. type = PosFreeze
  1837. trigger1 = Time = 0
  1838. value = 4
  1839.  
  1840. [State 5210, 2] ;Turn if not facing opponent
  1841. type = Turn
  1842. trigger1 = Time = 0
  1843. trigger1 = p2dist X < -20
  1844.  
  1845. [State 5210, 1] 
  1846. type = VelMul
  1847. trigger1 = Time = 4
  1848. x = .8
  1849. y = .8
  1850.  
  1851. [State 5210, 1]
  1852. type = VelAdd
  1853. trigger1 = Time = 4
  1854. y = -4.5
  1855.  
  1856. [State 5210, 1] 
  1857. type = VelMul
  1858. trigger1 = Time = 4
  1859. trigger1 = Vel Y > 0
  1860. y = .5
  1861.  
  1862. [State 5210, 1]
  1863. type = VelAdd
  1864. trigger1 = Time = 4
  1865. trigger1 = Vel Y > -3
  1866. y = -2
  1867.  
  1868. [State 5210, 1]
  1869. type = VelAdd
  1870. trigger1 = Time = 4
  1871. trigger1 = Vel Y > -2
  1872. y = -1
  1873.  
  1874. [State 5210, 2] ;Go up
  1875. type = VelAdd
  1876. trigger1 = Time = 4
  1877. trigger1 = Command = "holdup"
  1878. y = -2
  1879.  
  1880. [State 5210, 2] ;Go down
  1881. type = VelAdd
  1882. trigger1 = Time = 4
  1883. trigger1 = Command = "holddown"
  1884. y = 1.5
  1885.  
  1886. [State 5210, 2] ;Go fwd
  1887. type = VelMul
  1888. trigger1 = Time = 4
  1889. trigger1 = Command = "holdfwd"
  1890. x = 1
  1891.  
  1892. [State 5210, 2] ;Go back
  1893. type = VelAdd
  1894. trigger1 = Time = 4
  1895. trigger1 = Command = "holdback"
  1896. x = -1
  1897.  
  1898. [State 5210, 3]
  1899. type = NotHitBy
  1900. trigger1 = Time = 0
  1901. value = SCA
  1902. time = 15
  1903.  
  1904. [State 5210, 4]
  1905. type = CtrlSet
  1906. trigger1 = Time = 20
  1907. value = 1
  1908.  
  1909. [State 5210, 5]
  1910. type = VelAdd;Gravity
  1911. trigger1 = Time >= 4
  1912. y = .35
  1913.  
  1914. [State 5210, 5] ;Land on ground
  1915. type = ChangeState
  1916. trigger1 = Vel Y > 0
  1917. trigger1 = Pos Y >= 0
  1918. value = 52 ;JUMP_LAND
  1919. ctrl = 1
  1920.  
  1921. ;---------------------------------------------------------------------------
  1922. ; Continue?
  1923. [Statedef 5500]
  1924. type = S
  1925. ctrl = 0
  1926. anim = 5500
  1927. velset = 0,0
  1928.  
  1929. [State 5500, 1]
  1930. type = ChangeAnim
  1931. trigger1 = time = 0
  1932. trigger1 = !SelfAnimExist(5500)
  1933. trigger1 = SelfAnimExist(5300)
  1934. value = 5300
  1935.  
  1936. ;---------------------------------------------------------------------------
  1937. ; Initialize (at the start of the round)
  1938. [Statedef 5900]
  1939. type = S
  1940.  
  1941. [State 5900, 1] ;Intro
  1942. type = ChangeState
  1943. trigger1 = roundno = 1
  1944. value = 190
  1945.  
  1946.