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

Project1

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

[已经解决] 请问如何在战斗窗口添加独立的技能呢?(解决)

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2016-11-11
帖子
22
跳转到指定楼层
1
发表于 2017-1-19 11:42:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 SandFainy 于 2017-1-24 18:54 编辑

战斗的窗口有那一列是攻击,防御,物品,魔法什么的,如果要再加一个单独的技能,选这个选项直接发动不经过“魔法”——选技能这个顺序,要怎么设置?
试过把技能类型设置成“无”什么的。。但是这样好像没有变化。。
有人知道吗QAQ谢谢!!

点评

技能说明也是个问题,因为角色指令窗是默认玩家知道这些是干啥的(攻击,防御)等等。所以要增加这个功能前还请三思。  发表于 2017-1-20 14:30
这个需要改脚本。我需要知道的是,这个技能有无消耗限制。如果有,你要把消耗提示显示在哪儿还是个设计层面的问题。  发表于 2017-1-20 14:29

Lv2.观梦者

梦石
0
星屑
816
在线时间
278 小时
注册时间
2016-1-27
帖子
53
2
发表于 2017-1-19 13:14:46 | 只看该作者
在红框里扩展技能类型

2345截图20170119131036.png (120.18 KB, 下载次数: 32)

2345截图20170119131036.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2016-11-11
帖子
22
3
 楼主| 发表于 2017-1-19 23:29:01 | 只看该作者
烛龙之殇 发表于 2017-1-19 13:14
在红框里扩展技能类型

嗯,在这里改过了,但还是要先过“特技”这一步,再在一个窗口里选,能不能在战斗窗口点一个项目直接发动技能?

点评

就是亲理解的意思;D  发表于 2017-1-20 18:56
你的意思是点一个键直接发动技能吗?能不能截个图,口述的话不太好理解你的意思  发表于 2017-1-20 12:32
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2016-11-11
帖子
22
4
 楼主| 发表于 2017-1-20 18:56:03 | 只看该作者
SandFainy 发表于 2017-1-19 23:29
嗯,在这里改过了,但还是要先过“特技”这一步,再在一个窗口里选,能不能在战斗窗口点一个项目直接发动 ...

就是亲理解的意思;D
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
816
在线时间
278 小时
注册时间
2016-1-27
帖子
53
5
发表于 2017-1-20 20:59:37 | 只看该作者
SandFainy 发表于 2017-1-20 18:56
就是亲理解的意思;D

