Ergebnis 1 bis 19 von 19

Thema: Attacker / Target Animation gleichzeitig anzeigen?

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #14
    XP
    (Auch wenn es nun nicht funktioniert übrigens vielen Dank für den Aufwand den du dir machst ^^)

    EDIT: Für den Fall, dass es auch daran liegen könnte hier das Sideview Skript, welches ich direkt über Main nutze:
    Code:
    #==============================================================================
    #++?????????(?????????)ver. 1.14++
    #Script by ???
    #http://rpg.para.s3p.net/
    #------------------------------------------------------------------------------
    # ????????????????????????
    #==============================================================================
    
    module SDVA
    
    X_LINE = 500 # ????????????
    Y_LINE = 200 # ????????????
    X_SPACE = 15 # ?????????????
    Y_SPACE = 40 # ?????????????
    X_POSITION = 25 # ??[????????]????
    Y_POSITION = 0 # ??[????????]????
    
    ATTACK_MOVE = true # ???????????( true / false )
    SKILL_MOVE = true # ??????????????( true / false )
    ITEM_MOVE = false # ???????????????( true / false )
    MOVE_STEP = 1 # ????
    MOVE_PIXEL = 10 # ???????????
    
    PARTY_POS = 1 # ?????????( 0:? / 1:? / 2:? / 3:? )
    
    WINDOWPOS_CHANGE = true # ??????????????????????( true / false )
    
    end
    
    #==============================================================================
    # ? Game_Actor
    #==============================================================================
    
    class Game_Actor < Game_Battler
    #--------------------------------------------------------------------------
    # ? ????? X ?????
    #--------------------------------------------------------------------------
    def screen_x
    if self.index != nil
    # ?????
    pos = $data_classes[self.class_id].position
    x_pos = pos * SDVA::X_POSITION
    scr_x = self.index * SDVA::X_SPACE + SDVA::X_LINE + x_pos
    # ??????????
    if self.current_action.move_action == true
    # ????
    scr_x += @shift_x
    end
    return scr_x
    else
    return 0
    end
    end
    #--------------------------------------------------------------------------
    # ? ????? Y ?????
    #--------------------------------------------------------------------------
    def screen_y
    if self.index != nil
    # ?????
    pos = $data_classes[self.class_id].position
    y_pos = pos * SDVA::Y_POSITION
    scr_y = self.index * SDVA::Y_SPACE + SDVA::Y_LINE + y_pos
    # ??????????
    if self.current_action.move_action == true
    # ????
    scr_y += @shift_y
    end
    return scr_y
    else
    return 0
    end
    end
    #--------------------------------------------------------------------------
    # ? ????? Z ?????
    #--------------------------------------------------------------------------
    def screen_z
    if self.index != nil
    return self.index
    else
    return 0
    end
    end
    end
    
    #==============================================================================
    # ? Game_Battler (???? 1)
    #==============================================================================
    
    class Game_Battler
    #--------------------------------------------------------------------------
    # ? ??????????
    #--------------------------------------------------------------------------
    attr_reader :pattern # ??????
    attr_reader :trans_x # X???????
    attr_reader :moving # ??????
    #--------------------------------------------------------------------------
    # ? ?????????
    #--------------------------------------------------------------------------
    alias initialize_sdva initialize
    def initialize
    initialize_sdva
    move_reset
    end
    #--------------------------------------------------------------------------
    # ? ??????
    #--------------------------------------------------------------------------
    def move
    @moving = 1
    if @step < SDVA::MOVE_STEP
    # ??????????
    @pattern = (@pattern + 1) % 4
    @step += 1
    move_step
    else
    # ????
    @pattern = 1
    @moving = 2
    end
    end
    #--------------------------------------------------------------------------
    # ? ????
    #--------------------------------------------------------------------------
    def move_step
    # ???????????????????
    case SDVA::PARTY_POS
    when 0
    @shift_y = @step * SDVA::MOVE_PIXEL
    when 1
    @shift_x = -(@step * SDVA::MOVE_PIXEL)
    when 2
    @shift_x = @step * SDVA::MOVE_PIXEL
    when 3
    @shift_y = -(@step * SDVA::MOVE_PIXEL)
    end
    end
    #--------------------------------------------------------------------------
    # ? ???????
    #--------------------------------------------------------------------------
    def move_reset
    @moving = 0
    @pattern = 0
    @step = 0
    @shift_x = 0
    @shift_y = 0
    end
    end
    
    #==============================================================================
    # ? Game_BattleAction
    #==============================================================================
    
    class Game_BattleAction
    #--------------------------------------------------------------------------
    # ? ??????????
    #--------------------------------------------------------------------------
    attr_accessor :move_action # ??????????
    #--------------------------------------------------------------------------
    # ? ???
    #--------------------------------------------------------------------------
    alias clear_sdva clear
    def clear
    clear_sdva
    @move_action = false
    end
    end
    
    #==============================================================================
    # ? Sprite_Battler
    #==============================================================================
    
    class Sprite_Battler < RPG::Sprite
    #--------------------------------------------------------------------------
    # ? ??????
    #--------------------------------------------------------------------------
    alias update_sdva update
    def update
    # ????????????????
    if @battler.is_a?(Game_Actor)
    # ????????????????????
    # ??????
    if @battler.battler_name != @battler_name or
    @battler.battler_hue != @battler_hue or
    @battler.current_action.basic == 0 or
    @battler.current_action.kind != 3
    # ????????????
    @character_name = @battler.character_name
    @character_hue = @battler.character_hue
    # ???????????
    self.bitmap = RPG::Cache.character(@character_name, @character_hue)
    cw = self.bitmap.width / 4
    ch = self.bitmap.height / 4
    @width = cw
    @height = ch
    if @battler.current_action.move_action == true
    # ????
    @battler.move
    else
    @battler.move_reset
    end
    # ?????????
    sx = @battler.pattern * cw
    sy = SDVA::PARTY_POS * ch
    self.src_rect.set(sx, sy, cw, ch)
    self.ox = @width / 2
    self.oy = @height
    # ??????????? 0 ???
    if @battler.hidden
    self.opacity = 0
    end
    end
    end
    update_sdva
    end
    end
    
    #==============================================================================
    # ? Scene_Battle
    #==============================================================================
    
    class Scene_Battle
    #--------------------------------------------------------------------------
    # ? ????????????????????
    #--------------------------------------------------------------------------
    alias phase3_setup_command_window_sdva phase3_setup_command_window
    def phase3_setup_command_window
    phase3_setup_command_window_sdva
    if SDVA::WINDOWPOS_CHANGE
    # ???????????????????
    case SDVA::PARTY_POS
    when 0
    x_pos = @active_battler.screen_x - (@actor_command_window.width/2)
    y_pos = @active_battler.screen_y
    when 1
    x_pos = @active_battler.screen_x - @actor_command_window.width - 16
    y_pos = @active_battler.screen_y - @actor_command_window.height
    when 2
    x_pos = @active_battler.screen_x + 16
    y_pos = @active_battler.screen_y - @actor_command_window.height
    when 3
    x_pos = @active_battler.screen_x - (@actor_command_window.width/2)
    y_pos = @active_battler.screen_y - @actor_command_window.height - 48
    end
    @actor_command_window.x = x_pos >= 0 ? x_pos : 0
    @actor_command_window.x = x_pos+@actor_command_window.width <= 640 ? x_pos : 640-@actor_command_window.width
    @actor_command_window.y = y_pos >= 0 ? y_pos : 0
    @actor_command_window.y = y_pos+@actor_command_window.height <= 480 ? y_pos : 480-@actor_command_window.height
    # ??????????????????
    @actor_command_window.z = 9999
    end
    end
    #--------------------------------------------------------------------------
    # ? ?????? (??????? ???? 3 : ??????????)
    #--------------------------------------------------------------------------
    alias update_phase4_step3_sdva update_phase4_step3
    def update_phase4_step3
    if SDVA::ATTACK_MOVE
    if @active_battler.current_action.basic == 0
    @active_battler.current_action.move_action = true
    end
    end
    if SDVA::SKILL_MOVE
    if @active_battler.current_action.kind == 1
    @active_battler.current_action.move_action = true
    end
    end
    if SDVA::ITEM_MOVE
    if @active_battler.current_action.kind == 2
    @active_battler.current_action.move_action = true
    end
    end
    # ??????????????????????
    if @active_battler.is_a?(Game_Actor) and
    @active_battler.current_action.move_action
    # ?????
    if @active_battler.moving == 2
    update_phase4_step3_sdva
    end
    elsif @active_battler.moving == 0
    update_phase4_step3_sdva
    end
    end
    #--------------------------------------------------------------------------
    # ? ?????? (??????? ???? 6 : ??????)
    #--------------------------------------------------------------------------
    alias update_phase4_step6_sdva update_phase4_step6
    def update_phase4_step6
    @active_battler.current_action.move_action = false
    @active_battler.move_reset
    update_phase4_step6_sdva
    end
    end
    
    #==============================================================================
    # ? Spriteset_Battle
    #==============================================================================
    
    class Spriteset_Battle
    #--------------------------------------------------------------------------
    # ? ?????????
    #--------------------------------------------------------------------------
    alias initialize_sdva initialize
    def initialize
    initialize_sdva
    @viewport2.z = 1
    end
    end
    
    #==============================================================================
    # ? Arrow_Actor
    #==============================================================================
    
    class Arrow_Actor < Arrow_Base
    #--------------------------------------------------------------------------
    # ? ??????
    #--------------------------------------------------------------------------
    alias update_sdva update
    def update
    update_sdva
    # ?????
    if Input.repeat?(Input::DOWN)
    $game_system.se_play($data_system.cursor_se)
    @index += 1
    @index %= $game_party.actors.size
    end
    # ?????
    if Input.repeat?(Input::UP)
    $game_system.se_play($data_system.cursor_se)
    @index += $game_party.actors.size - 1
    @index %= $game_party.actors.size
    end
    end
    end
    
    #==============================================================================
    # ? Arrow_Enemy
    #==============================================================================
    
    class Arrow_Enemy < Arrow_Base
    #--------------------------------------------------------------------------
    # ? ??????
    #--------------------------------------------------------------------------
    alias update_sdva update
    def update
    update_sdva
    # ?????
    if Input.repeat?(Input::DOWN)
    $game_system.se_play($data_system.cursor_se)
    $game_troop.enemies.size.times do
    @index += 1
    @index %= $game_troop.enemies.size
    break if self.enemy.exist?
    end
    end
    # ?????
    if Input.repeat?(Input::UP)
    $game_system.se_play($data_system.cursor_se)
    $game_troop.enemies.size.times do
    @index += $game_troop.enemies.size - 1
    @index %= $game_troop.enemies.size
    break if self.enemy.exist?
    end
    end
    end
    end
    @sorata08: Zur genaueren Darstellung des Problemes wie oben beschrieben findest du hier ein Video,
    in welchem ich die oben ge-posteten Konfigurationen mit 200 Frames durchlaufen lasse.
    Ich denke da wird das Problem schnell klar.

    Geändert von Jerome Denis Andre (16.11.2011 um 12:37 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •