Partagez
Aller en bas
Korndor
Korndor
Staffeux retraité

Nombre de messages : 4959
Age : 106
Localisation : Erem Vehyx
Distinction : Champion de boxe et au lit ! :O [Wax]
Être Mythique [Mister]
Papi Korndor qui a l'ostéoporose [Skillo]
Soldat Ikéa [Coco']
Un bonhomme, un vrai ! [Neresis]
Vieillard acariâtre [Didier Gustin]
Date d'inscription : 16/12/2007
https://www.rpgmakervx-fr.com/

Bordure aux facesets Empty Bordure aux facesets

le Mar 26 Fév 2008 - 10:23
Nom du script: Quick Face Border
Auteur:woratana (Encore lui oui )

Script à placer au dessus du script main (Peut importe le nom).
Il permet de placer une bordure autour des Facesets.


Bordure aux facesets Facebor2

Code:
# ● [VX] ◦ Quick Face Border ◦
#------------------------------------------------------------------------------
# ◦ by Woratana [woratana@hotmail.com]
# ◦ Thaiware RPG Maker Community
# ◦ Released Date: 22/02/2008
# ◦ Mini traduction de Jean Monos. (Pas besoin de me créditer mais Woratana oui!
#------------------------------------------------------------------------------

#===============================================================
#                         
#                www.rpgmakervx-fr.com                                         
#     
#===============================================================

class Window_Base < Window

#------------------------------
# Paramètre de départ du script  SCRIPT
#---------------------------
BORDER_SKIN = "Window" # Nom du " Window Skin"  pour les bords
BORDER_OPACITY = 255 # Opacité des bords  (0 - 255)

# (true/false)
USE_BORDER_IN_MENU = true
USE_BORDER_IN_MESSAGE = true
USE_BORDER_IN_STATUS_WINDOW = true
USE_BORDER_IN_NAME_WINDOW = true
#------------------------------
# Fin des paramètres 
#---------------------------

alias wor_facbor_winbas_ini initialize
alias wor_facbor_winbas_dis dispose
alias wor_facbor_winbas_draf draw_face
def initialize(x, y, width, height)
wor_facbor_winbas_ini(x, y, width, height)
@border = Array.new
end

def dispose
if @border != []
for i in 0..@border.size - 1
@border[i].dispose if !@border[i].nil?
end
end
wor_facbor_winbas_dis
end

def draw_face(face_name, face_index, x, y, size = 96)
if ($scene.is_a?(Scene_Menu) and USE_BORDER_IN_MENU) or ($scene.is_a?(Scene_Map) and USE_BORDER_IN_MESSAGE) or ($scene.is_a?(Scene_Status) and USE_BORDER_IN_STATUS_WINDOW) or ($scene.is_a?(Scene_Name) and USE_BORDER_IN_NAME_WINDOW)
@border[@border.size] = Window_Border.new(self.x + x + 16,self.y + y + 16,96,96)
end
wor_facbor_winbas_draf(face_name, face_index, x, y, size)
end
end

$worale = {} if !$worale
$worale["FaceBorder"] = true

class Window_Border < Window_Base

def initialize(x,y,width,height)
super(x,y,width,height)
self.windowskin = Cache.system(BORDER_SKIN)
self.opacity = BORDER_OPACITY
self.back_opacity = 0
self.z = 500
end

end




Voici la version 1.5 du script.

Bordure aux facesets Facborcustom
Et voici la bordure custom de l'exemple.
Bordure aux facesets Borderpic





Code:
#============================================================
# ● [VX] ◦ Quick Face Border ◦
#------------------------------------------------------------
# ◦ by Woratana [woratana@hotmail.com]
# ◦ Thaiware RPG Maker Community
# ◦ Released Date: 23/02/2008
# - Mini traduction de Jean Monos.
#------------------------------------------------------------
# Version 1.5
# - Edited Window_Message Bug
# - You can use custom image for border
#------------------------------------------------------------
class Window_Base < Window
  #------------------------------
  # START SETUP SCRIPT
  #---------------------------
  BORDER_MODE = 0 # Change le mode affichage(0: Use Windowskin, 1:Custom)
  BORDER_SKIN = "Window" # Non de l'image windowskin en mode 0 (Mode 0)
  BORDER_IMAGE = "borderpic" # Nom de l'image custom en mode (Mode 1)
  # L'image custome doit être dans le dossier  "Graphics/Pictures" et être en 96 x 96 pixel
 
  BORDER_OPACITY = 255 # Opacité de la bordure (0 - 255)
 
  # (true/false)
  USE_BORDER_IN_MENU = true
  USE_BORDER_IN_MESSAGE = true
  USE_BORDER_IN_STATUS_WINDOW = true
  USE_BORDER_IN_NAME_WINDOW = true
  #------------------------------
  # END SETUP SCRIPT
  #---------------------------
  alias wor_facbor_winbas_ini initialize
  alias wor_facbor_winbas_dis dispose
  alias wor_facbor_winbas_draf draw_face
 
  def initialize(x, y, width, height)
    wor_facbor_winbas_ini(x, y, width, height)
    @border = Array.new
  end

  def dispose
    delete_border if @border != []
    wor_facbor_winbas_dis
  end
 
  def draw_face(face_name, face_index, x, y, size = 96)
    if ($scene.is_a?(Scene_Menu) and USE_BORDER_IN_MENU) or ($scene.is_a?(Scene_Map) and USE_BORDER_IN_MESSAGE) or ($scene.is_a?(Scene_Status) and USE_BORDER_IN_STATUS_WINDOW) or ($scene.is_a?(Scene_Name) and USE_BORDER_IN_NAME_WINDOW)
      if BORDER_MODE == 0
        @border.push Window_Border.new(self.x + x + 16,self.y + y + 16,96,96)
      elsif BORDER_MODE == 1
        id = @border.size
        @border[id] = Sprite.new
        @border[id].bitmap = Cache.picture(BORDER_IMAGE)
        @border[id].x = self.x + x + 16
        @border[id].y = self.y + y + 16
        @border[id].z = 500
    end
    end
    wor_facbor_winbas_draf(face_name, face_index, x, y, size)
  end
 
  def delete_border
      for i in 0..(@border.size - 1)
        if BORDER_MODE == 0 and !@border[i].nil?
          @border[i].dispose
        elsif BORDER_MODE == 1 and !@border[i].nil?
          @border[i].bitmap.dispose
          @border[i].dispose
        end
      end
      @border = []
  end
 
end

  $worale = {} if !$worale
  $worale["FaceBorder"] = true
 
class Window_Border < Window_Base
 
  def initialize(x,y,width,height)
    super(x,y,width,height)
    self.windowskin = Cache.system(BORDER_SKIN)
    self.opacity = BORDER_OPACITY
    self.back_opacity = 0
    self.z = 500
  end
 
end

class Window_Message < Window_Selectable
  alias wor_facbot_winmsg_upd update
  def update
    wor_facbot_winmsg_upd
  if @closing and @border != []
    delete_border
  end
  end
end



[Pris sur le forum de notre partenaire, RMVX love]
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum