[RPG-MAKER.FR] Oniromancie: tout l'univers de RPG Maker en français - Scripts - Menu Resident Evil

Oniromancie: Scripts - Menu Resident Evil


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace

Apprendre
RPG Maker

Guides
Tutoriels
Astuces
Making-of


Comment ça marche?

Aëdemphia
Par Sylvanor

Fighting Robots Quest
Par Boulon

Geex
Par roys

Inexistence
Par Falco

La Légende d'Ibabou
Par Zaitan

Nylu
Par NanakyTim

Sarcia
Par Kaëlar

Super Mario RPG - Lost Souls
Par Omegabowser

News: Game design: ouvrir son jeu aux (...) / News: Des jeux et des screens / News: Alex 2019 : tests et nominations (...) / Jeux: Wendy Whedon / Sorties: Wendy Whedon /

Chat  

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

174 connectés actuellement

10211069 visiteurs
depuis l'ouverture

99 visiteurs
aujourd'hui

Groupe Facebook

Barre de séparation

Partenaires






TOP
GAMEMAKING


Les 5 plus
visités

Akademiya RPG Maker

Alex d'Or

Blog of Chaos17

BloGecko

ConsoleFun

Au hasard

Le bazar à Omega

RitoJS Blog

Offgame

Les deux derniers

Zarok

Akademiya RPG Maker

Nos autres partenaires

Devenir
partenaire


Barre de séparation

Un site du réseau
War Paradise

Annuaires référenceurs




Menu Resident Evil
Script pour RPG Maker VX
Ecrit par Alkanédon

Salut salut !
Je vous apporte, vous, fan de resident evil, un script
qui vous permettra de créer un menu comme le jeu sus-nommé.
On dit quoi hein ? hein ? Merci Alka!

Aucune image n'est nécessaire ...
Si vous l'utilisez, nommez "Alucard_2" dans vos crédit
A placer au-dessus de Main.

Quelques screens : ;)

image
image
image
image
image



Portion de code:



########################################################################################

# Resident Evil 2/3 Menu v. 2.0 by Alucard_2 #
########################################################################################
# Feito por Alucard_2 #
########################################################################################
# Créditos para Alucard_2(criador) e para br_lemes(que me ensinou RGSS2 um pouco mais) #
#--------------------------------------------------------------------------------------#
# IMPORTANTE: Ao colocar este script em outro forum/site/outros, favor dar os créditos!#
########################################################################################

#####################
# Window_MenuStatus #
#####################
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# Inicialização do objeto
# x : coordenada X da janela
# y : coordenada Y da janela
#--------------------------------------------------------------------------
def initialize(x, y)
super(0, 112, 544, 248)
refresh
self.active = false
self.index = -1
end
#--------------------------------------------------------------------------
# Atualização
#--------------------------------------------------------------------------
def refresh
self.contents.clear
@item_max = 1
draw_actor_state($game_party.members[0], x, y)
end
end
#--------------------------------------------------------------------------
# Atualização do cursor
#--------------------------------------------------------------------------
def update_cursor
if @index < 0 # Sem cursor
self.cursor_rect.empty
elsif @index < @item_max # Padrão
self.cursor_rect.set(0, @index * 96, contents.width, 96)
elsif @index >= 100 # Si
self.cursor_rect.set(0, (@index - 100) * 96, contents.width, 96)
else # O todo
self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
end
end
#--------------------------------------------------------------------------
# Desenha a experiência
#--------------------------------------------------------------------------
def draw_exp_info(actor, x, y)
s1 = actor.exp_s
s2 = actor.next_rest_exp_s
s_next = sprintf(Vocab::ExpNext, Vocab::level)
self.contents.font.color = system_color
self.contents.draw_text(x, y + 24 * 0, 180, 24, Vocab::ExpTotal)
self.contents.draw_text(x, y + 24 * 2, 180, 24, s_next)
self.contents.font.color = normal_color
self.contents.draw_text(x, y + 24 * 1, 180, 24, s1, 2)
self.contents.draw_text(x, y + 24 * 3, 180, 24, s2, 2)
end


###################
# Window_exp_info #
###################
class Window_exp_info < Window_Selectable
#--------------------------------------------------------------------------
# Inicialização do objeto
# x : coordenada X da janela
# y : coordenada Y da janela
#--------------------------------------------------------------------------
def initialize(x, y)
super(0, 360, 544, 305)
refresh
self.active = false
self.index = -1
end
#--------------------------------------------------------------------------
# Atualização
#--------------------------------------------------------------------------
def refresh
self.contents.clear
@item_max = 1
x = 104
y = actor.index * 96 + WLH / 2
draw_exp_info($game_party.members[0], 0, 0)
end
end
#--------------------------------------------------------------------------
# Atualização do cursor
#--------------------------------------------------------------------------
def update_cursor
if @index < 0 # Sem cursor
self.cursor_rect.empty
elsif @index < @item_max # Padrão
self.cursor_rect.set(0, @index * 96, contents.width, 96)
elsif @index >= 100 # Si
self.cursor_rect.set(0, (@index - 100) * 96, contents.width, 96)
else # O todo
self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
end
end


################
# Window_Actor #
################
class Window_Actor < Window_Base
def initialize(x, y, width, height)
super(x, y, width, height)
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
@item_max = 1
draw_actor_face($game_party.members[0], 0, 20, 92)
draw_actor_name($game_party.members[0], 15, 0)
end
end

###################
# Window_Actor_HP #
###################
class Window_Actor_HP < Window_Base
def initialize(x, y, width, height)
super(x, y, width, height)
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
@item_max = 1
draw_actor_hp($game_party.members[0], 15, 0)
draw_state(80, 0)
end
end

###################
# Window_Actor_MP #
###################
class Window_Actor_MP < Window_Base
def initialize(x, y, width, height)
super(x, y, width, height)
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
@item_max = 1
draw_actor_mp($game_party.members[0], 15, 0)
end
end

def draw_state(x, y)
@item_max = 1
draw_actor_state($game_party.members[0], 150, 0)
end


##############
# Scene_Menu #
##############
class Scene_Menu < Scene_Base
#--------------------------------------------------------------------------
# Inicialização do objeto
# menu_index : posição inicial do cursor
#--------------------------------------------------------------------------
def initialize(menu_index = 0)
@menu_index = menu_index
end
#--------------------------------------------------------------------------
# Inicialização do processo
#--------------------------------------------------------------------------
def start
super
create_command_window
@gold_window = Window_Gold.new(0, 360)
@status2_window = Window_Status.new($game_party.members[0])
@actor_window = Window_Actor.new(0, 0, 120, 140)
@hp_window = Window_Actor_HP.new(120, 56, 224, 56)
@mp_window = Window_Actor_MP.new(344, 56, 200, 56)
end
#--------------------------------------------------------------------------
# Fim do processo
#--------------------------------------------------------------------------
def terminate
super
@command_window.dispose
@gold_window.dispose
@actor_window.dispose
@hp_window.dispose
@mp_window.dispose
@status2_window.dispose
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def update
super
@command_window.update
@gold_window.update
@hp_window.update
@mp_window.update
@actor_window.update
@status2_window.update
if @command_window.active
update_command_selection
elsif @status_window.active
update_actor_selection
end
end
#--------------------------------------------------------------------------
# Criação da janela de comandos
#--------------------------------------------------------------------------
def create_command_window
s1 = Vocab::equip
s2 = Vocab::skill
s3 = Vocab::item
s4 = Vocab::game_end
@command_window = Window_Command.new(160, [s1, s2, s3, s4])
@command_window.index = @menu_index
if $game_party.members.size == 0 # Se não houver membros na equipe
@command_window.draw_item(0, false) # Desabilita "Equipamentos"
@command_window.draw_item(1, false) # Desabilita "Habilidades"
@command_window.draw_item(2, false) # Desabilita "Itens"
end
end
#--------------------------------------------------------------------------
# Atualização da escolha de comando
#--------------------------------------------------------------------------
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 < 4
Sound.play_buzzer
return
elsif $game_system.save_disabled and @command_window.index == 4
Sound.play_buzzer
return
end
Sound.play_decision
case @command_window.index
when 0 # Equipamentos
$scene = Scene_Equip.new
when 1 # Habilidades
$scene = Scene_Skill.new
when 2 # Salvar
$scene = Scene_Item.new
when 3 # Fim de Jogo
$scene = Scene_End.new
end
end
end
#--------------------------------------------------------------------------
# Início da seleção de herói
#--------------------------------------------------------------------------
def start_actor_selection
@command_window.active = false
@status_window.active = true
if $game_party.last_actor_index < @status_window.item_max
@status_window.index = $game_party.last_actor_index
else
@status_window.index = 0
end
end
#--------------------------------------------------------------------------
# Fim da seleção de herói
#--------------------------------------------------------------------------
def end_actor_selection
@command_window.active = true
@status_window.active = false
@status_window.index = -1
end
#--------------------------------------------------------------------------
# Atualização da seleção de herói
#--------------------------------------------------------------------------
def update_actor_selection
if Input.trigger?(Input::B)
Sound.play_cancel
end_actor_selection
elsif Input.trigger?(Input::C)
$game_party.last_actor_index = @status_window.index
Sound.play_decision
case @command_window.index
when 1 # Habilidades
$scene = Scene_Skill.new(@status_window.index)
when 2 # Equipamento
$scene = Scene_Equip.new(@status_window.index)
when 3 # Status
$scene = Scene_Status.new(@status_window.index)
end
end
end
end
###################
# Window_Actor_LV #
###################
class Window_Actor_LV < Window_Base
def initialize(x, y, width, height)
super(x, y, width, height)
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
@item_max = 1
draw_actor_level($game_party.members[0], 20, 0)
end
end

#################
# Window_Status #
#################
class Window_Status < Window_Base
#--------------------------------------------------------------------------
# Inicialização do objeto
# actor : herói
#--------------------------------------------------------------------------
def initialize(actor)
super(330, 112, 213, 248)
@actor = actor
refresh
end
#--------------------------------------------------------------------------
# Atualização
#--------------------------------------------------------------------------
def refresh
self.contents.clear
@item_max = 1
draw_equipments(0, 0)
end
#--------------------------------------------------------------------------
# Exibição dos parâmetros
# x : exibe na coordenada X
# y : exibe na coordenada Y
#--------------------------------------------------------------------------
def draw_parameters(actor, x, y)
@item_max = 1
x = 0
y = 10
draw_actor_parameter($game_party.members[0], x, y, 0)
draw_actor_parameter($game_party.members[0], x, y+30, 1)
draw_actor_parameter($game_party.members[0], x, y+60, 2)
draw_actor_parameter($game_party.members[0], x, y+90, 3)
end
#--------------------------------------------------------------------------
# Exibição da experiência
# x : exibe na coordenada X
# y : exibe na coordenada Y
#--------------------------------------------------------------------------
def draw_exp_info(x, y)
@actor = $game_party.members[0]
s1 = @actor.exp_s
s2 = @actor.next_rest_exp_s
s_next = sprintf(Vocab::ExpNext, Vocab::level)
self.contents.font.color = system_color
self.contents.draw_text(x, y + WLH * 0, 180, WLH, Vocab::ExpTotal)
self.contents.draw_text(x, y + WLH * 2, 180, WLH, s_next)
self.contents.font.color = normal_color
self.contents.draw_text(x, y + WLH * 1, 180, WLH, s1, 2)
self.contents.draw_text(x, y + WLH * 3, 180, WLH, s2, 2)
end
#--------------------------------------------------------------------------
# Exibição de informações básicas
# x : exibe na coordenada X
# y : exibe na coordenada Y
#--------------------------------------------------------------------------
def draw_state(x, y)
@item_max = 1
x = 104
y = actor.index * 96 + WLH / 2
draw_actor_state($game_party.members[0], 10, 10)
end
#--------------------------------------------------------------------------
# Exibição dos equipamentos
# x : exibe na coordenada X
# y : exibe na coordenada Y
#--------------------------------------------------------------------------
def draw_equipments(x, y)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 120, 24, Vocab::equip)
for i in 0..4
draw_item_name($game_party.members[0].equips, x + 16, y + WLH * (i + 1))
end
end
end

##################
# Window_Command #
##################
class Window_Command < Window_Selectable
#--------------------------------------------------------------------------
# Variáveis públicas
#--------------------------------------------------------------------------
attr_reader :commands # Comandos
#--------------------------------------------------------------------------
# Inicialização do objeto
# width : largura da janela
# commands : array de comandos
# column_max : número de colunas (2 ou mais)
# row_max : número de linhas (0: número de comandos)
# spacing : espaçamento entre items localizados próximos
#--------------------------------------------------------------------------
def initialize(width, commands, column_max = 4, row_max = 0, spacing = 10)
if row_max == 0
row_max = (commands.size + column_max - 1) / column_max
end
super(240, 0, 300, row_max * WLH + 32, spacing)
@commands = commands
@item_max = commands.size
@column_max = column_max
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# Atualização
#--------------------------------------------------------------------------
def refresh
self.contents.clear
for i in 0...@item_max
draw_item(i)
end
end
#--------------------------------------------------------------------------
# Desenho do item
# index : número (ID) do item
# enabled : espaço ativo. Quando translúcido significa falso
#--------------------------------------------------------------------------
def draw_item(index, enabled = true)
rect = item_rect(index)
rect.x += 4
rect.width -= 8
self.contents.clear_rect(rect)
self.contents.font.color = normal_color
self.contents.font.color.alpha = enabled ? 255 : 128
self.contents.draw_text(rect, @commands[index])
end
end
###############
# Scene_Equip #
###############
class Scene_Equip < Scene_Base
#--------------------------------------------------------------------------
# Constantes
#--------------------------------------------------------------------------
EQUIP_TYPE_MAX = 5 # Número máximo de equipamentos
#--------------------------------------------------------------------------
# Inicialização do objeto
# actor_index : index do herói
# equip_index : index dos equipamentos
#--------------------------------------------------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
@equip_index = equip_index
end
#--------------------------------------------------------------------------
# Inicialização do processo
#--------------------------------------------------------------------------
def start
super
@actor = $game_party.members[@actor_index]
create_item_windows
@equip_window = Window_Equip.new(120, 112, @actor)
@equip_window.help_window = @help_window
@equip_window.index = @equip_index
@hp_window = Window_Actor_HP.new(120, 56, 224, 56)
@mp_window = Window_Actor_MP.new(344, 56, 200, 56)
@actor_window = Window_Actor.new(0, 0, 120, 140)
@wrong_commands = Window_Wrong_Commands.new(240, 0, 300, 56)
end
#--------------------------------------------------------------------------
# Fim do processo
#--------------------------------------------------------------------------
def terminate
super
@actor_window.dispose
@equip_window.dispose
dispose_item_windows
@hp_window.dispose
@mp_window.dispose
@wrong_commands.dispose
end
#--------------------------------------------------------------------------
# Retornar à tela original
#--------------------------------------------------------------------------
def return_scene
$scene = Scene_Menu.new(0)
end
#--------------------------------------------------------------------------
# Troca para a tela do próximo herói
#--------------------------------------------------------------------------
def next_actor
@actor_index += 1
@actor_index %= $game_party.members.size
$scene = Scene_Equip.new(@actor_index, @equip_window.index)
end
#--------------------------------------------------------------------------
# Troca para a tela do herói anterior
#--------------------------------------------------------------------------
def prev_actor
@actor_index += $game_party.members.size - 1
@actor_index %= $game_party.members.size
$scene = Scene_Equip.new(@actor_index, @equip_window.index)
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def update
super
@actor_window.update
update_equip_window
update_item_windows
@hp_window.update
@mp_window.update
@wrong_commands.update
if @equip_window.active
update_equip_selection
elsif @item_window.active
update_item_selection
end
end
#--------------------------------------------------------------------------
# Criação das janelas de itens
#--------------------------------------------------------------------------
def create_item_windows
@item_windows = []
for i in 0...EQUIP_TYPE_MAX
@item_windows = Window_EquipItem.new(0, 264, 544, 152, @actor, i)
@item_windows.help_window = @help_window
@item_windows.visible = (@equip_index == i)
@item_windows.y = 264
@item_windows.height = 152
@item_windows.active = false
@item_windows.index = -1
end
end
#--------------------------------------------------------------------------
# Dispose das janelas de itens
#--------------------------------------------------------------------------
def dispose_item_windows
for window in @item_windows
window.dispose
end
end
#--------------------------------------------------------------------------
# Atualização das janelas de itens
#--------------------------------------------------------------------------
def update_item_windows
for i in 0...EQUIP_TYPE_MAX
@item_windows.visible = (@equip_window.index == i)
@item_windows.update
end
@item_window = @item_windows[@equip_window.index]
end
#--------------------------------------------------------------------------
# Atualização da janela de equipamentos
#--------------------------------------------------------------------------
def update_equip_window
@equip_window.update
end
#--------------------------------------------------------------------------
# Atualização da janela de status
#--------------------------------------------------------------------------
def update_status_window
if @equip_window.active
@status_window.set_new_parameters(nil, nil, nil, nil)
elsif @item_window.active
temp_actor = @actor.clone
temp_actor.change_equip(@equip_window.index, @item_window.item, true)
new_atk = temp_actor.atk
new_def = temp_actor.def
new_spi = temp_actor.spi
new_agi = temp_actor.agi
@status_window.set_new_parameters(new_atk, new_def, new_spi, new_agi)
end
@status_window.update
end
#--------------------------------------------------------------------------
# Atualização da seleção de equipamentos
#--------------------------------------------------------------------------
def update_equip_selection
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::R)
Sound.play_cursor
next_actor
elsif Input.trigger?(Input::L)
Sound.play_cursor
prev_actor
elsif Input.trigger?(Input::C)
if @actor.fix_equipment
Sound.play_buzzer
else
Sound.play_decision
@equip_window.active = false
@item_window.active = true
@item_window.index = 0
end
end
end
#--------------------------------------------------------------------------
# Atualização da seleção de itens
#--------------------------------------------------------------------------
def update_item_selection
if Input.trigger?(Input::B)
Sound.play_cancel
@equip_window.active = true
@item_window.active = false
@item_window.index = -1
elsif Input.trigger?(Input::C)
Sound.play_equip
@actor.change_equip(@equip_window.index, @item_window.item)
@equip_window.active = true
@item_window.active = false
@item_window.index = -1
@equip_window.refresh
for item_window in @item_windows
item_window.refresh
end
end
end
end
#########################
# Window_Wrong_Commands #
#########################
class Window_Wrong_Commands < Window_Base
def initialize(x, y, width, heigth)
super
refresh
end
def dispose
super
end
def update
super
end
#--------------------------------------------------------------------------
# Atualização
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.draw_text(50, 0, self.width - 32, WLH, "Equipamentos")
end
end
class Window_Wrong_Commands_Skill < Window_Base
def initialize(x, y, width, height)
super
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
self.contents.draw_text(50, 0, self.width - 32, WLH, "Habilidades")
end
end
class Window_Wrong_Commands_Itens < Window_Base
def initialize(x, y, width, height)
super
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
self.contents.draw_text(50, 0, self.width - 32, WLH, "Inventário")
end
end
class Window_Wrong_Commands_Sair < Window_Base
def initialize(x, y, width, height)
super
refresh
end
def dispose
super
end
def update
super
end
def refresh
self.contents.clear
self.contents.draw_text(50, 0, self.width - 32, WLH, "Sair do Jogo")
end
end


##############
# Scene_Item #
##############
class Scene_Item < Scene_Base
#--------------------------------------------------------------------------
# Inicialização do processo
#--------------------------------------------------------------------------
def start
super
@viewport = Viewport.new(0, 0, 544, 416)
@help_window = Window_Help.new
@help_window.y = 360
@help_window.viewport = @viewport
@item_window = Window_Item.new(0, 112, 544, 248)
@item_window.viewport = @viewport
@item_window.help_window = @help_window
@item_window.active = false
@target_window = Window_MenuStatus.new(0, 0)
hide_target_window
@Window_Wrong_Commands_Itens = Window_Wrong_Commands_Itens.new(240, 0, 300, 56)
@hp_window = Window_Actor_HP.new(120, 56, 224, 56)
@mp_window = Window_Actor_MP.new(344, 56, 200, 56)
@actor_window = Window_Actor.new(0, 0, 120, 140)
end
#--------------------------------------------------------------------------
# Fim do processo
#--------------------------------------------------------------------------
def terminate
super
@viewport.dispose
@help_window.dispose
@item_window.dispose
@target_window.dispose
@Window_Wrong_Commands_Itens.dispose
@hp_window.dispose
@mp_window.dispose
@actor_window.dispose
end
#--------------------------------------------------------------------------
# Retornar à tela original
#--------------------------------------------------------------------------
def return_scene
$scene = Scene_Menu.new(2)
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def update
super
@help_window.update
@item_window.update
@target_window.update
@Window_Wrong_Commands_Itens.update
@hp_window.update
@mp_window.update
@actor_window.update
if @item_window.active
update_item_selection
elsif @target_window.active
update_target_selection
end
end
#--------------------------------------------------------------------------
# Atualização da seleção de items
#--------------------------------------------------------------------------
def update_item_selection
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::C)
@item = @item_window.item
if @item != nil
$game_party.last_item_id = @item.id
end
if $game_party.item_can_use?(@item)
Sound.play_decision
determine_item
else
Sound.play_buzzer
end
end
end
#--------------------------------------------------------------------------
# Decisão de item
#--------------------------------------------------------------------------
def determine_item
if @item.for_friend?
show_target_window(@item_window.index % 2 == 0)
if @item.for_all?
@target_window.index = 99
else
if $game_party.last_target_index < @target_window.item_max
@target_window.index = $game_party.last_target_index
else
@target_window.index = 0
end
end
else
use_item_nontarget
end
end
#--------------------------------------------------------------------------
# Atualização da seleção de alvo
#--------------------------------------------------------------------------
def update_target_selection
if Input.trigger?(Input::B)
Sound.play_cancel
if $game_party.item_number(@item) == 0 # Se usar itens até 0
@item_window.refresh # Atualizar janela
end
hide_target_window
elsif Input.trigger?(Input::C)
if not $game_party.item_can_use?(@item)
Sound.play_buzzer
else
determine_target
end
end
end
#--------------------------------------------------------------------------
# Definição do alvo
# Se não houver efeito, tocar SE de erro.
#--------------------------------------------------------------------------
def determine_target
used = false
if @item.for_all?
for target in $game_party.members
target.item_effect(target, @item)
used = true unless target.skipped
end
else
$game_party.last_target_index = @target_window.index
target = $game_party.members[@target_window.index]
target.item_effect(target, @item)
used = true unless target.skipped
end
if used
use_item_nontarget
else
Sound.play_buzzer
end
end
#--------------------------------------------------------------------------
# Exibição da janela de alvo
# right : alinhado à direita (falso se esquerda)
#--------------------------------------------------------------------------
def show_target_window(right)
@item_window.active = false
width_remain = 544 - @target_window.width
@target_window.x = right ? width_remain : 0
@target_window.visible = true
@target_window.active = true
if right
@viewport.rect.set(0, 0, width_remain, 416)
@viewport.ox = 0
else
@viewport.rect.set(@target_window.width, 0, width_remain, 416)
@viewport.ox = @target_window.width
end
end
#--------------------------------------------------------------------------
# Ocultar janela de alvo
#--------------------------------------------------------------------------
def hide_target_window
@item_window.active = true
@target_window.visible = false
@target_window.active = false
@viewport.rect.set(0, 0, 544, 416)
@viewport.ox = 0
end
#--------------------------------------------------------------------------
# Uso de item (sem alvo)
#--------------------------------------------------------------------------
def use_item_nontarget
Sound.play_use_item
$game_party.consume_item(@item)
@item_window.draw_item(@item_window.index)
@target_window.refresh
if $game_party.all_dead?
$scene = Scene_Gameover.new
elsif @item.common_event_id > 0
$game_temp.common_event_id = @item.common_event_id
$scene = Scene_Map.new
end
end
end
###############
# Scene_Skill #
###############
class Scene_Skill < Scene_Base
#--------------------------------------------------------------------------
# Inicialização do objeto
# actor_index : índex do herói
#--------------------------------------------------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
end
#--------------------------------------------------------------------------
# Inicialização do processo
#--------------------------------------------------------------------------
def start
super
@actor = $game_party.members[@actor_index]
@viewport = Viewport.new(0, 0, 544, 416)
@help_window = Window_Help.new
@help_window.y = 360
@help_window.viewport = @viewport
@skill_window = Window_Skill.new(0, 112, 544, 248, @actor)
@skill_window.viewport = @viewport
@skill_window.help_window = @help_window
@target_window = Window_MenuStatus.new(0, 0)
@Window_Wrong_Commands_Skill = Window_Wrong_Commands_Skill.new(240, 0, 300, 56)
@hp_window = Window_Actor_HP.new(120, 56, 224, 56)
@mp_window = Window_Actor_MP.new(344, 56, 200, 56)
@actor_window = Window_Actor.new(0, 0, 120, 140)
hide_target_window
end
#--------------------------------------------------------------------------
# Fim do processo
#--------------------------------------------------------------------------
def terminate
super
@help_window.dispose
@skill_window.dispose
@target_window.dispose
@Window_Wrong_Commands_Skill.dispose
@hp_window.dispose
@mp_window.dispose
@actor_window.dispose
end
#--------------------------------------------------------------------------
# Retornar à tela original
#--------------------------------------------------------------------------
def return_scene
$scene = Scene_Menu.new(1)
end
#--------------------------------------------------------------------------
# Troca para tela do próximo herói
#--------------------------------------------------------------------------
def next_actor
@actor_index += 1
@actor_index %= $game_party.members.size
$scene = Scene_Skill.new(@actor_index)
end
#--------------------------------------------------------------------------
# Trocar para tela do herói anterior
#--------------------------------------------------------------------------
def prev_actor
@actor_index += $game_party.members.size - 1
@actor_index %= $game_party.members.size
$scene = Scene_Skill.new(@actor_index)
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def update
super
@help_window.update
@skill_window.update
@target_window.update
@Window_Wrong_Commands_Skill.update
@hp_window.update
@mp_window.update
@actor_window.update
if @skill_window.active
update_skill_selection
elsif @target_window.active
update_target_selection
end
end
#--------------------------------------------------------------------------
# Atualização da seleção de habilidade
#--------------------------------------------------------------------------
def update_skill_selection
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::R)
Sound.play_cursor
next_actor
elsif Input.trigger?(Input::L)
Sound.play_cursor
prev_actor
elsif Input.trigger?(Input::C)
@skill = @skill_window.skill
if @skill != nil
@actor.last_skill_id = @skill.id
end
if @actor.skill_can_use?(@skill)
Sound.play_decision
determine_skill
else
Sound.play_buzzer
end
end
end
#--------------------------------------------------------------------------
# Decisão de habilidade
#--------------------------------------------------------------------------
def determine_skill
if @skill.for_friend?
show_target_window(@skill_window.index % 2 == 0)
if @skill.for_all?
@target_window.index = 99
elsif @skill.for_user?
@target_window.index = @actor_index + 100
else
if $game_party.last_target_index < @target_window.item_max
@target_window.index = $game_party.last_target_index
else
@target_window.index = 0
end
end
else
use_skill_nontarget
end
end
#--------------------------------------------------------------------------
# Atualização da seleção de alvo
#--------------------------------------------------------------------------
def update_target_selection
if Input.trigger?(Input::B)
Sound.play_cancel
hide_target_window
elsif Input.trigger?(Input::C)
if not @actor.skill_can_use?(@skill)
Sound.play_buzzer
else
determine_target
end
end
end
#--------------------------------------------------------------------------
# Definição do alvo
# Se não houver efeito, tocar SE de erro.
#--------------------------------------------------------------------------
def determine_target
used = false
if @skill.for_all?
for target in $game_party.members
target.skill_effect(@actor, @skill)
used = true unless target.skipped
end
elsif @skill.for_user?
target = $game_party.members[@target_window.index - 100]
target.skill_effect(@actor, @skill)
used = true unless target.skipped
else
$game_party.last_target_index = @target_window.index
target = $game_party.members[@target_window.index]
target.skill_effect(@actor, @skill)
used = true unless target.skipped
end
if used
use_skill_nontarget
else
Sound.play_buzzer
end
end
#--------------------------------------------------------------------------
# Exibição da janela de alvo
# right : alinhado à direita (falso se esquerda)
#--------------------------------------------------------------------------
def show_target_window(right)
@skill_window.active = false
width_remain = 544 - @target_window.width
@target_window.x = right ? width_remain : 0
@target_window.visible = true
@target_window.active = true
if right
@viewport.rect.set(0, 0, width_remain, 416)
@viewport.ox = 0
else
@viewport.rect.set(@target_window.width, 0, width_remain, 416)
@viewport.ox = @target_window.width
end
end
#--------------------------------------------------------------------------
# Ocultação da janela de alvo
#--------------------------------------------------------------------------
def hide_target_window
@skill_window.active = true
@target_window.visible = false
@target_window.active = false
@viewport.rect.set(0, 0, 544, 416)
@viewport.ox = 0
end
#--------------------------------------------------------------------------
# Uso de habilidade (sem alvo)
#--------------------------------------------------------------------------
def use_skill_nontarget
Sound.play_use_skill
@actor.mp -= @actor.calc_mp_cost(@skill)
@status_window.refresh
@skill_window.refresh
@target_window.refresh
if $game_party.all_dead?
$scene = Scene_Gameover.new
elsif @skill.common_event_id > 0
$game_temp.common_event_id = @skill.common_event_id
$scene = Scene_Map.new
end
end
end
#############
# Scene_End #
#############
class Scene_End < Scene_Base
#--------------------------------------------------------------------------
# Inicialização do processo
#--------------------------------------------------------------------------
def start
super
create_menu_background
create_command_window
@Window_Wrong_Commands_Sair = Window_Wrong_Commands_Sair.new(240, 0, 300, 56)
end
#--------------------------------------------------------------------------
# Processo pós-inicialização
#--------------------------------------------------------------------------
def post_start
super
open_command_window
end
#--------------------------------------------------------------------------
# Preparação para finalização
#--------------------------------------------------------------------------
def pre_terminate
super
close_command_window
end
#--------------------------------------------------------------------------
# Fim do processo
#--------------------------------------------------------------------------
def terminate
super
dispose_command_window
dispose_menu_background
@Window_Wrong_Commands_Sair.dispose
end
#--------------------------------------------------------------------------
# Retornar à tela original
#--------------------------------------------------------------------------
def return_scene
$scene = Scene_Menu.new(3)
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def update
super
update_menu_background
@command_window.update
@Window_Wrong_Commands_Sair.update
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::C)
case @command_window.index
when 0 # ?????
command_to_title
when 1 # ???????
command_shutdown
when 2 # ???
command_cancel
end
end
end
#--------------------------------------------------------------------------
# Atualização do background do menu
#--------------------------------------------------------------------------
def update_menu_background
super
@menuback_sprite.tone.set(0, 0, 0, 128)
end
#--------------------------------------------------------------------------
# Criação da janela de comandos
#--------------------------------------------------------------------------
def create_command_window
s1 = Vocab::to_title
s2 = Vocab::shutdown
s3 = Vocab::cancel
@command_window = Window_Command.new(172, [s1, s2, s3])
@command_window.x = (544 - @command_window.width) / 2
@command_window.y = (416 - @command_window.height) / 2
@command_window.openness = 0
end
#--------------------------------------------------------------------------
# Dispose da janela de comandos
#--------------------------------------------------------------------------
def dispose_command_window
@command_window.dispose
end
#--------------------------------------------------------------------------
# Abre a janela de comandos
#--------------------------------------------------------------------------
def open_command_window
@command_window.open
begin
@command_window.update
Graphics.update
end until @command_window.openness == 255
end
#--------------------------------------------------------------------------
# Fecha a janela de comandos
#--------------------------------------------------------------------------
def close_command_window
@command_window.close
begin
@command_window.update
Graphics.update
end until @command_window.openness == 0
end
#--------------------------------------------------------------------------
# Processo ao selecionar "Tela Título"
#--------------------------------------------------------------------------
def command_to_title
Sound.play_decision
RPG::BGM.fade(800)
RPG::BGS.fade(800)
RPG::ME.fade(800)
$scene = Scene_Title.new
close_command_window
Graphics.fadeout(60)
end
#--------------------------------------------------------------------------
# Processo ao selecionar "Sair"
#--------------------------------------------------------------------------
def command_shutdown
Sound.play_decision
RPG::BGM.fade(800)
RPG::BGS.fade(800)
RPG::ME.fade(800)
$scene = nil
end
#--------------------------------------------------------------------------
# Processo ao cancelar
#--------------------------------------------------------------------------
def command_cancel
Sound.play_decision
return_scene
end
end




Bon Making à tous ! ;)


ruinechozo - posté le 28/12/2009 à 21:55:53. (22 messages postés)

il est très bien ton script mais comment on fait quand il y a plusieurs héros dans l'équipe? Et quand on choisi quelque chose, c'est écrit en espagnol:sriden

Dans le monde il y a trois sortes de personnes : ceux qui savent compter et ceux qui savent pas


Live-Evil - posté le 31/12/2009 à 22:24:36. (155 messages postés)

Précise => Resident Evil 4

Car moi qui suit un fan incourtounable de la série je ne peut pas accepter sa.

Sinon il faudrai une traduction en français et se serai vraiment pas mal ;)


alkanédon - posté le 01/01/2010 à 17:16:28. (7618 messages postés)

Citoyen d'Alent

ben, c'est pouratnt pas complliqué a traduire, tu cherche qui sont écrite en violet et tu remplace le texte :-/
Je vais le modif' !

Allez-y voir donc. Et followez-moi


-Phazon- - posté le 06/03/2010 à 10:37:06. (132 messages postés)

ROI incontesté de l'abandon des projet même pas commencé et presque finis

Perso, je pense que ça fait un peu plus bordellique sur l'écran.
Ou tes screen sont trop rapproché et je ne distingue pas trop... merci quand même ;)

Une chevre bleu, je l'attrape par les yeux, et moi je suis capable, de la foutre dans la machien ou qu'on fait le kebaab, elle tourne elle tourne elle tourne, aaah kiféchau... elle tourne elle tourne elle tourne, Ketchup, Mayo


Alucard_2 - posté le 19/04/2010 à 20:45:29. (2 messages postés)

Vous posté mon script sans demander la permission, mais au moins me donna les crédits.
que cela ne se reproduise pas, et la prochaine fois, demander la permission, même d'un autre pays
Encore une fois, je vous remercie de me donner de crédit, mais attention la prochaine fois, parce que je suis calme, mais d'autres peuvent être stressé et vous ne pouvez pas vous entendre.

Note: j'utilise le traducteur de Google parce que je ne peux pas parler du droit français, depuis que je suis brésilien.


kilam1110 - posté le 19/04/2010 à 20:57:36. (9159 messages postés)

Bah TG.

Citation:

Resident Evil 2/3 Menu v. 2.0 by Alucard_2


Holà en la casa tus nombre es en el script :F
Aie Pépito ! :F
===>[]

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


Alucard_2 - posté le 19/04/2010 à 21:09:45. (2 messages postés)

Oui, j'ai vu, à remercier pour donner les crédits ^ ^ En tout cas, Merci de fournir ^ ^ Bonne journée ^ ^


Tata-Monos - posté le 19/04/2010 à 21:15:06. (56891 messages postés) - misteroniro

Vive le making libre

Posté par Alkanédon=> C'est lui le fautif.
Il faut le prendre. :D

Pixner|Offgame | Le comptoire des clikeurs


kilam1110 - posté le 19/04/2010 à 21:31:07. (9159 messages postés)

Bah TG.

Citation:

Posté par Alkanédon=> C'est lui le fautif.
Il faut le prendre. :D


Postos con Alkanédon => Ser luisos el fautivos.
Il faulos le pendos :D
:F

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


koroshi - posté le 26/05/2010 à 18:34:37. (42 messages postés)

entrain de tué son petit frére

très bon script mais juste une question sur la 5ème photo comment tu a fait pour avoir la faceset le nom les pv du personnage sous cette forme


Alkanédon - posté le 26/06/2010 à 20:40:08. (7618 messages postés)

Citoyen d'Alent

Ah ça, c'est un secret ..
En fait, c'était une compile de script qui m'intéressait. Mais je sais plus où c'est...

Allez-y voir donc. Et followez-moi


antonela100 - posté le 14/09/2010 à 22:19:14. (6 messages postés)

:hurle En fait j'ai pas utilisé le script mais je voulais te demander... tu l'as trouvé où le chipset (enfin le fond quoi:F) qui est sur le 5ème screen? C'est super!:grossourire


thom123 - posté le 16/01/2011 à 16:23:35. (47 messages postés)

Eh! c'est pas parce que tu suce des glands que tu deviendras un écureuils, hein!

Mouais...
Il est bien mais moi je n'aime pas resident evil (4 pour Live-Evil...):oO


Alkanédon - posté le 20/02/2011 à 14:17:38. (7618 messages postés)

Citoyen d'Alent

antonela100, le chipset ici aussi c'est pas de moi, c'est juste un pano d'un ff si je ne m'abuse x)

Allez-y voir donc. Et followez-moi


Yamashi54 - posté le 27/08/2013 à 00:26:00. (266 messages postés)

Germanophile en folie poétique

Ce script + Script 1 direction = Resident Evil pour RM VX !

I want you for the bed.

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site:

Communauté: Accueil | News | Forum | Flash-news | Sorties | Chat | Commentaires | Galerie | Blogs | Articles perso | Screen de la semaine | Palmarès | Livre d'or | Recherche | Interviews | OST | L'Annuaire | Divers
Apprendre: Le Wiki | Tutoriels | Guides | Gaming-Live | Tests | Making-of
Télécharger: Programmes | Scripts | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Index jeux séparés | Top Classiques | Top Originaux | Les autres | Collection Oniro | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Jeux complets | Proposer
Hébergés: Aëdemphia | Fighting Robots Quest | Geex | Inexistence | La Légende d'Ibabou | Nylu | Sarcia | Super Mario RPG - Lost Souls
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis