collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: Hilfe zu Skripten.  (Gelesen 51459 mal)

Offline Ðeity

  • No Pain, no gain!
  • Administrator
  • Eventmeister
  • ****
  • Beiträge: 427
  • No Pain, no Gain!
    • Deity-VX
Re: Hilfe zu Skripten.
« Antwort #375 am: März 27, 2010, 15:15:26 »
Ich denke du arbeitet mit einem Window und mit keinem normalem Sprite. Daher ist diemethode für das Zeichnen des Faces bereits geschrieben.

@window_sprite.contents.draw_face(face_name, face_index, x, y, size = 96)

Müsste es also tun.



Re: Hilfe zu Skripten.

Offline PDM

  • Bibliothekar
  • Global Mod
  • VX-Kenner
  • ****
  • Beiträge: 468
    • Mein Blog
Re: Hilfe zu Skripten.
« Antwort #376 am: März 27, 2010, 15:29:04 »
Deity, vielen Dank für die schnelle Antwort. Leider kommt bei mir ein Fehler wegen "Contents". Hier ist mein Script mal.
Spoiler for Hiden:
#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#  This window displays party member status on the menu screen.
#==============================================================================

class Window_Face < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     x : window X coordinate
  #     y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 140, 132)
    refresh
    self.active = false
    self.index = -1
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear 
    @window_sprites.contents.draw_face("Evil", face_index, 96, 96, size = 96)
     end
  end
  #--------------------------------------------------------------------------
  # * Update cursor
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0               # No cursor
      self.cursor_rect.empty
    elsif @index < @item_max    # Normal
      self.cursor_rect.set(0, @index * 96, contents.width, 96)
    elsif @index >= 100         # Self
      self.cursor_rect.set(0, (@index - 100) * 96, contents.width, 96)
    else                        # All
      self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
    end
  end
PS: Was muss ich bei file_indes angeben? DEn pfad?
PDM's Gameplays
Skype-Name: lordpdm

Re: Hilfe zu Skripten.

Offline Ðeity

  • No Pain, no gain!
  • Administrator
  • Eventmeister
  • ****
  • Beiträge: 427
  • No Pain, no Gain!
    • Deity-VX
Re: Hilfe zu Skripten.
« Antwort #377 am: März 27, 2010, 15:35:32 »
Hehe also:
1. face_index meinst du bestimmt. Das ist die Nummer des Faces des Facesets. Es sind ja 8 vorhanden, und du musst dir deinen raussuchen.
2. Darfst du nicht einfach @window_sprite übernehmen. ^^ In deinem Fall müsste es self.contents.draw_face("Evil", face_index, 96, 96, size = 96) heißen.

MfG
Deity



Re: Hilfe zu Skripten.

Offline PDM

  • Bibliothekar
  • Global Mod
  • VX-Kenner
  • ****
  • Beiträge: 468
    • Mein Blog
Re: Hilfe zu Skripten.
« Antwort #378 am: März 27, 2010, 15:40:22 »
Spoiler for Hiden:
#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#  This window displays party member status on the menu screen.
#==============================================================================

class Window_Face < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     x : window X coordinate
  #     y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 140, 132)
    refresh
    self.active = false
    self.index = -1
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh     
    self.contents.clear
    self.contents.draw_face("Evil", 1, 96, 96, size = 96)
     end
  end
  #--------------------------------------------------------------------------
  # * Update cursor
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0               # No cursor
      self.cursor_rect.empty
    elsif @index < @item_max    # Normal
      self.cursor_rect.set(0, @index * 96, contents.width, 96)
    elsif @index >= 100         # Self
      self.cursor_rect.set(0, (@index - 100) * 96, contents.width, 96)
    else                        # All
      self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
    end
  end
Stimmt das so oder war ich wieder zu blöd dafür? Weil es stürtzt wieder ab und sagt  mir es liegt an diesem draw_face
PDM's Gameplays
Skype-Name: lordpdm

Re: Hilfe zu Skripten.

Offline Ðeity

  • No Pain, no gain!
  • Administrator
  • Eventmeister
  • ****
  • Beiträge: 427
  • No Pain, no Gain!
    • Deity-VX
Re: Hilfe zu Skripten.
« Antwort #379 am: März 27, 2010, 15:47:31 »
Das einzige was mir jetzt so ins Auge springt ist diese Methode hier:
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh     
    self.contents.clear
    self.contents.draw_face("Evil", 1, 96, 96, size = 96)
     end
  end

Das rote "end" ist zuviel.

Ausserdem fehlt ein end ganz am Ende des Scripts um die class zu schließen.

Ansonsten sieht es eig richtig aus.
« Letzte Änderung: März 27, 2010, 15:48:59 von Ðeity »



Re: Hilfe zu Skripten.

Offline PDM

  • Bibliothekar
  • Global Mod
  • VX-Kenner
  • ****
  • Beiträge: 468
    • Mein Blog
Re: Hilfe zu Skripten.
« Antwort #380 am: März 27, 2010, 15:50:38 »
Also mit dem End hat er kein Problem, sonst würde es ja gleich am anfang abstürtzen. Das Spiel stürtzt aber erst ab, wen ich ins Menü gehe.
PDM's Gameplays
Skype-Name: lordpdm

Re: Hilfe zu Skripten.

Offline Ðeity

  • No Pain, no gain!
  • Administrator
  • Eventmeister
  • ****
  • Beiträge: 427
  • No Pain, no Gain!
    • Deity-VX
Re: Hilfe zu Skripten.
« Antwort #381 am: März 27, 2010, 15:57:28 »
Verdammt hab ein contents zuviel benutzt. Und doch das Script mekert bei mir rum. ^^
Hier :
#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#  This window displays party member status on the menu screen.
#==============================================================================

class Window_Face < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     x : window X coordinate
  #     y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 128, 128)
    refresh
    self.active = false
    self.index = -1
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh     
    self.contents.clear
    self.draw_face("Evil", 1, 0, 0, size = 96)
  end
  #--------------------------------------------------------------------------
  # * Update cursor
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0               # No cursor
      self.cursor_rect.empty
    elsif @index < @item_max    # Normal
      self.cursor_rect.set(0, @index * 96, contents.width, 96)
    elsif @index >= 100         # Self
      self.cursor_rect.set(0, (@index - 100) * 96, contents.width, 96)
    else                        # All
      self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
    end
  end
end

Es müsste es jetzt tun, habe nur die kleinen Fehler rausgetan sonst ist alles beim alten. Btw. du bietest dem Face nur eine Fläche von ungefähr 100x90 Pixxel, und lässt es bei 96,96 zeichnen also sieht man nur einen Punkt des ganzen Bildes. ^^ (Habs aber bischen verändert also von den Massen.)
MfG
Deity
« Letzte Änderung: März 27, 2010, 15:59:02 von Ðeity »



Re: Hilfe zu Skripten.

Offline PDM

  • Bibliothekar
  • Global Mod
  • VX-Kenner
  • ****
  • Beiträge: 468
    • Mein Blog
Re: Hilfe zu Skripten.
« Antwort #382 am: März 27, 2010, 16:04:15 »
DANKE!!! Das funktioniert! Vielen, vielen, vielen (mal unendlich) Dank!!!
PDM's Gameplays
Skype-Name: lordpdm

Re: Hilfe zu Skripten.

Offline timas

  • Der Meister
  • Database-Verunstalter
  • **
  • Beiträge: 133
  • Ich bin Tima!
Re: Hilfe zu Skripten.
« Antwort #383 am: März 29, 2010, 16:31:46 »
kann mir jemand bei dem Monsteralbung helfen? Ich hätte es gern in Deutsch aber es ist Englisch und da ich mich mit Scripts nicht aus kenne brauch ich hilfe das da z. B nicht weaknes sonder schwäche steht.

Spoiler for Hiden:
[code]################################################################################
#                            Monster Album VX 4.0                              #
################################################################################
# Author: El Conducter                                                         #
# Date: August/3/07                                                            #
# Last Update: July/21/08                                                      #
# Version: 4.0                                                                 #
# Platform: RPG Maker VX                                                       #
################################################################################
#----------------------------------------------------------------------------
#   About Update: 2.0
#     Alright, nearly a year after its first release I have updated this script.
#     This was one of my earlier scripts, so there was a few things that could
#     have been done better. I have taken care of such issues and added to it.
#     It was the only script that never had an update, however it turned out to
#     be one of my more popular scripts. So here is the much needed update.
#
#   About Update: 3.0
#     Alright, with this update my Album script will be the most comprehensive.
#     bestiary I have done. Nothing is secret about your enemies now. The enemy
#     attribute weaknesses are now color coded for easier readability. To make
#     things easier I even used the Color Module I created for my HP Bar Script.
#     It makes it easy for you to alter and add colors as you so wish. Aside
#     from being able to see enemy attribute weakneses you can now also see their
#     abilities, and scroll with L and R to a different monster while in the
#     monster window. Rather than having all the attributes or skills crammed in
#     a single window, you can now select which you would like to see from a new
#     command window.
#
#   About Update: 4.0
#     This powerful Bestiary script has gotten even better. In addition to
#     viewing enemy attributes and skills, you can now test fight the monster
#     from the Album! I had to pull some clever coding tricks to make this work
#     without doing something drastic or complicated, like rewriting and/or
#     altering many other Classes. I proved I could pull a monster out of a hat.
#     I have also added a feature that allows you to hide enemy statistics for
#     certian enemies of your choosing. Perhaps Boss enemies or whatever.
#----------------------------------------------------------------------------

#----------------------------------------------------------------------------
#   What it Does:
#     This script basically creates a catalogue of monsters you've killed.
#     You are also given a monster hunter rank based on how many
#     different monsters have been defeated. The catalogue displays all
#     the monsters attributes & picture, player rank, and percent of album
#     completion. See above for info on updates.
#----------------------------------------------------------------------------

#----------------------------------------------------------------------------
#   How it Works:
#    
#     Okay for version 2.0 I recreated the way a few things work, but don't worry
#     the changes are for the better. I made an independant Monster_Album class
#     to deal with all the album related tasks, rather than just having modded
#     several other classes to share the work, like version 1.0. Because of this
#     new system it gives us greater flexibility to do things. I also cleaned up
#     some messy code in other classes, though there still is some that I will
#     contend with in a later update.
#    
#     Scripts used are:
#
#       Section I: Album Scene and related Windows
#            - Scene_Album NOT
#            - Window_Album_Right NOT
#            - Window_Monster_List DONE
#            - Window_Monster_Picture NOT
#            - Window_Album_Command NOT
#            - Window_Total DONE
#
#       Section II: Extra Windows
#            - Window_Base Done?
#
#       Section III: Dependancies
#            - Game_Troop DONE
#            - Scene_Menu DONE
#            - Scene_Battle DONE
#
#       Section IV: Data Management
#            - Scene_Title DONE
#            - Scene_File DONE
#
#       Section V: Modules
#            - Module Color DONE
#            - Module Vocab DONE
#----------------------------------------------------------------------------

#----------------------------------------------------------------------------
#   How to Use This Script:
#     Just copy it and paste it above Main.
#
#     If you are going to use events to call the album menu, use Call Script:
#     $scene = Scene_Album.new
#
#     You can use an item to call the menu as well. Just make the item call a
#     Common Event, and make the Common Event do the above task.
#    
#     You can also access the Albums hunter rank in game by using:
#
#     $game_album.rank
#
#     Accessing it is now a bit easier than with version 1.0. It had a dumb way
#     operating. Also you now add enemies to the Album anytime in game with
#     a Call Script like this:
#
#     $game_album.add_enemy_killed($data_enemies[N])
#
#     Where N is, put the ID of the monster you want to add.
#
#     To Hide enemy stats in the album, got to Game_Album class and look for
#     the @black_list array. Put the ID's of the enemies you want hidden in it.
#----------------------------------------------------------------------------

#----------------------------------------------------------------------------
#   Script Conflicts and Compatability:
#     This is an Advisory for those of you using multiple scripts. If you are
#     using other scripts that rewrite the same classes or methods as this one,
#     there may be a conflict and things will work incorrectly in unpredictable
#     ways. I put all the Classes that could cause conflicts in the Utilities
#     Section III.
#
#     To remedy a script conflict, the pieces of the classes or methods that
#     overwrite each other must be combined.
#
#     Script conflicts are a major issue with many users. I get many messages
#     form those having problems. Almost always it is due to script conflicts.
#     Ocassionally I offer quick tips, fixes, and instructions  to get them to
#     work. However, as my time is limited, I can't always provide help on an
#     individual basis.
#----------------------------------------------------------------------------

#----------------------------------------------------------------------------
#  Comments:
#    I hope my script is easy for you to use and modify. Study this
#    script to learn RGSS better and become a better scriptor yourself.  
#----------------------------------------------------------------------------

#==============================================================================
#  Section I: Album Classes
#==============================================================================

#==============================================================================
# ** Game_Album
#------------------------------------------------------------------------------
#  This class handles the Bestairy.
#==============================================================================

class Game_Album
  #--------------------------------------------------------------------------
  # * Constant: Add or remove enemy ID's you want to have hidden in the Album
  #--------------------------------------------------------------------------
  BLACK_LIST = [29, 30]
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader   :seen           # Array of enemies seen but not killed
  attr_reader   :killed         # Array of enemies actually killed in battle
  attr_reader   :rank           # String to contain rank title
  attr_reader   :percent        # Percent of Album completion
  attr_reader   :test_enemy_id  # ID of enemy to be tested in battle
  attr_reader   :black_list     # Array of enemy ID's to be hidden
  attr_accessor :battle_test    # Whether the impending fight is album related
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    # Set seen & killed variables to blank arrays for new album
    @seen = []
    @killed = []
    for i in 1...$data_enemies.size
      @killed.push(nil)
      @seen.push(nil)
    end
    @rank = 'none'
    @percent = 0
    @test_enemy_id = 0
    @battle_test = false
  end
  #--------------------------------------------------------------------------
  # * add_enemy_seen
  #--------------------------------------------------------------------------
  def add_enemy_seen(enemy)
    # Use enemy ID - 1 for correct index placement in the array
    index = enemy.id - 1
    # The following replaces the nil object with the enemy at the index
    @seen.insert(index, enemy)
    @seen.delete_at(enemy.id)
    determine_rank
  end
  #--------------------------------------------------------------------------
  # * add_enemy_killed
  #--------------------------------------------------------------------------
  def add_enemy_killed(enemy)
    # Use enemy ID - 1 for correct index placement in the array
    index = enemy.id - 1
    # The following replaces the nil object with the enemy at the index
    @killed.insert(index, enemy)
    @killed.delete_at(enemy.id)
    determine_rank
  end
  #--------------------------------------------------------------------------
  # * Determine party's rank title for album completion
  #--------------------------------------------------------------------------
  def determine_rank
    # First check to see if the player has seen more enemies than killed
    if @seen.nitems > @killed.nitems
      # Assign rank and end rank check
      @rank = 'Observer'
      return
    end
    # Get percent of enemies killed over total amount of enemies in game
    # -1 to make up for nil in $data_enemies array
    @percent = ((@killed.nitems * 100) / ($data_enemies.size - 1))
    # Change player rank according to percent
    case @percent
    when 1..25                  # When up to 25%
      @rank = 'Adventurer'
    when 26..50                 # When 26% to 50%
      @rank = 'Slayer'
    when 51..75                 # When 51% to 75%
      @rank = 'Monster Hunter'
    when 76..99                 # When 76% to 99%
      @rank = 'Beast Master'
    when 100                    # When 100%
      @rank = 'Perfectionist'
    end
  end
  #--------------------------------------------------------------------------
  # * has_seen_enemy? Checks if enemy is included in the @seen array
  #--------------------------------------------------------------------------
  def has_seen_enemy?(enemy)
    return @seen.include?(enemy)
  end
  #--------------------------------------------------------------------------
  # * has_killed_enemy? Checks if enemy is included in the @killed array
  #--------------------------------------------------------------------------
  def has_killed_enemy?(enemy)
    return @killed.include?(enemy)
  end
  #--------------------------------------------------------------------------
  # * enemy_blacklisted? Checks if ID is included among the enemy ID's to hide
  #--------------------------------------------------------------------------
  def enemy_blacklisted?(enemy_id)
    return BLACK_LIST.include?(enemy_id)
  end
  #--------------------------------------------------------------------------
  # * Simple search algorithym
  #   Checks all the troops for the latest one that contains the given enemy ID
  #--------------------------------------------------------------------------
  def soul_searcher(id)
    # Set ID of enemy to be 'singled out' for battle later
    @test_enemy_id = id
    # Look through all the $data_troops array
    for i in 1...$data_troops.size
      # In current troop, look through all the members for the enemy ID
      for j in 0...$data_troops.members.size
        # If the enemy ID being searched is within this troop
        if $data_troops.members[j].enemy_id == id
          # Set this variable to that troop ID to be returned & Break the search
          troop = $data_troops
          break
        end
      end
    end
    return troop.id
  end
  #--------------------------------------------------------------------------
  # * Initiates a combat
  #--------------------------------------------------------------------------
  def start_battle(id)
    # Start battle with the troop results from soul searcher
    $game_troop.setup(soul_searcher(id))
    # if this battle is a album test fight, single out the enemy being tested
    $game_troop.single_out_enemy(id)
    # Set album battle test flag to true
    @battle_test = true
    # Play battle start SE
    $game_temp.map_bgm = RPG::BGM.last
    $game_temp.map_bgs = RPG::BGS.last
    RPG::BGM.stop
    RPG::BGS.stop
    Sound.play_battle_start
    $game_system.battle_bgm.play
    $game_temp.next_scene = nil
    $scene = Scene_Battle.new
  end
end

#==============================================================================
# ** Scene_Album
#------------------------------------------------------------------------------
#  This class handles the monster album windows.
#==============================================================================