可以试试这个脚本
  1. =begin
  2.   使用方法:
  3.     在装备/技能/角色/职业上备注 <attackskill x>或<guardskill x>

  4.   效果:
  5.     装上装备后/学会技能后/设定的角色中/设定的职业中,普通攻击/防御变为第x号技能

  6.   优先级:
  7.     装备 > 技能 > 角色 > 职业
  8.     装备:武器 > 武器2/盾牌 > 头盔 > 铠甲 > 饰品
  9.     技能:技能ID小的优先。
  10.   
  11.   [2014.1.17] 添加了防御技能的设置,完善了command_attack的重定义,删除了修改优先级的说明
  12. =end

  13. class Module
  14.   #--------------------------------------------------------------------------
  15.   # ● 依次把 prefix 作为前缀定义 method1、method2 ... 的别名。
  16.   #    返回处理顺序的别名的数组。
  17.   #--------------------------------------------------------------------------
  18.   def alias_methods(prefix, *methods)
  19.     methods.each do |item|
  20.       if method_defined?("#{prefix}#{item}")
  21.         msgbox("在类 #{self} 中已经定义了方法 #{prefix}#{item}")
  22.         exit
  23.       end
  24.       alias_method("#{prefix}#{item}", item)
  25.     end
  26.     methods.collect {|item| "#{prefix}#{item}".to_sym }
  27.   end
  28. end

  29. class RPG::BaseItem
  30.   #--------------------------------------------------------------------------
  31.   # ● 获取普通攻击的技能 ID
  32.   #--------------------------------------------------------------------------
  33.   def attack_skill
  34.     /<ATTACK\s*SKILL\s+(\d+)>/i =~ @note ? $1.to_i : nil
  35.   end
  36.   #--------------------------------------------------------------------------
  37.   # ● 获取防御的技能 ID
  38.   #--------------------------------------------------------------------------
  39.   def guard_skill
  40.     /<GUARD\s*SKILL\s+(\d+)>/i =~ @note ? $1.to_i : nil
  41.   end
  42. end

  43. class Game_Actor < Game_Battler
  44.   alias_methods(:attack_guard_skill_, :attack_skill_id, :guard_skill_id)
  45.   #--------------------------------------------------------------------------
  46.   # ● 获取普通攻击的技能 ID
  47.   #--------------------------------------------------------------------------
  48.   def attack_skill_id
  49.     (equips.compact + skills + [actor] + [self.class]).each {|item|
  50.       return item.attack_skill if item.attack_skill }
  51.     attack_guard_skill_attack_skill_id
  52.   end
  53.   #--------------------------------------------------------------------------
  54.   # ● 获取防御的技能 ID
  55.   #--------------------------------------------------------------------------
  56.   def guard_skill_id
  57.     (equips.compact + skills + [actor] + [self.class]).each {|item|
  58.       return item.guard_skill if item.guard_skill }
  59.     attack_guard_skill_guard_skill_id
  60.   end
  61. end

  62. class Scene_Battle < Scene_Base
  63.   alias_methods(:attack_guard_skill_, :command_attack, :command_guard)
  64.   #--------------------------------------------------------------------------
  65.   # ● 普通攻击无需选择目标的情况
  66.   #--------------------------------------------------------------------------
  67.   def command_attack
  68.     skill = $data_skills[BattleManager.actor.attack_skill_id]
  69.     if !skill.need_selection?
  70.       BattleManager.actor.input.set_attack
  71.       next_command
  72.     elsif skill.for_opponent?
  73.       attack_guard_skill_command_attack
  74.     else
  75.       BattleManager.actor.input.set_attack
  76.       select_actor_selection
  77.     end
  78.   end

  79.   #--------------------------------------------------------------------------
  80.   # ● 防御需要选择目标的情况
  81.   #--------------------------------------------------------------------------
  82.   def command_guard
  83.     skill = $data_skills[BattleManager.actor.guard_skill_id]
  84.     if skill.need_selection?
  85.       BattleManager.actor.input.set_guard
  86.       skill.for_opponent? ? select_enemy_selection : select_actor_selection
  87.     else
  88.       attack_guard_skill_command_guard
  89.     end
  90.   end
  91. end

  92. class Window_ActorCommand < Window_Command
  93.   #--------------------------------------------------------------------------
  94.   # ● 更改攻击指令名称
  95.   #--------------------------------------------------------------------------
  96.   def add_attack_command
  97.     name = $data_skills[@actor.attack_skill_id].name
  98.     add_command(name, :attack, @actor.attack_usable?)
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● 更改防御指令名称
  102.   #--------------------------------------------------------------------------
  103.   def add_guard_command
  104.     name = $data_skills[@actor.guard_skill_id].name
  105.     add_command(name, :guard, @actor.guard_usable?)
  106.   end
  107. end
复制代码

评分

参与人数 1星屑 +250 收起 理由
RaidenInfinity + 250 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2016-11-11
帖子
22
6
 楼主| 发表于 2017-1-20 21:30:33 | 只看该作者

要加在哪里呢?

点评

工具→脚本编辑→把这个脚本复制到里面去  发表于 2017-1-20 21:46
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2016-11-11
帖子
22
7
 楼主| 发表于 2017-1-21 12:55:54 | 只看该作者

谢谢w虽然没能再加个框但是也成功了,感谢回复w
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2016-11-11
帖子
22
8
 楼主| 发表于 2017-1-21 12:57:00 | 只看该作者
感谢楼上和一楼的点评!不知道怎么回复点评所以拖了不少时间抱歉。。
问题解决
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 05:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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