I use this script:
#=begin
# ?˜... change BATORUREIAUTO
# SUTETOAIKON material, the use of animation, recommended
#================================================= =============================
# ?–? Ziifee
#================================================= =============================
module Zii
# ?–? icon (? 16 + vertical side - 1)
FIGHT = 132 # fight
ESCAPE = 143 # escape
ATTACK = 1 # attack (basic)
GUARD = 52 # defense
SKILL = 137 # skills
ITEM = 144 # Item
# ?–? rotation (a "positive" or "reverse" Cart)
TURN = "positive"
# ?–? face graphics (using "use" / if you do not use "")
STATUS_FACE = ""
# ?–? display settings ( "name" to "" to hide the name)
STATUS_LINE = "name"
# ?–? ?–? size (VX standard size is 20)
LINE_SIZE = 14
#------------------------------------------------- -------------------------
# ?—? normal rotation of judgement
#------------------------------------------------- -------------------------
def self.turn_normal?
return false if TURN == "reverse"
return true if TURN == "positive"
return true
end
#------------------------------------------------- -------------------------
# ?—? Battle option face Graphics judgement
#------------------------------------------------- -------------------------
def self.battle_face?
return true if STATUS_FACE == ""
return false
end
#------------------------------------------------- -------------------------
# ?—? In the Name of judge
#------------------------------------------------- -------------------------
def self.line_name?
return true if STATUS_LINE == "name"
return false
end
end
#==============================================================================
# ?? Window_Base
#==============================================================================
class Window_Base
#--------------------------------------------------------------------------
# ?? ???O???t?B?b?N???`?? ??
# opacity : ?s?????x
#--------------------------------------------------------------------------
def draw_face(face_name, face_index, x, y, size = 96, opacity = 255)
bitmap = Cache.face(face_name)
rect = Rect.new(0, 0, 0, 0)
rect.x = face_index % 4 * 96 + (96 - size) / 2
rect.y = face_index / 4 * 96 + (96 - size) / 2
rect.width = size
rect.height = size
self.contents.blt(x, y, bitmap, rect, opacity)
bitmap.dispose
end
#--------------------------------------------------------------------------
# ?? ?A?N?^?[?????O???t?B?b?N?`?? ??
# opacity : ?s?????x
#--------------------------------------------------------------------------
def draw_actor_face(actor, x, y, size = 96, opacity = 255)
draw_face(actor.face_name, actor.face_index, x, y, size, opacity)
end
end
#==============================================================================
# ?? Window_SpinCommand
#------------------------------------------------------------------------------
# ?@???]?p?R?}???h?I?????s???E?B???h
?E?????B
#==============================================================================
class Window_SpinCommand < Window_Base
#--------------------------------------------------------------------------
# ?? ???J?C???X?^???X????
#--------------------------------------------------------------------------
attr_reader :index # ?J?[?\?????u
attr_reader :help_window # ?w???v?E?B???h?E
#--------------------------------------------------------------------------
# ?? ?I?u?W?F?N?g??????
# cx / cy : ???S?? X???W / Y???W
# commands : ?R?}???h?z?? (???e ?? [name, kind, pull, enabled?])
# setting : ?????n?b?V?? ("R"=>???a "S"=>???? "G"=>?w?i "L"=>????)
#--------------------------------------------------------------------------
def initialize(cx, cy, commands, setting = {})
@radius = setting.has_key?("R") ? setting["R"] : 40 # ?`?????a
@speed = setting.has_key?("S") ? setting["S"] : 36 # ???]????
@spin_back = setting.has_key?("G") ? setting["G"] : "" # ?w?i????
@spin_line = setting.has_key?("L") ? setting["L"] : nil # ???????u
x, y = cx - @radius - 28, cy - @radius - 28
width = height = @radius * 2 + 56
super(x, y, width, height)
self.opacity = 0
@index = 0
@commands = commands # ?R?}???h
@spin_right = true
@spin_count = 0
update_cursor
end
#--------------------------------------------------------------------------
# ?? ?X?s?????????`?????? (?`?????e ?????p)
# i : ?C???f?b?N?X
# cx : ?\?? ???S???u X???W
# cy : ?\?? ???S???u Y???W
#--------------------------------------------------------------------------
def draw_spin_graphic(i, cx, cy)
case command_kind(i)
when "icon"
draw_icon(command_pull(i), cx - 12, cy - 12, command_enabled?(i))
end
end
#--------------------------------------------------------------------------
# ?? ???t???b?V?? ?o?O?????p
#--------------------------------------------------------------------------
def refresh
set_spin
end
#--------------------------------------------------------------------------
# ?? ???????`?? ?o?O?????p
#--------------------------------------------------------------------------
def draw_item(index, enabled = true)
@commands[index][3] = enabled
set_spin
end
#--------------------------------------------------------------------------
# ?? ???????R?}???h????????????
#--------------------------------------------------------------------------
def command_name(index = @index)
return "" if index < 0
name = @commands[index][0]
return name != nil ? name : ""
end
#--------------------------------------------------------------------------
# ?? ?R?}???h????????????
#--------------------------------------------------------------------------
def command_kind(index)
result = @commands[index][1]
return result != nil ? result : ""
end
#--------------------------------------------------------------------------
# ?? ?R?}???h?????? ??????
#--------------------------------------------------------------------------
def command_pull(index)
result = @commands[index][2]
return result != nil ? result : ""
end
#--------------------------------------------------------------------------
# ?? ?R?}???h???L???t???O??????
#--------------------------------------------------------------------------
def command_enabled?(index)
result = @commands[index][3]
return result != nil ? result : true
end
#--------------------------------------------------------------------------
# ?? ???O?????u?? index ??????????
#--------------------------------------------------------------------------
def set_index(name)
n = -1
for i in 0...@commands.size
n = i if @commands[i][0] == name
end
@index = n if n >= 0
update_cursor
call_update_help
set_spin
end
#--------------------------------------------------------------------------
# ?? ?J?[?\?????u??????
# index : ?V?????J?[?\?????u
#--------------------------------------------------------------------------
def index=(index)
@index = index
update_cursor
call_update_help
set_spin
end
#--------------------------------------------------------------------------
# ?? ???S??X???W??????
#--------------------------------------------------------------------------
def center_x
return contents.width / 2
end
#--------------------------------------------------------------------------
# ?? ???S??Y???W??????
#--------------------------------------------------------------------------
def center_y
return contents.height / 2
end
#--------------------------------------------------------------------------
# ?? ????????????
#--------------------------------------------------------------------------
def item_max
return @commands.size
end
#--------------------------------------------------------------------------
# ?? ?w?i?????? (?????` ????)
#--------------------------------------------------------------------------
def set_background
return if @spin_back == ""
bitmap = Cache.system(@spin_back)
rect = Rect.new(0, 0, bitmap.width, bitmap.height)
self.contents.blt(12, 12, bitmap, rect)
end
#--------------------------------------------------------------------------
# ?? ?????????? (?????` ????)
#--------------------------------------------------------------------------
def set_text
return if @spin_line == nil
y = center_y - WLH / 2 + @spin_line
self.contents.draw_text(center_x - 48, y, 96, WLH, command_name, 1)
end
#--------------------------------------------------------------------------
# ?? ?X?s???A?C?R?????p?x????????????
????
#--------------------------------------------------------------------------
def angle_size
return (Math::PI * 2 / item_max)
end
#--------------------------------------------------------------------------
# ?? ?X?s???A?C?R?????]?????J?E???g ??????????
#--------------------------------------------------------------------------
def set_spin_count
@spin_count = angle_size * 360 / @speed
set_spin(true)
end
#--------------------------------------------------------------------------
# ?? ?X?s?????? ?????s
# spin : ???]?t???O (true ???????]??)
#--------------------------------------------------------------------------
def set_spin(spin = false)
self.contents.clear
set_background
angle = spin ? @speed * @spin_count / 360 : 0
angle = @spin_right ? angle : -angle
for i in 0...item_max
n = (i - @index) * angle_size + angle
cx = @radius * Math.sin(n) + center_x
cy = - @radius * Math.cos(n) + center_y
draw_spin_graphic(i, cx, cy)
end
set_text
end
#--------------------------------------------------------------------------
# ?? ?t???[???X?V
#--------------------------------------------------------------------------
def update
super
update_cursor
if @spin_count > 0
@spin_count -= 1
set_spin(@spin_count >= 1)
return
end
update_command
end
#--------------------------------------------------------------------------
# ?? ?R?}???h?????????\????
#--------------------------------------------------------------------------
def command_movable?
return false if @spin_count > 0
return false if (not visible or not active)
return false if (index < 0 or index > item_max or item_max == 0)
return false if (@opening or @closing)
return true
end
#--------------------------------------------------------------------------
# ?? ?R?}???h???E??????
#--------------------------------------------------------------------------
def command_right
@index = (@index + 1) % item_max
@spin_right = true
set_spin_count
end
#--------------------------------------------------------------------------
# ?? ?R?}???h??????????
#--------------------------------------------------------------------------
def command_left
@index = (@index - 1 + item_max) % item_max
@spin_right = false
set_spin_count
end
#--------------------------------------------------------------------------
# ?? ?R?}???h?I?????X?V
#--------------------------------------------------------------------------
def update_command
if command_movable?
if Input.press?(Input::RIGHT)
Sound.play_cursor
Zii.turn_normal? ? command_right : command_left
end
if Input.press?(Input::LEFT)
Sound.play_cursor
Zii.turn_normal? ? command_left : command_right
end
end
call_update_help
end
#--------------------------------------------------------------------------
# ?? ?J?[?\?????X?V
#--------------------------------------------------------------------------
def update_cursor
if @index < 0
self.cursor_rect.empty
else
rect = Rect.new(0, 0, 24, 24)
rect.x = center_x - rect.width / 2
rect.y = center_y - rect.height / 2 - @radius
self.cursor_rect = rect
end
end
#--------------------------------------------------------------------------
# ?? ?w???v?E?B???h?E??????
# help_window : ?V?????w???v?E?B???h?E
#--------------------------------------------------------------------------
def help_window=(help_window)
@help_window = help_window
call_update_help
end
#--------------------------------------------------------------------------
# ?? ?w???v?E?B???h?E?X?V???\?b?h???????o??
#--------------------------------------------------------------------------
def call_update_help
if self.active and @help_window != nil
update_help
end
end
#--------------------------------------------------------------------------
# ?? ?w???v?E?B???h?E???X?V (???e???p?????????`????)
#--------------------------------------------------------------------------
def update_help
end
end
#==============================================================================
# ?? Window_LineHelp
#------------------------------------------------------------------------------
# ?@?X?L?????A?C?e?????????A?A?N?^?[
???X?e?[?^?X???????\???????E?B???h?E?????B
#==============================================================================
class Window_LineHelp < Window_Base
#--------------------------------------------------------------------------
# ?? ?I?u?W?F?N?g??????
#--------------------------------------------------------------------------
def initialize
super(-16, 0, 576, WLH + 32)
self.opacity = 0
end
#--------------------------------------------------------------------------
# ?? ?e?L?X?g????
# text : ?E?B???h?E???\????????????
# align : ?A???C???????g (0..???????A1..?????????A2..?E????)
#--------------------------------------------------------------------------
def set_text(text, align = 0)
if text != @text or align != @align
self.contents.clear
back_color = Color.new(0, 0, 0, 80)
self.contents.fill_rect(0, y = 12, contents.width, WLH - y, back_color)
self.contents.font.color = normal_color
self.contents.draw_text(20, 0, self.width - 72, WLH, text, align)
@text = text
@align = align
end
end
end
#==============================================================================
# ?? Window_PartyCommand
#==============================================================================
class Window_PartyCommand < Window_SpinCommand
#--------------------------------------------------------------------------
# ?? ?I?u?W?F?N?g??????
#--------------------------------------------------------------------------
def initialize
s1 = [Vocab::fight, "icon", Zii::FIGHT, true]
s2 = [Vocab::escape, "icon", Zii::ESCAPE, $game_troop.can_escape]
setting = {"R"=>40, "S"=>52, "G"=>"Spin40", "L"=>-12}
super(72, 356, [s1, s2], setting)
self.active = false
set_spin
end
end
#==============================================================================
# ?? Window_ActorCommand
#==============================================================================
class Window_ActorCommand < Window_SpinCommand
#--------------------------------------------------------------------------
# ?? ?I?u?W?F?N?g??????
#--------------------------------------------------------------------------
def initialize
s1 = [Vocab::attack, "icon", Zii::ATTACK, true]
s2 = [Vocab::skill, "icon", Zii::SKILL, true]
s3 = [Vocab::guard, "icon", Zii::GUARD, true]
s4 = [Vocab::item, "icon", Zii::ITEM, true]
setting = {"R"=>40, "S"=>52, "G"=>"Spin40", "L"=>-12}
super(72, 356, [s1, s2, s3, s4], setting)
self.active = false
set_spin
end
#--------------------------------------------------------------------------
# ?? ?Z?b?g?A?b?v
# actor : ?A?N?^?[
#--------------------------------------------------------------------------
def setup(actor)
@commands[0][2] = Zii::ATTACK
@commands[1][0] = Vocab::skill
if actor.weapons[0] != nil
n = actor.weapons[0].icon_index
@commands[0][2] = n if n > 0
end
@commands[1][0] = actor.class.skill_name if actor.class.skill_name_valid
self.index = 0
set_spin
end
end
#==============================================================================
# ?? Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Selectable
#--------------------------------------------------------------------------
# ?? ?I?u?W?F?N?g?????? ??
#--------------------------------------------------------------------------
def initialize
super(128, 288, 416, 128)
@column_max = 4
refresh
self.active = false
self.opacity = 0
end
#--------------------------------------------------------------------------
# ?? ?X?e?[?g???X?V ?????n?`??
#--------------------------------------------------------------------------
def draw_neomemo7_back
@neomemo7_clear = false
for index in 0...@item_max
x = index * 96
self.contents.clear_rect(x + 72, WLH * 3, 24, 24)
next unless Zii.battle_face?
actor = $game_party.members[index]
next if actor.hp <= 0
bitmap = Cache.face(actor.face_name)
rect = Rect.new(0, 0, 22, 22)
rect.x = actor.face_index % 4 * 96 + 72
rect.y = actor.face_index / 4 * 96 + 72
self.contents.blt(x + 72, WLH * 3, bitmap, rect, 192)
end
end
#--------------------------------------------------------------------------
# ?? ???????`?? ??
#--------------------------------------------------------------------------
def draw_item(index)
x = index * 96
rect = Rect.new(x, 0, 96, 96)
self.contents.clear_rect(rect)
self.contents.font.color = normal_color
actor = $game_party.members[index]
draw_actor_face(actor, x + 2, 2, 92, 192) if actor.hp > 0 and Zii.battle_face?
draw_actor_state(actor, x + 72, WLH * 3)
if Zii.line_name?
self.contents.font.color = hp_color(actor)
size = Zii::LINE_SIZE
self.contents.font.size = size
self.contents.draw_text(x, WLH * 1 + 20 - size, 80, WLH, actor.name)
self.contents.font.size = 20
end
draw_actor_hp(actor, x, WLH * 2, 80)
draw_actor_mp(actor, x, WLH * 3, 70)
end
#--------------------------------------------------------------------------
# ?? ?J?[?\?????X?V
#--------------------------------------------------------------------------
def update_cursor
if @index < 0 # ?J?[?\?????u?? 0 ??????????
self.cursor_rect.empty # ?J?[?\??????????????
else # ?J?[?\?????u?? 0 ??????????
rect = Rect.new(index * 96, 0, 96, 96)
self.cursor_rect = rect # ?J?[?\???????`???X?V
end
end
end
#==============================================================================
# ?? Scene_Battle
#------------------------------------------------------------------------------
# ?@?o?g???????????????s???N???X?
?????B
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# ?? ?????\???r???[?|?[?g??????
#--------------------------------------------------------------------------
alias :neomemo13_create_info_viewport :create_info_viewport
def create_info_viewport
neomemo13_create_info_viewport
@info_viewport.rect.set(0, 0, 544, 416)
@status_window.x = 128
@actor_command_window.x = 4
end
#--------------------------------------------------------------------------
# ?? ?????\???r???[?|?[?g???X?V
#--------------------------------------------------------------------------
alias :neomemo13_update_info_viewport :update_info_viewport
def update_info_viewport
ox = @info_viewport.ox
neomemo13_update_info_viewport
@info_viewport.ox = ox
end
#--------------------------------------------------------------------------
# ?? ?p?[?e?B?R?}???h?I?????J?n
#--------------------------------------------------------------------------
alias :neomemo13_start_party_command_selection :start_party_command_selection
def start_party_command_selection
if $game_temp.in_battle
@party_command_window.visible = true
@actor_command_window.visible = false
end
neomemo13_start_party_command_selection
end
#--------------------------------------------------------------------------
# ?? ?p?[?e?B?R?}???h?I?????X?V
#--------------------------------------------------------------------------
alias :neomemo13_update_party_command_selection :update_party_command_selection
def update_party_command_selection
return unless @party_command_window.command_movable?
neomemo13_update_party_command_selection
end
#--------------------------------------------------------------------------
# ?? ?A?N?^?[?R?}???h?I?????J?n
#--------------------------------------------------------------------------
alias :neomemo13_start_actor_command_selection :start_actor_command_selection
def start_actor_command_selection
neomemo13_start_actor_command_selection
@party_command_window.visible = false
@actor_command_window.visible = true
end
#--------------------------------------------------------------------------
# ?? ?A?N?^?[?R?}???h?I?????X?V
#--------------------------------------------------------------------------
alias :neomemo13_update_actor_command_selection :update_actor_command_selection
def update_actor_command_selection
return unless @actor_command_window.command_movable?
neomemo13_update_actor_command_selection
end
#--------------------------------------------------------------------------
# ?? ?????G?L?????I?????J?n
#--------------------------------------------------------------------------
alias :neomemo13_start_target_enemy_selection :start_target_enemy_selection
def start_target_enemy_selection
x = @info_viewport.rect.x
ox = @info_viewport.ox
neomemo13_start_target_enemy_selection
@info_viewport.rect.x = x
@info_viewport.ox = ox
@target_enemy_window.x = 544 - @target_enemy_window.width
@target_enemy_window.y = 288
@info_viewport.rect.width -= @target_enemy_window.width
end
#--------------------------------------------------------------------------
# ?? ?????G?L?????I?????I??
#--------------------------------------------------------------------------
alias :neomemo13_end_target_enemy_selection :end_target_enemy_selection
def end_target_enemy_selection
x = @info_viewport.rect.x
ox = @info_viewport.ox
@info_viewport.rect.width += @target_enemy_window.width
neomemo13_end_target_enemy_selection
@info_viewport.rect.x = x
@info_viewport.ox = ox
end
#--------------------------------------------------------------------------
# ?? ?????A?N?^?[?????I?????J?n
#--------------------------------------------------------------------------
alias :neomemo13_start_target_actor_selection :start_target_actor_selection
def start_target_actor_selection
x = @info_viewport.rect.x
ox = @info_viewport.ox
neomemo13_start_target_actor_selection
@target_actor_window.y = 288
@info_viewport.rect.x = x
@info_viewport.ox = ox
@info_viewport.rect.width -= @target_actor_window.width
end
#--------------------------------------------------------------------------
# ?? ?????A?N?^?[?I?????I??
#--------------------------------------------------------------------------
alias :neomemo13_end_target_actor_selection :end_target_actor_selection
def end_target_actor_selection
x = @info_viewport.rect.x
ox = @info_viewport.ox
@info_viewport.rect.width += @target_actor_window.width
neomemo13_end_target_actor_selection
@info_viewport.rect.x = x
@info_viewport.ox = ox
end
#--------------------------------------------------------------------------
# ?? ?X?L???I?????J?n
#--------------------------------------------------------------------------
alias :neomemo13_start_skill_selection :start_skill_selection
def start_skill_selection
neomemo13_start_skill_selection
@skill_window.dispose if @skill_window != nil
@help_window.dispose if @help_window != nil
@help_window = Window_LineHelp.new
@skill_window = Window_Skill.new(8, 64, 528, 216, @active_battler)
@skill_window.help_window = @help_window
end
#--------------------------------------------------------------------------
# ?? ?A?C?e???I?????J?n
#--------------------------------------------------------------------------
alias :neomemo13_start_item_selection :start_item_selection
def start_item_selection
neomemo13_start_item_selection
@item_window.dispose if @item_window != nil
@help_window.dispose if @help_window != nil
@help_window = Window_LineHelp.new
@item_window = Window_Item.new(8, 64, 528, 216)
@item_window.help_window = @help_window
end
end
I created this image that is larger than the original:
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fimg213.imageshack.us%2Fimg213%2F5857%2Fspin404.png&hash=d82b781094091220fae7de72dfb7d1584c513cc6)
The problem is that the image is not centered.
How do I change the size of the script?
Well, you need to put the script in a code box, otherwise it's corrupted by smiley faces and italics as you can see. You can do that by putting it between [code] and [/code] tags.
More importantly though, can you post a screenshot of the problem?
I corrected by inserting the script between the tags code =)
The error is that when I insert an image superior to the original, appears with the default size.
So if I make an image of size 100x100, this is reduced.
Here's the script:http://neomemo.web.fc2.com/memo/zii_base.txt
Up please :P
Well, not what I asked for but whatever. Just do a search for the following type of line:
{"R"=>40, "S"=>52, "G"=>"Spin40", "L"=>-12}
Depending on which it is or where it is, you may want to change the value attached to "G" and the value attached to "R". G is the graphic and R is the radius. So, for yours, you might want to change "R" to 50, for instance. Just play around with it until it works.
Here's the result:
http://img87.imageshack.us/img87/8208/immaginemo.png
Well, you might not be changing the settings of the right window. Make sure the settings you change are the ones applied to that action select menu.
Specifically, what parameters should I change?
The "R" parameter. Try 50.
I changed that parameter, but the image is cut into the bottom right ç_ç
Well, if it isn't making a difference, then you are likely changing the parameter on the wrong window. Notice that there are a number of windows that use the spin command. The choose battle action one is only one of them. Make sure you are modifying it, and not, for instance, the fight/escape window. It still might cause a problem if your picture is bigger than the contents of the window, but meh.
Yeah,I solved by changing this parameter:
width = height = @radius * 2 + 92
56 to 92 =)
Well, that might mess up others where you use a different graphic. The "R" parameter I was referring to would have changed the value of @radius only for the window you needed it for if you had changed it from 40 to 58. Anyway, if that works for you then that's fine, but it may cause problems later. For now, we can say it is resolved though.