class Scene_Album < Scene_Base
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    # Set up windows used in this scene
    # Set window of monster names currently known
    @monster_list_window = Window_Album_List.new
    # Get monster currently selected in window list
    @monster = @monster_list_window.monster
    # Make window that shows current selected monster's stats
    @monster_info_window = Window_Album_Right.new(@monster)
    # Make info window of album completion
    @total_window = Window_Total.new
    # Make monster window
    @monster_window = Window_Monster_Picture.new(@monster)
    @monster_window.visible = false
    # Make monster command window
    @command_window = Window_Album_Command.new(['Elements', 'States',
    'Abilities', 'Battle'])
    @command_window.visible = false
    @command_window.active = false
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    # Dispose of windows
    @monster_info_window.dispose
    @monster_list_window.dispose
    @total_window.dispose
    @monster_window.dispose
    @command_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Update windows conditionally
    # If monster list window is active: call update_list
    if @monster_list_window.active
      update_list
      return
    end
    # If monster command window is active: call update_command
    if @command_window.visible
      update_command
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when monster list window is active)
  #--------------------------------------------------------------------------
  def update_list
    @monster_list_window.update
    # Set the variable @monster equal to the currently selected monster
    @monster = @monster_list_window.monster
    # Set info window's monster to the selected monster
    @monster_info_window.set_new_monster(@monster)
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      Sound.play_cancel
      # Switch to menu screen
      @monster_list_window.active = false
      $scene = Scene_Menu.new(0)
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      if @monster != nil
        # Play decision SE
        Sound.play_decision
        # Activate monster window
        @monster_list_window.active = false
        @monster_list_window.visible = false
        @monster_info_window.visible = false
        @total_window.visible = false
        @monster_window.visible = true
        @monster_window.get_new_monster(@monster)
        @monster_window.draw_enemy_elementals
        @command_window.visible = true
        @command_window.active = true
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when monster command window is active)
  #--------------------------------------------------------------------------
  def update_command
    @command_window.update
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      Sound.play_cancel
      # Go back to monster list
      @monster_list_window.active = true
      @monster_list_window.visible = true
      @monster_window.visible = false
      @monster_info_window.visible = true
      @total_window.visible = true
      @command_window.index = 0
      @command_window.active = false
      @command_window.visible = false
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      Sound.play_decision
      # Play decision SE
      case @command_window.index
      when 0  # Elementals
        # Draw enemy elemental attributes
        @monster_window.draw_enemy_elementals
      when 1  # States
        # Draw enemy states info
        @monster_window.draw_enemy_states
      when 2  # Abilities
        # Draw enemy abilitites
        @monster_window.draw_enemy_actions
      when 3  # Battle
        # Call an album test battle process
        $game_album.start_battle(@monster.id)
      end
      return
    end
    # If L button was pressed
    if Input.trigger?(Input::L)
      prev_monster
      return
    end
    # If R button was pressed
    if Input.trigger?(Input::R)
      next_monster
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Next enemy
  #--------------------------------------------------------------------------
  def next_monster
    # Don't let the index go past the enemy list
    unless @monster_list_window.index == $game_album.killed.size - 1
      @monster_list_window.index += 1
    end
    # Set the variable @monster equal to the currently selected monster
    @monster = @monster_list_window.monster
    # Set info window's monster to the selected monster
    @monster_info_window.set_new_monster(@monster)
    if @monster != nil
      # Play decision SE
      Sound.play_decision
      # Inform Monster window of new monster and redraw stats
      @monster_window.get_new_monster(@monster)
      @monster_window.draw_enemy_elementals
    end
  end
  #--------------------------------------------------------------------------
  # * previous enemy
  #--------------------------------------------------------------------------
  def prev_monster
    # Don't let the index go above the enemy list
    unless @monster_list_window.index == 0
      @monster_list_window.index -= 1
    end
    # Set the variable @monster equal to the currently selected monster
    @monster = @monster_list_window.monster
    # Set info window's monster to the selected monster
    @monster_info_window.set_new_monster(@monster)
    if @monster != nil
      # Play decision SE
      Sound.play_decision
      # Inform Monster window of new monster and redraw stats
      @monster_window.get_new_monster(@monster)
      @monster_window.draw_enemy_elementals
    end
  end
end

#==============================================================================
# ** Window_Album_List
#------------------------------------------------------------------------------
#  The list of monster names.
#==============================================================================

class Window_Album_List < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(0, 56, 214, 360)
    @column_max = 1
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Monster Acquisition
  #--------------------------------------------------------------------------
  def monster
    return @data[self.index]
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    #if self.contents != nil
      #self.contents.dispose
      #self.contents = nil
    #end
    @data = []
    # For every enemy in the album, a address of them to @data
    for i in 0...$game_album.killed.size
        @data.push($game_album.killed)
    end
    @item_max = @data.size
    create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #--------------------------------------------------------------------------
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    monster = @data[index]
    rect.width -= 4
    draw_monster_name(monster, rect.x, rect.y)
  end
end

#==============================================================================
# ** Window_Album_Right
#------------------------------------------------------------------------------
#  This window shows monster attributes.
#==============================================================================

class Window_Album_Right < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize(enemy)
    super(214, 56, 330, 360)
    self.contents = Bitmap.new(width - 32, height - 32)
    @enemy = enemy
    self.opacity = 0   # Increase this if you want to see the window
    refresh
  end
  #--------------------------------------------------------------------------
  # * Set parameters for monster
  #--------------------------------------------------------------------------
  def set_new_monster(new_monster)
    if @enemy != new_monster
      @enemy = new_monster
      refresh
    end
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    if @enemy != nil
      draw_enemy_picture(@enemy, 185, 208)
      draw_enemy_exp(@enemy, 4, 50)
      draw_enemy_gold(@enemy, 4, 75)
      draw_enemy_name(@enemy, 2, 0, normal_color)
      draw_enemy_stats(@enemy, 4, 220, $game_album.enemy_blacklisted?(@enemy.id))
    end
  end
end

#==============================================================================
# ** Window_Monster_Total 544×416
#------------------------------------------------------------------------------
#  Shows album completion.
#==============================================================================

class Window_Total < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 544, 56)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.font.color = system_color
    self.contents.draw_text(4, 0, 200, 32, "Bestiary Completion :")
    self.contents.draw_text(370, 0, 200, 32, "Rank :")
    self.contents.font.color = normal_color
    self.contents.draw_text(200, 0, 200, 32, $game_album.killed.nitems.to_s + ' / ')
    self.contents.draw_text(240, 0, 200, 32, ($data_enemies.size - 1).to_s + " : ")
    self.contents.draw_text(295, 0, 200, 32, $game_album.percent.to_s + "%")
    self.contents.draw_text(430, 0, 200, 32, $game_album.rank)
  end
end

#==============================================================================
# ** Window_Monster_Picture
#------------------------------------------------------------------------------
#  This window shows a bigger picture of the monster with name.
#==============================================================================

class Window_Monster_Picture < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize(enemy)
    super(0, 0, 544, 370)
    self.contents = Bitmap.new(width - 32, height - 32)
    @enemy = enemy
    refresh
  end
  #--------------------------------------------------------------------------
  # * Set parameters for monster
  #--------------------------------------------------------------------------
  def get_new_monster(new_monster)
    if @enemy != new_monster
      @enemy = new_monster
    end
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    if @enemy != nil
    draw_enemy_picture2(@enemy)
    draw_enemy_name(@enemy, 4, 4, system_color)
    end
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's elementals chart
  #--------------------------------------------------------------------------
  def draw_enemy_elementals
    refresh
    x = 4
    y = 4
    # Change color and font size
    self.contents.font.color = system_color
    #self.contents.font.size = 20
    # Draw text
    #self.contents.draw_text(x, y + 32, 100, 22, "Elements:")
    self.contents.font.size = 18
    self.contents.draw_text(x, y + 25, 50, 22, "Absorb:")
    self.contents.draw_text(x + 75, y + 25, 50, 22, "Strong:")
    self.contents.draw_text(x + 150, y + 25, 50, 22, "Weak:")
    self.contents.draw_text(x + 225, y + 25, 50, 22, "Poor:")
    # Change color and font size
    self.contents.font.color = normal_color
    self.contents.font.size = 16
    # unless the enemy info is hidden
    unless $game_album.enemy_blacklisted?(@enemy.id)
    # Draw the attributes names in position determined by attribute strength
    for i in 1...@enemy.element_ranks.xsize
      if @enemy.element_ranks == 6
        self.contents.font.color = Colors::GREEN
        self.contents.draw_text(x, 16 * i + 34, 120, 16, $data_system.elements)
      end
      if @enemy.element_ranks == 5
        self.contents.font.color = Colors::INDIGO
        self.contents.draw_text(x + 75, 16 * i + 34, 120, 16, $data_system.elements)
      end
      if @enemy.element_ranks == 2
        self.contents.font.color = Colors::ORANGE
        self.contents.draw_text(x + 150, 16 * i + 34, 120, 16, $data_system.elements)
      end
      if @enemy.element_ranks == 1
        self.contents.font.color = Colors::RED
        self.contents.draw_text(x + 225, 16 * i + 34, 120, 16, $data_system.elements)
      end
    end
    end
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's States chart
  #--------------------------------------------------------------------------
  def draw_enemy_states
    refresh
    x = 4#300
    y = 4
    # Change color and font size
    self.contents.font.color = system_color
    #self.contents.font.size = 18
    # Draw text
    #self.contents.draw_text(x, y + 25, 100, 22, "States:")
    self.contents.font.size = 18
    self.contents.draw_text(x, y + 25, 50, 22, "Null:")
    self.contents.draw_text(x + 75, y + 25, 50, 22, "Strong:")
    self.contents.draw_text(x + 150, y + 25, 50, 22, "Weak:")
    self.contents.draw_text(x + 225, y + 25, 50, 22, "Poor:")
    # Change color and font size
    self.contents.font.color = normal_color
    self.contents.font.size = 16
    # unless the enemy info is hidden
    unless $game_album.enemy_blacklisted?(@enemy.id)
    # Draw the state names in position determined by attribute strength
    for i in 1...@enemy.state_ranks.xsize
      if @enemy.state_ranks == 6
        self.contents.font.color = Colors::BLACK
        self.contents.draw_text(x, 16 * i + 34, 75, 16, $data_states.name)
      end
      if @enemy.state_ranks == 5
        self.contents.font.color = Colors::VIOLET
        self.contents.draw_text(x + 75, 16 * i + 34, 75, 16, $data_states.name)
      end
      if @enemy.state_ranks == 2
        self.contents.font.color = Colors::YELLOW
        self.contents.draw_text(x + 150, 16 * i + 34, 75, 16, $data_states.name)
      end
      if @enemy.state_ranks == 1
        self.contents.font.color = Colors::RED
        self.contents.draw_text(x + 225, 16 * i + 34, 75, 16, $data_states.name)
      end
    end
    end
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's States chart
  #--------------------------------------------------------------------------
  def draw_enemy_actions
    refresh
    x = 4
    y = 4
    # Change color and font size
    self.contents.font.color = system_color
    self.contents.font.size = 20
    # Draw text
    self.contents.draw_text(x, y + 32, 100, 22, "Actions:")
    # Change color and font size
    self.contents.font.color = normal_color
    # unless the enemy info is hidden
    unless $game_album.enemy_blacklisted?(@enemy.id)
    # Draw the names of the actions the enemy can perform
    for i in 0...@enemy.actions.size
      # If the action is not a skill
      if @enemy.actions.kind == 0
        # Draw text that corresponds to action basic type
        case @enemy.actions.basic
        when 0
          self.contents.draw_text(x, 24 * i + 76, 200, 24, 'Attack')
        when 1
          self.contents.draw_text(x, 24 * i + 76, 200, 24, 'Defend')
        when 2
          self.contents.draw_text(x, 24 * i + 76, 200, 24, 'Escape')
        when 3
          self.contents.draw_text(x, 24 * i + 76, 200, 24, 'Do Nothing')
        end
        # Other wise if actions is a skill, draw the name of the skill
      elsif @enemy.actions.kind = 1
        ability = $data_skills[@enemy.actions.skill_id].name
        self.contents.draw_text(x, 24 * i + 76, 200, 24, ability)
      end
    end
    end
  end
end

#==============================================================================
# ** Window_Album_Command
#==============================================================================

class Window_Album_Command < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     width    : window width
  #     commands : command text string array
  #--------------------------------------------------------------------------
  def initialize(commands)
    super(0, 360, 544, 56)
    @item_max = commands.size
    @commands = commands
    @column_max = 4
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i, normal_color)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #     index : item number
  #--------------------------------------------------------------------------
  def draw_item(index, color)
    self.contents.font.color = color
    x = 4 + index * 136
    self.contents.draw_text(x, 0, 160, 32, @commands[index])
  end
  #--------------------------------------------------------------------------
  # * Disable Item
  #     index : item number
  #--------------------------------------------------------------------------
  def disable_item(index)
    draw_item(index, disabled_color)
  end
end

#==============================================================================
#  Section II: Dependancy WIndows
#==============================================================================

#==============================================================================
# ** Window_Base
#==============================================================================

class Window_Base < Window
  #
  def draw_monster_name(monster, x, y, enabled = true)
    self.contents.font.color = normal_color
    if monster == nil
      self.contents.draw_text(x+50, y, 204, 32, '????????', 0)
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 204, 32, '???', 0)
    else
      self.contents.draw_text(x+50, y, 204, 32, monster.name, 0)
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 204, 32, sprintf("%03d", monster.id.to_s), 0)
    end
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's picture
  #--------------------------------------------------------------------------
  def draw_enemy_picture(enemy, x, y)
    bitmap = Cache.battler(enemy.battler_name, enemy.battler_hue)
    x2 = bitmap.width
    y2 = bitmap.height
    x3 = x2 / 2
    y3 = y2 - 120
    src_rect = Rect.new(0, 0, x2, y2)
    # If enemy height is greater than 220, draw the picture lower on the screen
    if bitmap.height > 220
      self.contents.blt(x - x3, y - y3, bitmap, src_rect)
    else
      self.contents.blt(x - x3, y - y2, bitmap, src_rect)
    end
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's large picture
  #--------------------------------------------------------------------------
  def draw_enemy_picture2(enemy)
    bitmap = Cache.battler(enemy.battler_name, enemy.battler_hue)
    x2 = bitmap.width
    y2 = bitmap.height
    x3 = 398 - bitmap.width
    y3 = 398 - bitmap.height
    src_rect = Rect.new(0, 0, x2, y2)
    if x3 <= y3
     new_rect = Rect.new(160, 10, x2 + x3, y2 + x3)
    else
     new_rect = Rect.new(160, 10, x2 + y3, y2 + y3)
    end
    self.contents.stretch_blt(new_rect, bitmap, src_rect, 100)
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's name
  #--------------------------------------------------------------------------
  def draw_enemy_name(enemy, x, y, color)
    self.contents.font.color = color
    self.contents.font.size = 24
    self.contents.draw_text(x, y, 400, 32, enemy.name)
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's gold
  #--------------------------------------------------------------------------
  def draw_enemy_gold(enemy, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 100, 32, "$")
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 24, y, 84, 32, enemy.gold.to_s, 2)
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's exp
  #--------------------------------------------------------------------------
  def draw_enemy_exp(enemy, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 32, 32, "EXP")
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 24, y, 84, 32, enemy.exp.to_s, 2)
  end
  #--------------------------------------------------------------------------
  # * Draws enemy's statistics
  #--------------------------------------------------------------------------
  def draw_enemy_stats(enemy, x, y, hidden)
    # Change color
    self.contents.font.color = system_color
    # Draw text
    self.contents.draw_text(x, y, 32, 32, "HP")
    self.contents.draw_text(x + 150, y, 32, 32, "SP")
    self.contents.draw_text(x, y + 26, 32, 32, "Atk")
    self.contents.draw_text(x + 150, y + 26, 32, 32, "Str")
    self.contents.draw_text(x, y + 52, 60, 32, "Def")
    self.contents.draw_text(x + 150, y + 52, 32, 32, "Mdf")
    self.contents.draw_text(x, y + 78, 32, 32, "Dex")
    self.contents.draw_text(x + 150, y + 78, 32, 32, "Int")
    self.contents.draw_text(x, y + 104, 32, 32, "Agi")
    self.contents.draw_text(x + 150, y + 104, 32, 32, "Eva")
    self.contents.draw_text(x, y - 120, 125, 32, "Items Dropped :")
    #self.contents.draw_text(x, y - 65, 100, 32, "Drop Rate :")
    # Change color
    self.contents.font.color = normal_color
    # Draw stats, draw ?'s if enemy is hidden
    if hidden
      self.contents.draw_text(x + 40, y, 84, 32, '???', 2)
      self.contents.draw_text(x + 190, y, 84, 32, '???', 2)
      self.contents.draw_text(x + 40, y + 26, 84, 32, '???', 2)
      self.contents.draw_text(x + 190, y + 26, 84, 32, '???', 2)
      self.contents.draw_text(x + 40, y + 52, 84, 32, '???', 2)
      self.contents.draw_text(x + 190, y + 52, 84, 32, '???', 2)
      self.contents.draw_text(x + 40, y + 78, 84, 32, '???', 2)
      self.contents.draw_text(x + 190, y + 78, 84, 32, '???', 2)
    else
      self.contents.draw_text(x + 40, y, 84, 32, enemy.maxhp.to_s, 2)
      self.contents.draw_text(x + 190, y, 84, 32, enemy.maxmp.to_s, 2)
      self.contents.draw_text(x + 40, y + 26, 84, 32, enemy.atk.to_s, 2)
      self.contents.draw_text(x + 190, y + 26, 84, 32, enemy.def.to_s, 2)
      self.contents.draw_text(x + 40, y + 52, 84, 32, enemy.hit.to_s, 2)
      self.contents.draw_text(x + 190, y + 52, 84, 32, enemy.spi.to_s, 2)
      self.contents.draw_text(x + 40, y + 78, 84, 32, enemy.agi.to_s, 2)
      self.contents.draw_text(x + 190, y + 78, 84, 32, enemy.eva.to_s, 2)
    end
    # If enemy has an item, draw its name and icon
    if enemy.drop_item1.kind == 1
      draw_item_name($data_items[enemy.drop_item1.item_id], x, y - 85)
    end
    # If enemy has a weapon, draw its name and icon
    if enemy.drop_item1.kind == 2
      draw_item_name($data_weapons[enemy.drop_item1.weapon_id], x, y - 85)
      #self.contents.draw_text(x + 95, y - 75, 50, 32, enemy.drop_item1.denominator.to_s + "%", 2)
    end
    # If enemy has a piece armor, draw its name and icon
    if enemy.drop_item1.kind == 3
      draw_item_name($data_armors[enemy.drop_item1.armor_id], x, y - 85)
    end
    
    # If enemy has an item, draw its name and icon
    if enemy.drop_item2.kind == 1
      draw_item_name($data_items[enemy.drop_item2.item_id], x, y - 50)
    end
    # If enemy has a weapon, draw its name and icon
    if enemy.drop_item2.kind == 2
      draw_item_name($data_weapons[enemy.drop_item2.weapon_id], x, y - 50)
    end
    # If enemy has a piece armor, draw its name and icon
    if enemy.drop_item2.kind == 3
      draw_item_name($data_armors[enemy.drop_item2.armor_id], x, y - 50)
    end
  end
