Partagez
Aller en bas
Victor J.
Victor J.
Membre

Nombre de messages : 64
Age : 16
Distinction : aucune
Date d'inscription : 15/02/2014

TheoAllen - Animated Battleback Empty TheoAllen - Animated Battleback

le Dim 16 Mar 2014 - 15:13
Bonjour!
Voici un script que j'ai trouvé permettant d'animer les fonds de combats (battlebacks).

Voici le lien de la démo : https://dl.dropboxusercontent.com/u/41797508/VXA/AnimBB.exe
Et voici le script :
Code:
# =============================================================================
# TheoAllen - Animated Battleback
# Version : 1.0
# Contact : www.rpgmakerid.com (or) http://theolized.blogspot.com
# (This script documentation is written in informal indonesian language)
# =============================================================================
($imported ||= {})[:Theo_AnimBattleBack] = true
# =============================================================================
# Change Logs:
# -----------------------------------------------------------------------------
# 2013.10.28 - Finished script
# =============================================================================
=begin
  
  ------------------------------------------------------------------------
  Perkenalan :
  ------------------------------------------------------------------------
  Pengen battleback kamu bisa gerak? Well, mungkin script ini bisa mewujudkan
  impianmu. Semoga saja
  
  ------------------------------------------------------------------------
  Cara penggunaan :
  ------------------------------------------------------------------------
  Pasang script ini dibawah material namun diatas main
  Buat folder "AnimBattleBack" di dalam folder Graphics.
  
  Siapkan gambar background untuk battleback dengan format nama
  "namafile_01.png". Siapkan gambar berikutnya untuk frame animasi setelahnya
  dan namakan dengan "namafile_02.png". Dan seterusnya. Kamu boleh memasukkan
  frame animasi sebanyak yang kamu mau. Dan perlu diingat, jangan lupa dengan
  nomor frame belakang tersebut ("_02.png" dst ...)
  
  Untuk menggunakan animated battleback pada map tertentu, gunakan notetag
  <anim bb: key_animasi> dimana "key_animasi" adalah "key" yang berada pada
  konfigurasi dibawah. Perlu diingat, penulisan "key_animasi" pada notetag
  tidak perlu disertai kutip
  
  ------------------------------------------------------------------------
  Terms of use :
  ------------------------------------------------------------------------
  Credit gw, TheoAllen. Kalo semisal u bisa ngedit2 script gw trus jadi lebih
  keren, terserah. Ane bebasin. Asal ngga ngeklaim aja. Kalo semisal mau
  dipake buat komersil, jangan lupa, gw dibagi gratisannya.

=end
# =============================================================================
# Konfigurasi
# =============================================================================
module Theo
  module AnimBB
  # --------------------------------------------------------------------------
  # Animated Battleback Database
  # --------------------------------------------------------------------------
  # Paduan konfigurasi :
  #
  # Key     --> Kata kunci untuk dipergunakan dalam notetag di map properties
  # Nama    --> Nama untuk file gambar (tanpa disertai "_01")
  # Frame   --> Frame maksimal gambar. Misalnya animasi framenya ada 20
  # Rate    --> Refresh rate. Makin kecil, gambar akan makin cepet gerak
  # --------------------------------------------------------------------------
    List = {
  # "Key"     => ["Nama"      , Frame, Rate],
    "mansion" => ["mansion"   ,     8,    4],
    "dtown"   => ["deserttown",     7,   10],
  
  # Tambahin sendiri  
    } # <-- Jangan disentuh!
    
  end
end
# =============================================================================
# Akhir dari konfigurasi
# =============================================================================
class << Cache
  
  def animbattleback(filename, index)
    file = filename + sprintf("_%02d", index)
    load_bitmap("Graphics/AnimBattleBack/", file)
  end
  
end

class Game_System
  attr_accessor :anim_bb
  
  alias theo_animbb_init initialize
  def initialize
    theo_animbb_init
    @anim_bb = ""
  end
  
end

class Game_Map
  
  alias theo_animbb_setup setup
  def setup(map_id)
    theo_animbb_setup(map_id)
    setup_animbb
  end
  
  def setup_animbb
    $game_system.anim_bb = ""
    @map.note.split(/[\r\n]+/).each do |line|
      if line =~ /<(?:anim bb|anim_bb):[ ]*(.+)>/i
        $game_system.anim_bb = $1.to_s
      end
    end
  end
  
end

class AnimBB < Sprite
  attr_reader :name
  attr_reader :index
  
  def initialize(viewport)
    super(viewport)
    init_member
  end
  
  def init_member
    @name = $game_system.anim_bb
    @count = 0
    @index = 1
    refresh_bitmap
  end
  
  def refresh_bitmap
    if name.empty?
      self.bitmap = Cache.empty_bitmap
    else
      self.bitmap = Cache.animbattleback(file, index)
    end
  end
  
  def file
    Theo::AnimBB::List[name][0]
  end
  
  def max_index
    Theo::AnimBB::List[name][1]
  end
  
  def rate
    Theo::AnimBB::List[name][2]
  end
  
  def need_refresh?
    @count % rate == 0 && !name.empty?
  end
  
  def change_index
    @index += 1
    if @index == max_index
      @index = 1
    end
    refresh_bitmap
  end
  
  def update
    super
    @count += 1
    change_index if need_refresh?
  end
  
end

class Spriteset_Battle
  
  alias theo_animbb_create_viewports create_viewports
  def create_viewports
    theo_animbb_create_viewports
    create_animbb
  end
  
  def create_animbb
    @animbb = AnimBB.new(@viewport1)
    @animbb.z = 5
    center_sprite(@animbb)
  end
  
  alias theo_animbb_update update
  def update
    theo_animbb_update
    @animbb.update
  end
  
  alias theo_animbb_dispose dispose
  def dispose
    theo_animbb_dispose
    @animbb.dispose
  end
  
end

Si vous avez des problèmes, n'hésitez pas à demander !
Vidéo de ce que j'ai pu faire avec ce script :

Pour info, le fond de combat de la vidéo est composé de 24 images (frames dans le script), avec un rate de 12.

Spytje
Spytje
Administrateur

Nombre de messages : 5933
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

TheoAllen - Animated Battleback Empty Re: TheoAllen - Animated Battleback

le Dim 16 Mar 2014 - 16:11
Haha tu as finalement trouvé ?

Merci du partage Smile

_________________
TheoAllen - Animated Battleback 911

LE PROJET SUR FACEBOOK

N'hésitez pas à suivre la page  TheoAllen - Animated Battleback 344805
Victor J.
Victor J.
Membre

Nombre de messages : 64
Age : 16
Distinction : aucune
Date d'inscription : 15/02/2014

TheoAllen - Animated Battleback Empty Re: TheoAllen - Animated Battleback

le Dim 16 Mar 2014 - 22:35
Oui, enfin ! Smile
Kouett
Kouett
Membre

Nombre de messages : 71
Distinction : aucune
Date d'inscription : 17/02/2012

TheoAllen - Animated Battleback Empty Re: TheoAllen - Animated Battleback

le Dim 16 Mar 2014 - 22:51
Woaw! Super sympa merci!
Et les scripts de l'HUD et du combat de ta vidéo viennent de ton jeu, ou ils sont poster quelque part ? (:
Victor J.
Victor J.
Membre

Nombre de messages : 64
Age : 16
Distinction : aucune
Date d'inscription : 15/02/2014

TheoAllen - Animated Battleback Empty Re: TheoAllen - Animated Battleback

le Dim 16 Mar 2014 - 23:30
Euh ça vient d'un script à la base, mais j'ai fais une refonte graphique totale et j'ai fais quelques modifications dans le script, pour changer de place, de taille, etc... ^^

EDIT : C'est ce script là : http://www.atelier-rgss.com/RGSS/Battle/ACE_BAT23.html Smile
Contenu sponsorisé

TheoAllen - Animated Battleback Empty Re: TheoAllen - Animated Battleback

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum