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

Project1

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

[已经解决] 帮忙写个窗口描绘物品图标,并随主角移动而移动的脚本?

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

Lv1.梦旅人 (禁止发言)

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

Lv2.观梦者

虚構歪曲

梦石
0
星屑
364
在线时间
1198 小时
注册时间
2010-12-18
帖子
3928

贵宾

2
发表于 2011-3-18 20:57:44 | 只看该作者
本帖最后由 忧雪の伤 于 2011-3-18 21:05 编辑
  1. class Window_Icon < Window_Base

  2.   def initialize(name)
  3.    
  4.     super(0, 0, 64, 64)
  5.     self.contents = Bitmap.new(width - 32, height - 32)
  6.     self.opacity = 0
  7.     @name = name
  8.     refresh
  9.    
  10.   end
  11.   
  12.   def refresh
  13.    
  14.     self.contents.clear
  15.     bitmap = RPG::Cache.icon(@name)
  16.     self.contents.blt(0, 0, bitmap, Rect.new(0, 0, 24, 24))
  17.    
  18.   end
  19.   
  20. end

  21. class Scene_Map
  22.   
  23.   alias :old_old_main :main unless method_defined? :old_old_main
  24.   def main
  25.    
  26.     old_old_main
  27.     @icon_window.dispose if @icon_window != nil
  28.    
  29.   end
  30.   
  31.   alias :old_old_update :update unless method_defined? :old_old_update
  32.   def update
  33.    
  34.     if @icon_window != nil
  35.       @icon_window.x = $game_player.screen_x - 30
  36.       @icon_window.y = $game_player.screen_y - 82
  37.     end
  38.    
  39.     old_old_update
  40.    
  41.   end
  42.   
  43.   def set_icon(name)
  44.     @icon_window = Window_Icon.new(name) if name != nil
  45.   end
  46.   
  47. end
复制代码

点评

还有就是诶- -头上显示了东西以后,进入菜单再出来就没了,另外就nil以后头上依然有= =  发表于 2011-3-18 21:14
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
41 小时
注册时间
2010-8-29
帖子
44
3
 楼主| 发表于 2011-3-18 21:11:46 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

Lv2.观梦者

虚構歪曲

梦石
0
星屑
364
在线时间
1198 小时
注册时间
2010-12-18
帖子
3928

贵宾

4
发表于 2011-3-19 12:14:51 | 只看该作者
本帖最后由 忧雪の伤 于 2011-3-19 13:06 编辑
  1. #______________________________________________________________________________
  2. # * 此脚本归66RPG - Idiot Script Association(ISA)所有,谢绝任何形式转载。
  3. #______________________________________________________________________________

  4. #==============================================================================
  5. # ■ 头顶的东西 - Put On The Thing
  6. #------------------------------------------------------------------------------
  7. #   遵守协议:66RPG - Idiot Script Association(ISA)
  8. #   初始脚本:忧雪の伤
  9. #   更新优化:无
  10. #   当前版本:1.0.0.0
  11. #------------------------------------------------------------------------------
  12. #   更新日记:忧雪の伤(2011.3.19)
  13. #             - 初始化对象
  14. #------------------------------------------------------------------------------
  15. #   功能介绍:创建一个可以跟随移动,指定文件,显示在Player头上的Icon。
  16. #   使用方法:插入接入包的下端处。
  17. #   存在问题:无
  18. #==============================================================================

  19. #--------------------------------------------------------------------------
  20. # ● 资料记录
  21. #--------------------------------------------------------------------------

  22. module ISA
  23.    Use["头顶的东西"] = [true, "1.0.0.0"]
  24.    System["头顶的东西"] = {}
  25. end

  26. #--------------------------------------------------------------------------
  27. # ● 设定部分
  28. #--------------------------------------------------------------------------

  29. module ISA
  30.   # 窗口的坐标修正设定
  31.   System["头顶的东西"]["坐标修正设定"] = [30, 82]
  32. end

  33. #==============================================================================
  34. # ■ Window_Put_On
  35. #------------------------------------------------------------------------------
  36. #  显示图标的窗口。
  37. #==============================================================================

  38. class Window_Put_On < Window_Base
  39.   include ISA
  40.   #--------------------------------------------------------------------------
  41.   # ● 初始化窗口
  42.   #--------------------------------------------------------------------------
  43.   def initialize(name)
  44.     super(0, 0, 64, 64)
  45.     self.contents = Bitmap.new(width - 32, height - 32)
  46.     self.opacity = 0
  47.     self.x = $game_player.screen_x - System["头顶的东西"]["坐标修正设定"][0]
  48.     self.y = $game_player.screen_y - System["头顶的东西"]["坐标修正设定"][1]
  49.     self.z = 0
  50.     @name = name
  51.     refresh
  52.   end
  53.   #--------------------------------------------------------------------------
  54.   # ● 刷新
  55.   #--------------------------------------------------------------------------
  56.   def refresh
  57.     self.contents.clear
  58.     bitmap = RPG::Cache.icon(@name)
  59.     self.contents.blt(0, 0, bitmap, Rect.new(0, 0, 24, 24))
  60.   end
  61. end

  62. #==============================================================================
  63. # ■ Scene_Map
  64. #------------------------------------------------------------------------------
  65. #  处理地图画面的类。
  66. #==============================================================================

  67. class Scene_Map
  68.   include ISA
  69.   #--------------------------------------------------------------------------
  70.   # ● 主处理
  71.   #--------------------------------------------------------------------------
  72.   alias :put_on_the_thing_main :main unless method_defined? :put_on_the_thing_main
  73.   def main
  74.     put_on_the_thing_main
  75.   end
  76.   #--------------------------------------------------------------------------
  77.   # ● 刷新画面
  78.   #--------------------------------------------------------------------------
  79.   alias :put_on_the_thing_update :update unless method_defined? :put_on_the_thing_update
  80.   def update
  81.     if @put_on_window != nil
  82.       @put_on_window.visible = true
  83.       @put_on_window.x = $game_player.screen_x - System["头顶的东西"]["坐标修正设定"][0]
  84.       @put_on_window.y = $game_player.screen_y - System["头顶的东西"]["坐标修正设定"][1]
  85.     end
  86.     put_on_the_thing_update
  87.   end
  88.   #--------------------------------------------------------------------------
  89.   # ● 设置图标
  90.   #--------------------------------------------------------------------------
  91.   def set_icon(name)
  92.     @put_on_window = Window_Put_On.new(name)
  93.     @put_on_window.visible = true
  94.   end
  95.   #--------------------------------------------------------------------------
  96.   # ● 图标关闭
  97.   #--------------------------------------------------------------------------
  98.   def set_icon_no
  99.     if @put_on_window != nil
  100.       @put_on_window.visible = false
  101.     end
  102.     return true
  103.   end
  104. end
复制代码

评分

参与人数 1星屑 +2 收起 理由
18229042 + 2 哎呀呀,110- -

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 10:14

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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