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

Project1

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

[已经过期] 自制的选单问题

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

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
18 小时
注册时间
2011-7-2
帖子
11
跳转到指定楼层
1
发表于 2011-7-3 16:11:31 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

Lv1.梦旅人

梦石
0
星屑
50
在线时间
12 小时
注册时间
2009-10-1
帖子
8
2
发表于 2011-7-3 16:12:29 | 只看该作者
本帖最后由 fux2 于 2011-7-3 17:05 编辑

地图显示变量脚本
  1. #==========================================================================
  2. # 本脚本来自www.66rpg.com,用于任何游戏请保留此信息。
  3. #==========================================================================

  4. VAR_SWITCH = 26          # 26号开关打开此脚本才工作,关闭则停止运算,并且透明
  5. VAR_REFRESH_SWITCH = 27  # 27号开关控制强制刷新,使用时机:1、把窗口由透明变为不透明(包括第一次使用时),2、游戏中用脚本更改了$var

  6. $var = []
  7. $var = [[10,492,442],[11,594,442]] #所有需要显示在地图并且刷新的变量,可在游戏中用脚本更改。格式:[变量编号,x坐标,y坐标]

  8. #==============================================================================
  9. # ■ Window_XY
  10. #------------------------------------------------------------------------------
  11. #  显示坐标的窗口。
  12. #==============================================================================
  13. class Window_Var < Window_Base#注意前面那个window_var是文件名
  14. #--------------------------------------------------------------------------
  15. # ● 初始化窗口
  16. #--------------------------------------------------------------------------
  17. def initialize
  18.   super(-16, -16, 640+32, 480+32)#最后面那个数字是宽要显示多个需要改大,前面一个是长~
  19.   self.contents = Bitmap.new(width - 32, height - 32)
  20.   self.back_opacity = 255  # 这个是背景透明
  21.   self.opacity = 255       # 这个是边框和背景都透明
  22.   self.contents_opacity = 255       # 这个是内容透明
  23.   self.visible = false
  24.   self.z=9999
  25.   @var = $var
  26.   @var_a = []
  27.   for var_draw in $var
  28.     @var_a[var_draw[0]] = $game_variables[var_draw[0]]
  29.   end   
  30.   refresh
  31. end

  32. #--------------------------------------------------------------------------
  33. # ● 刷新
  34. #--------------------------------------------------------------------------
  35. def refresh
  36.   if $game_switches[VAR_SWITCH]
  37.     @var = $var         # 记录现在变量数组结构
  38.     self.contents.clear # 清除以前的东西
  39.     for var_draw in @var
  40.       @var_a[var_draw[0]] = $game_variables[var_draw[0]] # 记录现在的游戏变量
  41.       self.contents.draw_text(var_draw[1],var_draw[2],640,32,@var_a[var_draw[0]].to_s)
  42.     end
  43.   end
  44. end
  45. #--------------------------------------------------------------------------
  46. # ● 判断文字刷新。节约内存用
  47. #--------------------------------------------------------------------------
  48. def judge
  49.   for var_draw in $var
  50.     if @var_a[var_draw[0]] != $game_variables[var_draw[0]] #如果现在记录的变量和游戏变量不同,刷新
  51.       return true
  52.     end
  53.   end
  54.   if $game_switches[VAR_REFRESH_SWITCH]  # 强制刷新的时候,刷新
  55.     $game_switches[VAR_REFRESH_SWITCH] = false
  56.     return true
  57.   end
  58.   return false
  59. end
  60. end

  61. class Scene_Map
  62. alias var_66rpg_main main
  63. def main
  64.   @var_window = Window_Var.new
  65.   @var_window.opacity = 0
  66.   var_66rpg_main
  67.   @var_window.dispose
  68. end
  69. #--------------------------------------------------------------------------
  70. # ● 刷新画面
  71. #--------------------------------------------------------------------------
  72. alias var_66rpg_update update
  73. def update
  74.   var_66rpg_update
  75.   if $game_switches[VAR_SWITCH]
  76.     @var_window.visible = true      
  77.     @var_window.refresh if @var_window.judge
  78.   else
  79.     @var_window.visible = false
  80.   end
  81. end
  82. end
  83. #==========================================================================
  84. # 本脚本来自www.66rpg.com,用于任何游戏请保留此信息。
  85. #==========================================================================
复制代码
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
18 小时
注册时间
2011-7-2
帖子
11
3
 楼主| 发表于 2011-7-3 16:45:05 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
