Ergebnis 1 bis 11 von 11

Thema: [XP] \\Ruby\\ Problem mit Script

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zitat Zitat von Skorp Beitrag anzeigen
    Ich habe mir jetzt eine HP- Anzeige (bzw. ein AKS) ins Spiel eingebaut, nur hab ich jetzt imme rdie HP- Anzeige im Spiel (auch im Intro, etc.). Soll heißen, das Script wird das ganze Spiel über verwendet. Wie kann ich das jetzt machen, dass ich diese Anzeige auf Kommando einschalten kann?
    Ich habs mit dem Befehl "class_" versucht (z.B. class_Scene_Anzeige), aber ich denke der ist falsch^^ (hab auch ein end am ende gesetzt, aber bei beidem zeigt er einen Syntax- Error an). Kann mir wer helfen?
    1. Wie hast du die HP-Anzeige eingebaut? Parallel-Event oder Ruby? Wenn Parallel-Event, dann bist du mit class_Scene_Anzeige tatsaechlich total falsch. Wenn Ruby, dann ist es nicht total falsch.

    2. Hast du den Code fuer die Anzeige selbstgeschrieben (ich glaub ja nicht), oder einfach nur copiert? Wenn copiert: Wohin?

  2. #2
    Selbstverständlich ist es in Ruby geschrieben. Ich hab jetzt aber ne Theorie wie ich die HP Anzeige abstellen könnte. Hier erstmal der Code:
    PHP-Code:
    #==============================================================================
    # ** HUD
    #------------------------------------------------------------------------------
    # Mr.Mo "Muhammet Sivri"
    # Version 1
    # 10.01.06
    # Credit Prexus for the Hud back ground.
    #==============================================================================
    #-------------------------------------------------------------------------------
    # Begin SDK Enabled Check
    #-------------------------------------------------------------------------------
    if SDK.state("Mr.Mo's ABS")
    #--------------------------------------------------------------------------
    # * Constants - MAKE YOUR EDITS HERE
    #--------------------------------------------------------------------------
    HP_X 77            # X POS of the HP Bar
    HP_Y 3              # Y POS of the HP Bar
    HP_WIDTH 55         # WIDTH of the HP Bar
    HP_HEIGHT 40        # Height of the HP Bar
    #--------------------------------------------------------------------------
    SP_X 54             # X POS of the SP Bar
    SP_Y 22             # Y POS of the SP Bar
    SP_WIDTH 55         # WIDTH of the SP Bar
    SP_HEIGHT 5         # Height of the SP Bar
    #--------------------------------------------------------------------------
    EXP_X 55            # X POS of the EXP Bar
    EXP_Y 42            # Y POS of the EXP Bar
    EXP_WIDTH 60        # WIDTH of the EXP Bar
    EXP_HEIGHT 5        # Height of the EXP Bar
    #--------------------------------------------------------------------------
    STATES_SHOW true    # Show states?
    STATES_X 170        # States X display
    STATES_Y 430        # States Y display
    #--------------------------------------------------------------------------
    SHOW_DASH true      # Show dash bar?
    DASH_X 490          # X POS of the DASH Bar
    DASH_Y 430          # Y POS of the DASH Bar
    DASH_WIDTH 120      # WIDTH of the DASH Bar
    DASH_HEIGHT 10      # Height of the DASH Bar
    DASH_BAR "018-Simple03" # The file used for gradient
    #--------------------------------------------------------------------------
    SHOW_SNEAK true      # Show SNEAK bar?
    SNEAK_X 490          # X POS of the SNEAK Bar
    SNEAK_Y 455          # Y POS of the SNEAK Bar
    SNEAK_WIDTH 120      # WIDTH of the SNEAK Bar
    SNEAK_HEIGHT 10      # Height of the SNEAK Bar
    SNEAK_BAR "019-Simple04" # The file used for gradient
    #--------------------------------------------------------------------------
    LOW_HP 150          # What HP should the low HP icon be shown?
    #--------------------------------------------------------------------------
    HP_ITEMID 1         # POTION ITEM ID
    SP_ITEMID 4         # SP Increase Item ID
    #--------------------------------------------------------------------------
    CAN_TOGGLE true
    TOGGLE_KEY 
    Input::Letters["E"]
    #--------------------------------------------------------------------------
    class Window_MrMo_HUD Window_Base
      
    #--------------------------------------------------------------------------
      # * Object Initialization
      #--------------------------------------------------------------------------
      
    def initialize
        super
    (-16, -16700700)
        
    #Record Old Data
        
    @actor $game_party.actors[0]
        @
    old_hp = @actor.hp
        
    @old_sp = @actor.sp
        
    @old_exp = @actor.exp
        
    @level = @actor.level
        
    @hp_n $game_party.item_number(HP_ITEMID)
        @
    sp_n $game_party.item_number(SP_ITEMID)
        @
    gold_n $game_party.gold
        
    @states = @actor.states.to_s
        
    @dash $ABS.dash_min
        
    @sneak $ABS.sneak_min
        
    #Create Bitmap
        
    self.contents Bitmap.new(width 32height 32)
        
    #Hide Window
        
    self.opacity 0
        
    #Refresh
        
    refresh
      end
      
    #--------------------------------------------------------------------------
      # * Refresh
      #--------------------------------------------------------------------------
      
    def refresh
        self
    .contents.clear
        self
    .contents.font.color system_color
        self
    .contents.font.color normal_color
        self
    .contents.font.size 12
        
    #Record new data
        
    @actor $game_party.actors[0]
        @
    old_hp = @actor.hp
        
    @old_sp = @actor.sp
        
    @old_exp = @actor.exp
        
    @level = @actor.level
        
    @hp_n $game_party.item_number(HP_ITEMID)
        @
    sp_n $game_party.item_number(SP_ITEMID)
        @
    gold_n $game_party.gold
        
    @states = @actor.states.to_s
        
    @dash $ABS.dash_min
        
    @sneak $ABS.sneak_min
        
    #Show the Pictures
        
    bitmap RPG::Cache.picture("HUD Graphic")
        
    self.contents.blt(00bitmapRect.new(010175175))
        
    bitmap RPG::Cache.picture("HUD Display")
        
    self.contents.blt(15380bitmapRect.new(00175175))
        
    #Show the HP Symbol
        
    bitmap RPG::Cache.icon("HP Symbol")
        
    self.contents.blt(0, -2bitmapRect.new(002424))
        
    self.contents.draw_text(35, -964032"HP")
        
    #Draw the HP BAR
        
    draw_gradient_bar(HP_XHP_Y, @actor.hp, @actor.maxhpHP_BARHP_WIDTHHP_HEIGHT)
        
    #Show the SP Symbol
        
    bitmap RPG::Cache.icon("SP Symbol")
        
    self.contents.blt(018bitmapRect.new(002424))
        
    self.contents.draw_text(351164032"SP")
        
    #Draw the SP Bar
        
    draw_gradient_bar(SP_XSP_Y, @actor.sp, @actor.maxspSP_BARSP_WIDTHSP_HEIGHT)
        
    #Show the EXP Symbol
        
    bitmap RPG::Cache.icon("EXP Symbol")
        
    self.contents.blt(037bitmapRect.new(002424))
        
    self.contents.draw_text(353064032"EXP")
        
    #Draw the EXP Bar
        
    min = @actor.level == 99 : @actor.now_exp
        max 
    = @actor.level == 99 : @actor.next_exp
        draw_gradient_bar
    (EXP_XEXP_YminmaxEXP_BAREXP_WIDTHEXP_HEIGHT)
        
    #Show Hero Icon
        
    bitmap RPG::Cache.icon("Hero")
        
    self.contents.blt(259bitmapRect.new(002424))
        
    self.contents.draw_text(354964032"Hero:")
        
    self.contents.draw_text(305964032, @actor.name.to_s)
        
    #Show Level Icon
        
    bitmap RPG::Cache.icon("Level")
        
    self.contents.blt(281bitmapRect.new(002424))
        
    self.contents.draw_text(337264032"Level:")
        
    self.contents.draw_text(438264032, @actor.level.to_s)
        
    #Show Gold Icon
        
    bitmap RPG::Cache.icon("Gold")
        
    self.contents.blt(35390bitmapRect.new(002424))
        
    self.contents.draw_text(3040064032$game_party.gold.to_s)
        
    self.contents.draw_text(8543040032$ats.clock.to_s) if SDK.state("ATS")
        
    #If the HP is too low
        
    if @actor.hp.to_i <= LOW_HP
          bitmap 
    RPG::Cache.icon("Skull")
          
    self.contents.blt(1300bitmapRect.new(002424))
        
    end
        
    #If the SP Item is more then 0
        
    if $game_party.item_number(SP_ITEMID) > 0
          bitmap 
    RPG::Cache.icon("SP Potion")
          
    self.contents.blt(11020bitmapRect.new(002424))
        
    end
        
    #if the HP Item is more then 0
        
    if $game_party.item_number(HP_ITEMID) > 0
          bitmap 
    RPG::Cache.icon("HP Potion")
          
    self.contents.blt(1100bitmapRect.new(002424))
        
    end
        
    return if !STATES_SHOW
        
    #Draw States
        
    0
        
    for id in @actor.states
          state 
    $data_states[id]
          
    next if state == nil
          bitmap 
    RPG::Cache.icon(state.name+"_Icon")
          
    = (n*32) + STATES_X
          self
    .contents.blt(xSTATES_YbitmapRect.new(002424))
          
    += 1
        end
        
    #Change font size
        
    self.contents.font.size 20
        
    #Dash Bar
        
    self.contents.draw_text(DASH_X 40DASH_Y-104032"Dash: ") if SHOW_DASH
        draw_gradient_bar
    (DASH_XDASH_Y$ABS.dash_min$ABS.dash_maxDASH_BARDASH_WIDTHDASH_HEIGHT) if SHOW_DASH
        
    #SNEAK Bar
        
    self.contents.draw_text(SNEAK_X 40SNEAK_Y-104032"Sneak: ") if SHOW_SNEAK
        draw_gradient_bar
    (SNEAK_XSNEAK_Y$ABS.sneak_min$ABS.sneak_maxSNEAK_BARSNEAK_WIDTHSNEAK_HEIGHT) if SHOW_SNEAK
      end
      
    #--------------------------------------------------------------------------
      # * Update
      #--------------------------------------------------------------------------
      
    def update
        refresh 
    if something_changed?
      
    end
      
    #--------------------------------------------------------------------------
      # * Something Changed?
      #--------------------------------------------------------------------------
      
    def something_changed?
        return 
    false if Graphics.frame_count 30 != 0
        
    return true if @actor != $game_party.actors[0]
        return 
    true if @old_hp != @actor.hp or @old_sp != @actor.sp or @old_exp != @actor.exp
        
    return true if @level != @actor.level
        
    return true if @hp_n != $game_party.item_number(HP_ITEMID) or @sp_n != $game_party.item_number(SP_ITEMID)
        return 
    true if @gold_n != $game_party.gold
        
    return true if @states.to_s != @actor.states.to_s
        
    return true if @dash != $ABS.dash_min or @sneak != $ABS.sneak_min
        
    return false
      end
      
    #--------------------------------------------------------------------------
      # * TOGGLE KEY
      #--------------------------------------------------------------------------
      
    def TOGGLE_KEY
        
    return TOGGLE_KEY
      end
      
    #--------------------------------------------------------------------------
      # * CAN TOGGLE
      #--------------------------------------------------------------------------
      
    def CAN_TOGGLE
        
    return CAN_TOGGLE
      end
    end
    #==============================================================================
    # * Scene_Map
    #==============================================================================
    class Scene_Map
      
    #--------------------------------------------------------------------------
      
    alias mrmo_hud_main_draw main_draw
      alias mrmo_hud_main_dispose main_dispose
      alias mrmo_hud_update_graphics update_graphics
      
    #--------------------------------------------------------------------------
      # * Main Draw
      #--------------------------------------------------------------------------
      
    def main_draw
        
    @mrmo_hud Window_MrMo_HUD.new
        
    mrmo_hud_main_draw
      end
      
    #--------------------------------------------------------------------------
      # * Main Dispose
      #--------------------------------------------------------------------------
      
    def main_dispose
        
    @mrmo_hud.dispose
        mrmo_hud_main_dispose
      end
      
    #--------------------------------------------------------------------------
      # * Update Graphics
      #--------------------------------------------------------------------------
      
    def update_graphics
        mrmo_hud_update_graphics
        
    @mrmo_hud.update
      end
    end
    #--------------------------------------------------------------------------
    # * Load Gradient from RPG::Cache
    #--------------------------------------------------------------------------
    module RPG
      module Cache
        def self
    .gradient(filenamehue 0)
          
    self.load_bitmap("Graphics/Gradients/"filenamehue)
        
    end
      end
    end
    class Window_Base Window
      
    #--------------------------------------------------------------------------
      # * Constants Bar Types and Hues for parameters and parameter names
      #--------------------------------------------------------------------------
      
    HP_BAR "014-Reds01"
      
    SP_BAR "013-Blues01"
      
    EXP_BAR "015-Greens01"
      
    ATK_BAR "020-Metallic01"
      
    PDEF_BAR "020-Metallic01"
      
    MDEF_BAR "020-Metallic01"
      
    STR_BAR "020-Metallic01"
      
    DEX_BAR "020-Metallic01"
      
    AGI_BAR "020-Metallic01"
      
    INT_BAR "020-Metallic01"
      
    HUES = [150,180,60,30,270,350,320]
      
    STATS = ["atk","pdef","mdef","str","dex","agi","int"]
      
    # leave this alone if you don't know what you are doing
      
    OUTLINE 1
      BORDER 
    1
      
    #--------------------------------------------------------------------------
      # * Draw Gradient Bar 
      #--------------------------------------------------------------------------
      
    def draw_gradient_bar(xyminmaxfilewidth nilheight nilhue 0back "Back"back2 "Back2")
        
    bar RPG::Cache.gradient(filehue)
        
    back RPG::Cache.gradient(back)
        
    back2 RPG::Cache.gradient(back2)
        
    cx BORDER
        cy 
    BORDER
        dx 
    OUTLINE
        dy 
    OUTLINE
        zoom_x 
    width != nil width back.width
        zoom_y 
    height != nil height back.height
        percent 
    min max.to_f if max != 0
        percent 
    if max == 0
        back_dest_rect 
    Rect.new(x,y,zoom_x,zoom_y)
        
    back2_dest_rect Rect.new(x+dx,y+dy,zoom_x -dx*2,zoom_y-dy*2)
        
    bar_dest_rect Rect.new(x+cx,y+cy,zoom_x percent-cx*2,zoom_y-cy*2)
        
    back_source_rect Rect.new(0,0,back.width,back.height)
        
    back2_source_rect Rect.new(0,0,back2.width,back2.height)
        
    bar_source_rect Rect.new(0,0,bar.widthpercent,bar.height)
        
    self.contents.stretch_blt(back_dest_rectbackback_source_rect)
        
    self.contents.stretch_blt(back2_dest_rectback2back2_source_rect)
        
    self.contents.stretch_blt(bar_dest_rectbarbar_source_rect)
      
    end  
      
      def draw_vertical_gradient_bar
    (xyminmaxfilewidth nilheight nilhue 0back "Back"back2 "Back2")
        
    bar RPG::Cache.gradient(filehue)
        
    back RPG::Cache.gradient(back)
        
    back2 RPG::Cache.gradient(back2)
        
    cx BORDER
        cy 
    BORDER
        dx 
    OUTLINE
        dy 
    OUTLINE
        zoom_x 
    width != nil width back.width
        zoom_y 
    height != nil height back.height
        percent 
    min max.to_f if max != 0
        percent 
    if max == 0
        bar_y 
    = (zoom_y zoom_y percent).ceil
        source_y 
    bar.height bar.height percent
        back_dest_rect 
    Rect.new(x,y,zoom_x,zoom_y)
        
    back2_dest_rect Rect.new(x+dx,y+dy,zoom_x -dx*2,zoom_y-dy*2)
        
    bar_dest_rect Rect.new(x+cx,y+bar_y+cy,zoom_x-cx*2,(zoom_y percent).to_i-cy*2)
        
    back_source_rect Rect.new(0,0,back.width,back.height)
        
    back2_source_rect Rect.new(0,0,back2.width,back2.height)
        
    bar_source_rect Rect.new(0,source_y,bar.width,bar.height percent)
        
    self.contents.stretch_blt(back_dest_rectbackback_source_rect)
        
    self.contents.stretch_blt(back2_dest_rectback2back2_source_rect)
        
    self.contents.stretch_blt(bar_dest_rectbarbar_source_rect)
      
    end  
      
    #--------------------------------------------------------------------------
      # * Draw HP
      #     actor : actor
      #     x     : draw spot x-coordinate
      #     y     : draw spot y-coordinate
      #     width : draw spot width
      #--------------------------------------------------------------------------
      
    alias trick_draw_actor_hp draw_actor_hp
      def draw_actor_hp
    (actorxywidth 144)
        
    # Calculate if there is draw space for MaxHP
        
    if width 32 >= 108
          hp_x 
    width 108
          flag 
    true
        elsif width 
    32 >= 48
          hp_x 
    width 48
          flag 
    false
        end
        width 
    hp_x x
        width 
    += $game_temp.in_battle 50 100
        
    # Draw HP
        
    draw_gradient_bar(x16actor.hpactor.maxhpHP_BARwidth8)
        
    trick_draw_actor_hp(actorxywidth)
      
    end
      
    #--------------------------------------------------------------------------
      # * Draw SP
      #     actor : actor
      #     x     : draw spot x-coordinate
      #     y     : draw spot y-coordinate
      #     width : draw spot width
      #--------------------------------------------------------------------------
      
    alias trick_draw_actor_sp draw_actor_sp
      def draw_actor_sp
    (actorxywidth 144)
        
    # Calculate if there is draw space for MaxHP
        
    if width 32 >= 108
          sp_x 
    width 108
          flag 
    true
        elsif width 
    32 >= 48
          sp_x 
    width 48
          flag 
    false
        end
        width 
    sp_x x
        width 
    += $game_temp.in_battle 50 100
        
    # Draw SP
        
    draw_gradient_bar(x16actor.spactor.maxspSP_BARwidth8)
        
    trick_draw_actor_sp(actorxywidth)
      
    end
      
    #--------------------------------------------------------------------------
      # * Draw Exp
      #     actor : actor
      #     x     : draw spot x-coordinate
      #     y     : draw spot y-coordinate
      #--------------------------------------------------------------------------
      
    alias trick_bars_base_exp draw_actor_exp
      def draw_actor_exp
    (actorxy)
        
    min actor.level == 99 actor.now_exp
        max 
    actor.level == 99 actor.next_exp
        draw_gradient_bar
    (x16minmaxEXP_BAR1928)
        
    trick_bars_base_exp(actorxy)
      
    end
      
    #--------------------------------------------------------------------------
      # * Draw Parameter
      #     actor : actor
      #     x     : draw spot x-coordinate
      #     y     : draw spot y-coordinate
      #     type  : draw which parameter
      #--------------------------------------------------------------------------
      
    alias trick_bars_base_parameter draw_actor_parameter
      def draw_actor_parameter
    (actorxytype)
        
    hue HUES[type]
        
    stat = eval("actor.#{STATS[type]}")
        
    bar_type = eval("#{STATS[type].upcase}_BAR")
        
    draw_gradient_bar(x18stat999bar_type1908hue)
        
    trick_bars_base_parameter(actorxytype)
      
    end
    end

    class Game_Actor
      
    #--------------------------------------------------------------------------
      # * Get the current EXP
      #--------------------------------------------------------------------------
      
    def now_exp
        
    return @exp - @exp_list[@level]
      
    end
      
    #--------------------------------------------------------------------------
      # * Get the next level's EXP
      #--------------------------------------------------------------------------
      
    def next_exp
        exp 
    = @exp_list[@level+1] > ? @exp_list[@level+1] - @exp_list[@level] : 0
        
    return exp
      end
    end
    #==============================================================================
    # * Scene_Map
    #==============================================================================
    class Scene_Map
      
    #--------------------------------------------------------------------------
      
    alias mrmo_keyhud_update update
      
    #--------------------------------------------------------------------------
      # * Update
      #--------------------------------------------------------------------------
      
    def update
        mrmo_keyhud_update
        
    if @mrmo_hud.CAN_TOGGLE and Input.trigger?(@mrmo_hud.TOGGLE_KEY)
          return @
    mrmo_hud.visible true if !@mrmo_hud.visible
          
    return @mrmo_hud.visible false if @mrmo_hud.visible
        end
      end
    end
    #--------------------------------------------------------------------------
    # * SDK End
    #--------------------------------------------------------------------------
    end 
    Hier kann man die Leiste mit der Taste "E" an und ausschalten. Wie mache ich das aber nun, dass ich das mit nem Switch oder sowas an- und ausschalten kann?

    Und noch ne Frage:
    Ich hab ein Monsterbuch- Script gefunden (um Statuswerte der bisher getroffenen und besiegten Monster anzuzeigen). Ist toll, nur geht das dummerweise ausschließlich mit dem Standard KS. Und was mache ich nun, damit ich das auch mit meinem Action Kampfsystem hab?
    (Der Code
    PHP-Code:
    #==============================================================================

    # Advanced Monster Database

    #--------------------------------------------------------------------------

    # Created By SephirothSpawn (11.18.05)

    # Last Updated 11.19.05

    #==============================================================================


    #==============================================================================

    #  Class Scene Title

    #==============================================================================

    class Scene_Title

    #--------------------------------------------------------------------------

    #  Alias' New Game Method

    #--------------------------------------------------------------------------

    alias new_game command_new_game

    #--------------------------------------------------------------------------

    #  Adds Beastairy Game Variables

    #--------------------------------------------------------------------------

    def command_new_game

    # Sets Up Smithery List

    $game_beastairy Game_Beastairy.new

    new_game

    end

    end


    #==============================================================================

    #  Game_Temp

    #==============================================================================

    class Game_Temp

    #--------------------------------------------------------------------------

    #  Public Instance Variables

    #--------------------------------------------------------------------------

    attr_accessor beastairy_return

    #--------------------------------------------------------------------------

    #  Alias Initialization

    #--------------------------------------------------------------------------

    alias beastairy_initialize initialize

    #--------------------------------------------------------------------------

    #  Object Initialization

    #--------------------------------------------------------------------------

    def initialize

    beastairy_initialize

    @beastairy_return false

    end

    end


    #==============================================================================

    #  Class Game Beastairy

    #==============================================================================

    class Game_Beastairy

    #--------------------------------------------------------------------------

    #  Public Instance Variables

    #--------------------------------------------------------------------------

    attr_accessor monster_groups

    #------------------------------------------------------------------#==============================================================================

    # Advanced Monster Database

    #--------------------------------------------------------------------------

    #   Created By SephirothSpawn (11.18.05)

    #    Last Updated 11.19.05

    #==============================================================================


    #==============================================================================

    #  Class Scene Title

    #==============================================================================

    class Scene_Title

      
    #--------------------------------------------------------------------------

      #  Alias' New Game Method

      #--------------------------------------------------------------------------

      
    alias new_game command_new_game

      
    #--------------------------------------------------------------------------

      #  Adds Beastairy Game Variables

      #--------------------------------------------------------------------------

      
    def command_new_game

        
    # Sets Up Smithery List

        
    $game_beastairy Game_Beastairy.new

        
    new_game

      end

    end


    #==============================================================================

    #  Game_Temp

    #==============================================================================

    class Game_Temp

      
    #--------------------------------------------------------------------------

      #  Public Instance Variables

      #--------------------------------------------------------------------------

      
    attr_accessor beastairy_return

      
    #--------------------------------------------------------------------------

      #  Alias Initialization

      #--------------------------------------------------------------------------

      
    alias beastairy_initialize initialize

      
    #--------------------------------------------------------------------------

      #  Object Initialization

      #--------------------------------------------------------------------------

      
    def initialize

        beastairy_initialize

        
    @beastairy_return false

      end

    end


    #==============================================================================

    #  Class Game Beastairy

    #==============================================================================

    class Game_Beastairy

      
    #--------------------------------------------------------------------------

      #  Public Instance Variables

      #--------------------------------------------------------------------------

      
    attr_accessor monster_groups

      
    #--------------------------------------------------------------------------

      #  Object Initialization

      #--------------------------------------------------------------------------

      
    def initialize

        
    @monster_groups = []

        for 
    i in 1...$data_enemies.size

          $data_enemies
    [i].beastairy_setup

          unless 
    @monster_groups.include($data_enemies[i].group)

            @
    monster_groups.push($data_enemies[i].group)

          
    end

        end

      end

    end


    #==============================================================================

    #  Module RPG

    #==============================================================================

    module RPG

      
    #=========================================================================

      #  Class Enemy

      #=========================================================================

      
    class Enemy

        
    #--------------------------------------------------------------------------

        #  Public Instance Variables

        #--------------------------------------------------------------------------

        # Detectors

        
    attr_accessor seendefeatedgroup

        
    # Counters

        
    attr_accessor seen_timesdefeated_times

        
    #--------------------------------------------------------------------------

        #  Setup Beastairy

        #--------------------------------------------------------------------------

        
    def beastairy_setup

          
    @seen_times, @defeated_times 00

          
    @seen, @defeated falsefalse

          
    if @name.include('(')

            
    a= @name.index('('), @name.index(')')

            @
    group = @name.slice!(a..b)

            @
    group.delete!('(')

            @
    group.delete!(')')

          else

            @
    group Unclassified

          end

        end

        
    #--------------------------------------------------------------------------

        #  See Enemy

        #--------------------------------------------------------------------------

        
    def see

          
    @seen true

          
    @seen_times += 1

        end

        
    #--------------------------------------------------------------------------

        #  Defeat Enemy

        #--------------------------------------------------------------------------

        
    def defeat

          
    @defeated true

          
    @defeated_times += 1

        end

      end

    end


    #==============================================================================

    #  Scene_Save

    #==============================================================================

    class Scene_Save  Scene_File

      
    #--------------------------------------------------------------------------

      #  Alias Save Data

      #--------------------------------------------------------------------------

      
    alias new_save write_save_data

      
    #--------------------------------------------------------------------------

      #  Write Save Data

      #--------------------------------------------------------------------------

      
    def write_save_data(file)

        
    new_save(file)

        
    Marshal.dump($game_beastairyfile)

      
    end

    end


    #==============================================================================

    #  Scene_Load

    #==============================================================================

    class Scene_Load  Scene_File

      
    #--------------------------------------------------------------------------

      #  Alias Read Save Data

      #--------------------------------------------------------------------------

      
    alias new_load read_save_data

      
    #--------------------------------------------------------------------------

      #  Read Save Data

      #--------------------------------------------------------------------------

      
    def read_save_data(file)

        
    new_load(file)

        
    $game_beastairy Marshal.load(file)

      
    end

    end


    #==============================================================================

    #  Class Window Base

    #==============================================================================

    class Window_Base  Window

      
    #--------------------------------------------------------------------------

      #  Draw Enemy Sprite

      #--------------------------------------------------------------------------

      
    def draw_enemy_sprite(xyenemy_nameenemy_hueposeframe)

        
    bitmap RPGCache.character(enemy_nameenemy_hue)

        
    cw bitmap.width  4

        ch 
    bitmap.height  4

        
    # Facing Direction

        
    case pose

          when 0    
    ;0             # Down

          
    when 1    ;ch           # Left

          
    when 2    ;ch  3      # Up

          
    when 3    ;ch  2      # Right

        
    end

        
    # Current Animation Slide

        
    case frame

          when 0    
    ;0

          when 1    
    ;cw

          when 2    
    ;cw  2

          when 3    
    ;cw  3

        end

        
    # Bitmap Rectange

        
    src_rect Rect.new(bacwch)

        
    # Draws Bitmap

        
    self.contents.blt(cw  2chbitmapsrc_rect)

      
    end

    end


    #==============================================================================

    # Window Monster Group Info

    #==============================================================================

    class Window_Monster_Group_Info  Window_Base

      
    #--------------------------------------------------------------------------

      #  Object Initialization

      #--------------------------------------------------------------------------

      
    def initialize

        super
    (2000440480)

        
    self.contents Bitmap.new(width 32height 32)

        
    refresh(000)

      
    end

      
    #--------------------------------------------------------------------------

      #  Refresh

      #     index   Index of Group From Game_Beastairy.Groups

      #     pose    Enemy Character Pose

      #     frame   Frame of Pose

      #--------------------------------------------------------------------------

      
    def refresh(indexposeframe)

        
    # Clears Window

        
    contents.clear

        
    # Sets Up Group Name

        
    group_name $game_beastairy.monster_groups[index]

        
    # Sets Up Enemies In Group

        
    enemies = []

        for 
    i in 1...$data_enemies.size

          
    if $data_enemies[i].group == group_name

            enemies
    .push($data_enemies[i])

          
    end

        end

        group_name 
    = Exit if index == $game_beastairy.monster_groups.size

        
    # Draws Enemy Group Name

        
    contents.font.color system_color

        contents
    .draw_text(00self.width 3232group_name1)

        
    unless index == $game_beastairy.monster_groups.size

          
    # Offsets Graphics X Position

          
    graphics_offset contents.width  (enemies.size 1)

          
    # Draws Enemies Graphics

          
    for i in 0...enemies.size

            draw_enemy_sprite
    (graphics_offset  (1), 124enemies[i].battler_name enemies[i].battler_hue poseframe)

          
    end

          
    # HP, SP, and Gold Word

          
    hp_word $data_system.words.hp

          sp_word 
    $data_system.words.sp

          gold_word 
    $data_system.words.gold

          
    # Draws Table Headings

          
    contents.draw_text(4128width24Name)

          
    contents.draw_text(012820024Max #{hp_word}, 2)

          
    contents.draw_text(012830024Max #{sp_word}, 2)

          
    contents.draw_text(-4128contents.width24#{gold_word} Award, 2)

          # Draws Enemies Stats

          
    contents.font.color normal_color

          
    for i in 0...enemies.size

            
    # Sets Enemy Stats

            
    namehpspgold = , , , 

            
    namehpsp enemies[i].nameenemies[i].maxhpenemies[i].maxsp if enemies[i].seen

            gold 
    enemies[i].gold if enemies[i].defeated

            
    # Draws Stats

            
    contents.draw_text(4152 + (i  24), width24name)

            
    contents.draw_text(0152 + (i  24), 20024#{hp}, 2)

            
    contents.draw_text(0152 + (i  24), 30024#{sp}, 2)

            
    contents.draw_text(-4152 + (i  24), contents.width24#{gold}, 2)

          
    end

        end

      end

    end


    #==============================================================================

    # Window Monster Info

    #==============================================================================

    class Window_Monster_Info  Window_Base

      
    #--------------------------------------------------------------------------

      #  Object Initialization

      #--------------------------------------------------------------------------

      
    def initialize

        super
    (2000440480)

        
    self.contents Bitmap.new(width 32height 32)

      
    end

      
    #--------------------------------------------------------------------------

      #  Refresh

      #     index   Index of enemy From $data_enemies

      #     pose    Enemy Character Pose

      #     frame   Frame of Pose

      #--------------------------------------------------------------------------

      
    def refresh(indexposeframe)

        
    # Clears Window

        
    contents.clear

        
    # Enemy

        
    enemy $data_enemies[index]

        
    # Graphic Image

        
    draw_enemy_sprite(52100enemy.battler_name enemy.battler_hueposeframe)

        
    # Default Stats Set

        
    name 

        
    maxhp maxsp =  str dex agi int atk pdef mdef eva 

        
    exp gold item_id weapon_id armor_id treasure_prob 

        
    item_icon weapon_icon armor_icon 049-Skill06

        armor_type 
    2

        
    # If the Enemy has been seen

        
    if enemy.seen

          name 
    enemy.name

          maxhp 
    enemy.maxhp.to_s

          maxsp 
    =  enemy.maxsp.to_s

          str 
    enemy.str.to_s

          dex 
    enemy.dex.to_s

          agi 
    enemy.agi.to_s

          int 
    enemy.int.to_s

          atk 
    enemy.atk.to_s

          pdef 
    enemy.pdef.to_s

          mdef 
    enemy.mdef.to_s

          eva 
    enemy.eva.to_s

        end

        
    # If the Enemy has been Defeated

        
    if enemy.defeated

          exp 
    enemy.exp.to_s

          gold 
    enemy.gold.to_s

          
    if enemy.item_id == 0

            item_id 
    Nothing

            item_icon 
    032-Item01

          
    else

            
    item_id $data_items[enemy.item_id].name

            item_icon 
    $data_items[enemy.item_id].icon_name

          end

          
    if enemy.weapon_id == 0

            weapon_id 
    Nothing

            weapon_icon 
    032-Item01

          
    else

            
    weapon_id $data_weapons[enemy.weapon_id].name

            weapon_icon 
    $data_weapons[enemy.weapon_id].icon_name

          end

          
    if enemy.armor_id == 0

            armor_id 
    Nothing

            armor_icon 
    032-Item01

          
    else

            
    armor_id $data_armors[enemy.armor_id].name

            armor_icon 
    $data_armors[enemy.armor_id].icon_name

            armor_type 
    $data_armors[enemy.armor_id].type

          end

          treasure_prob 
    enemy.treasure_prob.to_s

        end

        
    # System Words

        
    g_word $data_system.words.gold 

        hp_word 
    $data_system.words.hp 

        sp_word 
    $data_system.words.sp 

        str_word 
    $data_system.words.str 

        dex_word 
    $data_system.words.dex 

        agi_word 
    $data_system.words.agi 

        int_word 
    $data_system.words.int 

        atk_word 
    $data_system.words.atk 

        pdef_word 
    $data_system.words.pdef 

        mdef_word 
    $data_system.words.mdef 

        weapon_word 
    $data_system.words.weapon

        
    case armor_type

          when 0     
    ;armor_type $data_system.words.armor1

          when 1     
    ;armor_type $data_system.words.armor2

          when 2     
    ;armor_type $data_system.words.armor3

          when 3     
    ;armor_type $data_system.words.armor4

        end

        item_word 
    $data_system.words.item 

        
    # Draws Name

        
    contents.font.color normal_color

        contents
    .draw_text(1160contents.width 11632name)

        
    # Draws Times Seen & Defeated

        
    contents.font.color system_color

        contents
    .draw_text(11632contents.width 11632Times Seen)

        
    contents.draw_text(11664contents.width 11632Times Defeated)

        
    contents.font.color normal_color

        contents
    .draw_text(032contents.width32#{enemy.seen_times}, 2)

        
    contents.draw_text(064contents.width32#{enemy.defeated_times}, 2)

        # Organizes Stats

        
    colomn_a_left = [Max #{hp_word}, Max #{sp_word}, str_word, dex_word, 

                         
    agi_wordint_wordatk_wordpdef_wordmdef_wordEvasion]

        
    colomn_a_right = [maxhpmaxspstr,dex agiintatkpdefmdefeva]

        
    # Organized Victory Settings

        
    column_b_left = [Experience Given#{g_word} Dropped, #{item_word} Dropped, ,

              #{weapon_word} Dropped, , #{armor_type} Dropped, , Drop Pobabilty]

        
    column_b_right = [expgold, , item_id, , weapon_id, , armor_idtreasure_prob]

        
    # Draws Stats

        
    for i in 0...colomn_a_left.size

          contents
    .font.color system_color

          contents
    .draw_text(4160 i  3216032colomn_a_left[i])

          
    contents.font.color normal_color

          contents
    .draw_text(-4160 i  3216032colomn_a_right[i], 2)

        
    end

        
    # Draws Victory Settings

        
    for i in 0...column_b_left.size

          contents
    .font.color system_color

          contents
    .draw_text(168160 i  32contents.width32column_b_left[i])

          
    = -4

          x 
    = -30 if == or == or == 7

          contents
    .font.color normal_color

          contents
    .draw_text(x160 i  32contents.width32column_b_right[i], 2)

        
    end

        
    # Draws Item Icons

        
    bitmap RPGCache.icon(item_icon)

        
    self.contents.blt(contents.width 24260bitmapRect.new(002424))

        
    bitmap RPGCache.icon(weapon_icon)

        
    self.contents.blt(contents.width 24324bitmapRect.new(002424))

        
    bitmap RPGCache.icon(armor_icon)

        
    self.contents.blt(contents.width 24388bitmapRect.new(002424))

      
    end

    end


    #==============================================================================

    # Window Beastairy Controls

    #==============================================================================

    class Window_Beastairy_Controls  Window_Base

      
    #--------------------------------------------------------------------------

      #  Object Initialization

      #--------------------------------------------------------------------------

      
    def initialize

        super
    (0288200192)

        
    self.contents Bitmap.new(width 32height 32)

        
    self.999

        refresh
    (0)

      
    end

      
    #--------------------------------------------------------------------------

      #  Refresh

      #--------------------------------------------------------------------------

      
    def refresh(phase)

        
    # Clears Window

        
    contents.clear

        disabled_system_color 
    Color.new(192224255128)

        
    contents.font.color normal_color

        contents
    .draw_text(00contents.width24L  R  Change Pose)

        
    # Main Phase Controls

        
    contents.font.color phase == 0  system_color  disabled_system_color

        contents
    .draw_text(424contents.width24Main)

        
    contents.font.color phase == 0  normal_color  disabled_color

        contents
    .draw_text(848contents.width24B  Return to Map)

        
    contents.draw_text(872contents.width24C  Select Group)

        
    # Enemy Select Controls

        
    contents.font.color phase == 1  system_color  disabled_system_color

        contents
    .draw_text(496contents.width24Enemy Select)

        
    contents.font.color phase == 1  normal_color  disabled_color

        contents
    .draw_text(8120contents.width24B  Return to Main)

        
    contents.draw_text(8140contents.width24C  Test Battle)

      
    end

    end


    #==============================================================================

    #  Class Scene Beastairy

    #==============================================================================

    class Scene_Beastairy

      
    #--------------------------------------------------------------------------

      #  Main Processing

      #--------------------------------------------------------------------------

      
    def main

        
    # Sets Main Phase

        
    @phase 0

        
    # Enemies Graphic Animation

        
    @pose, @frame, @counting_frame000

        
    # Current Phase Window

        
    @phase_window Window_Base.new(00width 200height 64)

          @
    phase_window.contents contents Bitmap.new(width 32height 32)

          @
    phase_window.contents.draw_text(0016832Main Phase1)

        
    # Main Window (Enemy Groups)

        
    commands $game_beastairy.monster_groups.dup

        commands
    .push(Exit)

        @
    enemy_groups Window_Command.new(200commands)

          @
    enemy_groups.64

          
    @enemy_groups.height 224

        
    # Controls Window

        
    @controls Window_Beastairy_Controls.new

        
    # Monster Group Information Window

        
    @monster_window Window_Monster_Group_Info.new

          @
    monster_window.refresh(000)

        
    # Enemy Information Window

        
    @enemy_window Window_Monster_Info.new

          @
    enemy_window.visible false

        
    # Scene Objects

        
    @objects = [@phase_window, @enemy_groups, @controls, @monster_window, @enemy_window]

        
    # Execute transition

        
    Graphics.transition

        
    # Main loop

        
    loop do

          
    # Update game screen

          
    Graphics.update

          
    # Update input information

          
    Input.update

          
    # Update Objects Information

          
    @objects.each {x x.update}

          
    # Frame update

          
    update

          
    # Abort loop if screen is changed

          
    break if $scene != self

        end

        
    # Prepare for transition

        
    Graphics.freeze

        
    # Dispose of Objects

        
    @objects.each {x x.dispose unless x.disposed}

      
    end

      
    #--------------------------------------------------------------------------

      #  Frame Update

      #--------------------------------------------------------------------------

      
    def update

        
    # Visiblity Changes Between Methods

        
    case @phase

        
    # Main Phase

        
    when 0

          
    [@enemy_window].each {x x.visible false if x.visible}

          [@
    enemy_groups, @monster_window].each {x x.visible true unless x.visible}

          @
    enemy_groups.active true

        when 1

          
    [@enemy_window].each {x x.visible true unless x.visible}

          [@
    enemy_groups, @monster_window].each {x x.visible false if x.visible}

          @
    enemy_groups.active false

        end

        
    # Updates Enemy Animation

        
    @counting_frame += 1

        
    if @counting_frame == 8

          
    @counting_frame 0

          
    @frame += 1

          
    @frame if @frame == 4

          
    if @phase == 0

            
    @monster_window.refresh(@enemy_groups.index, @pose, @frame)

          else

            
    enemy_id = @enemies[@groups_enemies.index].id

            
    @enemy_window.refresh(enemy_id, @pose, @frame)

          
    end

        end

        
    # Current Phase Update

        
    case @phase

          when 0
    main_update

          when 1
    enemy_select

        end

      end

      
    #--------------------------------------------------------------------------

      #  Main Frame Update

      #--------------------------------------------------------------------------

      
    def main_update

        
    # Exit Scene

        
    if Input.trigger(InputB)

          
    $game_system.se_play($data_system.cancel_se)

          
    $game_temp.beastairy_return false

          $scene 
    Scene_Map.new

        
    # Enemy Select

        
    elsif Input.trigger(InputC)

          
    $game_system.se_play($data_system.decision_se)

          if @
    enemy_groups.index == $game_beastairy.monster_groups.size

            $game_temp
    .beastairy_return false

            $scene 
    Scene_Map.new

          else

            
    commands, @enemies = [], []

            
    group $game_beastairy.monster_groups[@enemy_groups.index]

            for 
    i in 1...$data_enemies.size

               
    if $data_enemies[i].group == group

                 commands
    .push($data_enemies[i].seen  $data_enemies[i].name  )

                @
    enemies.push($data_enemies[i])

              
    end

            end

            
    @groups_enemies Window_Command.new(200commands)

              @
    groups_enemies.64

              
    @groups_enemies.height 224

            
    # Phase Window Update

            
    @phase_window.contents.clear

            
    @phase_window.contents.draw_text(0016832Enemy Select1)

            
    # Adds Object (For Updating)

            
    @objects.push(@groups_enemies)

            
    # Updates Controls Window

            
    @controls.refresh(1)

            
    enemy_id = @enemies[@groups_enemies.index].id

            
    @enemy_window.refresh(enemy_id, @pose, @frame)

            
    # Changes Phase

            
    @phase 1

          end

        
    # Changes Pose

        
    elsif Input.trigger(InputLEFT)

          
    $game_system.se_play($data_system.cursor_se)

          @
    pose == 0  @pose 3  @pose -= 1

        elsif Input
    .trigger(InputRIGHT)

          
    $game_system.se_play($data_system.cursor_se)

          @
    pose == 3  @pose 0  @pose += 1

        end

      end

      
    #--------------------------------------------------------------------------

      #  Enemy Frame Update

      #--------------------------------------------------------------------------

      
    def enemy_select

        
    # Exit Phase

        
    if Input.trigger(InputB)

          
    $game_system.se_play($data_system.cancel_se)

          @
    groups_enemies.dispose

          
    @objects.delete(@groups_enemies)

          
    # Phase Window Update

          
    @phase_window.contents.clear

          
    @phase_window.contents.draw_text(0016832Main Phase1)

          
    # Updates Controls Window

          
    @controls.refresh(0)

          
    # Changes Phase

          
    @phase 0

        
    # Enemy Select

        
    elsif Input.trigger(InputC)

          
    enemy  = @enemies[@groups_enemies.index]

          if 
    enemy.seen

            $game_system
    .se_play($data_system.decision_se)

            
    enemy_name enemy.name

            
    for i in 1...$data_troops.size

              
    if $data_troops[i].name == enemy_name

                $game_temp
    .beastairy_return true

                $game_temp
    .battle_troop_id i

                $game_temp
    .battle_can_escape true

                $game_temp
    .battle_can_lose false

                $game_temp
    .battle_proc nil

                
    # Memorize map BGM and stop BGM

                
    $game_temp.map_bgm $game_system.playing_bgm

                $game_system
    .bgm_stop

                
    # Play battle start SE

                
    $game_system.se_play($data_system.battle_start_se)

                
    # Play battle BGM

                
    $game_system.bgm_play($game_system.battle_bgm)

                
    # Straighten player position

                
    $game_player.straighten

                
    # Switch to battle screen

                
    $scene Scene_Battle.new

              
    end

            end

          
    else

            
    $game_system.se_play($data_system.buzzer_se)

          
    end

        elsif Input
    .trigger(InputLEFT)

          
    $game_system.se_play($data_system.cursor_se)

          @
    pose == 0  @pose 3  @pose -= 1

        elsif Input
    .trigger(InputRIGHT)

          
    $game_system.se_play($data_system.cursor_se)

          @
    pose == 3  @pose 0  @pose += 1

        end

      end

    end


    #==============================================================================

    #  Scene_Battle

    #==============================================================================

    class Scene_Battle

      
    #--------------------------------------------------------------------------

      #  Alias Main Processing

      #--------------------------------------------------------------------------

      
    alias beastairy_main main

      
    #--------------------------------------------------------------------------

      #  Main Processing

      #--------------------------------------------------------------------------

      
    def main

        unless $game_temp
    .beastairy_return

          
    @beastairy_troop = []

          
    troop $data_troops[$game_temp.battle_troop_id]

          for 
    i in 0...troop.members.size

            enemy 
    $data_enemies[troop.members[i].enemy_id]

            @
    beastairy_troop.push(enemy)

            
    enemy.see

          end

        
    else

          @
    beastairy_troop = []

        
    end

        beastairy_main

      end

      
    #--------------------------------------------------------------------------

      #  Battle Ends

      #     result  results (0win 1lose 2escape)

      #--------------------------------------------------------------------------

      
    def battle_end(result)

        
    # Clear in battle flag

        
    $game_temp.in_battle false

        
    # Clear entire party actions flag

        
    $game_party.clear_actions

        
    # Remove battle states

        
    for actor in $game_party.actors

          actor
    .remove_states_battle

        end

        
    # Clear enemies

        
    $game_troop.enemies.clear

        
    # Call battle callback

        
    if $game_temp.battle_proc != nil

          $game_temp
    .battle_proc.call(result)

          
    $game_temp.battle_proc nil

        end

        
    if $game_temp.beastairy_return

          $scene 
    Scene_Beastairy.new

        else

          if 
    result == 0

            
    for enemy in @beastairy_troop

              enemy
    .defeat

            end

          end

          $scene 
    Scene_Map.new

        
    end

      end

      
    #--------------------------------------------------------------------------

      #  Frame Update

      #--------------------------------------------------------------------------

      
    def update

        
    # If battle event is running

        
    if $game_system.battle_interpreter.running

          
    # Update interpreter

          
    $game_system.battle_interpreter.update

          
    # If a battler which is forcing actions doesn't exist

          
    if $game_temp.forcing_battler == nil

            
    # If battle event has finished running

            
    unless $game_system.battle_interpreter.running

              
    # Rerun battle event set up if battle continues

              
    unless judge

                setup_battle_event

              end

            end

            
    # If not after battle phase

            
    if @phase != 5

              
    # Refresh status window

              
    @status_window.refresh

            end

          end

        end

        
    # Update system (timer) and screen

        
    $game_system.update

        $game_screen
    .update

        
    # If timer has reached 0

        
    if $game_system.timer_working and $game_system.timer == 0

          
    # Abort battle

          
    $game_temp.battle_abort true

        end

        
    # Update windows

        
    @help_window.update

        
    @party_command_window.update

        
    @actor_command_window.update

        
    @status_window.update

        
    @message_window.update

        
    # Update sprite set

        
    @spriteset.update

        
    # If transition is processing

        
    if $game_temp.transition_processing

          
    # Clear transition processing flag

          
    $game_temp.transition_processing false

          
    # Execute transition

          
    if $game_temp.transition_name == 

            
    Graphics.transition(20)

          else

            
    Graphics.transition(40GraphicsTransitions +

              
    $game_temp.transition_name)

          
    end

        end

        
    # If message window is showing

        
    if $game_temp.message_window_showing

          
    return

        
    end

        
    # If effect is showing

        
    if @spriteset.effect

          
    return

        
    end

        
    # If game over

        
    if $game_temp.gameover

          
    # Switch to game over screen

          
    if $game_temp.beastairy_return

            $scene 
    Scene_Beastairy.new

          else

            
    $scene Scene_Gameover.new

          
    end

        end

        
    # If returning to title screen

        
    if $game_temp.to_title

          
    # Switch to title screen

          
    $scene Scene_Title.new

          return

        
    end

        
    # If battle is aborted

        
    if $game_temp.battle_abort

          
    # Return to BGM used before battle started

          
    $game_system.bgm_play($game_temp.map_bgm)

          
    # Battle ends

          
    battle_end(1)

          return

        
    end

        
    # If waiting

        
    if @wait_count  0

          
    # Decrease wait count

          
    @wait_count -= 1

          
    return

        
    end

        
    # If battler forcing an action doesn't exist,

        # and battle event is running

        
    if $game_temp.forcing_battler == nil and

           
    $game_system.battle_interpreter.running

          
    return

        
    end

        
    # Branch according to phase

        
    case @phase

        when 1  
    # pre-battle phase

          
    update_phase1

        when 2  
    # party command phase

          
    update_phase2

        when 3  
    # actor command phase

          
    update_phase3

        when 4  
    # main phase

          
    update_phase4

        when 5  
    # after battle phase

          
    update_phase5

        end

      end  

      
    #--------------------------------------------------------------------------

      #  Start After Battle Phase

      #--------------------------------------------------------------------------

      
    def start_phase5

        
    # Shift to phase 5

        
    @phase 5

        
    # Play battle end ME

        
    $game_system.me_play($game_system.battle_end_me)

        
    # Return to BGM before battle started

        
    $game_system.bgm_play($game_temp.map_bgm)

        
    # Initialize EXP, amount of gold, and treasure

        
    exp 0

        gold 
    0

        treasures 
    = []

        
    # Loop

        
    for enemy in $game_troop.enemies

          
    # If enemy is not hidden

          
    unless enemy.hidden

            unless $game_temp
    .beastairy_return

              
    # Add EXP and amount of gold obtained

              
    exp += enemy.exp

              gold 
    += enemy.gold

              
    # Determine if treasure appears

              
    if rand(100)  enemy.treasure_prob

                
    if enemy.item_id  0

                  treasures
    .push($data_items[enemy.item_id])

                
    end

                
    if enemy.weapon_id  0

                  treasures
    .push($data_weapons[enemy.weapon_id])

                
    end

                
    if enemy.armor_id  0

                  treasures
    .push($data_armors[enemy.armor_id])

                
    end

              end

            end

          end

        end

        
    # Treasure is limited to a maximum of 6 items

        
    treasures treasures[0..5]

        
    # Obtaining EXP

        
    for i in 0...$game_party.actors.size

          actor 
    $game_party.actors[i]

          if 
    actor.cant_get_exp == false

            last_level 
    actor.level

            actor
    .exp += exp

            
    if actor.level  last_level

              
    @status_window.level_up(i)

            
    end

          end

        end

        
    # Obtaining gold

        
    $game_party.gain_gold(gold)

        
    # Obtaining treasure

        
    for item in treasures

          
    case item

          when RPGItem

            $game_party
    .gain_item(item.id1)

          
    when RPGWeapon

            $game_party
    .gain_weapon(item.id1)

          
    when RPGArmor

            $game_party
    .gain_armor(item.id1)

          
    end

        end

        
    # Make battle result window

        
    @result_window Window_BattleResult.new(expgoldtreasures)

        
    # Set wait count

        
    @phase5_wait_count 100

      end

    end 
    Bitte Leute, helft mir

  3. #3
    Ich hab das Script jetzt nicht zum laufen gebracht, aber wenn du abfragen willst ob ein switch an ist, benutze folgendes:
    PHP-Code:
    if $game_switches[1]
          
      --
    hier mit Aktion ersetzen--
        
    end 
    Die 1 ist die Zahl des Switches.
    Ich glaube du müsstest das nach der class setzen und vor dem letzten end.
    Allerdings muss ich zugeben, nicht wirkich Ahnung von RGSS zu haben.

    Ansonsten findest du hier ein Paar RGSS-Tutorials.

    Geändert von Macros (05.11.2006 um 12:37 Uhr)

  4. #4
    Für das An- und Ausschalten per Switch suche folgenden Code:
    Code:
      #-------------------------------------------------------------------------- 
      # * Main Draw 
      #-------------------------------------------------------------------------- 
      def main_draw 
        @mrmo_hud = Window_MrMo_HUD.new 
        mrmo_hud_main_draw 
      end 
      #-------------------------------------------------------------------------- 
      # * Main Dispose 
      #-------------------------------------------------------------------------- 
      def main_dispose 
        @mrmo_hud.dispose 
        mrmo_hud_main_dispose 
      end 
      #-------------------------------------------------------------------------- 
      # * Update Graphics 
      #-------------------------------------------------------------------------- 
      def update_graphics 
        mrmo_hud_update_graphics 
        @mrmo_hud.update 
      end
    Und ersetze ihn durch folgenden:
    Code:
      #-------------------------------------------------------------------------- 
      # * Main Draw 
      #-------------------------------------------------------------------------- 
      def main_draw
        if $game_switches[1] 
          @mrmo_hud = Window_MrMo_HUD.new
        else
          if @mrmo_hud != nil
           @mrmo_hud.dispose
          end
        end
        mrmo_hud_main_draw 
      end 
      #-------------------------------------------------------------------------- 
      # * Main Dispose 
      #-------------------------------------------------------------------------- 
      def main_dispose
        if @mrmo_hud != nil
          @mrmo_hud.dispose
        end
        mrmo_hud_main_dispose 
      end 
      #-------------------------------------------------------------------------- 
      # * Update Graphics 
      #-------------------------------------------------------------------------- 
      def update_graphics 
        mrmo_hud_update_graphics
        if @mrmo_hud != nil 
          @mrmo_hud.update
        end 
      end
    Die 1 bei $game_switches[1] ersetzt du dann mit der Nummer deines Switches. Ist zwar alles andere als sauber, aber das ist der restliche Code auch nicht..

  5. #5
    "???????????? ´Mr Mo´s HUD´? 424 ??? Syntaxerror ??????????"

    Das zeigt er an

  6. #6
    Am besten du postest mal Zeile 424 aus dem entsprechenden Code. Entweder war da schon ein Syntaxfehler drinnen, oder du hast einen eingebaut.

  7. #7
    Zitat Zitat von Skorp Beitrag anzeigen
    "???????????? ´Mr Mo´s HUD´? 424 ??? Syntaxerror ??????????"

    Das zeigt er an
    EDIT: Ist die letzte Zeile im Code, also ein end

  8. #8
    Dann hast du irgendwo ein end gelöscht. Vermutlich hast du beim Kopieren meines Codes ein weiteres end mit überschrieben, was du aber da lassen solltest.

    Vergleiche also nochmal den Ursprungscode, den du hier gepostet hast, und deinen aktuellen Code bzw. genau das was du überschreiben solltest.

Berechtigungen

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