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

Project1

 找回密码
 注册会员
搜索
楼主: superufo
打印 上一主题 下一主题

小幽的脚本工坊[因故暂时关闭]

 关闭 [复制链接]

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
181
发表于 2008-3-5 04:56:34 | 只看该作者
等等小幽不高兴喵……

打住= =
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
46 小时
注册时间
2007-8-2
帖子
859
182
发表于 2008-3-5 04:58:50 | 只看该作者
以下引用小幽的马甲于2008-3-4 20:56:34的发言:


等等小幽不高兴喵……

打住= =

貌似小幽好有空!!!不如便宜点卖我个值槽吧。。。
本人小博客,摸图进入
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

183
发表于 2008-3-8 03:13:04 | 只看该作者
怎么连挂名都没给我挂上……
话说用这系统最后还是被我改的漂漂亮亮的~

[LINE]1,#dddddd[/LINE]
PS。……突然发现用了这个之后物品卖掉了得到钱后物品没少去……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
184
发表于 2008-3-8 03:22:50 | 只看该作者
PS。……突然发现用了这个之后物品卖掉了得到钱后物品没少去……

我囧了
麻烦再给我那个脚本
那脚本我早给扔到爪哇岛了……
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
46 小时
注册时间
2007-8-2
帖子
859
185
发表于 2008-3-8 03:24:20 | 只看该作者
以下引用小幽的马甲于2008-3-4 20:56:34的发言:


等等小幽不高兴喵……

打住= =

小幽阿。。。帮我把VX版行走图横版战斗的,使用某些法术(比如剑术)时只显示动画(人物不显示)法术结束再次出现,修改一下吧。。。。。。。应该不会很贵吧。。。。。
本人小博客,摸图进入
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

186
发表于 2008-3-8 03:24:32 | 只看该作者
  1. =begin
  2. 使用方法:
  3. 1.搜索
  4.    @chaojie = true if $game_variables[6] <= @itemnumber
  5. 将那个“1”换成控制总数的变量号
  6. 注意:一共有三处……
  7. 2.将图片放到Graphics/Pictures/bag.png
  8. 规格180*360
  9. 3.搜索
  10.    self.contents.draw_text(4, 0, self.width - 40, WLH, "我可爱的背包")
  11. 把“我可爱的背包”换成你想要的文字
  12. =end

  13. class Window_ItemBag < Window_Base
  14.   def initialize
  15.     super(0,0,544-180,56)
  16.     self.contents = Bitmap.new(width - 32, height - 32)
  17.     self.contents.draw_text(4, 0, self.width - 40, WLH, "小背包")
  18.   end
  19. end
  20. #==============================================================================
  21. # ■ Window_Item
  22. #------------------------------------------------------------------------------
  23. #  物品画面、战斗画面、显示浏览物品的窗口。
  24. #==============================================================================

  25. class Window_Item < Window_Selectable
  26.   #--------------------------------------------------------------------------
  27.   # ● 初始化对象
  28.   #     x      : 窗口的 X 坐标
  29.   #     y      : 窗口的 Y 坐标
  30.   #     width  : 窗口的宽
  31.   #     height : 窗口的高
  32.   #--------------------------------------------------------------------------
  33.   def initialize(x, y, width, height)
  34.     super(x, y, width, height)
  35.     @column_max = 2
  36.     self.index = 0
  37.     refresh
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ● 取得物品
  41.   #--------------------------------------------------------------------------
  42.   def item
  43.     return @data[self.index]
  44.   end
  45.   #--------------------------------------------------------------------------
  46.   # ● 列表中包含的物品
  47.   #     item : 物品
  48.   #--------------------------------------------------------------------------
  49.   def include?(item)
  50.     return false if item == nil
  51.     if $game_temp.in_battle
  52.       return false unless item.is_a?(RPG::Item)
  53.     end
  54.     return true
  55.   end
  56.   #--------------------------------------------------------------------------
  57.   # ● 显示是否可以使用物品
  58.   #     item : 物品
  59.   #--------------------------------------------------------------------------
  60.   def enable?(item)
  61.     return $game_party.item_can_use?(item)
  62.   end
  63.   #--------------------------------------------------------------------------
  64.   # ● 刷新
  65.   #--------------------------------------------------------------------------
  66.   def refresh
  67.     @data = []
  68.     for item in $game_party.items
  69.       next unless include?(item)
  70.       @data.push(item)
  71.       if item.is_a?(RPG::Item) and item.id == $game_party.last_item_id
  72.         self.index = @data.size - 1
  73.       end
  74.     end
  75.     @data.push(nil) if include?(nil)
  76.     @item_max = @data.size
  77.     create_contents
  78.     for i in 0...@item_max
  79.       draw_item(i)
  80.     end
  81.   end
  82.   #--------------------------------------------------------------------------
  83.   # ● 描绘项目
  84.   #     index : 项目编号
  85.   #--------------------------------------------------------------------------
  86.   def draw_item(index)
  87.     rect = item_rect(index)
  88.     self.contents.clear_rect(rect)
  89.     item = @data[index]
  90.     if item != nil
  91.       number = $game_party.item_number(item)
  92.       enabled = enable?(item)
  93.       rect.width -= 4
  94.       draw_item_name(item, rect.x, rect.y, enabled)
  95.       self.contents.font.size = 12
  96.       self.contents.draw_text(rect.x + 5  , rect.y - 23, WLH , 80, number.to_s, 2)
  97.       self.contents.font.size = 20
  98.     end
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● 更新帮助文本
  102.   #--------------------------------------------------------------------------
  103.   def update_help
  104.     @help_window.set_text(item == nil ? "" : item.description)
  105.   end

  106.   def draw_item_name(item, x, y, enabled = true)
  107.     if item != nil
  108.       draw_icon(item.icon_index, x, y, enabled)
  109.       self.contents.font.color = normal_color
  110.       self.contents.font.color.alpha = enabled ? 255 : 128
  111.       self.contents.draw_text(x + 48, y, 172, WLH, item.name)
  112.     end
  113.   end  
  114. end

  115. #==============================================================================
  116. # ■ Scene_Item
  117. #------------------------------------------------------------------------------
  118. #  处理物品画面的类。
  119. #==============================================================================

  120. class Scene_Item < Scene_Base
  121.   #--------------------------------------------------------------------------
  122.   # ● 开始处理
  123.   #--------------------------------------------------------------------------
  124.   def start
  125.     super
  126.     create_menu_background
  127.     @viewport = Viewport.new(0, 0, 544, 416)
  128.     @help_window = Window_Help.new
  129.     @help_window.viewport = @viewport
  130.     @item_window = Window_Item.new(0, 56, 544-180, 416-56*2)
  131.     @item_window.viewport = @viewport
  132.     @item_window.help_window = @help_window
  133.     @help_window.y = 416-56
  134.     @item_window.active = false
  135.     @sprite = Sprite.new
  136.     @sprite.x = 544-180
  137.     @sprite.bitmap = Bitmap.new("Graphics/Pictures/bag")
  138.     @sprite.opacity = 160
  139.     @target_window = Window_MenuStatus.new(0, 0)
  140.     @bag_window = Window_ItemBag.new
  141.     hide_target_window
  142.   end
  143.   #--------------------------------------------------------------------------
  144.   # ● 结束处理
  145.   #--------------------------------------------------------------------------
  146.   def terminate
  147.     super
  148.     dispose_menu_background
  149.     @viewport.dispose
  150.     @sprite.dispose
  151.     @help_window.dispose
  152.     @item_window.dispose
  153.     @target_window.dispose
  154.     @bag_window.dispose
  155.   end
  156.   #--------------------------------------------------------------------------
  157.   # ● 返回至原来的画面
  158.   #--------------------------------------------------------------------------
  159.   def return_scene
  160.     $scene = Scene_Menu.new(0)
  161.   end
  162.   #--------------------------------------------------------------------------
  163.   # ● 更新画面
  164.   #--------------------------------------------------------------------------
  165.   def update
  166.     super
  167.     update_menu_background
  168.     @help_window.update
  169.     @item_window.update
  170.     @target_window.update
  171.     if @item_window.active
  172.       update_item_selection
  173.     elsif @target_window.active
  174.       update_target_selection
  175.     end
  176.   end
  177.   #--------------------------------------------------------------------------
  178.   # ● 更新物品选择
  179.   #--------------------------------------------------------------------------
  180.   def update_item_selection
  181.     if Input.trigger?(Input::B)
  182.       Sound.play_cancel
  183.       return_scene
  184.     elsif Input.trigger?(Input::C)
  185.       @item = @item_window.item
  186.       if @item != nil
  187.         $game_party.last_item_id = @item.id
  188.       end
  189.       if $game_party.item_can_use?(@item)
  190.         Sound.play_decision
  191.         determine_item
  192.       else
  193.         Sound.play_buzzer
  194.       end
  195.     end
  196.   end
  197.   #--------------------------------------------------------------------------
  198.   # ● 确定物品
  199.   #--------------------------------------------------------------------------
  200.   def determine_item
  201.     if @item.for_friend?
  202.       show_target_window(@item_window.index % 2 == 0)
  203.       if @item.for_all?
  204.         @target_window.index = 99
  205.       else
  206.         if $game_party.last_target_index < @target_window.item_max
  207.           @target_window.index = $game_party.last_target_index
  208.         else
  209.           @target_window.index = 0
  210.         end
  211.       end
  212.     else
  213.       use_item_nontarget
  214.     end
  215.   end
  216.   #--------------------------------------------------------------------------
  217.   # ● 更新选择目标
  218.   #--------------------------------------------------------------------------
  219.   def update_target_selection
  220.     if Input.trigger?(Input::B)
  221.       Sound.play_cancel
  222.       if $game_party.item_number(@item) == 0    # 物品使用完了的情况下
  223.         @item_window.refresh                    # 重新生成窗口内容
  224.       end
  225.       hide_target_window
  226.     elsif Input.trigger?(Input::C)
  227.       if not $game_party.item_can_use?(@item)
  228.         Sound.play_buzzer
  229.       else
  230.         determine_target
  231.       end
  232.     end
  233.   end
  234.   #--------------------------------------------------------------------------
  235.   # ● 确定目标
  236.   #    无效的情况下 (在不能战斗的情况下使用恢复剂) 播放 buzzer 的 SE。
  237.   #--------------------------------------------------------------------------
  238.   def determine_target
  239.     used = false
  240.     if @item.for_all?
  241.       for target in $game_party.members
  242.         target.item_effect(target, @item)
  243.         used = true unless target.skipped
  244.       end
  245.     else
  246.       $game_party.last_target_index = @target_window.index
  247.       target = $game_party.members[@target_window.index]
  248.       target.item_effect(target, @item)
  249.       used = true unless target.skipped
  250.     end
  251.     if used
  252.       use_item_nontarget
  253.     else
  254.       Sound.play_buzzer
  255.     end
  256.   end
  257.   #--------------------------------------------------------------------------
  258.   # ● 显示目标窗口
  259.   #     right : 靠右标志 (false 为靠左)
  260.   #--------------------------------------------------------------------------
  261.   def show_target_window(right)
  262.     @item_window.active = false
  263.     width_remain = 544 - @target_window.width
  264.     @target_window.x = right ? width_remain : 0
  265.     @target_window.visible = true
  266.     @target_window.active = true
  267.     if right
  268.       @viewport.rect.set(0, 0, width_remain, 416)
  269.       @viewport.ox = 0
  270.     else
  271.       @viewport.rect.set(@target_window.width, 0, width_remain, 416)
  272.       @viewport.ox = @target_window.width
  273.     end
  274.   end
  275.   #--------------------------------------------------------------------------
  276.   # ● 不显示目标窗口
  277.   #--------------------------------------------------------------------------
  278.   def hide_target_window
  279.     @item_window.active = true
  280.     @target_window.visible = false
  281.     @target_window.active = false
  282.     @viewport.rect.set(0, 0, 544, 416)
  283.     @viewport.ox = 0
  284.   end
  285.   #--------------------------------------------------------------------------
  286.   # ● 使用物品 (也适用于我方对象以外的效果)
  287.   #--------------------------------------------------------------------------
  288.   def use_item_nontarget
  289.     Sound.play_use_item
  290.     $game_party.consume_item(@item)
  291.     @item_window.draw_item(@item_window.index)
  292.     @target_window.refresh
  293.     if $game_party.all_dead?
  294.       $scene = Scene_Gameover.new
  295.     elsif @item.common_event_id > 0
  296.       $game_temp.common_event_id = @item.common_event_id
  297.       $scene = Scene_Map.new
  298.     end
  299.   end
  300. end

  301. class Game_Party < Game_Unit
  302. alias old_gain_item gain_item
  303. def gain_item(item, n, include_equip = false)
  304.   @itemnumber = 0
  305.   @chaojie = false
  306.   for i in 0...$data_items.size
  307.     new_item = $data_items[i]
  308.     @itemnumber += 1 if has_item?(new_item)
  309.     @chaojie = true if $game_variables[6] <= @itemnumber
  310.   end
  311.   for i in 0...$data_weapons.size
  312.     new_item = $data_weapons[i]
  313.     @itemnumber += 1 if has_item?(new_item)
  314.     @chaojie = true if $game_variables[6] <= @itemnumber
  315.   end
  316.   for i in 0...$data_armors.size
  317.     new_item = $data_armors[i]
  318.     @itemnumber += 1 if has_item?(new_item)
  319.     @chaojie = true if $game_variables[6] <= @itemnumber
  320.   end
  321.   @chaojie = true if has_item?(item)
  322.   return if @chaojie
  323.   old_gain_item(item,n,include_equip)
  324. end
  325. end

