Considering we don't have a proper method for cropping sprites, (either it involves having custom sprites to emulate the effect or having to use black boxes on a black background to cover up parts of the opponent to various degrees of success) I feel that characters that need to crop the opponents sprites for whatever reason would benefit from this. (mortal kombat characters come to mind with fatalites) I thought up of two possible ways to implement this, one method that does it linearly at a certain position and another that uses a sprite upon how to crop the opponent. No sure how specifics would go for them but might as well write down a rough idea of it.
[state 100, crop]
type = linearCrop ;Crops the oppoent in a line
pos = 0,50
cutline = 1.5708 ;The angle for where the sprite is going to be cropped in radians because mugen measures angles in radians for whatever reason
trigger1 = 1
[state 100, crop]
type = SpriteCrop ;Crops the oppoent using a sprite as a mask
anim = 2000
pos = 0,50
trigger1 = 1
Much like with the example I showed in my inital post with JJBA:HFTF, a down system is an different form of a ko with the characters falling down then getting back up without a transition to the next round.
I feel like the fight.def is the best place for this.
[Round]
;skiping to the ko section of the [round] sctrl
; KO
KO.time = 0
KO.offset = 160, 70
KO.anim = 200
KO.snd = 2,0
KO.type = stay; valid values are stay, down.
; stay puts the KOed player on the ground till the next round transition
; down causes the oppoent to get up from the ground after a certian
; amount of time without a round transition.
Inspired by
Character trait identifiers By Messatsu. I feel it would be cool to be able to know traits of your opponent built into the engine with such traits and being able to use them in code
; Player information
[Info]
name = "Kung Fu Man"
displayname = "Kung Fu Man"
versiondate = 09,30,2009
mugenversion = 1.0
author = "Elecbyte"
pal.defaults = 1,2,3,4
localcoord = 320,240
;additional info about character
[Character.info]
Gender = Male ;Choices are Male, Female, Other, None. Default is none
Age = 25; Any integer value can be used here, -1 for ageless. Default is -1
Type = Human; Choices are Human, Robot, Animal, Monster, Ghost, Mecha, Alien, God, Object, Other. Default is Human
BloodColor = Red; Choices are Red, Green, Blue, Yellow, Purple, Orange, Black, White, Grey, Other, None; Default is Red
Which could be used in code for whatever
[State 191, I hate robots]
type = ChangeAnim
trigger1 = CharVar(Char.type) = robot
value = 192
One thing I've noticed with mugen stages with reflection is that everything on the ground is reflective, even though there are things that shouldn't be (E.G. A carpet on a shiny floor). It would be nice to be able to define sprites to be non reflective so this does not happen in a stage.
[BG Floor]
type = parallax
spriteno = 10,0
start = 0, 181
delta = .78, .75
xscale = 1, 1.75
yscalestart = 100
yscaledelta = 1.2
[BG Carpet]
type = parallax
spriteno = 10,0
start = 0, 181
delta = .78, .75
xscale = 1, 1.75
yscalestart = 100
yscaledelta = 1.2
reflective = 0 ; Sets a sprite to not be affected by the Reflection Sctrl.
; This is equivalent to setting intensity to 0, default is 1