Okay, so, as per Blizz's suggestion I hunted down a Tales ABS to help my own script further its development...
However... The only one I could find an actual DL link for doesn't seem to run properly... here is what I have...
I hope someone can help...
First off I get errors anywhere XRXS_SB1 is mentioned, so I deleted that from it, then I got errors from
alias some_thing refresh
def refresh
saying refresh is undefined....
the script is too long to post (http://www.mediafire.com/?nnnhxy9jicg)
From the looks of it, this seems to be an addon or modification of another script where those missing modules and methods are defined. It's not just that XRXS module and refresh of that window class, there ar many other aliases for non-existant methods. Try tracking down the original script.
I see... so that's why... well...crap.
Well, does anyone here read Spanish fluently? I have another script but the entire thing is commented in what looks like Spanish... it may not be, but it looks as such.
Luckily, we can still understand RGSS ;) Just try it out anyway. Looking at the code, you can guess if it's the one you need. Look for that XRXS module, that window class for which "refresh is not defined", you can figure it out.
The script(actually like 23 scripts all part of one system X_x;) is in a demo... I'm trying to see what parts of it I might be able to butcher... but I am not having much luck since I'm not fluent in RGSS or Spanish...
It's given me a few ideas, but I'm not sure if I'll need to completely rewrite the system to affect my plan or if I can modify the original(s)...
The system appears to use a folder full of character images instead of a single sprite sheet... This is actually better for me since I currently have my sprites in singles format anyway... however... I'm not sure how this script works... and I think I want my version to do something different...
Also there seems to be a generous amount of kanji thrown in...
# ▼▲▼ XRXS_BP11. バトラーモーションXC. ver..04b ▼▲▼
# by 桜雅 在土
#==============================================================================
# □ カスタマイズポイント
#==============================================================================
class Scene_Battle
# 「状況に応じたフォーム変化を行う」
# (基本的に true で使用しますが、"待機アニメ"だけ使用したいとき、または
# Full-Move Battle Systemを使用する場合、false に設定して下さい。)
DO_FORM_UPDATE = true
#
# Animacion automatica
#
AUTO_UPDATE_DECPLACE = true
# "Animación automática": En el marco del un solo dígito para añadir
# de forma automática una serie de movimientos.
AUTO_UPDATE_NUMBERS = [1, 31, 41, 51, 91, 221, 231]
# Repetir la moción de secuencias animadas.
AUTO_UPDATE_LOOP = [1, 41, 51, 81, 91, 221, 231]
end
class Game_Battler
#
# "バッドステート"であると判断するステートのIDの配列
#
BAD_STATE_IDS = [ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
#--------------------------------------------------------------------------
# ○ スキルが魔法スキルがどうかの判別
#--------------------------------------------------------------------------
def skill_is_a_magic?(skill)
return skill == nil ? false : (skill.str_f < skill.int_f)
end
end
# Conjunto fijo de valores
module XRXS_BP11
# Formulario de lista ID
BASIC = 1 # 待機:基本(1に固定)
BAD_STATE = 81 # 待機:バッドステート
DOWN = 91 # ダウン(91固定)
STEP3_ATTACK = 1 # 通常攻撃 :行動側アニメ時
STEP4_ATTACK = 121 # 通常攻撃 :対象側アニメ時
STEP3_GUARD = 61 # 防御選択 :行動側アニメ時
STEP4_GUARD = 61 # 防御選択 :対象側アニメ時
STEP3_ESCAPE = 51 # 逃げる :行動側アニメ時
STEP4_ESCAPE = 51 # 逃げる :対象側アニメ時
STEP3_NOMOVE = 1 # なにもしない :行動側アニメ時
STEP4_NOMOVE = 1 # なにもしない :対象側アニメ時
STEP3_SKILL = 201 # スキル(非魔法):行動側アニメ時
STEP4_SKILL = 211 # スキル(非魔法):対象側アニメ時
STEP3_MAGIC = 221 # スキル( 魔法 ):行動側アニメ時
STEP4_MAGIC = 231 # スキル( 魔法 ):対象側アニメ時
STEP3_ITEM = 241 # アイテム使用 :行動側アニメ時
STEP4_ITEM = 251 # アイテム使用 :対象側アニメ時
STEP4_DAMAGE = 71 # ダメージ受け
STEP4_GUARD = 61 # 攻撃を防御時
STEP4_HEALED = 251 # 非ダメージ受け時(回復等)
STEP4_AVOID = 51 # 回避時
WIN_ACTION = 991 # 戦闘勝利時
end
#==============================================================================
# ■ Game_Battler
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# ● 公開インスタンス変数
#--------------------------------------------------------------------------
attr_accessor :now_form_id # フォームID
attr_accessor :battler_name_basic_form # バトラーの基本バトラーグラフィック
#--------------------------------------------------------------------------
# ○ フォームID
#--------------------------------------------------------------------------
def now_form_id
if @now_form_id != nil
return @now_form_id
else
return 1
end
end
#--------------------------------------------------------------------------
# ○graficos de muerte o cambio de estado para aliados y enemigos
#--------------------------------------------------------------------------
def transgraphic_basic_form
if dead? and battler_graphic_exist?(XRXS_BP11::DOWN)
self.motion.do_down
form_id = XRXS_BP11::DOWN
else
form_id = XRXS_BP11::BASIC
for state_id in @states
form_id = XRXS_BP11::BAD_STATE if BAD_STATE_IDS.include?(state_id)
end
end
transgraphic(form_id)
end
#--------------------------------------------------------------------------
# ○ バトラーグラフィックの変更
# form_id : 変更後のフォームのID
#--------------------------------------------------------------------------
def transgraphic(form_id)
# 現在フォームID の更新。
@now_form_id = form_id
if form_id == 0
# 0 が指定された場合、グラフィックを消す
@battler_name = ""
return
elsif form_id == 1
# 1 が指定された場合、初期グラフィックへ戻す
@battler_name = @battler_name_basic_form.to_s
else
# 有無チェック
if battler_graphic_exist?(form_id)
# グラフィック変更
@battler_name = form_id_to_name(form_id)
end
end
end
#--------------------------------------------------------------------------
# ○ バトラーグラフィックの有無
#--------------------------------------------------------------------------
def battler_graphic_exist?(form_id)
# バトラーグラフィックス読み込みテスト
begin
RPG::Cache.battler(form_id_to_name(form_id), @battler_hue)
rescue
# 無かったときの処理
return false
end
return true
end
#--------------------------------------------------------------------------
# ○ form_id と @battler_name_basic_form から form_name を作成 (String)
#--------------------------------------------------------------------------
def form_id_to_name(form_id)
form_name = @battler_name_basic_form.to_s + "_battler/" + @battler_name_basic_form.to_s + "_"
if form_id < 10
form_name += "00"
elsif form_id < 100
form_name += "0"
end
form_name += form_id.to_s
return form_name
end
end
#==============================================================================
# ■ Sprite_Battler
#==============================================================================
class Sprite_Battler < RPG::Sprite
#--------------------------------------------------------------------------
# ● コラプス
#--------------------------------------------------------------------------
def collapse
if @battler.battler_graphic_exist?(91)
else
super
end
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
alias xrxs_bp11_update update
def update
xrxs_bp11_update
return if @battler == nil
if @battler.dead? and @battler.battler_graphic_exist?(XRXS_BP11::DOWN)
self.opacity = 255
end
end
end
#==============================================================================
# ■ Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ○ 公開インスタンス変数
#--------------------------------------------------------------------------
attr_reader :battler_name_basic_form # バトラー ファイル名:基本
#--------------------------------------------------------------------------
# ● セットアップ
#--------------------------------------------------------------------------
alias xrxs_bp11_setup setup
def setup(actor_id)
xrxs_bp11_setup(actor_id)
@battler_name_basic_form = @battler_name
end
#--------------------------------------------------------------------------
# ● グラフィックの変更
#--------------------------------------------------------------------------
alias xrxs_bp11_set_graphic set_graphic
def set_graphic(character_name, character_hue, battler_name, battler_hue)
xrxs_bp11_set_graphic(character_name, character_hue, battler_name, battler_hue)
@battler_name_basic_form = @battler_name
end
end
#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
alias xrxs_bp11_initialize initialize
def initialize(troop_id, member_index)
xrxs_bp11_initialize(troop_id, member_index)
@battler_name_basic_form = @battler_name
end
end
#==============================================================================
# ■ Scene_Battle
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
alias xrxs_bp11_main main
def main
@wait_count_motion = 0
xrxs_bp11_main
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
alias xrxs_bp11_update update
def update
xrxs_bp11_update
# バトラーグラフィック表示更新
if @wait_count_motion > 0
# ウェイトカウントを減らす
@wait_count_motion -= 1
elsif AUTO_UPDATE_DECPLACE
for battler in $game_party.actors + $game_troop.enemies
# バトラー待機グラフィックの更新
trance_id = battler.now_form_id
#
if AUTO_UPDATE_NUMBERS.include?(trance_id/10 * 10 + 1)
if trance_id%10 == 8
# 1に戻す
if AUTO_UPDATE_LOOP.include?(trance_id - 7)
trance_id -= 7
battler.transgraphic(trance_id)
end
else
# 一つ進める
trance_id += 1
battler.transgraphic(trance_id)
end
end
end
@wait_count_motion = 1
end
end
#--------------------------------------------------------------------------
# ● プレバトルフェーズ開始
#--------------------------------------------------------------------------
alias xrxs_bp11_start_phase1 start_phase1
def start_phase1
xrxs_bp11_start_phase1
# モーションをリセット
actors_motion_reset
end
#--------------------------------------------------------------------------
# ○ アクター達のモーションをリセット
#--------------------------------------------------------------------------
def actors_motion_reset
for actor in $game_party.actors
actor.transgraphic_basic_form
end
end
#--------------------------------------------------------------------------
# ● バトル終了
#--------------------------------------------------------------------------
alias xrxs_bp11_battle_end battle_end
def battle_end(result)
# モーションを基本に戻す
for actor in $game_party.actors
actor.set_graphic(actor.character_name, actor.character_hue, actor.battler_name_basic_form, actor.battler_hue)
end
# 呼び戻す
xrxs_bp11_battle_end(result)
end
if DO_FORM_UPDATE
#--------------------------------------------------------------------------
# ● 勝敗判定
#--------------------------------------------------------------------------
alias xrxs_bp11_judge judge
def judge
bool = xrxs_bp11_judge
if bool
for battler in $game_party.actors
if battler.dead? == false
battler.transgraphic(XRXS_BP11::WIN_ACTION)
end
end
end
return bool
end
#--------------------------------------------------------------------------
# ● フレーム更新 (メインフェーズ ステップ 3 : 行動側アニメーション)
#--------------------------------------------------------------------------
alias xrxs_bp11_update_phase4_step3 update_phase4_step3
def update_phase4_step3
# モーション:行動側のモーション
# アクションの種別で分岐
case @active_battler.current_action.kind
when 0 # 基本
# 攻撃の場合
if @active_battler.current_action.basic == 0
@active_battler.transgraphic(XRXS_BP11::STEP3_ATTACK)
end
# 防御の場合
if @active_battler.current_action.basic == 1
@active_battler.transgraphic(XRXS_BP11::STEP3_GUARD)
end
# 逃げるの場合
if @active_battler.is_a?(Game_Enemy) and @active_battler.current_action.basic == 2
@active_battler.transgraphic(XRXS_BP11::STEP3_ESCAPE)
end
# 何もしないの場合
if @active_battler.current_action.basic == 3
@active_battler.transgraphic(XRXS_BP11::STEP3_NOMOVE)
end
when 1 # スキル時、魔法判別
if @active_battler.skill_is_a_magic?(@skill)
@active_battler.transgraphic(XRXS_BP11::STEP3_MAGIC)
else
@active_battler.transgraphic(XRXS_BP11::STEP3_SKILL)
end
when 2 # アイテム
@active_battler.transgraphic(XRXS_BP11::STEP3_ITEM)
end
# 戻す
xrxs_bp11_update_phase4_step3
end
#--------------------------------------------------------------------------
# ● フレーム更新 (メインフェーズ ステップ 4 : 対象側アニメーション)
#--------------------------------------------------------------------------
alias xrxs_bp11_update_phase4_step4 update_phase4_step4
def update_phase4_step4
# モーション:行動側のモーション
# アクションの種別で分岐
case @active_battler.current_action.kind
when 0 # 基本
# 攻撃の場合
if @active_battler.current_action.basic == 0
@active_battler.transgraphic(XRXS_BP11::STEP4_ATTACK)
end
# 防御の場合
if @active_battler.current_action.basic == 1
@active_battler.transgraphic(XRXS_BP11::STEP4_GUARD)
end
# 逃げるの場合
if @active_battler.is_a?(Game_Enemy) and @active_battler.current_action.basic == 2
@active_battler.transgraphic(XRXS_BP11::STEP4_ESCAPE)
end
# 何もしないの場合
if @active_battler.current_action.basic == 3
@active_battler.transgraphic(XRXS_BP11::STEP4_NOMOVE)
end
when 1 # スキル時、魔法判別
if @active_battler.skill_is_a_magic?(@skill)
@active_battler.transgraphic(XRXS_BP11::STEP4_MAGIC)
else
@active_battler.transgraphic(XRXS_BP11::STEP4_SKILL)
end
when 2 # アイテム
@active_battler.transgraphic(XRXS_BP11::STEP4_ITEM)
end
# モーション:対象側のダメージ
for target in @target_battlers
if target.damage == "Miss"
target.transgraphic(XRXS_BP11::STEP4_AVOID)
elsif target.damage.is_a?(Numeric) and target.damage > 0
if target.guarding?
target.transgraphic(XRXS_BP11::STEP4_GUARD)
else
target.transgraphic(XRXS_BP11::STEP4_DAMAGE)
end
else
target.transgraphic(XRXS_BP11::STEP4_HEALED)
end
end
# 戻す
xrxs_bp11_update_phase4_step4
end
#--------------------------------------------------------------------------
# ● フレーム更新 (メインフェーズ ステップ 6 : リフレッシュ)
#--------------------------------------------------------------------------
alias xrxs_bp11_update_phase4_step6 update_phase4_step6
def update_phase4_step6
# 行動者のモーションのリセット
@active_battler.transgraphic_basic_form
# 対象のモーションリセット
if @target_battlers != nil
for target in @target_battlers
target.transgraphic_basic_form
end
end
xrxs_bp11_update_phase4_step6
end
end #---DO_FORM_UPDATE
end
That script isn't the one you need, I've tested it. Why don't you install the script in your first post into the demo and see what happens? If you already did, what happened?
Ok, I'll try to explain... I'm trying to get usable parts from this script, as opposed to using the script in it's current form.
I have a thread in the Request forum, that's what this whole thing is about... I'm trying to find the most effective way to accomplish the script in my request...
In the end, I want my CBS to be like a fighting game as opposed to an RPG. This script is only supposed to be a step in that direction...
it just isn't seeming like it'll be a very big one... =/