Documente Academic
Documente Profesional
Documente Cultură
# d&n script - if you are using the script, uncomment all of this.
# class window_time < window_base
# def initialize
#super(0, 0, 160, 64)
#self.contents = bitmap.new(width - 32, height - 32)
#self.contents.font.name = "arial" # "time" window font
#self.contents.font.size = 24
#refresh
#end
#def refresh
#self.contents.clear
#@total_sec = graphics.frame_count / graphics.frame_rate
#@minute=$game_time.get_minute.floor
#hour = $game_time.get_hour
#pm_flag= hour >=12 ? true : false
#hour= hour >= 12 ? hour-12 : hour
#day=$game_time.get_day
#month=$game_time.get_month
#year=$game_time.get_year
#if hour.floor==0
#text=sprintf("%02d:%02d",12,@minute)
#else
#text=sprintf("%02d:%02d",hour,@minute)
#end
#if pm_flag
# text += " pm"
#else
#text += " am"
#end
#self.contents.font.color = normal_color
#self.contents.draw_text(4, 0, 120, 32, text, 2)
#end
#def update
#if $game_time.get_minute.floor != @minute
#refresh
#end
#end
#end
class scene_menu
def initialize(menu_index = 0, actor_index = 0, equip_index = 0)
@menu_index = menu_index
@actor_index = actor_index
@equip_index = equip_index
end
def main
@sprite = spriteset_map.new
s1 = $data_system.words.item
s2 = $data_system.words.equip
s3 = $data_system.words.skill
s4 = "status"
s5 = "game"
@dummy_window = window_base.new(0, 0, 640, 64)
@command_window = menu_command.new(640, [s1, s2, s3, s4, s5])
@command_window.index = @menu_index
@command_window.width = 700
@command_window.height = 500
@command_window.y = -5
@command_window.x = -5
@command_window.opacity = 0
@command_window.z += 10
@dummy_window.z += 10
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
@playtime_window = window_playtime.new
@playtime_window.x = 640-@playtime_window.width
@playtime_window.y = 64
@playtime_window.visible = false
@playtime_window.active = false
@mapname_window = window_mapname.new
@mapname_window.x = 640-@mapname_window.width
@mapname_window.y = @playtime_window.y+@playtime_window.height
@mapname_window.visible = false
@mapname_window.active = false
@steps_window = window_steps.new
@steps_window.x = 640-@steps_window.width
@steps_window.y = @playtime_window.y+@playtime_window.height + 96
@steps_window.visible = false
@steps_window.active = false
@gold_window = window_gold.new
@gold_window.x = 640-@gold_window.width
@gold_window.y = @steps_window.y+@steps_window.height
@gold_window.visible = false
@gold_window.active = false
# d&n script
#this is for use with deke/nearfantasticas day night system, uncomment it if
#you have this script.
#@time_window = window_time.new
#@time_window.x = 640-@time_window.width
#@time_window.y = @gold_window.y+@gold_window.height
#@time_window.visible = false
#@time_window.active = false
@help_window = window_help.new
@help_window.x = 0
@help_window.y = 416
@item_window = window_item.new(1, 17)
@item_window.help_window = @help_window
@item_window.visible = false
@item_window.active = false
@drop1 = window_menucommand.new(128,["basic", "weapons", "armor", "quest"])
@drop1.x = 0
@drop1.y = 64
@drop1.visible = false
@drop1.active = false
@drop2 = window_menustatus.new
@drop2.x = 128
@drop2.y = 64
@drop2.visible = false
@drop2.active = false
@drop3 = window_menucommand.new(128,["save","quit"])
@drop3.x = 640-128
@drop3.y = 64
@drop3.visible = false
@drop3.active = false
@target_window = window_target.new
@target_window.visible = false
@target_window.active = false
@actor = $game_party.actors[@actor_index]
@equiphelp_window = window_help.new
@left_window = window_equipleft.new(@actor)
@left_window.visible = false
@left_window.active = false
@right_window = window_equipright.new(@actor)
@right_window.help_window = @equiphelp_window
@right_window.visible = false
@right_window.active = false
@item_window1 = window_equipitem.new(@actor, 0)
@item_window1.help_window = @equiphelp_window
@item_window1.visible = false
@item_window1.active = false
@item_window2 = window_equipitem.new(@actor, 1)
@item_window2.help_window = @equiphelp_window
@item_window2.visible = false
@item_window2.active = false
@item_window3 = window_equipitem.new(@actor, 2)
@item_window3.help_window = @equiphelp_window
@item_window3.visible = false
@item_window3.active = false
@item_window4 = window_equipitem.new(@actor, 3)
@item_window4.help_window = @equiphelp_window
@item_window4.visible = false
@item_window4.active = false
@item_window5 = window_equipitem.new(@actor, 4)
@item_window5.help_window = @equiphelp_window
@item_window5.visible = false
@item_window5.active = false
@equiphelp_window.active = false
@equiphelp_window.visible = false
@right_window.index = @equip_index
@skillstatus_window = window_skillstatus.new(@actor)
@skillstatus_window.visible = false
@skillstatus_window.active = false
@skill_window = window_skill.new(@actor)
@skill_window.help_window = @help_window
@skill_window.visible = false
@skill_window.active = false
@help_window.visible = false
@help_window.active = false
@skilltarget_window = window_target.new
@skilltarget_window.visible = false
@skilltarget_window.active = false
@playerstatus_window = window_status.new(@actor)
@playerstatus_window.visible = false
@playerstatus_window.active = false
graphics.transition
loop do
graphics.update
input.update
update
if $scene != self
break
end
end
graphics.freeze
@help_window.dispose
@item_window.dispose
@target_window.dispose
@drop1.dispose
@drop2.dispose
@drop3.dispose
@dummy_window.dispose
@command_window.dispose
@playtime_window.dispose
@steps_window.dispose
@mapname_window.dispose
@gold_window.dispose
#you will also have to take out this comment for the d&n script
#@time_window.dispose
@equiphelp_window.dispose
@left_window.dispose
@right_window.dispose
@item_window1.dispose
@item_window2.dispose
@item_window3.dispose
@item_window4.dispose
@item_window5.dispose
@skillstatus_window.dispose
@skill_window.dispose
@skilltarget_window.dispose
@playerstatus_window.dispose
end
def equip_refresh
@item_window1.visible = (@right_window.index == 0)
@item_window2.visible = (@right_window.index == 1)
@item_window3.visible = (@right_window.index == 2)
@item_window4.visible = (@right_window.index == 3)
@item_window5.visible = (@right_window.index == 4)
item1 = @right_window.item
case @right_window.index
when 0
@eitem_window = @item_window1
newmode = 0
when 1
@eitem_window = @item_window2
newmode = 1
when 2
@eitem_window = @item_window3
newmode = 1
when 3
@eitem_window = @item_window4
newmode = 1
when 4
@eitem_window = @item_window5
newmode = 1
end
if newmode != @left_window.mode
@left_window.mode = newmode
@left_window.refresh
end
if @right_window.active
@left_window.set_new_parameters(nil, nil, nil, nil, nil, nil, nil)
end
if @eitem_window.active
item2 = @eitem_window.item
last_hp = @actor.hp
old_atk = @actor.atk
old_pdef = @actor.pdef
old_mdef = @actor.mdef
old_str = @actor.str
old_dex = @actor.dex
old_agi = @actor.agi
old_int = @actor.int
old_eva = @actor.eva
@actor.equip(@right_window.index, item2 == nil ? 0 : item2.id)
new_atk = @actor.atk
new_pdef = @actor.pdef
new_mdef = @actor.mdef
new_str = @actor.str
new_dex = @actor.dex
new_agi = @actor.agi
new_int = @actor.int
new_eva = @actor.eva
@left_window.changes = [0, 0, 0, 0, 0, 0, 0, 0]
if new_atk > old_atk
@left_window.changes[0] = 1
end
if new_atk < old_atk
@left_window.changes[0] = -1
end
if new_pdef > old_pdef
@left_window.changes[1] = 1
end
if new_pdef < old_pdef
@left_window.changes[1] = -1
end
if new_mdef > old_mdef
@left_window.changes[2] = 1
end
if new_mdef < old_mdef
@left_window.changes[2] = -1
end
if new_str > old_str
@left_window.changes[3] = 1
end
if new_str < old_str
@left_window.changes[3] = -1
end
if new_dex > old_dex
@left_window.changes[4] = 1
end
if new_dex < old_dex
@left_window.changes[4] = -1
end
if new_agi > old_agi
@left_window.changes[5] = 1
end
if new_agi < old_agi
@left_window.changes[5] = -1
end
if new_int > old_int
@left_window.changes[6] = 1
end
if new_int < old_int
@left_window.changes[6] = -1
end