复制代码

我想是这脚本的问题吧……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
187
发表于 2008-3-8 03:25:54 | 只看该作者
以下引用yooucs于2008-3-7 19:24:20的发言:


以下引用小幽的马甲于2008-3-4 20:56:34的发言:


等等小幽不高兴喵……

打住= =


小幽阿。。。帮我把VX版行走图横版战斗的,使用某些法术(比如剑术)时只显示动画(人物不显示)法术结束再次出现,修改一下吧。。。。。。。应该不会很贵吧。。。。。

我都说了暂时满额……
再说我得先把小柯的改掉
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

188
发表于 2008-3-8 03:27:37 | 只看该作者
小幽真乖……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
46 小时
注册时间
2007-8-2
帖子
859
189
发表于 2008-3-8 03:28:46 | 只看该作者
以下引用小幽的马甲于2008-3-7 19:25:54的发言:


以下引用yooucs于2008-3-7 19:24:20的发言:


以下引用小幽的马甲于2008-3-4 20:56:34的发言:


等等小幽不高兴喵……

打住= =


小幽阿。。。帮我把VX版行走图横版战斗的,使用某些法术(比如剑术)时只显示动画(人物不显示)法术结束再次出现,修改一下吧。。。。。。。应该不会很贵吧。。。。。


我都说了暂时满额……
再说我得先把小柯的改掉

要记得改完小柯的帮我改。。。。。
本人小博客,摸图进入
回复 支持 反对

使用道具 举报

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
190
发表于 2008-3-8 03:41:35 | 只看该作者
好吧小柯

old_gain_item(item,n,include_equip)
前加
@chaojie = false if n < 0
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-21 22:48

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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