[RGSS/Pedido]Ajuda com MOG Scene Menu
4 participantes
Página 1 de 1
[RGSS/Pedido]Ajuda com MOG Scene Menu
Bem, pessoal, tô com uma put* dúvida com o MOG Scene Menu, tipow, no menuzinho do lado, pra selecionar as opções, aparece um cursorzinho chato que fica se mexendo(eu consegui deixa-lo frizado \o/), e ele fica estranho... Eu queria que tirassem o cursorzinho e ao invés de um cursor, a seleção fosse por imagens, ex: *O "equip" ta selecionado* Aparece a imagem com o nome "euip_selected" ou coisa do tipo...
Script
Bem, é isso, se puderem ajudar, fico muuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuito grato mesmo! Preciso disso mesmo! Tô put* desesperado! Valew
Script
- Spoiler:
- Código:
#_______________________________________________________________________________
# MOG Main Menu V1.7
#_______________________________________________________________________________
# By Moghunter
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
#Tipo de fundo.
# 0 = Imagens em movimento.
# 1 = Mapa de fundo.
MENU_BACKGROUND = 1
#Transition Time.
MNTT = 10
#Transition Type (Name)
MNTP = "006-Stripe02"
#Velocidade do cursor
CURSOR_SPEED = 12
end
$mogscript = {} if $mogscript == nil
$mogscript["MOG_Main_Menu"] = true
##############
# Game_Actor #
##############
class Game_Actor < Game_Battler
def now_exp
return @exp - @exp_list[@level]
end
def next_exp
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
end
end
############
# Game_Map #
############
class Game_Map
attr_reader :map_id
def mpname
$mpname = load_data("Data/MapInfos.rxdata")
$mpname[@map_id].name
end
end
###############
# Window_Base #
###############
class Window_Base < Window
def nada
face = RPG::Cache.picture("")
end
def drw_face(actor,x,y)
face = RPG::Cache.picture(actor.name + "_fc") rescue nada
cw = face.width
ch = face.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch, face, src_rect)
end
def draw_maphp3(actor, x, y)
back = RPG::Cache.picture("BAR0")
cw = back.width
ch = back.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("HP_Bar")
cw = meter.width * actor.hp / actor.maxhp
ch = meter.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
text = RPG::Cache.picture("HP_Tx")
cw = text.width
ch = text.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 35, y - ch + 30, text, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 81, y - 1, 48, 32, actor.hp.to_s, 2)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 80, y - 2, 48, 32, actor.hp.to_s, 2)
end
def draw_mapsp3(actor, x, y)
back = RPG::Cache.picture("BAR0")
cw = back.width
ch = back.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("SP_Bar")
cw = meter.width * actor.sp / actor.maxsp
ch = meter.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
text = RPG::Cache.picture("SP_Tx")
cw = text.width
ch = text.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 35, y - ch + 30, text, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 81, y - 1, 48, 32, actor.sp.to_s, 2)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 80, y - 2, 48, 32, actor.sp.to_s, 2)
end
def draw_mexp2(actor, x, y)
bitmap2 = RPG::Cache.picture("Exp_Back")
cw = bitmap2.width
ch = bitmap2.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 60 , y - ch + 30, bitmap2, src_rect)
if actor.next_exp != 0
rate = actor.now_exp.to_f / actor.next_exp
else
rate = 1
end
bitmap = RPG::Cache.picture("Exp_Meter")
if actor.level < 99
cw = bitmap.width * rate
else
cw = bitmap.width
end
ch = bitmap.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 60 , y - ch + 30, bitmap, src_rect)
exp_tx = RPG::Cache.picture("Exp_tx")
cw = exp_tx.width
ch = exp_tx.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 55 , y - ch + 30, exp_tx, src_rect)
lv_tx = RPG::Cache.picture("LV_tx")
cw = lv_tx.width
ch = lv_tx.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 125 , y - ch + 35, lv_tx, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 161, y + 7, 24, 32, actor.level.to_s, 1)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 160, y + 6, 24, 32, actor.level.to_s, 1)
end
def draw_actor_state2(actor, x, y, width = 80)
text = make_battler_state_text(actor, width, true)
self.contents.font.color = actor.hp == 0 ? knockout_color : normal_color
self.contents.draw_text(x, y, width, 32, text,2)
end
end
######################
# Window_MenuStatus2 #
######################
class Window_MenuStatus2 < Window_Selectable
def initialize
super(0, 0, 415, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("")
self.opacity = 0
self.z = 15
refresh
self.active = true
self.index = -1
end
def refresh
self.contents.clear
@item_max = $game_party.actors.size
for i in 0...$game_party.actors.size
x = 20
y = i * 62
actor = $game_party.actors[i]
self.contents.font.name = "Georgia"
if $mogscript["TP_System"] == true
draw_actor_tp(actor ,x + 285, y - 5,4)
draw_actor_state2(actor ,x + 190, y - 5)
else
draw_actor_state2(actor ,x + 220, y - 5)
end
drw_face(actor,x,y + 50)
draw_maphp3(actor,x + 40, y - 5)
draw_mapsp3(actor,x + 40, y + 20 )
draw_mexp2(actor,x + 140, y + 15 )
end
end
def update_cursor_rect
if @index < 0
self.cursor_rect.empty
else
self.cursor_rect.set(5, @index * 62, self.width - 32, 50)
end
end
end
################
# Window_Gold2 #
################
class Window_Gold2 < Window_Base
def initialize
super(0, 0, 160, 64)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("")
self.opacity = 0
self.z = 15
refresh
end
def refresh
self.contents.clear
cx = contents.text_size($data_system.words.gold).width
self.contents.font.color = normal_color
self.contents.draw_text(4, 0, 120-cx-2, 32, $game_party.gold.to_s, 2)
self.contents.font.color = system_color
self.contents.draw_text(124-cx, 0, cx, 32, $data_system.words.gold, 2)
end
end
####################
# Window_PlayTime2 #
####################
class Window_PlayTime2 < Window_Base
def initialize
super(0, 0, 160, 96)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("")
self.opacity = 0
self.z = 15
refresh
end
def refresh
self.contents.clear
@total_sec = Graphics.frame_count / Graphics.frame_rate
hour = @total_sec / 60 / 60
min = @total_sec / 60 % 60
sec = @total_sec % 60
text = sprintf("%02d:%02d:%02d", hour, min, sec)
self.contents.font.color = normal_color
self.contents.draw_text(4, 32, 120, 32, text, 2)
end
def update
super
if Graphics.frame_count / Graphics.frame_rate != @total_sec
refresh
end
end
end
#################
# Window_Steps2 #
#################
class Window_Steps2 < Window_Base
def initialize
super(0, 0, 160, 96)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("")
self.opacity = 0
self.z = 15
refresh
end
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.draw_text(4, 32, 120, 32, $game_party.steps.to_s, 2)
end
end
###################
# Window_Map_Name #
###################
class Window_Map_Name < Window_Base
def initialize
super(0, 0, 160, 96)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("")
self.opacity = 0
self.z = 15
refresh
end
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.draw_text(-9, 6, 120, 32, $game_map.mpname.to_s, 1)
end
end
##############
# Scene_Menu #
##############
class Scene_Menu
def initialize(menu_index = 0)
@menu_index = menu_index
end
def main
s1 = ""
s2 = ""
s3 = ""
s4 = ""
s5 = ""
s6 = ""
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
@command_window.index = @menu_index
if $game_party.actors.size == 0
@command_window.disable_item(0)
@command_window.disable_item(1)
@command_window.disable_item(2)
@command_window.disable_item(3)
end
@command_window.visible = false
@command_window.x = -640
@mnlay = Sprite.new
@mnlay.bitmap = RPG::Cache.picture("Mn_lay")
@mnlay.z = 10
@mnlay.opacity = 0
@mnlay.x = -100
if MOG::MENU_BACKGROUND == 0
@mnback = Plane.new
@mnback.bitmap = RPG::Cache.picture("Mn_back")
@mnback.blend_type = 0
@mnback.z = 5
@mnback2 = Plane.new
@mnback2.bitmap = RPG::Cache.picture("Mn_back")
@mnback2.blend_type = 0
@mnback2.z = 5
@mnback2.opacity = 60
else
@spriteset = Spriteset_Map.new
end
@cursor_x = -100
@cursor_y = 110
@mnsel = Sprite.new
@mnsel.bitmap = RPG::Cache.picture("Mn_Sel")
@mnsel.z = 20
@mnsel.x = @cursor_x
@mnsel.y = @cursor_y
@mnop = 150
if $game_system.save_disabled
@command_window.disable_item(4)
end
@playtime_window = Window_PlayTime2.new
@playtime_window.x = 30
@playtime_window.y = 375
@playtime_window.contents_opacity = 0
@mapname_window = Window_Map_Name.new
@mapname_window.x = 425
@mapname_window.y = 25
@mapname_window.contents_opacity = 0
@steps_window = Window_Steps2.new
@steps_window.x = 230
@steps_window.y = 375
@steps_window.contents_opacity = 0
@gold_window = Window_Gold2.new
@gold_window.x = 455
@gold_window.y = 405
@gold_window.contents_opacity = 0
@status_window = Window_MenuStatus2.new
@status_window.x = 295
@status_window.y = 110
@status_window.contents_opacity = 0
if MOG::MENU_BACKGROUND == 0
Graphics.transition(MOG::MNTT, "Graphics/Transitions/" + MOG::MNTP)
else
Graphics.transition
end
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
for i in 0..10
if MOG::MENU_BACKGROUND == 0
@mnback.oy += 1
@mnback.ox += 1
@mnback2.oy += 1
@mnback2.ox -= 1
end
@status_window.x += 20
@status_window.contents_opacity -= 25
@mnsel.opacity -= 25
@mnsel.zoom_x += 0.03
@mnlay.x -= 0
@mnlay.opacity -= 25
@mapname_window.x += 5
@mapname_window.contents_opacity -= 20
@steps_window.contents_opacity -= 25
@gold_window.contents_opacity -= 25
@playtime_window.contents_opacity -= 25
Graphics.update
end
Graphics.freeze
@command_window.dispose
@playtime_window.dispose
@steps_window.dispose
@gold_window.dispose
@status_window.dispose
@mnlay.dispose
if MOG::MENU_BACKGROUND == 0
@mnback.dispose
@mnback2.dispose
else
@spriteset.dispose
end
@mnsel.dispose
@mapname_window.dispose
Graphics.update
end
def update
if @mnsel.x > @cursor_x
@mnsel.x -= MOG::CURSOR_SPEED
if @mnsel.x <= @cursor_x
@mnsel.x = @cursor_x
end
elsif @mnsel.x < @cursor_x
@mnsel.x += MOG::CURSOR_SPEED
if @mnsel.x >= @cursor_x
@mnsel.x = @cursor_x
end
end
if @mnsel.y > @cursor_y
@mnsel.y -= MOG::CURSOR_SPEED
if @mnsel.y <= @cursor_y
@mnsel.y = @cursor_y
end
elsif @mnsel.y < @cursor_y
@mnsel.y += MOG::CURSOR_SPEED
if @mnsel.y >= @cursor_y
@mnsel.y = @cursor_y
end
end
if @mnsel.zoom_x <= 1.6
@mnsel.zoom_x += 0.03
@mnsel.opacity -= 10
elsif @mnsel.zoom_x > 1.6
@mnsel.zoom_x = 1.0
@mnsel.opacity = 255
end
if @mnlay.x < 0
@mnlay.opacity += 25
@mnlay.x += 10
elsif @mnlay.x >= 0
@mnlay.opacity = 255
@mnlay.x = 0
end
@command_window.update if @command_window.active
@playtime_window.update
@status_window.update if @status_window.active
if MOG::MENU_BACKGROUND == 0
@mnback.oy += 1
@mnback.ox += 1
@mnback2.oy += 1
@mnback2.ox -= 1
end
@mnop += 5
@mapname_window.contents_opacity += 15
@playtime_window.contents_opacity += 15
@gold_window.contents_opacity += 15
@playtime_window.contents_opacity += 15
@steps_window.contents_opacity += 15
if @status_window.x > 195
@status_window.x -= 10
@status_window.contents_opacity += 10
elsif @status_window.x <= 195
@status_window.x = 195
@status_window.contents_opacity = 255
end
if @mnop >= 255
@mnop = 120
end
if @command_window.active
update_command
return
end
if @status_window.active
update_status
return
end
end
def update_command
case @command_window.index
when 0
@cursor_x = 0
@cursor_y = 110
when 1
@cursor_x = 25
@cursor_y = 155
when 2
@cursor_x = 40
@cursor_y = 197
when 3
@cursor_x = 45
@cursor_y = 242
when 4
@cursor_x = 25
@cursor_y = 285
when 5
@cursor_x = 0
@cursor_y = 325
end
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
if Input.trigger?(Input::C)
if $game_party.actors.size == 0 and @command_window.index < 4
$game_system.se_play($data_system.buzzer_se)
return
end
case @command_window.index
when 0
$game_system.se_play($data_system.decision_se)
$scene = Scene_Item.new
when 1
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 2
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 3
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 4
if $game_system.save_disabled
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Save.new
when 5
$game_system.se_play($data_system.decision_se)
$scene = Scene_End.new
end
return
end
end
def update_status
case @status_window.index
when 0
@cursor_x = 180
@cursor_y = 130
when 1
@cursor_x = 180
@cursor_y = 195
when 2
@cursor_x = 180
@cursor_y = 255
when 3
@cursor_x = 180
@cursor_y = 320
end
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@command_window.active = true
@status_window.active = false
@status_window.index = -1
return
end
if Input.trigger?(Input::C)
case @command_window.index
when 1
if $game_party.actors[@status_window.index].restriction >= 2
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Skill.new(@status_window.index)
when 2
$game_system.se_play($data_system.decision_se)
$scene = Scene_Equip.new(@status_window.index)
when 3
$game_system.se_play($data_system.decision_se)
$scene = Scene_Status.new(@status_window.index)
end
return
end
end
end
- Spoiler:
SP_tx
SP_Bar
Mn_Sel_Off
Mn_Sel
Mn_Lay
Mn_Back
Lv_Tx
HP_Tx
HP_Bar
*Nome do char*_Fc
*Nome do char*_Fc
Exp_Tx
Exp_Meter
Exp_Back
*Nome do char*_Fc
Bar0
*Nome do char*_Fc
Bem, é isso, se puderem ajudar, fico muuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuito grato mesmo! Preciso disso mesmo! Tô put* desesperado! Valew
RayquazaBR- Mensagens : 218
Data de inscrição : 14/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
Não entendi o seu pedido.
poderia explicar melhor o que quer exatamente?(mudar o estilo do cursor; remover ele; fazer ele sumir; etc...)
T+
poderia explicar melhor o que quer exatamente?(mudar o estilo do cursor; remover ele; fazer ele sumir; etc...)
T+
kandrakah- Mensagens : 5
Data de inscrição : 16/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
Mais ou menos, tipow, ao invés de aparecer um cursor do lado, ele troque por imagens, ex:
Continuar ativo:
Continuar ativo:
- Spoiler:
- Spoiler:
RayquazaBR- Mensagens : 218
Data de inscrição : 14/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
vc disse que conseguiu frizar(ou seja deixar o cursor parado), certo?
se sim, tentarei para vc.
se sim, tentarei para vc.
Shadow™- Mensagens : 75
Data de inscrição : 15/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
Sim, mas isso tem alguma importância??
RayquazaBR- Mensagens : 218
Data de inscrição : 14/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
sim pois irei modificar uma screen, por outra
PS: se puder esperar um pouco, pois estou fazendo o char do MAKERASH.
farei imediatamente depois de eu acabar o char dele.
PS: se puder esperar um pouco, pois estou fazendo o char do MAKERASH.
farei imediatamente depois de eu acabar o char dele.
Shadow™- Mensagens : 75
Data de inscrição : 15/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
Sem problema e brigadão mesmo vei!
Se precisar de algo é so pedir! ;D
Se precisar de algo é so pedir! ;D
RayquazaBR- Mensagens : 218
Data de inscrição : 14/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
axo que da para fazer usando a cabeça por meio de screens não?
pense um pouco mais amigo :-X
faz um borrão no photo alguma coisa...
tenta mudar o posição X e Y do cursor... ou deixa um espaço transparente até chegar nos menus (o "borrão" entende?)
Tenta aí e VÊ si da certo ok?
Té mais õ/
pense um pouco mais amigo :-X
faz um borrão no photo alguma coisa...
tenta mudar o posição X e Y do cursor... ou deixa um espaço transparente até chegar nos menus (o "borrão" entende?)
Tenta aí e VÊ si da certo ok?
Té mais õ/
BrunoGirome1- Mensagens : 8
Data de inscrição : 14/07/2010
Idade : 28
Localização : Em algum lugar caçando a Beatriz u3u
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
Acho que n entendeu direito...
Tipow, eu queria fazer por imagens, tipow, "equip_ativado" "sair_ativado"
Eu tentei fuça no script pra ver se conseguia encontrar onde eu mudo as coordenadas do cursor, mas eu não encontrei...
Tipow, eu queria fazer por imagens, tipow, "equip_ativado" "sair_ativado"
Eu tentei fuça no script pra ver se conseguia encontrar onde eu mudo as coordenadas do cursor, mas eu não encontrei...
RayquazaBR- Mensagens : 218
Data de inscrição : 14/07/2010
Re: [RGSS/Pedido]Ajuda com MOG Scene Menu
RayquazaBR escreveu:Acho que n entendeu direito...
Tipow, eu queria fazer por imagens, tipow, "equip_ativado" "sair_ativado"
Eu tentei fuça no script pra ver se conseguia encontrar onde eu mudo as coordenadas do cursor, mas eu não encontrei...
eu intendi
você quer fazer menu por pictures...
como eu não entendo de scripts eu dei essa alternativa...
Mas melhor deixar um scripter de ajudar mesmo...
Té mais õ/
BrunoGirome1- Mensagens : 8
Data de inscrição : 14/07/2010
Idade : 28
Localização : Em algum lugar caçando a Beatriz u3u
Tópicos semelhantes
» Pedido - Alterar Scene Equips do NP MAster [RGSS]
» [pedido/rgss/NPV3] estou com problemas para criar um menu com imagens...
» [BUG-RGSS]Star Ocean 3 Custom Menu System
» [RGSS Online] Outra Ajuda por favor
» [PEDIDO RGSS2] Menu - Legend Of Zelda
» [pedido/rgss/NPV3] estou com problemas para criar um menu com imagens...
» [BUG-RGSS]Star Ocean 3 Custom Menu System
» [RGSS Online] Outra Ajuda por favor
» [PEDIDO RGSS2] Menu - Legend Of Zelda
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos