Rpg Maker Xp nuovo Battle System!!!
  • In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Visualizzazione risultati da 1 a 13 di 13

Discussione: Rpg Maker Xp nuovo Battle System!!!

Cambio titolo
  1. #1
    Bi7hazard ☣ Runner ☠ L'avatar di Seph|ŽotH
    Registrato il
    09-03
    Localitā
    Northern Cave
    Messaggi
    30.585

    Rpg Maker Xp nuovo Battle System!!!

    Tools - Script Editor - Sopra Main dovrete creare 1 nuova voce di nome New Battle

    dopodiche scrivete questo:

    #========================================================= =====================
    # New_Battle
    #------------------------------------------------------------------------------
    # Compiled By : MakirouAru
    #========================================================= =====================
    # ������ XRXS_BP 3. ����ŽžHP�� ver.1.01 ������
    # by fukuyama, ��� �ݓy

    # Battle_End_Recovery
    #
    # �퓬��̉��������W���[��
    #
    # Request: stay
    # Script: fukuyama
    # Test: �m�R�mŽq
    #
    # URL: http://www4.big.or.jp/~fukuyama/rgss...d_Recovery.txt
    #

    module Battle_End_Recovery

    module Scene_Battle_Module

    # ����������ID
    @@recovery_rate_variable_id = nil

    # ������Ž擾
    def battle_end_recovery_rate
    if @@recovery_rate_variable_id.nil?
    @@recovery_rate_variable_id =
    $data_system.variables.index '�퓬��̉���'
    if @@recovery_rate_variable_id.nil?
    @@recovery_rate_variable_id = false
    end
    end
    return 0 unless @@recovery_rate_variable_id
    return $game_variables[@@recovery_rate_variable_id]
    end

    # �퓬��̉�����
    def battle_end_recovery

    # ����
    recovery_rate = battle_end_recovery_rate

    # �����������O�ȊO���ƒA�N�^�[���������Ă��������A�퓬��̉��������s��
    if recovery_rate != 0 and not actor.dead?

    # �p�[�e�B�̃A�N�^�[���Ƀ��[�v
    $game_party.actors.each do |actor|

    # ���ʌvŽZ
    recovery_hp = (actor.maxhp / 100.0 * recovery_rate).truncate
    recovery_sp = (actor.maxsp / 100.0 * recovery_rate).truncate

    # Ž��ۂɉ�
    actor.hp += recovery_hp
    actor.sp += recovery_sp

    # �A�j���[�V�����ݒ�
    actor.damage = - recovery_hp
    actor.damage_pop = true

    end

    # �X�e�[�^�X�E�B���h�E���X�V
    @status_window.refresh

    end
    end

    end # module Scene_Battle_Module
    end # module Battle_End_Recovery

    #------------------------------
    # �퓬�V�[�����Ē�
    #------------------------------
    class Scene_Battle

    # Scene_Battle�p���W���[����C���N���[�h
    include Battle_End_Recovery::Scene_Battle_Module

    # ���̃t�F�[�Y�T�JŽn�ɕʖ���‚���
    alias battle_end_recovery_original_start_phase5 start_phase5

    # �t�F�[�Y�T�JŽn���Ē�
    def start_phase5

    # �퓬��̉�������Ă��o��
    battle_end_recovery

    # ���̃t�F�[�Y�T�JŽn��Ă��o��
    battle_end_recovery_original_start_phase5

    end
    end

    # Battle_End_Recovery
    # ������ XRXS_BP10. LEVEL UP!�E�B���h�E ������
    # by ��� �ݓy

    $data_system_level_up_se = "" # ���x���A�b�vSE�B""�Ŗ����B
    $data_system_level_up_me = "Audio/ME/007-Fanfare01" # ���x���A�b�vME

    #========================================================= =====================
    # �� Window_LevelUpWindow
    #------------------------------------------------------------------------------
    # �@�o�g���I��Žž�A���x���A�b�v���������ɃX�e�[�^�X��\Ž�����E�B���h�E�ł��B
    #========================================================= =====================
    class Window_LevelUpWindow < Window_Base
    #--------------------------------------------------------------------------
    # �� �I�u�W�F�N�g����
    #--------------------------------------------------------------------------
    def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
    super(0, 128, 160, 192)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.visible = false
    refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
    end
    #--------------------------------------------------------------------------
    # �� ���t���b�V��
    #--------------------------------------------------------------------------
    def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.font.name = "Arial"
    self.contents.font.size = 14
    self.contents.draw_text( 0, 0, 160, 24, "LEVEL UP!!")
    self.contents.font.size = 18
    self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp)
    self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp)
    self.contents.font.size = 14
    self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str)
    self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex)
    self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi)
    self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int)
    self.contents.draw_text(92, 0, 128, 24, "��")
    self.contents.draw_text(76, 28, 128, 24, "=")
    self.contents.draw_text(76, 50, 128, 24, "=")
    self.contents.draw_text(76, 72, 128, 24, "=")
    self.contents.draw_text(76, 94, 128, 24, "=")
    self.contents.draw_text(76, 116, 128, 24, "=")
    self.contents.draw_text(76, 138, 128, 24, "=")
    self.contents.font.color = normal_color
    self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2)
    self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2)
    self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2)
    self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2)
    self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2)
    self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2)
    self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2)
    self.contents.font.size = 20
    self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2)
    self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2)
    self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2)
    self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2)
    self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2)
    self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2)
    self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2)
    end
    end
    #========================================================= =====================
    # �� Window_BattleStatus
    #========================================================= =====================
    class Window_BattleStatus < Window_Base
    #--------------------------------------------------------------------------
    # �� �lj��E��J�C���X�^���X����
    #--------------------------------------------------------------------------
    attr_accessor :level_up_flags # LEVEL UP!�\Ž�
    end
    #========================================================= =====================
    # �� Game_Battler
    #========================================================= =====================
    class Game_Battler
    #--------------------------------------------------------------------------
    # �� �lj��E��J�C���X�^���X����
    #--------------------------------------------------------------------------
    attr_accessor :exp_gain_ban # EXPŽ擾��Žž��Ž~
    #--------------------------------------------------------------------------
    # �� �I�u�W�F�N�g����
    #--------------------------------------------------------------------------
    alias xrxs_bp10_initialize initialize
    def initialize
    @exp_gain_ban = false
    xrxs_bp10_initialize
    end
    #--------------------------------------------------------------------------
    # �� �X�e�[�g [EXP ��l���ł��Ȃ�] ����
    #--------------------------------------------------------------------------
    alias xrxs_bp10_cant_get_exp? cant_get_exp?
    def cant_get_exp?
    if @exp_gain_ban == true
    return true
    else
    return xrxs_bp10_cant_get_exp?
    end
    end
    end
    #========================================================= =====================
    # �� Scene_Battle
    #========================================================= =====================
    class Scene_Battle
    #--------------------------------------------------------------------------
    # �� �A�t�^�[�o�g���t�F�[�Y�JŽn
    #--------------------------------------------------------------------------
    alias xrxs_bp10_start_phase5 start_phase5
    def start_phase5
    # EXP �l����Ž~
    for i in 0...$game_party.actors.size
    $game_party.actors[i].exp_gain_ban = true
    end
    xrxs_bp10_start_phase5
    # EXP �l����Ž~�̉���
    for i in 0...$game_party.actors.size
    $game_party.actors[i].exp_gain_ban = false
    end
    # EXP������
    @exp_gained = 0
    for enemy in $game_troop.enemies
    # �l�� EXP��lj� # �G�l�~�[���B����ԂłȂ�����
    @exp_gained += enemy.exp if not enemy.hidden
    end
    # �ݒ�
    @phase5_step = 0
    @exp_gain_actor = -1
    # ���U���g�E�B���h�E��\Ž�
    @result_window.y -= 64
    @result_window.visible = true
    # ���x���A�b�v�����
    phase5_next_levelup
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (�A�t�^�[�o�g���t�F�[�Y)
    #--------------------------------------------------------------------------
    alias xrxs_bp10_update_phase5 update_phase5
    def update_phase5
    case @phase5_step
    when 1
    update_phase5_step1
    else
    xrxs_bp10_update_phase5
    # ���x���A�b�v���Ă��������͋����o�g���I��
    battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
    end
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (�A�t�^�[�o�g���t�F�[�Y 1 : ���x���A�b�v)
    #--------------------------------------------------------------------------
    def update_phase5_step1
    # C �{�^���������ꂽ����
    if Input.trigger?(Input::C)
    # �E�B���h�E��‚���Ž��̃A�N�^�[��
    @levelup_window.visible = false if @levelup_window != nil
    @status_window.level_up_flags[@exp_gain_actor] = false
    phase5_next_levelup
    end
    end
    #--------------------------------------------------------------------------
    # �� Ž��̃A�N�^�[�̃��x���A�b�v�\Ž���
    #--------------------------------------------------------------------------
    def phase5_next_levelup
    begin
    # Ž��̃A�N�^�[��
    @exp_gain_actor += 1
    # �Ō�̃A�N�^�[������
    if @exp_gain_actor >= $game_party.actors.size
    # �A�t�^�[�o�g���t�F�[�Y�JŽn
    @phase5_step = 0
    return
    end
    actor = $game_party.actors[@exp_gain_actor]
    if actor.cant_get_exp? == false
    # ���݂̔\�͒l���Ž�
    last_level = actor.level
    last_maxhp = actor.maxhp
    last_maxsp = actor.maxsp
    last_str = actor.str
    last_dex = actor.dex
    last_agi = actor.agi
    last_int = actor.int
    # �o���lŽ擾�̌���I�u��(��
    actor.exp += @exp_gained
    # ����
    if actor.level > last_level
    # ���x���A�b�v��������
    @status_window.level_up(@exp_gain_actor)
    if $data_system_level_up_se != ""
    Audio.se_stop
    Audio.se_play($data_system_level_up_se)
    end
    if $data_system_level_up_me != ""
    Audio.me_stop
    Audio.me_play($data_system_level_up_me)
    end
    @levelup_window = Window_LevelUpWindow.new(actor, last_level,
    actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
    actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
    @levelup_window.x = 160 * @exp_gain_actor
    @levelup_window.visible = true
    @phase5_wait_count = 40
    @phase5_step = 1
    # �X�e�[�^�X�E�B���h�E��t���b�V��
    @status_window.refresh
    return
    end
    end
    end until false
    end
    end
    # ������ XRXS_17. �X���b�v�_���[�W�h���^��ʗ����׉� ver.1.51 ������
    # by ��� �ݓy, fukuyama

    #========================================================= =====================
    # �� Game_Battler
    #========================================================= =====================
    class Game_Battler
    #--------------------------------------------------------------------------
    # �� �X���b�v�_���[�W�̌�ʓK�p
    #--------------------------------------------------------------------------
    alias xrxs_bp7_slip_damage_effect slip_damage_effect
    def slip_damage_effect
    # ���l������
    slip_damage_percent = 0
    slip_damage_plus = 0
    # ���ݕt�����Ă���X�e�[�g�̒�����X���b�v�_���[�W�L��̃��m��T��
    for i in @states
    if $data_states[i].slip_damage
    # ���̃X�e�[�g��Ž���Ă���X���b�v�_���[�W��
    # Lv�v���X�X�e�[�g�܂���Lv�}�C�i�X�X�e�[�g�����B
    for j in $data_states[i].plus_state_set
    if $data_states[j] != nil
    if $data_states[j].name =~ /^�X���b�v([0-9]+)(%|��)/
    slip_damage_percent += $1.to_i
    elsif $data_states[j].name =~ /^�X���b�v([0-9]+)$/
    slip_damage_plus += $1.to_i
    end
    end
    end
    for j in $data_states[i].minus_state_set
    if $data_states[j] != nil
    if $data_states[j].name =~ /^�X���b�v([0-9]+)(%|��)/
    slip_damage_percent -= $1.to_i
    elsif $data_states[j].name =~ /^�X���b�v([0-9]+)$/
    slip_damage_plus -= $1.to_i
    end
    end
    end
    end
    end
    if slip_damage_percent == 0 and slip_damage_plus == 0
    xrxs_bp7_slip_damage_effect
    else
    # �h��X���b�v�h�䂪� ����������
    for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
    armor = $data_armors[i]
    next if armor == nil
    for j in armor.guard_state_set
    if $data_states[j] != nil
    if $data_states[j].name =~ /^�X���b�v([0-9]+)(%|��)/
    if slip_damage_percent > 0
    slip_damage_percent = [slip_damage_percent - $1.to_i, 0].max
    end
    end
    if $data_states[j].name =~ /^�X���b�v([0-9]+)$/
    if slip_damage_percent > 0
    slip_damage_plus = [slip_damage_plus - $1.to_i, 0].max
    end
    end
    end
    end
    end
    # �_���[�W���ݒ�
    self.damage = self.maxhp * slip_damage_percent / 100 + slip_damage_plus
    # ��ŽU
    if self.damage.abs > 0
    amp = [self.damage.abs * 15 / 100, 1].max
    self.damage += rand(amp+1) + rand(amp+1) - amp
    end
    # HP ����_���[�W��ŽZ
    self.hp -= self.damage
    # ���\�b�h�I��
    return true
    end
    end
    end
    # ������ XRXS_BP 1. CP������ ver.15 ������
    # by ��� �ݓy, �a��, Jack-R

    #========================================================= =====================
    # �� Scene_Battle_CP
    #========================================================= =====================
    class Scene_Battle_CP
    #--------------------------------------------------------------------------
    # �� ��J�C���X�^���X����
    #--------------------------------------------------------------------------
    attr_accessor :stop # CP��ŽZ�X�g�b�v
    #----------------------------------------------------------------------------
    # �� �I�u�W�F�N�g������
    #----------------------------------------------------------------------------
    def initialize
    @battlers = []
    @cancel = false
    @agi_total = 0
    # �z�� @count_battlers ������
    @count_battlers = []
    # �G�l�~�[��z�� @count_battlers �ɒlj�
    for enemy in $game_troop.enemies
    @count_battlers.push(enemy)
    end
    # �A�N�^�[��z�� @count_battlers �ɒlj�
    for actor in $game_party.actors
    @count_battlers.push(actor)
    end
    for battler in @count_battlers
    @agi_total += battler.agi
    end
    for battler in @count_battlers
    battler.cp = [[65535 * (rand(15) + 85) / 100 * battler.agi / @agi_total * 4, 0].max, 65535].min
    end
    end
    #----------------------------------------------------------------------------
    # �� CP�J�E���g�̊JŽn
    #----------------------------------------------------------------------------
    def start
    if @cp_thread != nil then
    return
    end
    @cancel = false
    @stop = false
    # ��������X���b�h
    @cp_thread = Thread.new do
    while @cancel != true
    if @stop != true
    self.update # �X�V
    sleep(0.05)
    end
    end
    end
    # �����܂ŃX���b�h
    end
    #----------------------------------------------------------------------------
    # �� CP�J�E���g�A�b�v
    #----------------------------------------------------------------------------
    def update
    if @count_battlers != nil then
    for battler in @count_battlers
    # �s���o���Ȃ���Ζ�Ž�
    if battler.dead? == true #or battler.movable? == false then
    battler.cp = 0
    next
    end
    # ������ 1.3��ς��邱�Ƃ����X�s�[�h����X�”\�B�����������_��Žg�p���邱���B
    battler.cp = [[battler.cp + 1.3 * 4096 * battler.agi / @agi_total, 0].max, 65535].min
    end
    end
    end
    #----------------------------------------------------------------------------
    # �� CP�J�E���g�̊JŽn
    #----------------------------------------------------------------------------
    def stop
    @cancel = true
    if @cp_thread != nil then
    @cp_thread.join
    @cp_thread = nil
    end
    end
    end
    #========================================================= =====================
    # �� Game_Battler
    #========================================================= =====================
    class Game_Battler
    attr_accessor :now_guarding # ���ݖh�䒆�t���O
    attr_accessor :cp # ����CP
    attr_accessor :slip_state_update_ban # �X���b�v�E�X�e�[�gŽ��������̋�Ž~
    #--------------------------------------------------------------------------
    # �� �R�}���h��͉”\����
    #--------------------------------------------------------------------------
    def inputable?
    return (not @hidden and restriction <= 1 and @cp >=65535)
    end
    #--------------------------------------------------------------------------
    # �� �X�e�[�g [�X���b�v�_���[�W] ����
    #--------------------------------------------------------------------------
    alias xrxs_bp1_slip_damage? slip_damage?
    def slip_damage?
    return false if @slip_state_update_ban
    return xrxs_bp1_slip_damage?
    end
    #--------------------------------------------------------------------------
    # �� �X�e�[�gŽ��R���� (�^�[�����ƂɌĂ��o��)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_remove_states_auto remove_states_auto
    def remove_states_auto
    return if @slip_state_update_ban
    xrxs_bp1_remove_states_auto
    end
    end
    #========================================================= =====================
    # �� Game_Actor
    #========================================================= =====================
    class Game_Actor < Game_Battler
    #--------------------------------------------------------------------------
    # �� �Z�b�g�A�b�v
    #--------------------------------------------------------------------------
    alias xrxs_bp1_setup setup
    def setup(actor_id)
    xrxs_bp1_setup(actor_id)
    @hate = 100 # init-value is 100
    @cp = 0
    @now_guarding = false
    @slip_state_update_ban = false
    end
    end
    #========================================================= =====================
    # �� Game_Enemy
    #========================================================= =====================
    class Game_Enemy < Game_Battler
    #--------------------------------------------------------------------------
    # �� �I�u�W�F�N�g����
    #--------------------------------------------------------------------------
    alias xrxs_bp1_initialize initialize
    def initialize(troop_id, member_index)
    xrxs_bp1_initialize(troop_id, member_index)
    @hate = 100 # init-value is 100
    @cp = 0
    @now_guarding = false
    @slip_state_update_ban = false
    end
    end

  2. #2
    Bi7hazard ☣ Runner ☠ L'avatar di Seph|ŽotH
    Registrato il
    09-03
    Localitā
    Northern Cave
    Messaggi
    30.585
    #========================================================= =====================
    # �� Window_BattleStatus
    #========================================================= =====================
    class Window_BattleStatus < Window_Base
    #--------------------------------------------------------------------------
    # �� ��J�C���X�^���X����
    #--------------------------------------------------------------------------
    attr_accessor :update_cp_only # CP���[�^�[�݂̂��X�V
    #--------------------------------------------------------------------------
    # �� �I�u�W�F�N�g����
    #--------------------------------------------------------------------------
    alias xrxs_bp1_initialize initialize
    def initialize
    @update_cp_only = false
    xrxs_bp1_initialize
    end
    #--------------------------------------------------------------------------
    # �� ���t���b�V��
    #--------------------------------------------------------------------------
    alias xrxs_bp1_refresh refresh
    def refresh
    if @update_cp_only == false
    xrxs_bp1_refresh
    end
    for i in 0...$game_party.actors.size
    actor = $game_party.actors[i]
    actor_x = i * 160 + 4
    draw_actor_cp_meter(actor, actor_x, 96, 120, 0)
    end
    end
    #--------------------------------------------------------------------------
    # �� CP���[�^�[ �̕��
    #--------------------------------------------------------------------------
    def draw_actor_cp_meter(actor, x, y, width = 156, type = 0)
    self.contents.font.color = system_color
    self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 255))
    if actor.cp == nil
    actor.cp = 0
    end
    w = width * [actor.cp,65535].min / 65535
    self.contents.fill_rect(x, y+28, w,1, Color.new(255, 255, 128, 255))
    self.contents.fill_rect(x, y+29, w,1, Color.new(255, 255, 0, 255))
    self.contents.fill_rect(x, y+30, w,1, Color.new(192, 192, 0, 255))
    self.contents.fill_rect(x, y+31, w,1, Color.new(128, 128, 0, 255))
    end
    end
    #========================================================= =====================
    # �� Scene_Battle
    #========================================================= =====================
    class Scene_Battle
    # �����Ɍ�ʉ����ݒ肷����A�A�N�^�[�R�}���h���|�b�v�����Ƃ��Ɍ�ʉ�������
    $data_system_command_up_se = ""
    #--------------------------------------------------------------------------
    # �� �o�g���I��
    # result : ���� (0:���� 1:�s�k 2:����)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_battle_end battle_end
    def battle_end(result)
    # CP�J�E���g��Ž~
    @cp_thread.stop
    xrxs_bp1_battle_end(result)
    end
    #--------------------------------------------------------------------------
    # �� �v���o�g���t�F�[�Y�JŽn
    #--------------------------------------------------------------------------
    alias xrxs_bp1_start_phase1 start_phase1
    def start_phase1
    @agi_total = 0
    @cp_thread = Scene_Battle_CP.new
    # �A�N�^�[�R�}���h�E�B���h�E��������
    s1 = $data_system.words.attack
    s2 = $data_system.words.skill
    s3 = $data_system.words.guard
    s4 = $data_system.words.item
    @actor_command_window = Window_Command.new(160, [s1, s2, s3, s4, "Run"])
    @actor_command_window.y = 128
    @actor_command_window.back_opacity = 160
    @actor_command_window.active = false
    @actor_command_window.visible = false
    @actor_command_window.draw_item(4, $game_temp.battle_can_escape ? @actor_command_window.normal_color : @actor_command_window.disabled_color)
    xrxs_bp1_start_phase1
    end
    #--------------------------------------------------------------------------
    # �� �p�[�e�B�R�}���h�t�F�[�Y�JŽn
    #--------------------------------------------------------------------------
    alias xrxs_bp1_start_phase2 start_phase2
    def start_phase2
    xrxs_bp1_start_phase2
    @party_command_window.active = false
    @party_command_window.visible = false
    # Ž���
    start_phase3
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (�p�[�e�B�R�}���h�t�F�[�Y)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_update_phase2 update_phase2
    def update_phase2
    # C �{�^���������ꂽ����
    if Input.trigger?(Input::C)
    # �p�[�e�B�R�}���h�E�B���h�E�̃J�[�\���ʒu�ŕ���
    case @party_command_window.index
    when 0 # �키
    # ���� SE ��t
    $game_system.se_play($data_system.decision_se)
    @cp_thread.start
    # �A�N�^�[�R�}���h�t�F�[�Y�JŽn
    start_phase3
    end
    return
    end
    xrxs_bp1_update_phase2
    end
    #--------------------------------------------------------------------------
    # �� Ž��̃A�N�^�[�̃R�}���h��͂�
    #--------------------------------------------------------------------------
    def phase3_next_actor
    # ���[�v
    begin
    # �A�N�^�[�̖��ŃG�t�F�N�g OFF
    if @active_battler != nil
    @active_battler.blink = false
    end
    # �Ō�̃A�N�^�[������
    if @actor_index == $game_party.actors.size-1
    # ���C���t�F�[�Y�JŽn
    @cp_thread.start
    start_phase4
    return
    end
    # �A�N�^�[�̃C���f�b�N�X���i�߂�
    @actor_index += 1
    @active_battler = $game_party.actors[@actor_index]
    @active_battler.blink = true
    if @active_battler.inputable? == false
    @active_battler.current_action.kind = -1
    end
    # �A�N�^�[���R�}���h��͂�Ž��t���Ȃ���ԂȂ����x
    end until @active_battler.inputable?
    @cp_thread.stop
    # �A�N�^�[�R�}���h�E�B���h�E��Z�b�g�A�b�v
    @active_battler.now_guarding = false
    phase3_setup_command_window
    end
    #--------------------------------------------------------------------------
    # �� �O�̃A�N�^�[�̃R�}���h��͂�
    #--------------------------------------------------------------------------
    def phase3_prior_actor
    # ���[�v
    begin
    # �A�N�^�[�̖��ŃG�t�F�N�g OFF
    if @active_battler != nil
    @active_battler.blink = false
    end
    # �����̃A�N�^�[������
    if @actor_index == 0
    # �����֖߂�
    start_phase3
    return
    end
    # �A�N�^�[�̃C���f�b�N�X��߂�
    @actor_index -= 1
    @active_battler = $game_party.actors[@actor_index]
    @active_battler.blink = true
    # �A�N�^�[���R�}���h��͂�Ž��t���Ȃ���ԂȂ����x
    end until @active_battler.inputable?
    @cp_thread.stop
    # �A�N�^�[�R�}���h�E�B���h�E��Z�b�g�A�b�v
    @active_battler.now_guarding = false
    phase3_setup_command_window
    end
    #--------------------------------------------------------------------------
    # �� �A�N�^�[�R�}���h�E�B���h�E�̃Z�b�g�A�b�v
    #--------------------------------------------------------------------------
    alias xrxs_bp1_phase3_setup_command_window phase3_setup_command_window
    def phase3_setup_command_window
    # ��ʉ�������
    Audio.se_play($data_system_command_up_se) if $data_system_command_up_se != ""
    # �߂�
    xrxs_bp1_phase3_setup_command_window
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (�A�N�^�[�R�}���h�t�F�[�Y : ��{�R�}���h)
    #--------------------------------------------------------------------------
    alias xrxs_bsp1_update_phase3_basic_command update_phase3_basic_command
    def update_phase3_basic_command
    # C �{�^���������ꂽ����
    if Input.trigger?(Input::C)
    # �A�N�^�[�R�}���h�E�B���h�E�̃J�[�\���ʒu�ŕ���
    case @actor_command_window.index
    when 4 # ������
    if $game_temp.battle_can_escape
    # ���� SE ��t
    $game_system.se_play($data_system.decision_se)
    # �A�N�V�������ݒ�
    @active_battler.current_action.kind = 0
    @active_battler.current_action.basic = 4
    # Ž��̃A�N�^�[�̃R�}���h��͂�
    phase3_next_actor
    else
    # �u�U�[ SE ��t
    $game_system.se_play($data_system.buzzer_se)
    end
    return
    end
    end
    xrxs_bsp1_update_phase3_basic_command
    end
    #--------------------------------------------------------------------------
    # �� ���C���t�F�[�Y�JŽn
    #--------------------------------------------------------------------------
    alias xrxs_bp1_start_phase4 start_phase4
    def start_phase4
    xrxs_bp1_start_phase4
    # �G�l�~�[�A�N�V��������
    for enemy in $game_troop.enemies
    if enemy.cp < 65535
    enemy.current_action.clear
    enemy.current_action.kind = -1 # �^�[����΂��B
    next
    end
    enemy.make_action
    end
    # �s����������
    make_action_orders
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (���C���t�F�[�Y �X�e�b�v 1 : �A�N�V��������)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_update_phase4_step1 update_phase4_step1
    def update_phase4_step1
    # ����
    @phase4_act_continuation = 0
    # ���s����
    if judge
    @cp_thread.stop
    # �����܂��͔s�k������ : ���\�b�h�I��
    return
    end
    # ���s���o�g���[�z����擪����Ž擾
    @active_battler = @action_battlers[0]
    # �X�e�[�^�X�X�V��CP�����Ɍ���B
    @status_window.update_cp_only = true
    # �X�e�[�g�X�V���Ž~�B
    @active_battler.slip_state_update_ban = true if @active_battler != nil
    # �߂�
    xrxs_bp1_update_phase4_step1
    # ��Ž~�����
    @status_window.update_cp_only = false
    @active_battler.slip_state_update_ban = false if @active_battler != nil
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (���C���t�F�[�Y �X�e�b�v 2 : �A�N�V�����JŽn)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_update_phase4_step2 update_phase4_step2
    def update_phase4_step2
    # �����A�N�V�����łȂ����
    unless @active_battler.current_action.forcing
    # CP������Ă��Ȃ�����
    if @phase4_act_continuation == 0 and @active_battler.cp < 65535
    @phase4_step = 6
    return
    end
    # ���� [�G������U������] �� [���������U������] ������
    if @active_battler.restriction == 2 or @active_battler.restriction == 3
    # �A�N�V�������U�����ݒ�
    @active_battler.current_action.kind = 0
    @active_battler.current_action.basic = 0
    end
    # ���� [�s���ł��Ȃ�] ������
    if @active_battler.restriction == 4
    # �A�N�V�����������ۂ̃o�g���[��N���A
    $game_temp.forcing_battler = nil
    if @phase4_act_continuation == 0 and @active_battler.cp >= 65535
    # �X�e�[�gŽ��R����
    @active_battler.remove_states_auto
    # CP���
    @active_battler.cp = [(@active_battler.cp - 65535),0].max
    # �X�e�[�^�X�E�B���h�E��t���b�V��
    @status_window.refresh
    end
    # �X�e�b�v 1 �Ɉ��s
    @phase4_step = 1
    return
    end
    end
    # �A�N�V������Ž�ʂŕ���
    case @active_battler.current_action.kind
    when 0
    # �U����h���E�������E�����Ȃ�Žž�̋������CP
    @active_battler.cp -= 0 if @phase4_act_continuation == 0
    when 1
    # �X�L��Žg�pŽž�����CP
    @active_battler.cp -= 65535 if @phase4_act_continuation == 0
    when 2
    # �A�C�e��Žg�pŽž�����CP
    @active_battler.cp -= 65535 if @phase4_act_continuation == 0
    when -1
    # CP�����܂�Ă��Ȃ�
    @phase4_step = 6
    return
    end
    # CP��ŽZ���Žž��Ž~����
    @cp_thread.stop = true
    # �X�e�[�gŽ��R����
    @active_battler.remove_states_auto
    xrxs_bp1_update_phase4_step2
    end
    #--------------------------------------------------------------------------
    # �� ��{�A�N�V���� ��������
    #--------------------------------------------------------------------------
    alias xrxs_bp1_make_basic_action_result make_basic_action_result
    def make_basic_action_result
    # �U��������
    if @active_battler.current_action.basic == 0 and @phase4_act_continuation == 0
    @active_battler.cp -= 65535 # �U��Žž��CP���
    end
    # �h�������
    if @active_battler.current_action.basic == 1 and @phase4_act_continuation == 0
    @active_battler.cp -= 32767 # �h��Žž��CP���
    end
    # �G�̓����������
    if @active_battler.is_a?(Game_Enemy) and
    @active_battler.current_action.basic == 2 and @phase4_act_continuation == 0
    @active_battler.cp -= 65535 # ����Žž��CP���
    end
    # �����Ȃ�������
    if @active_battler.current_action.basic == 3 and @phase4_act_continuation == 0
    @active_battler.cp -= 32767 # �����Ȃ�Žž��CP���
    end
    # �����������
    if @active_battler.current_action.basic == 4 and @phase4_act_continuation == 0
    @active_battler.cp -= 65535 # ����Žž��CP���
    # �����”\�ł͂Ȃ�����
    if $game_temp.battle_can_escape == false
    # �u�U�[ SE ��t
    $game_system.se_play($data_system.buzzer_se)
    return
    end
    # ���� SE ��t
    $game_system.se_play($data_system.decision_se)
    # ��������
    update_phase2_escape
    return
    end
    xrxs_bp1_make_basic_action_result
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (���C���t�F�[�Y �X�e�b�v 5 : �_���[�W�\Ž�)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_update_phase4_step5 update_phase4_step5
    def update_phase4_step5
    # �X���b�v�_���[�W
    if @active_battler.hp > 0 and @active_battler.slip_damage?
    @active_battler.slip_damage_effect
    @active_battler.damage_pop = true
    end
    xrxs_bp1_update_phase4_step5
    end
    #--------------------------------------------------------------------------
    # �� �t���[���X�V (���C���t�F�[�Y �X�e�b�v 6 : ���t���b�V��)
    #--------------------------------------------------------------------------
    alias xrxs_bp1_update_phase4_step6 update_phase4_step6
    def update_phase4_step6
    # CP��ŽZ���ĊJ����
    @cp_thread.stop = false
    # �w���v�E�B���h�E��B��
    @help_window.visible = false
    xrxs_bp1_update_phase4_step6
    end
    end
    # ������ XRXS_BP 7. �o�g���X�e�[�^�X�E�N���A�f�U�C�� ver.1.02 ������
    # by ��� �ݓy, TOMY

    #========================================================= =====================
    # �� Window_BattleStatus
    #========================================================= =====================
    class Window_BattleStatus < Window_Base
    #--------------------------------------------------------------------------

  3. #3
    Bi7hazard ☣ Runner ☠ L'avatar di Seph|ŽotH
    Registrato il
    09-03
    Localitā
    Northern Cave
    Messaggi
    30.585
    # �� ��J�C���X�^���X����
    #--------------------------------------------------------------------------
    attr_accessor :update_cp_only # CP���[�^�[�݂̂��X�V
    #--------------------------------------------------------------------------
    # �� �I�u�W�F�N�g����
    #--------------------------------------------------------------------------
    alias xrxs_bp7_initialize initialize
    def initialize
    xrxs_bp7_initialize
    # ��Full-View�������͉����s�� # ������Ă��������B
    #self.opacity = 0
    #self.back_opacity = 0
    end
    #--------------------------------------------------------------------------
    # �� ���t���b�V��
    #--------------------------------------------------------------------------
    alias xrxs_bp7_refresh refresh
    def refresh
    if @update_cp_only
    xrxs_bp7_refresh
    return
    end
    # �Žʂ��Ž~���Ȃ���߂�
    @draw_ban = true
    xrxs_bp7_refresh
    # �Žʂ̋�Ž~�����
    @draw_ban = false
    # �Žʂ�JŽn
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
    actor = $game_party.actors[i]
    actor_x = i * 160 + 21
    # ���s�L�����O���t�B�b�N�̕Ž�
    draw_actor_graphic(actor, actor_x - 9, 116)
    # HP/SP���[�^�[�̕Ž�
    draw_actor_hp_meter_line(actor, actor_x, 72, 96, 12)
    draw_actor_sp_meter_line(actor, actor_x, 104, 96, 12)
    # HP���l�̕Ž�
    self.contents.font.size = 24 # HP/SP���l�̕�Ž��̑傫��
    self.contents.font.color = actor.hp == 0 ? knockout_color :
    actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
    draw_shadow_text(actor_x-2, 58, 96, 24, actor.hp.to_s, 2)
    # SP���l�̕Ž�
    self.contents.font.color = actor.sp == 0 ? knockout_color :
    actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
    draw_shadow_text(actor_x-2, 90, 96, 24, actor.sp.to_s, 2)
    # �p���uHP�v�Ɨp���uSP�v�̕Ž�
    self.contents.font.size = 12 # �p���uHP/SP�v�̕�Ž��̑傫��
    self.contents.font.color = system_color # �p���uHP/SP�v�̕�Ž����F
    draw_shadow_text(actor_x, 60, 96, 12, $data_system.words.hp)
    draw_shadow_text(actor_x, 92, 96, 12, $data_system.words.sp)

    draw_actor_state(actor, actor_x, 100)
    end
    end
    end
    #========================================================= =====================
    # �� Window_Base
    #========================================================= =====================
    class Window_Base < Window
    #--------------------------------------------------------------------------
    # �� HP���[�^�[ �̕��
    #--------------------------------------------------------------------------
    def draw_actor_hp_meter_line(actor, x, y, width = 156, height = 4)
    w = width * actor.hp / actor.maxhp
    hp_color_1 = Color.new(255, 0, 0, 192)
    hp_color_2 = Color.new(255, 255, 0, 192)
    self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
    x -= 1
    y += (height/4).floor
    self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
    x -= 1
    y += (height/4).ceil
    self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
    x -= 1
    y += (height/4).ceil
    self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
    end
    #--------------------------------------------------------------------------
    # �� SP���[�^�[ �̕��
    #--------------------------------------------------------------------------
    def draw_actor_sp_meter_line(actor, x, y, width = 156, height = 4)
    w = width * actor.sp / actor.maxsp
    hp_color_1 = Color.new( 0, 0, 255, 192)
    hp_color_2 = Color.new( 0, 255, 255, 192)
    self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
    x -= 1
    y += (height/4).floor
    self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
    x -= 1
    y += (height/4).ceil
    self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
    x -= 1
    y += (height/4).ceil
    self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
    draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
    end
    #--------------------------------------------------------------------------
    # �� ���O�̕��
    #--------------------------------------------------------------------------
    alias xrxs_bp7_draw_actor_name draw_actor_name
    def draw_actor_name(actor, x, y)
    xrxs_bp7_draw_actor_name(actor, x, y) if @draw_ban != true
    end
    #--------------------------------------------------------------------------
    # �� �X�e�[�g�̕��
    #--------------------------------------------------------------------------
    alias xrxs_bp7_draw_actor_state draw_actor_state
    def draw_actor_state(actor, x, y, width = 120)
    xrxs_bp7_draw_actor_state(actor, x, y, width) if @draw_ban != true
    end
    #--------------------------------------------------------------------------
    # �� HP �̕��
    #--------------------------------------------------------------------------
    alias xrxs_bp7_draw_actor_hp draw_actor_hp
    def draw_actor_hp(actor, x, y, width = 144)
    xrxs_bp7_draw_actor_hp(actor, x, y, width) if @draw_ban != true
    end
    #--------------------------------------------------------------------------
    # �� SP �̕��
    #--------------------------------------------------------------------------
    alias xrxs_bp7_draw_actor_sp draw_actor_sp
    def draw_actor_sp(actor, x, y, width = 144)
    xrxs_bp7_draw_actor_sp(actor, x, y, width) if @draw_ban != true
    end
    end
    #========================================================= =====================
    # �ž �O�����C�u����
    #========================================================= =====================
    class Window_Base
    #--------------------------------------------------------------------------
    # �� ���C����� by ��� �ݓy
    #--------------------------------------------------------------------------
    def draw_line(start_x, start_y, end_x, end_y, start_color, width = 1, end_color = start_color)
    # �Žʋ����̌vŽZ�B�傫�߂ɒ��pŽž�̒����B
    distance = (start_x - end_x).abs + (start_y - end_y).abs
    # �ŽʊJŽn
    if end_color == start_color
    for i in 1..distance
    x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i
    y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i
    self.contents.fill_rect(x, y, width, width, start_color)
    end
    else
    for i in 1..distance
    x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i
    y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i
    r = start_color.red * (distance-i)/distance + end_color.red * i/distance
    g = start_color.green * (distance-i)/distance + end_color.green * i/distance
    b = start_color.blue * (distance-i)/distance + end_color.blue * i/distance
    a = start_color.alpha * (distance-i)/distance + end_color.alpha * i/distance
    self.contents.fill_rect(x, y, width, width, Color.new(r, g, b, a))
    end
    end
    end

    #--------------------------------------------------------------------------
    # �� �e��Ž���� by TOMY
    #--------------------------------------------------------------------------
    def draw_shadow_text(x, y, width, height, string, align = 0)
    # �����F��ۑ����Ă���
    color = self.contents.font.color.dup
    # ��Ž��ʼne���
    self.contents.font.color = Color.new(0, 0, 0)
    self.contents.draw_text(x + 2, y + 2, width, height, string, align)
    # �����F�ɖ߂��ĕ��
    self.contents.font.color = color
    self.contents.draw_text(x, y, width, height, string, align)
    end
    end


    Fine ._. ecco dovete copiarlo tutto. Dannati Smyle! quelli nn dovete copiarli XD in questo caso le faccine sono " ; ) " -> attaccato

    in caso di problemi cmq lo anche fatto su 1 documento che potete scaricare Qui

    Buona Fortuna io ho gia provato e funziona eprfettamente
    Ultima modifica di Seph|ŽotH; 12-02-2005 alle 23:48:42

  4. #4
    Utente
    Registrato il
    04-03
    Messaggi
    7.132
    be', forse era meglio linkare il file di testo

  5. #5
    Bi7hazard ☣ Runner ☠ L'avatar di Seph|ŽotH
    Registrato il
    09-03
    Localitā
    Northern Cave
    Messaggi
    30.585
    eh va beh ormai ho fatto

  6. #6
    Who's Alone Now?! L'avatar di ike.nus
    Registrato il
    10-02
    Localitā
    Saronno
    Messaggi
    6.495
    O_o se mi spieghi cosa fa, potrei anche usarlo..


  7. #7
    Il Pirata L'avatar di Sanji89
    Registrato il
    08-04
    Localitā
    Roma
    Messaggi
    2.886
    provato. cmq nn č ke cambi moltissimo. perō č pių bello di quello standard.

  8. #8
    MGS Philosopher L'avatar di Skaven
    Registrato il
    04-03
    Messaggi
    5.527
    Carino! qualcuno sa dove trovare un buon BS laterale scritto in ruby??

  9. #9
    Il Pirata L'avatar di Sanji89
    Registrato il
    08-04
    Localitā
    Roma
    Messaggi
    2.886
    a me ne servirebbe uno alternativo per rpg maker 2000... ho fatto anke un 3d. ma nn risponde nessuno. ma il sistema per crearlo č lo stesso come questo per l'xp?

  10. #10
    MGS Philosopher L'avatar di Skaven
    Registrato il
    04-03
    Messaggi
    5.527
    Citazione Sanji89
    a me ne servirebbe uno alternativo per rpg maker 2000... ho fatto anke un 3d. ma nn risponde nessuno. ma il sistema per crearlo č lo stesso come questo per l'xp?
    assolutamente no: RpG maker 2000 non sfrutta il ruby,quini non puoi programmare un sistema di combattimento..al massimo puoi crearlo con una serie di eventi a altre infinite cose che non sto neanche a spiegarti.cmq in internet trovi molte guide a riguardo.

  11. #11
    Il Pirata L'avatar di Sanji89
    Registrato il
    08-04
    Localitā
    Roma
    Messaggi
    2.886
    Citazione Skaven
    assolutamente no: RpG maker 2000 non sfrutta il ruby,quini non puoi programmare un sistema di combattimento..al massimo puoi crearlo con una serie di eventi a altre infinite cose che non sto neanche a spiegarti.cmq in internet trovi molte guide a riguardo.
    ma io ho visto persone ke sono in grado di farlo...

  12. #12
    Bi7hazard ☣ Runner ☠ L'avatar di Seph|ŽotH
    Registrato il
    09-03
    Localitā
    Northern Cave
    Messaggi
    30.585
    Citazione Skaven
    Carino! qualcuno sa dove trovare un buon BS laterale scritto in ruby??
    eh non e facile da trovare bisognerebbe scriverlo da 0 in rubby

  13. #13
    MGS Philosopher L'avatar di Skaven
    Registrato il
    04-03
    Messaggi
    5.527
    Citazione Sanji89
    ma io ho visto persone ke sono in grado di farlo...
    e io cosa ho appena detto?
    Allora:in rpg maker 2000 vi č l'assenza di uno script editor,qundi non puoi programmare nulla, puoi solo "creare" mediante l'utilizzo di eventi,condizioni SE, eventi comuni,switch e variabili. in rpg maker XP č introdotto un piccolo linguaggio di programmazione che č il ruby. con esso, chi č in grado,puō modificarlo tutto: dai combattimenti,ai menu...capito?lo so che anche con rpg maker 2000 puoi mettere un BS laterale,ma non mediante script.

Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •