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

Project1

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

[已经解决] 關於升級配點腳本如何做出「能力重置藥品」?(已解決)

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2008-11-22
帖子
105
跳转到指定楼层
1
发表于 2009-11-3 21:55:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 柳橙汁 于 2009-11-4 13:49 编辑

我用了站上的升級配點腳本
http://rpg.blue/web/index.php?doc-view-4173

我想請問

要如何做出「能力重置藥品」?

能力重置藥品 
說明:使用後該角色重新獲得其等級所能獲得的能力點數,且消去之前所加過的能力值
   (假設玩家總共加了50點血量、15點力量、10點速度,則消去這些能力值)

Lv2.观梦者

永遠神剣

梦石
0
星屑
339
在线时间
412 小时
注册时间
2009-8-16
帖子
1797

贵宾

2
发表于 2009-11-4 06:00:17 | 只看该作者
本帖最后由 Eienshinken 于 2009-11-4 06:01 编辑

试写了下. 也只是改改原脚本的变量在ITEM里使用.判断人物状态来实现功能
用的时候注意设置道具的状态ID,给那个道具添加一个状态....
点数与开关设置与原脚本一样就行了.
  1. #==============================================================================
  2. # ■ module SET
  3. #------------------------------------------------------------------------------
  4. #  开关与点数的设定项目。
  5. #   注意!请与加点脚本设置一样,不然会出现点数错误!!!!
  6. #   这里默认与原脚本一样   BY:Eienshinken
  7. #==============================================================================
  8. module SET
  9. STATES_ID = 17           # 使用道具时人物变化的状态,拥有这个状态的人物点数重置。
  10. LEVEL_UP_POINT = 3       # 每升一级所增加的点数
  11. LEVEL_UP_VARIABLE = 100  # 储存角色点数的变量编号与角色id编号的差值
  12.                          # 默认情况 = 100,
  13.                          # 则是数据库里1号角色的加点数存于101号变量
  14.                          # 3号角色的加点数存于103号变量。
  15.                          # 你可以直接操作变量赠与角色可分配点数
  16. end
  17. #==============================================================================
  18. # ■ Scene_Item
  19. #------------------------------------------------------------------------------
  20. #  处理物品画面的类。
  21. #==============================================================================

  22. class Scene_Item
  23.   #--------------------------------------------------------------------------
  24.   # ● 刷新画面 (目标窗口被激活的情况下)
  25.   #--------------------------------------------------------------------------
  26.   #--------------------------------------------------------------------------
  27.   # ● 刷新画面 (目标窗口被激活的情况下)
  28.   #--------------------------------------------------------------------------
  29.   def update_target
  30.     # 按下 B 键的情况下
  31.     if Input.trigger?(Input::B)
  32.       # 演奏取消 SE
  33.       $game_system.se_play($data_system.cancel_se)
  34.       # 由于物品用完而不能使用的场合
  35.       unless $game_party.item_can_use?(@item.id)
  36.         # 再次生成物品窗口的内容
  37.         @item_window.refresh
  38.       end
  39.       # 删除目标窗口
  40.       @item_window.active = true
  41.       @target_window.visible = false
  42.       @target_window.active = false
  43.       return
  44.     end
  45.     # 按下 C 键的情况下
  46.     if Input.trigger?(Input::C)
  47.       # 如果物品用完的情况下
  48.       if $game_party.item_number(@item.id) == 0
  49.         # 演奏冻结 SE
  50.         $game_system.se_play($data_system.buzzer_se)
  51.         return
  52.       end
  53.       # 目标是全体的情况下
  54.       if @target_window.index == -1
  55.         # 对同伴全体应用物品使用效果
  56.         used = false
  57.         for i in $game_party.actors
  58.           used |= i.item_effect(@item)
  59.         end
  60.       end
  61.       # 目标是单体的情况下
  62.       if @target_window.index >= 0
  63.         # 对目标角色应用物品的使用效果
  64.         target = $game_party.actors[@target_window.index]
  65.         used = target.item_effect(@item)
  66.       end
  67.       # 使用物品的情况下
  68.       if used
  69.         # 演奏物品使用时的 SE
  70.         $game_system.se_play(@item.menu_se)
  71.         # 消耗品的情况下
  72.         if @item.consumable
  73.           # 使用的物品数减 1
  74.           $game_party.lose_item(@item.id, 1)
  75.           # 再描绘物品窗口的项目
  76.           @item_window.draw_item(@item_window.index)
  77.         end
  78.         # 再生成目标窗口的内容
  79.         for i in 0...$game_party.actors.size
  80.         if $game_party.actors[i].state?(SET::STATES_ID)
  81.         $game_party.actors[i].maxhp = $game_party.actors[i].base_maxhp
  82.         $game_party.actors[i].maxsp = $game_party.actors[i].base_maxsp
  83.         $game_party.actors[i].str   = $game_party.actors[i].base_str  
  84.         $game_party.actors[i].dex   = $game_party.actors[i].base_dex  
  85.         $game_party.actors[i].agi   = $game_party.actors[i].base_agi  
  86.         $game_party.actors[i].int   = $game_party.actors[i].base_int
  87.         @actor_level = $game_party.actors[i].level
  88.         @actor_point = @actor_level * SET::LEVEL_UP_POINT
  89.         @actor_id = $game_party.actors[i].id
  90.         $game_variables[@actor_id + SET::LEVEL_UP_VARIABLE] = @actor_point - SET::LEVEL_UP_POINT
  91.         $game_party.actors[i].remove_state(SET::STATES_ID)
  92.         end
  93.         end
  94.         @target_window.refresh
  95.         # 全灭的情况下
  96.         if $game_party.all_dead?
  97.           # 切换到游戏结束画面
  98.           $scene = Scene_Gameover.new
  99.           return
  100.         end
  101.         # 公共事件 ID 有效的情况下
  102.         if @item.common_event_id > 0
  103.           # 预约调用公共事件
  104.           $game_temp.common_event_id = @item.common_event_id
  105.           # 切换到地图画面
  106.           $scene = Scene_Map.new
  107.           return
  108.         end
  109.       end
  110.       # 无法使用物品的情况下
  111.       unless used
  112.         # 演奏冻结 SE
  113.         $game_system.se_play($data_system.buzzer_se)
  114.       end
  115.       return
  116.     end
  117.   end
  118. end
复制代码
新的UI 旧的开始
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2008-11-22
帖子
105
3
 楼主| 发表于 2009-11-4 12:41:35 | 只看该作者
2# Eienshinken


姊姊可以給範例嗎~? 比較清楚~ =ˇ=
我測試後發現兩個怪現象
1:角色升級後,如果將能力點數用完,然後再使用「能力重置藥品」,會變成無法使用。
2:角色升級後,如果沒將能力點數用完,然後再使用「能力重置藥品」,藥品會消失,但是沒有任何效果。
不知道是我設置哪裡有問題嗎? ⊙_⊙
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

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

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2008-11-22
帖子
105
5
 楼主| 发表于 2009-11-4 13:38:11 | 只看该作者
4# 冬季冰川


我找出問題了~
我用了這個物品分類的腳本
http://rpg.blue/web/htm/news126.htm

不知道要怎麼整合? =     =
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2008-11-22
帖子
105
6
 楼主| 发表于 2009-11-4 13:49:00 | 只看该作者
感謝姊姊寫這個腳本!!感謝冬季做範例給我!!
我自己整合了!! 感恩~! =ˇ=
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-29 09:56

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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