229
在线时间
596 小时
注册时间
2010-6-21
帖子
1218
4
发表于 2011-7-3 16:53:03 | 只看该作者
  1. class Window_dpa < Window_Base
  2.   #--------------------------------------------------------------------------
  3.   # ●初始化
  4.   #--------------------------------------------------------------------------
  5.   def initialize
  6.     super(0,0,640,480)
  7.     HPSPonMap_initialize("黑体")
  8.     self.opacity = 0#这个是窗口的不透明度,调成255窗口就会在地图上显示。
  9.   end
  10. #--------------------------------------------------------------------------
  11.   # ●更新
  12.   #--------------------------------------------------------------------------
  13.   def update
  14.     self.contents.clear
  15.     #self.contents.draw_text(X的值, Y的值, 180, 32, $game_variables[变量编号].to_s)
  16.     self.contents.draw_text(480, 0, 180, 32, $game_variables[30].to_s)
  17.   end
  18. end
复制代码
在Scene_Map里添加 刷新就行了
如果我是一个美工就好啦!
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
18 小时
注册时间
2011-7-2
帖子
11
5
 楼主| 发表于 2011-7-3 17:05:16 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42431
在线时间
7603 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

6
发表于 2011-7-3 17:06:04 | 只看该作者
zaq 发表于 2011-7-3 16:45
使用方法?多谢这位大大

直接插入到原有脚本中,Main上方
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
229
在线时间
596 小时
注册时间
2010-6-21
帖子
1218
7
发表于 2011-7-3 17:06:55 | 只看该作者
本帖最后由 懒De说 于 2011-7-3 17:12 编辑
  1. self.contents.draw_text(480, 0, 180, 32, $game_variables[30].to_s)
复制代码
括号里第一个 480为X坐标 0为Y坐标
  1. $game_variables[30].to_s
复制代码
括号里的30 就是30号变量

这个是可以重复插入的
插入以后不可能角色不能动

既然你已经新建了一个框,你可以直接显示变量
  1. $game_variables[30].to_s
复制代码
然后再MAP里直接刷新就行了
如果显示气血魔法 经验什么的可以这样
  1. $game_actors[角色编号].hp        指定编号的角色的HP
  2. $game_actors[角色编号].sp        指定编号的角色的SP
  3. $game_actors[角色编号].maxhp     指定编号的角色的最大HP
  4. $game_actors[角色编号].maxsp     指定编号的角色的最大SP
  5. $game_actors[角色编号].exp       指定编号的角色的经验值
  6. $game_actors[角色编号].level     指定编号的角色的等级
复制代码

评分

参与人数 1星屑 +200 梦石 +2 收起 理由
「旅」 + 200 + 2

查看全部评分

如果我是一个美工就好啦!
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42431
在线时间
7603 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

8
发表于 2011-7-3 17:10:01 | 只看该作者
本帖最后由 fux2 于 2011-7-3 17:11 编辑
zaq 发表于 2011-7-3 17:05
我是脚本新手请明确说出:放再哪一行,X写在哪,y写在哪,第几个变量写在哪?(是否可以多用?)还有我放上去之后 ...


简易范例
  1. class Scene_Map
  2.   alias:fux2:main
  3.   def main
  4.     @info_fux2 = Fux2.new
  5.     fux2
  6.     @info_fux2.dispose
  7.   end
  8.   
  9.   alias fux2update update
  10.   def update
  11.     @info_fux2.update
  12.     fux2update
  13.   end
  14. end

  15. class Fux2 < Window_Base
  16.   
  17.   def initialize
  18.     super(20,20,300,132)
  19.     self.opacity = 0
  20.     self.back_opacity = 0
  21.     self.contents_opacity = 255
  22.     self.contents = Bitmap.new(244, 96)
  23.     @oldstr = nil
  24.   end
  25.   
  26.   def update
  27.       if @oldstr != $game_variables[77]
  28.         self.contents.clear
  29.         self.contents.draw_text(0,0,300,50,"剩余#{$game_variables[77]}生命")
  30.         @oldstr = $game_variables[77]
  31.       end
  32.   end
  33.   
  34. end
复制代码

评分

参与人数 1星屑 +200 梦石 +2 收起 理由
「旅」 + 200 + 2

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
18 小时
注册时间
2011-7-2
帖子
11
9
 楼主| 发表于 2011-7-3 17:57:28 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
12 小时
注册时间
2009-10-1
帖子
8
10
发表于 2011-7-3 22:39:19 | 只看该作者
http://rpg.blue/article-40664.html

这里有非常详细的【附带工程】

评分

参与人数 1星屑 +200 梦石 +2 收起 理由
「旅」 + 200 + 2

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 08:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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