09-12-2018, 08:57 PM 
	
	
	
		With my hand .... roughly 40% healed from being broken, I've begun typing more.  And typing more involves... the retooling of Animated Battlers!  Finally, I've begun reworking that hodge podge that I inherited over a decade ago from Minkoff himself.   I guess I can finally remove his name from the system... he laughed I kept it on there for years.
I've spent a few days on this with the following steps:
I used to have a value called MNK_POSES, and separate values for MNK_POSES_ACTOR and MNK_POSES_ENEMY. AND on top of that, I used a screwed up way to set how many poses an individual battler had if he/she was different from the others:
Now, I have a single POSES argument. POSES[0] is the base, holding how many poses every battler has. If the value in the brackets is different, it's a different battler. So POSES[5] would be setting the number of poses for Actor #5. And negative values in there will handle enemies. So POSES[-1] will cover the poses for your typical Ghosts. And all other values that have such brackets work the same!!!
Oh, you may notice that SPEED and RUSH_SPEED have brackets. Yep, you can now set the animation framerate and running speed of each actor and enemy separately. I was requested this a long time ago, and always assumed I couldn't. HAH! It was easier than I thought!
So now, I'm here and about to tackle the basic Minkoff range of poses: Pose 1 through to Pose 11, and work them out in much the same manner as above.
And yes, it still supports Default-Style and Ccoa-Style battlers.
	
	
	
	
I've spent a few days on this with the following steps:
- Separating the individual classes from the code, each having its own place in the Script Editor (ie Game_Battler separate from Game_Enemy from Game_Actor from Interpreter).  Arranging them in 'proper' order according to the default scripts of course.
 
- Examining each class to see what needs work.  Some actually didn't.
 
- Breaking up massive methods into manageable chunks.  Did the update method in Sprite Battler need to be 190+ lines long?
 
- Rename the various custom methods according to a naming standard.  All new methods begin with 'minkoff_function_'
 
- Rename the alias names according to a standard from ye olde RMXP SDK:  classname_script_method_description.
 
- Tidy.  No script should have lines extending beyond the right margin.  It's not good if someone wants to read it and needs to scroll.
 
- Re-address detection values.  Animated Battlers can detect seven battlesystems.  I just cleaned up the code a little.
 
- SAVE A NEW FOLDER/PACKAGE AT EACH STEP!!!
 
Code:
module Minkoff
  
  #==========================================================================
  # Do not touch
  POSES, FRAMES, SPEED, RUSH_SPEED, LOW_HP_PERCENT = {}, {}, {}, {}, {}
  #==========================================================================
  
  #==========================================================================
  #   ****                    GENERAL CONTROLS                       ****   #
  #==========================================================================
  # * Default Battler Style Switches
  #--------------------------------------------------------------------------        
  DEFAULT_ENEMY           = false   # If true, these switches allows the use
  DEFAULT_ACTOR           = false   # of default battlers for actors/enemies
  DEFAULT_ENEMY_ID        = [3]     # Ids of enemies using default battlers
  DEFAULT_ACTOR_ID        = [1]     # Ids of actors using default battlers
  DEFAULT_COLLAPSE_ACTOR  = false   # If true, restores the old 'red fade'
  DEFAULT_COLLAPSE_ENEMY  = false   #   collapse effect (using spritesheets)
  # * Ccoa Spritestrip Style Switches
  #--------------------------------------------------------------------------        
  CCOA_ENEMY              = false   # If true, these switches allows the use
  CCOA_ACTOR              = false   # of ccoa spritestrips for actors/enemies
  CCOA_ENEMY_ID           = []      # Ids of enemies using ccoa spritestrips
  CCOA_ACTOR_ID           = [5]     # Ids of actors using ccoa spritestrips
  # * Animation Frames and Animation Speed
  #--------------------------------------------------------------------------    
  SPEED[0]                = 4       # Animation speed per frame (1-9, 1=slowest)
  SPEED[7]                = 3       # Gloria's animation speed is slower
  RUSH_SPEED[0]           = 1.5     # Melee/Skill/Item motion speed
  RUSH_SPEED[2]           = 0.75    # Basil runs slowly
  RUSH_SPEED[-1]          = 2.0     # Ghosts move fast
  POSES[0]                = 11      # Number of poses (stances) in the template
  POSES[-1]               = 4       # Ghost has 4 poses
  POSES[2]                = 4       # Basil has 4 poses
  FRAMES[0]               = 4       # Maximum number of frames in each pose
  # * Wooziness Rates
  #-------------------------------------------------------------------------- 
  LOW_HP_PERCENT[0]   = 0.25                    # Default 25% woozy setting
  LOW_HP_PERCENT[7]   = 0.50                    # Ind. health% for actors.
  LOW_HP_PERCENT[5]   = 0.75                    # #7 is Gloria, #5 is Estelle
  LOW_HP_PERCENT[-1]  = 0.50                    # Ind. health% for enemies.
  LOW_HP_FLAT         = false                   # If true, flat rate hp
  
    
  
  #==========================================================================
  #   ****                     CCOA POSE CENTER                      ****   #
  #==========================================================================
  
  # This is a simple array holding the individual string names of your custom
  # ccoa spritesheet suffixes.   They are loaded  into the array in the order
  # of the pose values.  So your first pose (typically 'Ready')  would be the
  # first pose in the array, followed by the next, and thereafter.
  #--------------------------------------------------------------------------
  CCOA_POSES = [  "_ready", "_hit", "_lowhp", "_guard", "_moveto", "_movefrom",
                  "_attack",  "_item",  "_skill", "_victory", "_dead"]  
endI used to have a value called MNK_POSES, and separate values for MNK_POSES_ACTOR and MNK_POSES_ENEMY. AND on top of that, I used a screwed up way to set how many poses an individual battler had if he/she was different from the others:
MNK_POSES_ACTOR = {2 => 4} .... it wasn't the best.
Now, I have a single POSES argument. POSES[0] is the base, holding how many poses every battler has. If the value in the brackets is different, it's a different battler. So POSES[5] would be setting the number of poses for Actor #5. And negative values in there will handle enemies. So POSES[-1] will cover the poses for your typical Ghosts. And all other values that have such brackets work the same!!!
Oh, you may notice that SPEED and RUSH_SPEED have brackets. Yep, you can now set the animation framerate and running speed of each actor and enemy separately. I was requested this a long time ago, and always assumed I couldn't. HAH! It was easier than I thought!
So now, I'm here and about to tackle the basic Minkoff range of poses: Pose 1 through to Pose 11, and work them out in much the same manner as above.
And yes, it still supports Default-Style and Ccoa-Style battlers.

 
 
 What's up, RMers?
 What's up, RMers?
 
 
![[Image: QrnbKlx.jpg]](https://i.imgur.com/QrnbKlx.jpg)
![[Image: sGz1ErF.png]](https://i.imgur.com/sGz1ErF.png)
![[Image: liM4ikn.png]](https://i.imgur.com/liM4ikn.png)
![[Image: fdzKgZA.png]](https://i.imgur.com/fdzKgZA.png)
![[Image: sj0H81z.png]](https://i.imgur.com/sj0H81z.png)
![[Image: QL7oRau.png]](https://i.imgur.com/QL7oRau.png)
![[Image: uSqjY09.png]](https://i.imgur.com/uSqjY09.png)
![[Image: GAA3qE9.png]](https://i.imgur.com/GAA3qE9.png)
![[Image: 2Hmnx1G.png]](https://i.imgur.com/2Hmnx1G.png)
![[Image: BwtNdKw.png%5B]](https://i.imgur.com/BwtNdKw.png%5B)