end

#==============================================================================
# Section III: Dependancy Classes
#==============================================================================

#==============================================================================
# ** Game_Troop
#==============================================================================

class Game_Troop
  #--------------------------------------------------------------------------
  # * enemy single out algorithym
  #   Filters out a single enemy of the specified ID
  #--------------------------------------------------------------------------
  def single_out_enemy(id)
    # Set variable to false.
    # Later this will be set to true when the first enemy ID is found
    has_been_singled = false
    # Sort out array yo make it easlier to search
    @enemies.sort! {|a, z| a.id <=> z.id}
    # Reverse the sorted array if first index is greater than ID to be searched
    if @enemies[0].id > id
      @enemies.reverse!
    end
    # Scroll through all the enemies in the array and check the following
    for each in @enemies
      # Do the next check if the current enemy isn't hidden or dead
      unless each.hidden or each.dead?
        # Find one enemy of the specified ID, and get rid of the rest
        if each.enemy.id != id or (each.enemy.id == id and has_been_singled)
          each.escape
        else
          has_been_singled = true
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Adds defeated enemies to the Album
  #--------------------------------------------------------------------------
  def process_album_enemies
    for each in dead_members
      # If the bestairy doesn't already have this monster, then add it
      if !$game_album.killed.include?(each.enemy)
        $game_album.add_enemy_killed(each.enemy)
      end
    end
  end
end

#==============================================================================
# ** Scene_Battle
#==============================================================================

class Scene_Battle
  #--------------------------------------------------------------------------
  # * Escape Processing
  #--------------------------------------------------------------------------
  def process_escape
    @info_viewport.visible = false
    @message_window.visible = true
    text = sprintf(Vocab::EscapeStart, $game_party.name)
    $game_message.texts.push(text)
    if $game_troop.preemptive
      success = true
    else
      success = (rand(100) < @escape_ratio)
    end
    Sound.play_escape
    if success
      wait_for_message
      # Call method that collects monsters and sends them to the album
      $game_troop.process_album_enemies
      battle_end(1)
    else
      @escape_ratio += 10
      $game_message.texts.push('\.' + Vocab::EscapeFailure)
      wait_for_message
      $game_party.clear_actions
      start_main
    end
  end
  #--------------------------------------------------------------------------
  # * Victory Processing
  #--------------------------------------------------------------------------
  def process_victory
    @info_viewport.visible = false
    @message_window.visible = true
    RPG::BGM.stop
    $game_system.battle_end_me.play
    unless $BTEST
      $game_temp.map_bgm.play
      $game_temp.map_bgs.play
    end
    # Call method that collects monsters and sends them to the album
    $game_troop.process_album_enemies
    if $game_album.battle_test
      $game_album.battle_test = false
    else
      display_exp_and_gold
      display_drop_items
      display_level_up
    end
    battle_end(0)
  end
end

#==============================================================================
# ** Scene_Menu
#==============================================================================

class Scene_Menu
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::album
    s6 = Vocab::save
    s7 = Vocab::game_end
    @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7])
    @command_window.index = @menu_index
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)     # Disable item
      @command_window.draw_item(1, false)     # Disable skill
      @command_window.draw_item(2, false)     # Disable equipment
      @command_window.draw_item(3, false)     # Disable status
    end
    if $game_system.save_disabled             # If save is forbidden
      @command_window.draw_item(5, false)     # Disable save
    end
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection
  #--------------------------------------------------------------------------
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and @command_window.index < 5
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 5
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4      # Album
        $scene = Scene_Album.new
      when 5      # Save
        $scene = Scene_File.new(true, false, false)
      when 6      # End Game
        $scene = Scene_End.new
      end
    end
  end
end


#==============================================================================
# Section IV: Data_Management
#------------------------------------------------------------------------------
#  This bundle of code is just the Scene Title, Save and Load classes with some
#  modified methods to handle, store, and retrieve the Bestairy data
#==============================================================================

#==============================================================================
# ** Scene_Title
#==============================================================================

