hey guys ^_^,i am using ziifee's spin command script and i have a question,2 too be exact!
Question 1:
how do i change the location of the spin commands hud??
Question 2:
how would i add commands too it??
heres the script
i really need this helpT_T
Question 1:
how do i change the location of the spin commands hud??
Question 2:
how would i add commands too it??
heres the script
Code:
=begin ========================================================================
* ziifee's Spin Command for RPG Tankentai Sideview Battle System with ATB
<ATB Only>
 -This script is only for the Tankentai SBS with the ATB installed.
<Image Required>
Spin40 : Spin40.png is required in the Graphics/System folder.
=end # ========================================================================
module ZiiN7
# â–¼ Spin Command/Icon Index Number
ATTACK = 1 # Attack (Default)
GUARD = 52 # Guard
SKILL = 128 # Skill
ITEM = 144 # Item
ESCAPE = 143 # Escape
# â–¼ Spin Command/Direction of Rotation ( "normal" or "reverse" )
# Determines how Spin Command rotates according to left/right key press.
TURN = "normal"
# â–¼ Spin Command/Switch Actor Command Button
# Define input button used to switch between actors with full ATB gauges.
SWITCH_COMMAND_BUTTON = Input::X
#--------------------------------------------------------------------------
# ◠通常回転 ã®åˆ¤å®š (スピンコマンド) Ignore this.
#--------------------------------------------------------------------------
def self.turn_normal?
return false if TURN == "reverse"
return true
end
end
#==============================================================================
# â– module N02 for ATB Ver1.1
#==============================================================================
module N02
# ATB Gauge Positions. Overwrites ATB_PARTY_POSITION defined in ATB Config.
ATB_PARTY_POSITION = [[64,306],[160,306],[256,306],[352,306]]
end
#******************************************************************************
# ★ ベース
#******************************************************************************
#==============================================================================
# â– Window_SpinCommand
#------------------------------------------------------------------------------
#  回転用コマンドé¸æŠžã‚’è¡Œã†ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§ã™ã€‚
#==============================================================================
class Window_SpinCommand < Window_Base
#--------------------------------------------------------------------------
# ◠公開インスタンス変数
#--------------------------------------------------------------------------
attr_reader :index # カーソルä½ç½®
attr_reader :help_window # ヘルプウィンドウ
#--------------------------------------------------------------------------
# ◠オブジェクトåˆæœŸåŒ–
# cx / cy : ä¸å¿ƒã® X座標 / Y座標
# commands : コマンドé…列 (内容 㯠[name, kind, pull, enabled?])
# setting : è¨å®šãƒãƒƒã‚·ãƒ¥ ("R"=>åŠå¾„ "S"=>速㕠"G"=>背景 "L"=>æ–‡å—)
#--------------------------------------------------------------------------
def initialize(cx, cy, commands, setting = {})
@radius = setting.has_key?("R") ? setting["R"] : 40 # æç”»åŠå¾„
@speed = setting.has_key?("S") ? setting["S"] : 36 # 回転速ã•
@spin_back = setting.has_key?("G") ? setting["G"] : "" # 背景画åƒ
@spin_line = setting.has_key?("L") ? setting["L"] : nil # æ–‡å—ä½ç½®
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 # コマンド
@spin_right = true
@spin_count = 0
update_cursor
end
#--------------------------------------------------------------------------
# â–½ スピン画åƒã‚’æç”»ã™ã‚‹ (æ画内容 強化用)
# i : インデックス
# cx : 表示 ä¸å¿ƒä½ç½® X座標
# cy : 表示 ä¸å¿ƒä½ç½® Y座標
#--------------------------------------------------------------------------
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
#--------------------------------------------------------------------------
# ★ リフレッシュ ãƒã‚°å›žé¿ç”¨
#--------------------------------------------------------------------------
def refresh
set_spin
end
#--------------------------------------------------------------------------
# ★ é …ç›®ã®æç”» ãƒã‚°å›žé¿ç”¨
#--------------------------------------------------------------------------
def draw_item(index, enabled = true)
@commands[index][3] = enabled
set_spin
end
#--------------------------------------------------------------------------
# â— ç¾åœ¨ã®ã‚³ãƒžãƒ³ãƒ‰åã‚’å–å¾—ã™ã‚‹
#--------------------------------------------------------------------------
def command_name(index = @index)
return "" if index < 0
name = @commands[index][0]
return name != nil ? name : ""
end
#--------------------------------------------------------------------------
# ◠コマンドã®ç¨®é¡žã‚’å–å¾—
#--------------------------------------------------------------------------
def command_kind(index)
result = @commands[index][1]
return result != nil ? result : ""
end
#--------------------------------------------------------------------------
# ◠コマンドã®å¼•æ•° ã‚’å–å¾—
#--------------------------------------------------------------------------
def command_pull(index)
result = @commands[index][2]
return result != nil ? result : ""
end
#--------------------------------------------------------------------------
# ◠コマンドã®æœ‰åŠ¹ãƒ•ãƒ©ã‚°ã‚’å–å¾—
#--------------------------------------------------------------------------
def command_enabled?(index)
result = @commands[index][3]
return result != nil ? result : true
end
#--------------------------------------------------------------------------
# â— åå‰ã®ä½ç½®ã« index ã‚’è¨å®šã™ã‚‹
#--------------------------------------------------------------------------
def set_index(name)
n = -1
for i in [email=0...@commands.size]0...@commands.size[/email]
n = i if @commands[i][0] == name
end
@index = n if n >= 0
update_cursor
call_update_help
set_spin
end
#--------------------------------------------------------------------------
# ◠カーソルä½ç½®ã®è¨å®š
# index : æ–°ã—ã„カーソルä½ç½®
#--------------------------------------------------------------------------
def index=(index)
@index = index
update_cursor
call_update_help
set_spin
end
#--------------------------------------------------------------------------
# â— ä¸å¿ƒã®X座標をå–å¾—
#--------------------------------------------------------------------------
def center_x
return contents.width / 2
end
#--------------------------------------------------------------------------
# â— ä¸å¿ƒã®Y座標をå–å¾—
#--------------------------------------------------------------------------
def center_y
return contents.height / 2
end
#--------------------------------------------------------------------------
# â— é …ç›®æ•°ã®å–å¾—
#--------------------------------------------------------------------------
def item_max
return @commands.size
end
#--------------------------------------------------------------------------
# ◠背景ã®è¨å®š (å†å®šç¾© å‘ã)
#--------------------------------------------------------------------------
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
#--------------------------------------------------------------------------
# ◠スピンアイコンã®è§’度ã®å·®ã‚’å–å¾—ã™ã‚‹
#--------------------------------------------------------------------------
def angle_size
return (Math::PI * 2 / item_max)
end
#--------------------------------------------------------------------------
# ◠スピンアイコン回転時ã®ã‚«ã‚¦ãƒ³ãƒˆ ã‚’è¨å®šã™ã‚‹
#--------------------------------------------------------------------------
def set_spin_count
@spin_count = angle_size * 360 / @speed
set_spin(true)
end
#--------------------------------------------------------------------------
# ◠スピンè¨å®š ã®å®Ÿè¡Œ
# spin : 回転フラグ (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
#--------------------------------------------------------------------------
# ◠フレーム更新
#--------------------------------------------------------------------------
def update
super
update_cursor
if @spin_count > 0
@spin_count -= 1
set_spin(@spin_count >= 1)
return
end
update_command
end
#--------------------------------------------------------------------------
# ◠コマンドã®ç§»å‹•å¯èƒ½åˆ¤å®š
#--------------------------------------------------------------------------
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
#--------------------------------------------------------------------------
# ◠コマンドをå³ã«ç§»å‹•
#--------------------------------------------------------------------------
def command_right
@index = (@index + 1) % item_max
@spin_right = true
set_spin_count
end
#--------------------------------------------------------------------------
# ◠コマンドを左ã«ç§»å‹•
#--------------------------------------------------------------------------
def command_left
@index = (@index - 1 + item_max) % item_max
@spin_right = false
set_spin_count
end
#--------------------------------------------------------------------------
# ◠コマンドé¸æŠžã®æ›´æ–°
#--------------------------------------------------------------------------
def update_command
if command_movable?
if Input.press?(Input::RIGHT)
Sound.play_cursor
ZiiN7.turn_normal? ? command_right : command_left
end
if Input.press?(Input::LEFT)
Sound.play_cursor
ZiiN7.turn_normal? ? command_left : command_right
end
end
call_update_help
end
#--------------------------------------------------------------------------
# ◠カーソルã®æ›´æ–°
#--------------------------------------------------------------------------
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
#--------------------------------------------------------------------------
# ◠ヘルプウィンドウã®è¨å®š
# help_window : æ–°ã—ã„ヘルプウィンドウ
#--------------------------------------------------------------------------
def help_window=(help_window)
@help_window = help_window
call_update_help
end
#--------------------------------------------------------------------------
# ◠ヘルプウィンドウ更新メソッドã®å‘¼ã³å‡ºã—
#--------------------------------------------------------------------------
def call_update_help
if self.active and @help_window != nil
update_help
end
end
#--------------------------------------------------------------------------
# ◠ヘルプウィンドウã®æ›´æ–° (内容ã¯ç¶™æ‰¿å…ˆã§å®šç¾©ã™ã‚‹)
#--------------------------------------------------------------------------
def update_help
end
end
#******************************************************************************
# ★ 本作æˆ
#******************************************************************************
#==============================================================================
# â– Window_ActorCommand
#==============================================================================
class Window_ActorCommand < Window_SpinCommand
#--------------------------------------------------------------------------
# ◠オブジェクトåˆæœŸåŒ–
#--------------------------------------------------------------------------
def initialize
set = []
set.push([Vocab::attack, "icon", ZiiN7::ATTACK, true])
set.push([Vocab::skill, "icon", ZiiN7::SKILL, true])
set.push([Vocab::guard, "icon", ZiiN7::GUARD, true])
set.push([Vocab::item, "icon", ZiiN7::ITEM, true])
super(64, 64, set, {"R"=>40, "S"=>52, "L"=>-12, "G"=>"Spin40"})
self.active = false
set_spin
end
#-------------------------------------------------------------------------
#--------------------------------------------------------------------------
# ◠セットアップ
# actor : アクター
#--------------------------------------------------------------------------
def setup(actor)
@commands[0][2] = ZiiN7::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
#--------------------------------------------------------------------------
# ◠オブジェクトåˆæœŸåŒ– 改
#--------------------------------------------------------------------------
def initialize
super(128, 0, 416, 128)
@column_max = 4
refresh
self.active = false
self.opacity = 0
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)
draw_actor_state(actor, x + 72, WLH * 3)
self.contents.font.color = hp_color(actor)
size = 14
self.contents.font.size = size
self.contents.draw_text(x, WLH * 1 + 20 - size, 80, WLH, actor.name)
self.contents.font.size = 20
draw_actor_hp(actor, x, WLH * 2, 80)
draw_actor_mp(actor, x, WLH * 3, 70)
end
#--------------------------------------------------------------------------
# ◠カーソルã®æ›´æ–°
#--------------------------------------------------------------------------
def update_cursor
self.cursor_rect.empty
end
end
#******************************************************************************
# ★ ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ã‚¿ã‚¤ãƒ æ”¹é€ éƒ¨
#******************************************************************************
#==============================================================================
# â– Scene_Battle
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ★ コマンド更新 ※å†å®šç¾©
#--------------------------------------------------------------------------
def update_actor_command_selection
# コマンド入力ã§ãる状態ã§ãªããªã‚Œã°ã‚ャンセル
return reset_command unless commanding?
if Input.trigger?(Input::B)
Input.update
Sound.play_decision
start_party_command
elsif Input.trigger?(Input::C)
Input.update
case @actor_command_window.index
when 0 # 攻撃
Sound.play_decision
@commander.action.set_attack
start_target_enemy_selection
when 1 # スã‚ル
Sound.play_decision
$in_select = true
start_skill_selection
when 2 # 防御
Sound.play_decision
@commander.action.set_guard
end_command
when 3
Sound.play_decision
call_partyform
when 4 # アイテãƒ
Sound.play_decision
$in_select = true
start_item_selection
end
# シフトã‚ーã§ã‚³ãƒžãƒ³ãƒ‰ã‚ャラé€ã‚Š ************************************
elsif Input.trigger?(ZiiN7::SWITCH_COMMAND_BUTTON)
next_commander
#********************************************************************
end
end
end
i really need this helpT_T