This is a simple request but i didnt see the answer for it yet. The question is short...how can i change the holder spritesheet of a given actor, with a script call or by changing its class.
Symphony (Change holder)
● ARCHIVED · READ-ONLY
-
-
link to symphony? if the holder one is obtained via notetags or via a specific name, it needs modification of the script to actually allow this...
because if via specific name, then you need to make it not work that way
because if via notetags, most notetags doesn't save in the save file (unless you save the database too, which is not always a good idea) and are reloaded when the database is reloaded so it will revert back to the old one -
Yeah sry about the lack of links, it was really a rushed post as i am not in my home now rsrs. The holder sprite sheet to be used for an ACTOR (not class) is set by writing a notetag.
Here's the link to the battle symphony script and it's holder add-on:
Simphony Engine:
https://dl.dropboxusercontent.com/u/38072264/Symphony/Build/Battle%20Symphony%20v1.15.txt
Holder sprite sheets (add-on):
https://dl.dropboxusercontent.com/u/38072264/Symphony/Add-on/Holder-Battlers.txt
I was wondering if there's a script call that can be used to change the holder spritesheet of an actor, or if the only way to do this is by modyfing the script. -
There isn't a way built in(as far as I can tell), so I put this together.
Edit: Decided to go all out and add class specific notetags for actors, and keep the scriptcall change.Spoiler#===============================================================================# Script: Customizable Holder Battlers# Author: Selchar# Requestor: Nosleinad# Credits: Yami#================================================================================beginThis is an extention of Yami's Holder Battler addon for Battle Engine Symphony.It allows for different battlers based on class id, as well as changing it viascriptcall. Scriptcall changes take priority over class specific, which takespriority over the default holder notetag.#-------------------------------------------------------------------------------# Actor Notetag#-------------------------------------------------------------------------------<class holder battler class_id: filename>#-------------------------------------------------------------------------------# Scriptcall#-------------------------------------------------------------------------------$game_actors[actor_id].new_holders_name = 'filename'Replace class_id or actor_id with the relevant number, and filename with thename of the holder style image you want to use.=end#===============================================================================# The script#===============================================================================module Selchar module Symphony def self.holder_class(class_id) /<class[-_ ]?holder[-_ ]?battler[-_ ]?#{class_id}:\s*(.*)\s*>/i end endendclass Game_Actor < Game_Battler attr_accessor :new_holders_name def holders_name if @new_holders_name != nil return @new_holders_name if @new_holders_name != '' end return actor.class_holder_name(@class_id) if actor.class_holder_name(@class_id) return actor.holders_name endendclass RPG::Actor def class_holder_name(class_id) if @class_holder_name.nil? @class_holder_name = {} $data_classes.each do |i| next unless i @class_holder_name[i.id] = $1 if @note =~ Selchar::Symphony.holder_class(i.id) end end @class_holder_name[class_id] endend#===============================================================================# End of File#=============================================================================== -
It's working as intended Selchar, and you even made options to use via actor notetags or script calls.
Thanks a lot and i will be sure to send you a copy of my current project when it's finished. Expect a public demo a few days after the release of the monster legacy package from PV Games, it will be posted here in this forum. :) -
Code:Unjumbled the script.
#=============================================================================== # Script: Customizable Holder Battlers # Author: Selchar # Requestor: Nosleinad # Credits: Yami #=============================================================================== =begin This is an extention of Yami's Holder Battler addon for Battle Engine Symphony. It allows for different battlers based on class id, as well as changing it via script call. Script call changes take priority over class specific, which takes priority over the default holder notetag. #------------------------------------------------------------------------------- # Actor Notetag #------------------------------------------------------------------------------- <class holder battler class_id: filename> #------------------------------------------------------------------------------- # Scriptcall #------------------------------------------------------------------------------- $game_actors[actor_id].new_holders_name = 'filename' Replace class_id or actor_id with the relevant number, and filename with the name of the holder style image you want to use. =end #=============================================================================== # The script #=============================================================================== module Selchar module Symphony def self.holder_class(class_id) /<class[-_ ]?holder[-_ ]?battler[-_ ]?#{class_id}:\s*(.*)\s*>/i end end end class Game_Actor < Game_Battler attr_accessor :new_holders_name def holders_name if @new_holders_name != nil return @new_holders_name if @new_holders_name != '' end return actor.class_holder_name(@class_id) if actor.class_holder_name(@class_id) return actor.holders_name end end class RPG::Actor def class_holder_name(class_id) if @class_holder_name.nil? @class_holder_name = {} $data_classes.each do |i| next unless i @class_holder_name[i.id] = $1 if @note =~ Selchar::Symphony.holder_class(i.id) end end @class_holder_name[class_id] end end #=============================================================================== # End of File #===============================================================================