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

Project1

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

[有事请教] 我又跳出来了,关于双持【已解决】

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1772
在线时间
100 小时
注册时间
2017-9-5
帖子
176
跳转到指定楼层
1
发表于 2025-2-19 17:15:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 间桐樱 于 2025-3-3 22:35 编辑

已知双持武器和盾不可共存,准备将武器和盾替换成【主手】和【副手】,如何能在双持情况下既能双持武器,又能持有剑盾(不把盾放在武器类别里的情况下),而不是定死只能选一
又或者干脆按键切换,像扔道具或删技能那样,在装备栏里按个CTRL就能切换是否双持
已拿到三种方法,超出预期,感谢各位大佬

Lv1.梦旅人

梦石
0
星屑
139
在线时间
55 小时
注册时间
2023-11-27
帖子
4
2
发表于 2025-2-19 20:15:09 | 只看该作者
我觉得吧,既然你都能接受用按键切换,不如更直接点。
开局给玩家一个物品,物品绑一个公共事件,设置俩个职业,一个双持一个剑盾(可以加个后缀便于玩家分辨),公共事件用来切换职业。
笨是笨了点。(反正都要说明,把这点麻烦推给玩家,作者就不需要多费心思了)

点评

有没有那么一种可能,这是自娱自乐的作品......  发表于 2025-2-19 20:48
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
139
在线时间
55 小时
注册时间
2023-11-27
帖子
4
3
发表于 2025-2-19 21:06:58 | 只看该作者
yyzq1432 发表于 2025-2-19 20:15
我觉得吧,既然你都能接受用按键切换,不如更直接点。
开局给玩家一个物品,物品绑一个公共事件,设置俩个 ...


有没有一种可能,我不知道你这是自娱自乐,你也用不着来阴阳怪气我。
如果你想说明这是自娱自乐的,请不要在话前面加上有没有可能,来让我恶心。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1772
在线时间
100 小时
注册时间
2017-9-5
帖子
176
4
 楼主| 发表于 2025-2-19 22:47:24 | 只看该作者
yyzq1432 发表于 2025-2-19 21:06
有没有一种可能,我不知道你这是自娱自乐,你也用不着来阴阳怪气我。
如果你想说明这是自娱自乐的,请不 ...

我主观上并没有阴阳你的意思,但你这么一说我更恶心
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36196
在线时间
10725 小时
注册时间
2009-3-15
帖子
4826
5
发表于 2025-2-19 23:41:58 | 只看该作者
本帖最后由 soulsaga 于 2025-2-25 19:27 编辑

我又跳出来了,关于双持
RUBY 代码复制
  1. class Game_Actor < Game_Battler
  2.   #--------------------------------------------------------------------------
  3.   # ● 获取装备栏的数组
  4.   #--------------------------------------------------------------------------
  5.   def equip_slots
  6.     if armors[0]
  7.     return [0,1,2,3,4] if dual_wield? and !weapons[0] and armors[0].atype_id>=5 and weapons.size==0 or dual_wield? and weapons[0] and armors[0].atype_id>=5 and weapons.size==1# 双持武器兼剑盾
  8.     end
  9.     return [0,0,2,3,4] if dual_wield? and weapons.size>0 or weapons[1]  # 双持武器
  10.     return [0,1,2,3,4] # 普通
  11.   end
  12. end

MAIN上面插入以上脚本
然后在主手副手都没有装备武器只装备盾的情況下可以同时装备剑盾
卸下盾后主手装备一把武器时则可以双持
没有深入测试..不排除有BUG..可留回复

atype_id>=5是用语设定的防具类型ID对应原版工程的小盾和大盾类型

点评

原来如此,明白了,感谢大佬  发表于 2025-2-25 20:18
如果你的盾类型不是设在5和6就会出问题,自行修改对应的  发表于 2025-2-25 19:49
armors[0]这个是最前面装备中的防具 如果你装备了盾他就是盾没装盾装了头他就是头两样都没装了衣服就是衣服  发表于 2025-2-25 19:48
我卸下头盔也是正常的..你看看你的防具类型设定是不是不对应?  发表于 2025-2-25 19:45
不行我就用上一个脚本了,那个我还保留着,除了兄控剑二跟着哥哥剑一跑的问题,其他都挺好  发表于 2025-2-25 19:39
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
139
在线时间
55 小时
注册时间
2023-11-27
帖子
4
6
发表于 2025-2-20 03:47:25 | 只看该作者
间桐樱 发表于 2025-2-19 22:47
我主观上并没有阴阳你的意思,但你这么一说我更恶心

别主观了,你在话前面加上有没有可能就是来膈应人的。
退一万步讲,你也是把这恶心人的话当成了“幽默风趣”,你们这类人恶心别人时,就觉得只是自己语言幽默,要么就是别人不懂你们的“玩笑”,别人反驳就说别人小题大做,“上纲上线”。
老子本来就是想好心帮个忙,但就像是被狗反过来咬了一口,就算我干的是无用事,但怎么也没干坏事,你非得先恶心我,再跟我杠上。
如果你不明白你的话是来恶心人的,就打个比方。
你问你爸妈要某样东西,你爸妈给了,结果和你想象的有些不符。
你可以回答,我想要的不是这样的。
但你要是在这话之前加上个“有没有可能”——“有没有可能,我想要的不是这样的”,你能说完,看你爸妈抽不抽你就完了。
别杠了,再回复,就直接加族谱了。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
8
星屑
2587
在线时间
1609 小时
注册时间
2010-10-22
帖子
1057

极短25获奖

7
发表于 2025-2-20 08:40:35 | 只看该作者
XP党,不大清楚Ace的处理方法。

