设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3798|回复: 6
打印 上一主题 下一主题

[RM脚本] 仿FF9的状态菜单界面

 关闭 [复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

鬼隐

梦石
0
星屑
50
在线时间
0 小时
注册时间
2005-10-23
帖子
168
跳转到指定楼层
1
发表于 2006-5-25 00:27:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
头像被屏蔽

Lv1.梦旅人 (禁止发言)

鬼隐

梦石
0
星屑
50
在线时间
0 小时
注册时间
2005-10-23
帖子
168
2
 楼主| 发表于 2006-5-25 00:27:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽

Lv1.梦旅人

66RPG站长

梦石
0
星屑
54
在线时间
615 小时
注册时间
2005-10-10
帖子
5734

RMVX自由创作大赛亚军第2届短篇游戏比赛亚军第5届短篇游戏比赛冠军

3
发表于 2006-5-25 20:00:24 | 只看该作者
有一点点小BUG,修正了一下:
  1. $defaultfonttype = "黑体"
  2. $defaultfontsize = 18

  3. # 补一句:153、152行是描绘行走图的。把153注释掉,152去掉注释,可以绘制头像(chatacters/Faces/人名.png)

  4. #==============================================================================# ** Scene_Status
  5. #------------------------------------------------------------------------------
  6. # This class performs status screen processing.
  7. # Version 1.05
  8. # Made by: Emilio Islas or Illusion Gaming
  9. #==============================================================================
  10. class Scene_Status
  11.   #--------------------------------------------------------------------------
  12.   # * Object Initialization
  13.   # actor_index : actor index
  14.   #--------------------------------------------------------------------------
  15.   def initialize(actor_index = 0, equip_index = 0)
  16.     @actor_index = actor_index
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # * Main Processing
  20.   #--------------------------------------------------------------------------
  21.   def main
  22.     # Get actor
  23.     @actor = $game_party.actors[@actor_index]
  24.    
  25.     # Make status window
  26.     @window1 = Window1.new
  27.     @window1.x =0
  28.     @window1.y =0
  29.     @window1.height = 60
  30.     @window1.width = 640
  31.    
  32.     @Window_Player = Window_Player.new(@actor)
  33.     @Window_Player.x =0
  34.     @Window_Player.y =60
  35.     @Window_Player.height = 420
  36.     @Window_Player.width = 640
  37.    
  38.     @Window_Status = Window_Status.new(@actor)
  39.     @Window_Status.x =0
  40.     @Window_Status.y =170
  41.     @Window_Status.height = 310
  42.     @Window_Status.width = 280
  43.    
  44.     @Window_Exp = Window_Exp.new(@actor)
  45.     @Window_Exp.x =280
  46.     @Window_Exp.y =170
  47.     @Window_Exp.height = 75
  48.     @Window_Exp.width = 360
  49.    
  50.     @Window_Equipment = Window_Equipment.new(@actor)
  51.     @Window_Equipment.x =280
  52.     @Window_Equipment.y =245
  53.     @Window_Equipment.height = 235
  54.     @Window_Equipment.width = 360
  55.     # Execute transition
  56.     Graphics.transition
  57.     # Main loop
  58.     loop do
  59.       # Update game screen
  60.       Graphics.update
  61.       # Update input information
  62.       Input.update
  63.       # Frame update
  64.       update
  65.       # Abort loop if screen is changed
  66.       if $scene != self
  67.         break
  68.       end
  69.     end
  70.    
  71.     # Prepare for transition
  72.     Graphics.freeze
  73.     # Dispose of windows
  74.     @window1.dispose
  75.     @Window_Player.dispose
  76.     @Window_Status.dispose
  77.     @Window_Exp.dispose
  78.     @Window_Equipment.dispose
  79.   end
  80.   #--------------------------------------------------------------------------
  81.   # * Frame Update
  82.   #--------------------------------------------------------------------------
  83.   def update
  84.     # If B button was pressed
  85.     if Input.trigger?(Input::B)
  86.       # Play cancel SE
  87.       $game_system.se_play($data_system.cancel_se)
  88.       # Switch to menu screen
  89.       $scene = Scene_Menu.new(3)
  90.       return
  91.     end
  92.   
  93.     # If R button was pressed
  94.     if Input.trigger?(Input::RIGHT)
  95.       # Play cursor SE
  96.       $game_system.se_play($data_system.cursor_se)
  97.       # To next actor
  98.       @actor_index += 1
  99.       @actor_index %= $game_party.actors.size
  100.       # Switch to different status screen
  101.       $scene = Scene_Status.new(@actor_index)
  102.       return
  103.     end
  104.     # If L button was pressed
  105.     if Input.trigger?(Input::LEFT)
  106.       # Play cursor SE
  107.       $game_system.se_play($data_system.cursor_se)
  108.       # To previous actor
  109.       @actor_index += $game_party.actors.size - 1
  110.       @actor_index %= $game_party.actors.size
  111.       # Switch to different status screen
  112.       $scene = Scene_Status.new(@actor_index)
  113.       return
  114.     end
  115.   end
  116. end

  117. class Window1 < Window_Base
  118.   def initialize
  119.     super(0, 0, 640,60)
  120.     self.contents = Bitmap.new(width - 32, height - 32)
  121.     self.contents.font.name = $defaultfonttype
  122.     self.contents.font.size = $defaultfontsize
  123.     self.contents.font.color = text_color(0)
  124.     self.contents.draw_text(0, 0, 130, 33, "< Prev Player")
  125.     self.contents.draw_text(500, 0, 110, 33, "Next Player >")
  126.   end
  127. end

  128. class Window_Base < Window
  129.   def draw_actor_face(actor, x, y)
  130.     face = RPG::Cache.character("Faces/" + actor.name, actor.character_hue)
  131.     fw = face.width
  132.     fh = face.height
  133.     src_rect = Rect.new(0, 0, fw, fh)
  134.     self.contents.blt(x - fw / 23, y - fh, face, src_rect)
  135.   end
  136. end

  137. class Window_Player < Window_Base
  138.   def initialize(actor)
  139.     super(0, 0, 640,420)
  140.     self.contents = Bitmap.new(width - 32, height - 32)
  141.     @actor = actor
  142.     self.contents.font.name = $defaultfonttype
  143.     self.contents.font.size = $defaultfontsize
  144.     self.contents.font.color = text_color(0)
  145.     x = 94
  146.     y = -5
  147.     #draw_actor_face(actor, 11, y + 90)
  148.     draw_actor_graphic(actor,x-50,y+80)
  149.     draw_actor_name(actor, x, y)
  150.     draw_actor_class(actor, x + 78, y)
  151.     draw_actor_level(actor, x, y + 18)
  152.     draw_actor_state(actor, x + 144, y)
  153.     draw_actor_hp(actor, x, y + 38)
  154.     draw_actor_sp(actor, x, y + 58)
  155.   end
  156. end

  157. class Window_Status < Window_Base
  158.   def initialize(actor)
  159.     super(0, 0, 280,310)
  160.     self.contents = Bitmap.new(width - 32, height - 32)
  161.     @actor = actor
  162.     self.contents.font.name = $defaultfonttype
  163.     self.contents.font.size = $defaultfontsize
  164.     self.contents.font.color = text_color(0)
  165.     draw_actor_parameter(@actor, 0, 0, 0)
  166.     draw_actor_parameter(@actor, 0, 32, 1)
  167.     draw_actor_parameter(@actor, 0, 64, 2)
  168.     draw_actor_parameter(@actor, 0, 96, 3)
  169.     draw_actor_parameter(@actor, 0, 128, 4)
  170.     draw_actor_parameter(@actor, 0, 160, 5)
  171.     draw_actor_parameter(@actor, 0, 192, 6)
  172.   end
  173. end

  174. class Window_Exp < Window_Base
  175.   def initialize(actor)
  176.     super(0, 0, 360,75)
  177.     self.contents = Bitmap.new(width - 32, height - 32)
  178.     @actor = actor
  179.     self.contents.font.name = $defaultfonttype
  180.     self.contents.font.size = $defaultfontsize
  181.     self.contents.font.color = text_color(0)
  182.     self.contents.font.color = system_color
  183.     self.contents.draw_text(0, -5, 75, 32, "EXP")
  184.     self.contents.draw_text(0, 13, 75, 32, "NEXT")
  185.     self.contents.font.color = normal_color
  186.     self.contents.draw_text(0 + 80, -5, 75, 32, @actor.exp_s, 2)
  187.     self.contents.draw_text(0 + 80, 13, 75, 32, @actor.next_rest_exp_s, 2)
  188.   end
  189. end

  190. class Window_Equipment < Window_Base
  191.   def initialize(actor)
  192.     super(0, 0, 360,235)
  193.     self.contents = Bitmap.new(width - 32, height - 32)
  194.     @actor = actor
  195.     self.contents.font.name = $defaultfonttype
  196.     self.contents.font.size = $defaultfontsize
  197.     self.contents.font.color = text_color(0)
  198.     self.contents.font.color = system_color
  199.     self.contents.draw_text(0, 0, 96, 32, "Equipment")
  200.     draw_item_name($data_weapons[@actor.weapon_id], 0 + 16, 48)
  201.     draw_item_name($data_armors[@actor.armor1_id], 0 + 16, 80)
  202.     draw_item_name($data_armors[@actor.armor2_id], 0 + 16, 112)
  203.     draw_item_name($data_armors[@actor.armor3_id], 0 + 16, 144)
  204.     draw_item_name($data_armors[@actor.armor4_id], 0 + 16, 176)
  205.   end
  206. end
复制代码
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
1 小时
注册时间
2006-2-13
帖子
194
4
发表于 2006-8-4 01:00:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2006-5-15
帖子
125
5
发表于 2006-8-4 07:36:34 | 只看该作者
我还是觉得FFX-2的那个好看。。
【田各】就要有个〖田各〗样~~!! 「纯事件游戏创作者」 D.I.Y是个好东西!!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

指舞飞扬

梦石
0
星屑
50
在线时间
0 小时
注册时间
2006-3-5
帖子
508
6
发表于 2006-8-4 10:47:32 | 只看该作者
个人喜好不同嘛``
世界真奇妙~啥鸟人都有/:|~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

查无此人

梦石
0
星屑
50
在线时间
9 小时
注册时间
2006-5-8
帖子
1399
7
发表于 2006-8-4 17:16:00 | 只看该作者
1,2,3,4,5……
总共是5个…………
默认是1个……
{/gg}
KRKR + NS 学习中..........
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-8 09:33

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表