查看: 3855|回复: 3

[原创发布] 自动跳过不在队伍内的队友的对话

[复制链接]
梦石
0
星屑
1078
在线时间
127 小时
注册时间
2017-9-27
回帖
32
发表于 2017-11-2 16:55:24 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 魔法☆梅莉 于 2017-11-3 12:33 编辑

[pre lang="ruby"]#功能:判定某人是否在队内,如果不在队内则不显示他的对话。
#默认格式:【角色名】
#例如:【娜塔丽】今天天气真好!
#若娜塔丽在队伍中则显示这句话,否则不显示。
#不仅限于角色名,可以自由添加其他敏感词。填写在shield_words_list = []数组内即可。
#如果在对话中发现敏感词,则不显示这句对话。
#默认1号开关开启本功能,如果想使用别的开关把JUDGE=1改成其他值即可。关闭1号开关则关闭该功能。
#开关的设定放在事件页的第一条才能起效果,原理不明。放在中间的话对后续的文字可能是不起效果的。
#为了改善使用体验,请将开关设定放在事件页第一条来书写事件。
#作者:梅林
#允许随意使用和修改,可以不标注作者。需要修改本脚本的有关功能可以联系我。

class Window_Message < Window_Base
  
  JUDGE = 1
  #1号开关用于决定是否打开本效果。注意,只有放在事件最前面才有效。
  
  def add_shield_words(shield_words_list)
    #shield_words_list = []
    i = 1
    #把不在队的角色名添加进敏感词列表
    loop do
      if $game_party.battle_members.include?($game_actors)
        else
        shield_words_list.push('【'+$game_actors.name+'】')
      end
      i += 1
      break unless $game_actors
    end
  end
  
  #显示文字的煮鲜橙
  alias merlin20171102_fiber_main fiber_main
  def fiber_main
    if $game_switches[JUDGE]
      merlin_judge_fiber_main
     else
      merlin20171102_fiber_main
    end
  end
  
  def merlin_judge_fiber_main
    $game_message.visible = true
    shield_words_list = []
    update_background
    update_placement
    add_shield_words(shield_words_list)
    loop do
      text = convert_escape_characters($game_message.all_text)
      if $game_message.has_text?
        if judge_text(text, shield_words_list) == 1
           $game_message.clear
        else
          process_all_text
          process_input
        end
      end
      $game_message.clear
      @gold_window.close
      Fiber.yield
      break unless text_continue?
    end
    close_and_wait
    $game_message.visible = false
    @fiber = nil
  end
  
  #判定是否含有敏感词
  #alias merlin20171102_judge_text judge_text
  def judge_text(text, shield_words_list)
    i = 0
    flag = 0
    loop do
      if shield_words_list == nil
        break
      else
        if text.include?(shield_words_list)
         flag = 1
         break
        end
      end
      i += 1
    end
    return flag
  end
end[/pre]






评分

参与人数 1星屑 +100 收起 理由
RaidenInfinity + 100 原创发布

查看全部评分

我是梅林,人称花之魔术师。

老鹰

梦石
40
星屑
37812
在线时间
7091 小时
注册时间
2012-5-26
回帖
3297

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

发表于 2017-11-2 17:29:36 | 显示全部楼层
居然不是改成 **** 之类的,而且难道不是作者自己想写出这些敏感词的吗?!

评分

参与人数 1赞 +1 收起 理由
魔法☆梅莉 + 1 因为真正的功能并不是用来判定敏感词哟。.

查看全部评分

回复

使用道具 举报

梦石
0
星屑
34460
在线时间
5096 小时
注册时间
2012-11-19
回帖
4715

开拓者

发表于 2017-11-2 20:59:28 | 显示全部楼层
感觉略鸡肋。
你可以再弄个设置选项,玩家选择 看不看敏感词 ,不看的话这个就起作用。

评分

参与人数 1赞 +1 收起 理由
魔法☆梅莉 + 1 已经弄好了

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复

使用道具 举报

梦石
7
星屑
1113
在线时间
334 小时
注册时间
2008-1-28
回帖
1506
发表于 2017-11-3 03:34:51 | 显示全部楼层
从STCN看到P社下架国区钢4回来,就看到这个功能脚本。
搞得我心慌慌的,局势这么紧张了吗?


不过用作消除游戏内的剧透“关键词”,在后阶段玩家才能看到,或者语言翻译什么的应该蛮有用的。

评分

参与人数 1赞 +1 收起 理由
魔法☆梅莉 + 1 是为了其他的功能呢。

查看全部评分

终于有可以放在这里的游戏了……
极短13 新生 《箱子新世界》
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部