Vai al contenuto

Rilevato Ad-Blocker. Per favore disabilita il tuo adblocker quando navighi su makerando.com - Non c'è nessun annuncio invasivo.

Cerca nel Forum

Showing results for tags 'Extra Movement Frames'.



More search options

  • Search By Tags

    Tag separati da virgole.
  • Search By Author

Tipo di contenuto


Forums

  • Comunità
    • Cancello di Ingresso
    • Bacheca
    • Colisseum
  • DevTeam
    • CyberTeam
  • Giochi e Progetti RPG Maker
    • Resa Grafica
    • Concept e Bozze
    • Progetti
    • Giochi RPG Maker Completi e Demo
    • Il Making Oltreoceano
  • Assistenza e Supporto RPG Maker
    • Biblioteca
    • BrainStorming
    • Chiedi Aiuto alla Comunity
    • RPG Maker Scripting
    • PlugIn e AddOn RPG Maker
    • Musica e Suoni
    • Risorse Grafiche RPG Maker
    • Mak - Resources
  • Beyond Making - Oltre RPG Maker
    • Altri Tool

Find results in...

Find results that contain...


Data di creazione

  • Start

    End


Ultimo Aggiornamento

  • Start

    End


Filter by number of...

Iscritto

  • Start

    End


Gruppo


AIM


Indirizzo Web


ICQ


Yahoo


Skype


Location


Interests

Trovato 1 risultato

  1. Nome Script: Extra Movement Frames Versione: modern algebra Autore/i: 1.0 Informazioni: Con questo script si possono usare chara con più di 3 frame di movimento, ottenendo così maggiore fluidità nella camminata del personaggio/i. Si possono importare direttamente anche chara dell'XP rinominando però il file ^^ Istruzioni: Lo script si deve inserire sopra Main. Per utilizzare un chara con più frame, bisogna rinominare il file in questo modo: !$%[<numero di frame>]<Nomefile> Esempio: $% [4]001-Fighter01 Ciò renderebbe la grafica di 001-Fighter01 a 4 frame. Script: #============================================================================== # Extra Movement Frames v. 1.0 # Author: modern algebra (rmrk.net) # Date: January 20, 2008 #------------------------------------------------------------------------------ # Instructions: # Insert this script above main in the database. To add a character with # extra movement frames, simply rename the character graphic to something # of the form: # !$%[<number of movement frames>]<Regular name> # # Example: !$%[4]001-Fighter01 # That would make the graphic 001-Fighter01 be interpreted as having 4 frames #------------------------------------------------------------------------------ # ** Game_Character #------------------------------------------------------------------------------ # Summary of changes: # aliased methods - update_animation # new class variables - height divisor, width divisor # new methods - calculate_divisors #============================================================================== class Game_Character #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :height_divisor # The height of a single frame attr_reader :width_divisor # number of frames in the x direction attr_reader :char_frames #-------------------------------------------------------------------------- # * Calculate Divisors #-------------------------------------------------------------------------- # Sets up the instance variables required #-------------------------------------------------------------------------- def calculate_divisors return unless @previous_character.nil? || @previous_character != @character_name bitmap = Cache.character (@character_name) sign = @character_name[/^[!$].[%][d*]/] if !sign.nil? && sign.size > 5 @original_pattern = 0 @width_divisor = sign[4, sign.size - 5].to_i @height_divisor = 4 @char_frames = @width_divisor elsif !sign.nil? && sign.include? ('$') @width_divisor = 3 @height_divisor = 4 @char_frames = 3 else @width_divisor = 12 @height_divisor = 8 @char_frames = 3 end @previous_character = @character_name end #-------------------------------------------------------------------------- # * Update Animation #-------------------------------------------------------------------------- # Change the hard coded values to ones dependent on character graphic format #-------------------------------------------------------------------------- alias ma_extra_movement_frames_anim_upd update_animation def update_animation if @char_frames == 3 ma_extra_movement_frames_anim_upd return end saved_anime_count = @anime_count pattern_original = @pattern speed = @move_speed + (dash? ? 1 : 0) ma_extra_movement_frames_anim_upd if (saved_anime_count > (18 - speed * 2)) && (@[member=Stephenol]_anime || (@stop_count <= 0)) @pattern = (pattern_original + 1) % @char_frames end end end #============================================================================== # * Sprite Character #------------------------------------------------------------------------------ # Summary of changes: # aliased methods - update_src_rect, update_bitmap #============================================================================== class Sprite_Character #-------------------------------------------------------------------------- # * Update Src Rect #-------------------------------------------------------------------------- # Interpret multiple movement frames: Changed pattern #-------------------------------------------------------------------------- alias ma_extra_movement_frames_src_rect_upd update_src_rect def update_src_rect if @tile_id == 0 ma_extra_movement_frames_src_rect_upd index = @character.character_index pattern = @character.pattern < @character.char_frames ? @character.pattern : 1 sx = (index % 4 * 3 + pattern) * @cw sy = (index / 4 * 4 + (@character.direction - 2) / 2) * @ch self.src_rect.set(sx, sy, @cw, @ch) end end #-------------------------------------------------------------------------- # * Update Bitmap #-------------------------------------------------------------------------- # Change hard coded values to ones dependent on character graphic #-------------------------------------------------------------------------- alias ma_extra_movement_frames_bmp_upd update_bitmap def update_bitmap @character.calculate_divisors saved_tile_id = @tile_id saved_character_name = @character_name saved_character_index = @character_index ma_extra_movement_frames_bmp_upd if saved_tile_id != @character.tile_id or saved_character_name != @character.character_name or saved_character_index != @character.character_index unless @tile_id > 0 @cw = bitmap.width / @character.width_divisor @ch = bitmap.height / @character.height_divisor self.ox = @cw / 2 self.oy = @ch end end end end #============================================================================== # ** Window Base #------------------------------------------------------------------------------ # Summary of changes: # overwritten methods - draw_character #============================================================================== class Window_Base #-------------------------------------------------------------------------- # * Draw Charater (overwritten for extra movement frames) # character_name : the name of the character file # character_index : the index of the character in the file # x : the x position to draw # y : the y position to draw #-------------------------------------------------------------------------- def draw_character(character_name, character_index, x, y) return if character_name == nil bitmap = Cache.character(character_name) sign = character_name[/^[!$].[%][d*]/] if !sign.nil? && sign.size > 5 cw = bitmap.width / sign[4, sign.size - 5].to_i ch = bitmap.height / 4 elsif sign != nil and sign.include?('$') cw = bitmap.width / 3 ch = bitmap.height / 4 else cw = bitmap.width / 12 ch = bitmap.height / 8 end n = character_index src_rect = Rect.new((n%4*3+1)*cw, (n/4*4)*ch, cw, ch) self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect) end end
×