Script rpg maker xp (et un peu de vx)

pasdenom -  
 Goloup -
Bonjour,

je suis la pour donner des scripts!!!!!=)
alors je vais vous donner des script. et croyiez moi il marche tous!!!pour que vous me croyiez, je vais esseyer de montré des image aussi. mince sa marche pas pour les images... tant pis. mais voilà les script pour rpg maker xp!!!!!!

Remarque : Testé et fonctionnel. Avoir des facesets ( possibilité de prendre ceux de RPG Maker 2000 ) comme ressources.
Fonction : Permet d'afficher le visage d'un personnage dans vos messages.
Nombre de scripts : 1
Installation : uvrez l'éditeur de script ( F11 ) effacez le contenu du script " Window_Message " et remplacez le par le script ci-dessous.
- Pour afficher un faceset, vous devrez d'abord disposer de l'image, qui doit faire 96*96 pixels. Placez celle-ci dans le répertoire "Pictures" de votre projet.
Utilisation : Dans votre message, placez ensuite le code \f[nom] où nom est le nom de l'image sans son extension.

très bien, maintenant voici le code:

#==============================================================================
# Window_Message
#------------------------------------------------------------------------------
#
#==============================================================================

class Window_Message < Window_Selectable
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def initialize
super(80, 304, 480, 160)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font = Font.new("Arial")
self.visible = false
self.z = 9998
@fade_in = false
@fade_out = false
@contents_showing = false
@cursor_width = 0
@pic_width = 96
@pic_height = 96
self.active = false
self.index = -1
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def dispose
terminate_message
$game_temp.message_window_showing = false
if @input_number_window != nil
@input_number_window.dispose
end
super
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def terminate_message
self.active = false
self.pause = false
self.index = -1
self.contents.clear
@contents_showing = false

if $game_temp.message_proc != nil
$game_temp.message_proc.call
end

$game_temp.message_text = nil
$game_temp.message_proc = nil
$game_temp.choice_start = 99
$game_temp.choice_max = 0
$game_temp.choice_cancel_type = 0
$game_temp.choice_proc = nil
$game_temp.num_input_start = 99
$game_temp.num_input_variable_id = 0
$game_temp.num_input_digits_max = 0

if @gold_window != nil
@gold_window.dispose
@gold_window = nil
end
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
x = y = 0
@cursor_width = 0

if $game_temp.choice_start == 0
x = 8
end

if $game_temp.message_text != nil
text = $game_temp.message_text

begin
last_text = text.clone
text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
end until text == last_text
text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
$game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
end
text.gsub!(/\\[Ww]\[([0-9]+)\]/) do
@pic_width = $1.to_i
""
end
text.gsub!(/\\[Hh]\[([0-9]+)\]/) do
@pic_height = $1.to_i
""
end
text.gsub!(/\\[Ff]\[([\w]+)\]/) do
temp = RPG::Cache.picture($1)
pic_x = self.contents.width - @pic_width - 10
pic_y = self.contents.height / 2 - @pic_height / 2
dest = Rect.new(pic_x,pic_y,@pic_width, @pic_height)
src = Rect.new(0,0,temp.width, temp.height)
self.contents.stretch_blt(dest, temp, src)
""
end

text.gsub!(/\\\\/) { "\000" }
text.gsub!(/\\[Cc]\[([0-9]+)\]/) { "\001#{$1}" }
text.gsub!(/\\[Gg]/) { "\002" }

while ((c = text.slice!(/./m)) != nil)

if c == "\000"
c = "\\"
end

if c == "\001"
text.sub!(/\[([0-9]+)\]/, "")
color = $1.to_i
if color >= 0 and color <= 7
self.contents.font.color = text_color(color)
end
next
end

if c == "\002"
if @gold_window == nil
@gold_window = Window_Gold.new
@gold_window.x = 560 - @gold_window.width
if $game_temp.in_battle
@gold_window.y = 192
else
@gold_window.y = self.y >= 128 ? 32 : 384
end
@gold_window.opacity = self.opacity
@gold_window.back_opacity = self.back_opacity
end
next
end

if c == "\n"
if y >= $game_temp.choice_start
@cursor_width = [@cursor_width, x].max
end
y += 1
x = 0

if y >= $game_temp.choice_start
x = 8
end
next
end

self.contents.draw_text(4 + x, 32 * y, 40, 32, c)

x += self.contents.text_size(c).width
end
end

if $game_temp.choice_max > 0
@item_max = $game_temp.choice_max
self.active = true
self.index = 0
end

if $game_temp.num_input_variable_id > 0
digits_max = $game_temp.num_input_digits_max
number = $game_variables[$game_temp.num_input_variable_id]
@input_number_window = Window_InputNumber.new(digits_max)
@input_number_window.number = number
@input_number_window.x = self.x + 8
@input_number_window.y = self.y + $game_temp.num_input_start * 32
end
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def reset_window
if $game_temp.in_battle
self.y = 16
else
case $game_system.message_position
when 0 # ?
self.y = 16
when 1 # ?
self.y = 160
when 2 # ?
self.y = 304
end
end
if $game_system.message_frame == 0
self.opacity = 255
else
self.opacity = 0
end
self.back_opacity = 160
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def update
super

if @fade_in
self.contents_opacity += 24
if @input_number_window != nil
@input_number_window.contents_opacity += 24
end
if self.contents_opacity == 255
@fade_in = false
end
return
end

if @input_number_window != nil
@input_number_window.update

