Hey all!
Here's my next release!
Show Target Names
by The_Sarah
Introduction
.
This script provides more freedom for writing skill "use message"s for skills in the Database.
It does this by giving you the ability to have single-target skills include the target's name, rather than just the user's name (which it is by default).
.
.
---------------------
Patch Notes
.
None as of yet
.
---------------------
.
.
Features
.
Original script made by me (The_Sarah).
Initially requested by Ticomanel
.
With this script, you will be able to make any chosen single-target skills show both the user's
name AND the target's name when writing out their "use message"s in the Database.
.
This is accomplished through the use of the notetag "<callname>" in your chosen skills.
And the replacement of where your target's name would go with the single word "targetname".
.
.
.
How to Use
Place the script below materials and above main in the Script Editor.
Then follow these steps:
.
Step 1) Add the "<callname>" note tag (without the speech marks) to the notebox of any single-target skill you wish to consider applying this script's effects to.
Step 2) Make sure the skill you added <callname> to is a single-target skill.
This version of the script does not currently interact with multi-target or self-target skills.
Step 3) In your skill's Database section, write out how you want your skill to be shown being used "on-use" in the normal boxes provided.
Make sure to replace the name of the target with the word (no spaces or speech marks): "targetname"
Examples: (user) "attacks targetname!"
(user) "punches targetname square in the jaw!"
(user) "is so sexy that targetname falls head over heels and takes damage!"
Step 4) Enjoy the script!
Maybe leave a like on my RPG Maker Forum Thread page?
Script
Show Target Names by The_Sarah [v1.0]
Spoiler: Click this box to get Script
Ruby: - #------------------------------------------------------------------------------#
- =begin
- Show Target Names Script
- by The_Sarah
- (v1.0)
-
- -- --
- ~~~ REQUIREMENTS ~~~
-
- None
-
- -- --
- ~~~ IMPORTANT TO KNOW ~~~
-
- This version of the script currently only affects single-target skills.
- -- --
- ~~~ HOW TO USE ~~~
-
- Step 1) Add the "<callname>" note tag (without the speech marks) to any skill
- you wish to consider applying this script's effects to.
- Step 2) Make sure the skill you added <callname> to is a single-target skill.
- As this version of the script does not currently interact well with
- multi-target or self-target skills.
-
-
- Step 3) In your skill's Database section, write out how you want your skill
- to be written on-use in the normal boxes.
- Make sure to replace the name of the target with the word
- (with no spaces) "targetname".
- Examples: (user) "attacks targetname!"
- (user) "punches targetname square in the jaw!"
- (user) "is so sexy that targetname falls onto the ground!"
-
-
- Step 4) Enjoy the script!
- Maybe leave a like on my RPG Maker Forum Thread page? :P
- -- --
- ~~~ FEATURES ~~~
-
- With this script, you will be able to make any chosen single-target skills
- show both the user's name AND the target's name when writing out their
- "use messages" in the Database.
-
- -- --
- ~~~ NOTETAGS KEY ~~~
- "<callname>" - Written in the chosen skills' note boxes. Applies this script
- to those skills.
-
- "targetname" - Written in the chosen skills' "use messages" boxes. Allows
- you to have more freedom in writing your "use skill" messages.
-
- -- --
- ~~~ TERMS OF USE ~~~
-
- If you share a game with this script in it (freely or commercially), you
- must credit me in the game.
- Ideally like this: "Show Target Names script by The_Sarah"
- Of like this if you edit the script yourself:
- "Original Show Target Names script by The_Sarah"
-
-
- Other than that, this script is free to download and use or edit in any
- game or project you desire (free or commercial).
-
- -- --
- ~~~ REQUESTS ~~~
-
- If you would like me to add more functionality to this script, such as
- multi-targeting, please request so in the RPG Maker Forum Thread I made
- to originally host this Script.
- I will reply to all requests when I have the time (which shouldn't be too
- long to be honest) and do my best to accomodate them.
- -- --
- ~~~ BUGS ~~~
- No current known issues.
-
- -- --
- ~~~ SPECIAL THANKS ~~~
- * The_Sarah (aka me) for being awesome and making this script :D
- * RPG Maker Forum user Ticomanel for requesting it / the idea.
- -- --
- ~~~ OUTRO ~~~
- And that's it!
- This is only my third public script so it might be a little messy
- (especially in its early versions), but hope it helps those interested in
- something like this.
- Have wonderful lives everyone.
- Be kind to eachother.
- Remember we're all human!
- Let's make wonderful games together!
- - The_Sarah
- =end
- #------------------------------------------------------------------------------#
- #=begin
- #------------------------------------------------------------------------------#
- # The Script #
- #------------------------------------------------------------------------------#
- #==============================================================================
- # ** New Module: The_Sarah's Target Log
- #==============================================================================
- module TheSarahTargetLog
- class << self
- attr_accessor :skill_target_name
- end
- end
- #==============================================================================
- # ** Window_BattleLog
- #------------------------------------------------------------------------------
- # This window is for displaying battle progress. No frame is displayed, but it
- # is handled as a window for convenience.
- #==============================================================================
- class Window_BattleLog < Window_Selectable
- #--------------------------------------------------------------------------
- # * Aliased Method: Display Skill/Item Use
- #--------------------------------------------------------------------------
- alias thesarah_targetlog_windowbattlelog_displayuseitem display_use_item
- def display_use_item(subject, item)
- if item.is_a?(RPG::Skill)
- if item.note[/<callname>/i] && item.message1[/targetname/i] || item.message2[/targetname/i]
- item.message1 = item.message1.gsub("targetname", TheSarahTargetLog::skill_target_name)
- item.message2 = item.message2.gsub("targetname", TheSarahTargetLog::skill_target_name)
- thesarah_targetlog_windowbattlelog_displayuseitem(subject, item) # calls original method
- item.message1 = item.message1.gsub(TheSarahTargetLog::skill_target_name, "targetname")
- item.message2 = item.message2.gsub(TheSarahTargetLog::skill_target_name, "targetname")
- elsif item.note[/<callname>/i] && !item.message1[/targetname/i] && !item.message2[/targetname/i]
- thesarah_targetlog_windowbattlelog_displayuseitem(subject, item) # calls original method
- item.message1 = item.message1.gsub(TheSarahTargetLog::skill_target_name, "targetname")
- item.message2 = item.message2.gsub(TheSarahTargetLog::skill_target_name, "targetname")
- else # skill has no relevant name notes
- thesarah_targetlog_windowbattlelog_displayuseitem(subject, item) # calls original method
- end
- else # item is not a skill
- thesarah_targetlog_windowbattlelog_displayuseitem(subject, item) # calls original method
- end
- end # end of method
- end # end of Window_BattleLog class
- #==============================================================================
- # ** Scene_Battle
- #------------------------------------------------------------------------------
- # This class performs battle screen processing.
- #==============================================================================
- class Scene_Battle < Scene_Base
- #--------------------------------------------------------------------------
- # * Aliased Method: Use Skill/Item
- #--------------------------------------------------------------------------
- alias thesarah_targetlog_scenebattle_useitem use_item
- def use_item
- item = @subject.current_action.item
- if item.is_a?(RPG::Skill) && item.note[/<callname>/i]
- return the_sarahs_custom_use_item_method
- end
- thesarah_targetlog_scenebattle_useitem # calls original method
- end
- #--------------------------------------------------------------------------
- # * New Method: The_Sarah's Custom Use_Item Method
- #--------------------------------------------------------------------------
- def the_sarahs_custom_use_item_method
- item = @subject.current_action.item
- targets = @subject.current_action.make_targets.compact
- targets.each {|target| get_target_info(target) }
- @log_window.display_use_item(@subject, item)
- @subject.use_item(item)
- refresh_status
- show_animation(targets, item.animation_id)
- targets.each {|target| item.repeats.times { invoke_item(target, item) } }
- end
- #--------------------------------------------------------------------------
- # * New Method: Get Target Info
- #--------------------------------------------------------------------------
- def get_target_info(target)
- TheSarahTargetLog::skill_target_name = target.name
- end
- end # end of Scene_Battle class
- #=end
- #------------------------------------------------------------------------------#
- # End of the Script #
- #------------------------------------------------------------------------------#
复制代码
.
Credit and Thanks
Me, aka The_Sarah for making the script.
Ticomanel for the idea.
.
.
Terms of use
1) Users must link to this forum post when sharing the script elsewhere.
2) Users must credit The_Sarah when sharing free games with others that have this script in them.
3) Users must credit The_Sarah when using the script in a game selling commercially.
4) If Users have edited the script, credit must still be provided to The_Sarah for the original script.
5) Other than that, there is no cost and it is free to use wherever
.
And that's it!
Enjoy, everyone!
.
.
Screenshots
(forgive the media play bar in the screenshots, captured them in gif form first)
001 - Without the script ~~~~~~~~~~~~~~~~ 002 - With the Script ~~~~~~~~~~~~~~~~~~

003 - With the Script (pre-damage) ~~~~~~~~004 - With the Script (customised further)~~~

本贴来自国际rpgmaker官方论坛作者:The_Sarah处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:
https://forums.rpgmakerweb.com/threads/the_sarah-v1-0-show-target-names.125902/