思路是直接复制一个主手武器的定义,跟原有的盾牌定义同时挂载在副手栏上。
再增加一个判定,副手的武器或盾牌不能同时存在。

点评

感谢带佬提供思路,再加上5楼带佬的脚本,估计很快就能成功了  发表于 2025-2-20 18:58

【2022.06.03】原本以为已经不可能再找回来的东西重新找回来了,原本一直念念不忘的坑终于再一次拿起铲子了。一别竟近10年,你好,我的世界我的梦。
【大坑】异元-暗黑天际
【短25·不可阻挡】异元-地劫黎明
【短26·禁止】异元-禁忌之轮
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36196
在线时间
10725 小时
注册时间
2009-3-15
帖子
4826
8
发表于 2025-2-20 21:59:38 | 只看该作者
上传了视频

双持.zip

1.48 MB, 下载次数: 4

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
283
在线时间
79 小时
注册时间
2024-4-13
帖子
27
9
发表于 2025-2-22 12:57:58 | 只看该作者
本帖最后由 chen12311 于 2025-2-25 20:19 编辑
  1. class Game_BattlerBase
  2.   attr_accessor :equip_switch
  3.   def switch
  4.     @equip_switch
  5.   end
  6.   def switch_open
  7.     if dual_wield?
  8.       change_equip(1, nil)
  9.       @equip_switch=true
  10.     end
  11.   end
  12.   def switch_closs
  13.     if dual_wield?
  14.       change_equip(1, nil)
  15.       @equip_switch=false
  16.     end
  17.   end
  18. end
  19. class Game_Actor < Game_Battler

  20.   #--------------------------------------------------------------------------
  21.   # ● 获取装备栏的数组
  22.   #--------------------------------------------------------------------------

  23.   alias equip_slots_change equip_slots
  24.   def equip_slots
  25.     if switch
  26.       return [0,1,2,3,4,4,4,4] if dual_wield?
  27.     end
  28.     equip_slots_change
  29.   end
  30. end

  31. class Window_Selectable < Window_Base
  32.   alias process_handling_change process_handling
  33.   def process_handling
  34.     process_handling_change
  35.     return process_change   if handle?(:change)   && Input.trigger?(:CTRL)
  36.   end
  37.   
  38.   def process_change
  39.     Audio.se_play("Audio/SE/Equip1", 90, 100)
  40.     Input.update
  41.     activate
  42.     call_handler(:change)
  43.   end
  44. end
  45. class Scene_Equip < Scene_MenuBase
  46.   alias create_slot_window_equip_change create_slot_window
  47.   def create_slot_window
  48.     create_slot_window_equip_change
  49.     @slot_window.set_handler(:change, method(:on_item_change))
  50.   end
  51.   def on_item_change
  52.     if [email protected]
  53.       @actor.switch_open
  54.     elsif @actor.switch
  55.       @actor.switch_closs
  56.     end
  57.     @slot_window.refresh
  58.     @item_window.refresh
  59.   end
  60. end
复制代码

你可以试试这个,测试可以使用
如果有问题的话可以问我
按ctrl切换

#已更新,理解错意思了抱歉

点评

就是把双持和剑盾的切换定义为只有拥有双持标志的队友才能进行,既可以双持也可以剑盾,没有双持能力的队友就只能剑盾,无法使用双持  发表于 2025-2-25 19:44
大佬大佬,这个脚本能不能限定只有在【双持武器】的标志下才能自由切换,没有双持的队友无法切换双持和剑盾呀  发表于 2025-2-25 17:18
感谢大佬的脚本!  发表于 2025-2-23 12:09
回复 支持 1 反对 0

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5779
在线时间
787 小时
注册时间
2019-1-20
帖子
202
10
发表于 2025-2-24 21:58:53 | 只看该作者
soulsaga 发表于 2025-2-19 23:41
我又跳出来了,关于双持

class Game_Actor < Game_Battler

怎么能放弃啊!?
我们掉进过的坑必须得把它埋了(滑稽)
  1. class Game_Actor < Game_Battler
  2. #--------------------------------------------------------------------------
  3.   # ● 获取装备栏的数组
  4.   #--------------------------------------------------------------------------
  5.   def equip_slots
  6.      
  7. if equips[1] #有副武器的情况
  8. return [0,1,2,3,4] if equips[1].name.include?("盾") #副武器名字有盾就是剑盾  
  9. return [0,0,2,3,4] if dual_wield? #1 角色或者副武器有双持就是双持
  10. return [0,0,2,3,4] #2 有双持的主武器卸下时,那个没有双持的副武器也能保留
  11. end     

  12.     #没有副武器的情况
  13.     return [0,0,2,3,4] if dual_wield?
  14.     return [0,1,2,3,4]               
  15.   end
  16. end #
复制代码

点评

因为我懒得翻判断状态的脚本... ...交给你用盾系自带附加某个状态嘛  发表于 2025-2-25 14:34
我能把遥远的理想乡,已然遥远的理想之城,炽天覆七重圆环勉强算进盾牌里,但把它们名字里再加个盾就太难了QAQ  发表于 2025-2-25 13:02
如果盾不叫盾...  发表于 2025-2-25 04:02

提高解答机会的方法:
看一下对应版本的帮助文件 看天气预报说今天不下雨
改变问题为更有可能的或常见的 如:天气自动变化下雨→天气系统 果然不准呀~
使用论坛的搜索功能查找相关问题 好丧啊... ...想看女装
清楚说明实际上你想解决的问题  想看坛友的女装  
脚本自己有改过的地方要标明  不要遮脸的
脚本有问题但不是默认的要全部贴出来 大胆点,尽情发
三包原则:包有BUG,包甩锅,包咕咕
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-4-2 06:06

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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