if Input.trigger?(Input::C)
$game_system.se_play($data_system.decision_se)
$game_variables[$game_temp.num_input_variable_id] =
@input_number_window.number
$game_map.need_refresh = true

@input_number_window.dispose
@input_number_window = nil
terminate_message
end
return
end

if @contents_showing

if $game_temp.choice_max == 0
self.pause = true
end

if Input.trigger?(Input::B)
if $game_temp.choice_max > 0 and $game_temp.choice_cancel_type > 0
$game_system.se_play($data_system.cancel_se)
$game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
terminate_message
end
end

if Input.trigger?(Input::C)
if $game_temp.choice_max > 0
$game_system.se_play($data_system.decision_se)
$game_temp.choice_proc.call(self.index)
end
terminate_message
end
return
end

if @fade_out == false and $game_temp.message_text != nil
@contents_showing = true
$game_temp.message_window_showing = true
reset_window
refresh
Graphics.frame_reset
self.visible = true
self.contents_opacity = 0
if @input_number_window != nil
@input_number_window.contents_opacity = 0
end
@fade_in = true
return
end

if self.visible
@fade_out = true
self.opacity -= 48
if self.opacity == 0
self.visible = false
@fade_out = false
$game_temp.message_window_showing = false
end
return
end
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def update_cursor_rect
if @index >= 0
n = $game_temp.choice_start + @index
self.cursor_rect.set(8, n * 32, @cursor_width, 32)
else
self.cursor_rect.empty
end
end
end

voili voilou!

prochain script, >>>>>>>>>>>... et ben vous verrez =)
Configuration: Windows vista
Firefox 3.5.2

2 réponses

  1. pasdenom
     
    bon cete fois c pour le héros.

    Remarque : Testé et fonctionnel Testé et fonctionnel. Ressource à mettre dans .../Graphics/Characters/

    Nombre de scripts : 1

    Installation : Ouvrez l'éditeur de script ( F11 ). Créez en un nouveau au dessus de 'Main' qui portera le nom de 'Dash' et collez le code ci-dessous :

    Utilisation : Appuyez sur Z pour courir. Chaque ressources permettant de montrer que le héros court, leurs noms doit terminer par "_dash" (Ex : 001-Fighter01_dash)

    et voici le code :

    Nombre de scripts : 1

    Installation : Ouvrez l'éditeur de script ( F11 ). Créez en un nouveau au dessus de 'Main' qui portera le nom de 'Dash' et collez le code ci-dessous :

    Utilisation : Appuyez sur Z pour courir. Chaque ressources permettant de montrer que le héros court, leurs noms doit terminer par "_dash" (Ex : 001-Fighter01_dash)

    et voilà le code.... :

    #==============================================================================
    # ++ ???????????? ver. 1.11 ++
    # Script by ???
    # http://rpg.para.s3p.net/
    #------------------------------------------------------------------------------
    # ?Graphics/Characters??????
    # ?(???????????????)+_dash????????????????
    # ?????????????????????(?:001-Fighter01_dash)
    #==============================================================================

    class Game_Player < Game_Character

    SPEED_DASH = 5 # ??????????
    SPEED_NORMAL = 4 # ???????

    # ??????????(??????Input::(???))
    #(????????????????????????)
    KEY_DASH = Input::A

    # "_dash"??????????????????????( true:?? / false:??? )
    NO_FILE_DASH = true

    # ??????????????ID
    # (????????????????????????????ON???????
    # ??????????????)
    NO_DASH_SWITCH = 999

    end

    #==============================================================================
    # ¦ Game_Player
    #==============================================================================

    class Game_Player < Game_Character

    #--------------------------------------------------------------------------
    # ? ??????
    #--------------------------------------------------------------------------
    alias dash_update update
    def update
    # ?????????????????????
    # ???????????????????????
    unless moving? or $game_system.map_interpreter.running? or
    @move_route_forcing or $game_temp.message_window_showing
    if !($game_switches[NO_DASH_SWITCH])
    # ????
    if Input.press?(KEY_DASH)
    if (dash_graphic_exist?($game_party.actors[0]) or NO_FILE_DASH)
    # ??????????????
    if @move_speed != SPEED_DASH
    @move_speed = SPEED_DASH
    @dash_on = true
    $game_player.refresh
    end
    end
    elsif @dash_on == nil or @dash_on
    @move_speed = SPEED_NORMAL
    @dash_on = nil
    $game_player.refresh
    end
    end
    end
    dash_update
    end
    #--------------------------------------------------------------------------
    # ? ??????????????????
    #--------------------------------------------------------------------------
    def dash_graphic_exist?(actor)
    # ???????
    begin
    RPG::Cache.character(actor.character_name.to_s + "_dash", actor.character_hue)
    rescue
    return false
    end
    return true
    end
    #--------------------------------------------------------------------------
    # ? ??????
    #--------------------------------------------------------------------------
    alias dash_refresh refresh
    def refresh
    dash_refresh
    # ??????? 0 ??????
    if $game_party.actors.size != 0
    actor = $game_party.actors[0]
    # ??????????????????
    if @dash_on and dash_graphic_exist?(actor)
    fileplus = "_dash"
    else
    fileplus = ""
    end
    @character_name = actor.character_name + fileplus
    @character_hue = actor.character_hue
    end
    end
    end
    et voilà!
    1
  2. pasdenom
     
    oupssssss il y a eu dé ptit problème vous voiyez n'est-ce pas? ben voila décendez en bas et plus riennn le code y est.
    1
    1. Goloup
       
      Completement Inutil, il exsiste des forum expres pour ce genre d'info
      0