class Scene_Title
  #--------------------------------------------------------------------------
  # * Create Game Objects
  #--------------------------------------------------------------------------
  def create_game_objects
    $game_temp          = Game_Temp.new
    $game_message       = Game_Message.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new[
« Letzte Änderung: März 29, 2010, 16:56:20 von timas »

Re: Hilfe zu Skripten.

Offline PDM

  • Bibliothekar
  • Global Mod
  • VX-Kenner
  • ****
  • Beiträge: 468
    • Mein Blog
Re: Hilfe zu Skripten.
« Antwort #384 am: März 29, 2010, 16:41:38 »
Es wäre hilfreich wenn du das Script hier mal im Spoiler posten würdest.
PDM's Gameplays
Skype-Name: lordpdm

Re: Hilfe zu Skripten.

Offline _D3nn!§_

  • Hat Haare auf dem Kopf =D
  • Database-Verunstalter
  • **
  • Beiträge: 148
  • ~~(Dennisoftware)~~
    • Willste wohl gerne wissen wa? xD
Re: Hilfe zu Skripten.
« Antwort #385 am: März 29, 2010, 16:48:27 »
Du solltest das mal in [code.][/code.] packen,
sonst bleiben die smileys :D (ohne Punkte)
Spoiler for Hiden:
-------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------

Spoiler for Hiden:
[desc=Es fehlen nur
nochmal eine kleine
Bugsäuberung und
der Feinschliff ! ^^
]The new Horizon of Evil 2[/desc]
[desc=Downloadbereit ! (Mein Profil oder VX Spiele !)]Gun For Fun[/desc]

Re: Hilfe zu Skripten.

Offline Kvote

  • Angehender Tutorinator :D
  • Mr. MACK-Tile
  • ***
  • Beiträge: 219
  • Change the Set, change the World!
    • My Senseless World - Enter it!
Re: Hilfe zu Skripten.
« Antwort #386 am: April 08, 2010, 15:35:59 »
Halli Hallo :D

So nun habe ich ein ziemlich großes Problem und hoffe das sich hier jemand findet der mir zu einer Lösung verhelfen kann ^^

Worum gehts ?
Also ich benutze momentan das [desc=wobei nur wichtig ist das es ein Sideview BS ist!]Tenkentai Sideview Battlesystem 3.3[/desc] und ich würde gerne Custom Animations verwenden! Gut mein Proplem hierbei: Wenn ich jetzt eine Gepixelte eigens erstellte BA nutze sammt Held (also nicht nur die Animation sondern auch der Held der auf den Gegner zurennt und den Angriff ausführt) wird es wohl so sein das sich Animation und Held überlagern! Also der Held wird nicht während der Animation verschwinden sonder einfach seinen Angriff ausführen und das will ich nicht....also das man das sieht! Außerdem würde ich gerne "Cut-In´s" verwenden zu den Animationen aber das ist mal nebensächlich ^^ Mein Problem also, wie stelle ich das an? Wie mache ich den Charakter unsichtbar und wie weis ich wie und wo ich meine Animation setzen und pixeln soll sodass sie nicht am oberen Bildschirmrand durchgeführt wird (das ist jetz nur ein überzogenes Beispiel) ?

Ich habe mich mit einigen Leuten unterhalten doch erlichgesagt konnte mir einfach keiner eine wirklich konkrete Antwort darauf geben! Ich denke das das einige Leute beschäftigt oder sies lassen weils zu kompliziert ist! Man hat mir auch gesagt das es eventuell eine Möglichkeit giebt das per Skripteinstellung zu lösen! Wenn das möglich ist wäre ich über eine Beschreibung wie und was ich machen muss sehr dankbar da ich eigentlich kaum Ahnung hab vom Skripten!

Falls es mit einer gepixelten Überlagerung gelöst werden kann, oder duch ein Event etc. soll mir das auch recht sein :) Ich bitte euch nur wenns denn geht mir hierbei zu helfen :D

Schonmal vielen Dank fürs Grübeln xD
Antworten und IDEEN bitte per PN an mich ^^



gruß, Kvote

Re: Hilfe zu Skripten.

Offline DCircle

  • Ralph
  • *
  • Beiträge: 9
Re: Hilfe zu Skripten.
« Antwort #387 am: April 24, 2010, 15:05:04 »
Hallöchen!

Ich hab ein kleines Problem mit dem Tileset-Script. Und zwar verwandeln sich die Tilesets
jedes mal zurück in das Standard-RTP, nachdem ein Menü geöffnet wurde (Speichermenü, Standard-Menü, Shopping-Menü).
Ich habe jetzt zwar auf jede map ein "reload"-Event eingefügt, welches nach aufrufen des Menüs das Tileset wiederherstellt, allerdings braucht dieses Event einen Moment um zu greifen und in diesem Moment sieht man die etwas chaotische Umgebung im Standard-RTP.

Ich denke, dass sich dieses Problem über ein eigenes Menü lösen lassen könnte, aber solange ich noch keines habe (ich bin mir garnicht sicher OB ich eines machen will) regt mich dieses Tileset-Gehopse doch ziemlich auf...

Ich würde mich über Lösungsvorschläge freuen, gerne auch per PN.

Lg DCircle

Re: Hilfe zu Skripten.

Offline Master Chain

  • Smalltalk-Front
  • VX-Meister
  • ****
  • Beiträge: 605
  • Kette ähm *Hust Colo for Admin
    • Mein Youtube Channel
Re: Hilfe zu Skripten.
« Antwort #388 am: April 24, 2010, 21:10:36 »
Sprichste Reinzufällig von Hell´s Tileset Reloader verwende diesen habe aber damit keine Probleme

Re: Hilfe zu Skripten.

Offline DCircle

  • Ralph
  • *
  • Beiträge: 9
Re: Hilfe zu Skripten.
« Antwort #389 am: April 24, 2010, 23:06:40 »
Jop ich benutze Hell's TileSet Reloaded und irgendwie funktioniert das bei mir allgemein nach dem Zufallsprinzip. Manchmal lädt der das Tileset auch garnicht wenn ich das in nen parallelen prozess stecke statt in nen autorun event.

Aber mein Hauptproblem ist halt, dass das Öffnen eines Fensters sei es Menü oder Savescreen das Script rückgängig macht. Kann man da irgendwas im Skript rumdrehen, dass das nicht passiert?
Oder falls es bei dir nicht passieren sollte: Kannst du mir sagen was für Skripts du noch benutzt? Könnte es evtl. an nem anderen Skript liegen?
Benutze noch Hells Illumino, nen Alle-Tasten-Skript sowie ein Jump-Skript was die Jump-Funktion berichtigt.

 


 Bild des Monats

rooftop party

Views: 3583
By: papilion

 Umfrage

  • Wer soll das BdM gewinnen?
  • Dot Kandidat 1
  • 3 (25%)
  • Dot Kandidat 2
  • 1 (8%)
  • Dot Kandidat 3
  • 2 (16%)
  • Dot Kandidat 4
  • 0 (0%)
  • Dot Kandidat 5
  • 6 (50%)
  • Stimmen insgesamt: 12
  • View Topic

 Schnellsuche





SimplePortal 2.3.3 © 2008-2010, SimplePortal