查看: 2450|回复: 6

[已经解决] 能不能让某号职业把普通攻击默认某号技能,求教

[复制链接]
梦石
0
星屑
50
在线时间
31 小时
注册时间
2015-11-16
回帖
26
发表于 2015-11-24 18:51:35 | 显示全部楼层 |阅读模式

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

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

×
如题,比如有4个人,其中只有1个伙伴他的普通攻击指令就是直接释放某号技能,有没有什么办法可以做到。
梦石
0
星屑
166
在线时间
454 小时
注册时间
2015-2-25
回帖
358
发表于 2015-11-24 23:20:32 | 显示全部楼层
[pre lang="ruby"]class RPG::Class
  def attack_skill_id
    /<呵呵\s*(\d+)>/ =~ note ? $1.to_i : 1
  end
end

class Game_Actor
  def attack_skill_id
    self.class.attack_skill_id
  end
end[/pre]

職業備注寫上<呵呵 技能id>就可以,比如<呵呵 5>,沒寫的話都是默認的1號
回复

使用道具 举报

梦石
10
星屑
12655
在线时间
1496 小时
注册时间
2010-8-31
回帖
558

开拓者

发表于 2015-11-25 05:53:29 | 显示全部楼层
howhow1314 发表于 2015-11-24 23:20
class RPG::Class
  def attack_skill_id
    // =~ note ? $1.to_i : 1

经测试可用带为感谢一下,但同时我也有一问,如何将它修改为某个武器的默认攻击为某号技能呢?
如火枪的普通攻击为“射击”
相比起做游戏,更热衷于素材的加工呢。
回复

使用道具 举报

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2015-11-25 06:17:30 | 显示全部楼层
http://taroxd.github.io/rgss/
阅读说明之后查找「普通」

点评

同样非常感谢指路,不过呵呵君给出了非常满意的答案。  发表于 2015-11-25 17:15
回复

使用道具 举报

梦石
0
星屑
166
在线时间
454 小时
注册时间
2015-2-25
回帖
358
发表于 2015-11-25 14:38:24 | 显示全部楼层
本帖最后由 howhow1314 于 2015-11-25 14:57 编辑
阿薩男爵 发表于 2015-11-25 05:53
经测试可用带为感谢一下,但同时我也有一问,如何将它修改为某个武器的默认攻击为某号技能呢?
如火枪的 ...


[pre lang="ruby"]class RPG::Class
  def attack_skill_id
    /<呵呵\s*(\d+)>/ =~ note ? $1.to_i : 1
  end
end

class RPG::Weapon
  def attack_skill_id
    /<呵呵\s*(\d+)>/ =~ note ? $1.to_i : nil
  end
end

class Game_Actor
  def attack_skill_id
    weapons[0] ? weapons[0].attack_skill_id || self.class.attack_skill_id : self.class.attack_skill_id
  end
end[/pre]

武器呵呵>角色呵呵




用武器類型而不是武器的話..

[pre lang="ruby"]class RPG::Weapon
  def attack_skill_id
    case $data_system.weapon_types[wtype_id]
    when "斧"
      8
    when "槍"
      26
    else
      nil
    end
  end
end[/pre]




順便不加以下這段的話,會有一些問題,比如攻擊技能是治癒術什麼的,你也只能選敵人為目標,不過結果還是放在隊友身上(貌似是隨機一名隊友..忘了)
加了的話可以正確的選隊友為目標

[pre lang="ruby"]class Scene_Battle
  def command_attack
    skill = $data_skills[BattleManager.actor.attack_skill_id]
    BattleManager.actor.input.set_attack
    if !skill.need_selection?
      next_command
    elsif skill.for_opponent?
      select_enemy_selection
    else
      select_actor_selection
    end
  end
end[/pre]

另外就是全體攻擊或者隨機目標之類的也像使用技能一樣不用選目標了,不過我總覺得攻擊不選目標怪怪的...
所以又寫了以下這種..

[pre lang="ruby"]class Scene_Battle
  def command_attack
    skill = $data_skills[BattleManager.actor.attack_skill_id]
    BattleManager.actor.input.set_attack
    if skill.for_opponent?
      select_enemy_selection
    else
      select_actor_selection
    end
  end
end[/pre]

点评

感谢帮助啊!真是热心人。  发表于 2015-11-25 17:14

评分

参与人数 2星屑 +45 梦石 +1 收起 理由
taroxd + 1 = =
阿薩男爵 + 45 我权限最多只能给这么多

查看全部评分

回复

使用道具 举报

梦石
0
星屑
50
在线时间
31 小时
注册时间
2015-11-16
回帖
26
 楼主| 发表于 2015-11-28 05:35:51 | 显示全部楼层
howhow1314 发表于 2015-11-24 23:20
class RPG::Class
  def attack_skill_id
    // =~ note ? $1.to_i : 1

用不了呢。。。比如技能叫“直拳”  是第5号技能
在职业备注里写上 呵呵 5 还是 呵呵 直拳
回复

使用道具 举报

梦石
0
星屑
166
在线时间
454 小时
注册时间
2015-2-25
回帖
358
发表于 2015-11-28 12:55:13 | 显示全部楼层
布鲁斯 发表于 2015-11-28 05:35
用不了呢。。。比如技能叫“直拳”  是第5号技能
在职业备注里写上 呵呵 5 还是 呵呵 直拳 ...
  1. <呵呵 5>
复制代码
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部