TRPGer.usがすきー!
₍₍ (ง ˙ω˙)ว ⁾⁾

 与謝野晶子やレターパックで遊びたいならMisskey.ioにいこう!!!

                  

思いついたら

Q:名前の横の絵文字どうやるの?
完テキなら名前の横に:ts:ってすればいいよ。絵文字一覧からコピーしてみてね。
前後に半角英数字があるとうまく反映されないかも?

Q:新規○△×?
人によって定義が違うよ。卓募集に挙手するかどうかの目安かな。

Q:げんみ?
現行未通過。今そのシナリオを遊んでいる人、まだそのシナリオを遊んでいないことを指すみたい。

Q:ダイス振れるの?
もっと!→Play

Q:ねこちゃん
設定→プロフィール→高度な設定→にゃあ

Q:ねこちゃん見づらい
引用元
設定→プラグイン→プラグインのインストール→「」内コピペ

/// @ 0.12.4
### {
  name: "変身プラグイン"
  version: "1.0.0"
  author:  "hayrick"
  description: "①猫語が人間語になります。 ②好きな語尾つけられます。設定で好きな文字を入れてね。"
  config: {
    endWord: {
      type: 'string'
      label: '語尾'
      description: '例:ワン'
      default: ''
    }
    repls: {
      type: 'string'
      label: '置換リスト'
      description: '例: ["にゃ", "な"], ["ニャ", "ナ"],["nya", "na"] ...'
      default: '["にゃ", "な"], ["ニャ", "ナ"],["nya", "na"]'
    }
  }
}

// objのnullなプロパティを再帰的に除去
@remove_null_property(object) {
  if Core:type(object) != 'obj' {
    return object
  }
  let new_obj = {}
  each let kv Obj:kvs(object) {
    let v = remove_null_property(kv[1])
    if Core:type(v) != 'null' {
      Obj:set(new_obj kv[0] v)
    }
  }
  return new_obj
}

@validate(repls) {
  if Core:type(repls) != 'arr' {
    return [[] false]
  }
  let new_repls = []
  var ok = true
  each let r repls {
    if Core:type(r) != 'arr' {
      ok = false
      continue
    } elif r.len != 2 {
      ok = false
      continue
    } elif Core:type(r[0]) != 'str' || Core:type(r[1]) != 'str' {
      ok = false
      continue
    }
    new_repls.push(r)
  }
  return [new_repls ok]
}


@replace(text repls) {
  if Core:type(text) != 'str' {
    return text
  }
  each let r repls {
    text = text.replace(r[0] r[1])
  }
  return text
}

let a = validate(Json:parse(`[{Plugin:config.repls}]`))
let repls = a[0]
let ok = a[1]

@view(note) {
   if ((note.text == null) || (note.text == "")) {
      note = remove_null_property(note)
      return note
    } elif note.text.incl("`") {
      note = remove_null_property(note)
      return note
    } else {
     note.text = replace(note.text repls)
     note.cw = replace(note.cw repls)
     if note.renote != null {
       note.renote.text = replace(note.renote.text repls)
       note.renote.cw = replace(note.renote.cw repls)
     }
     if note.reply != null {
       note.reply.text = replace(note.reply.text repls)
       note.reply.cw = replace(note.reply.cw repls)
     }
     note = remove_null_property(note)
     return note
     }
}


let b = Plugin:config.endWord
let endWord = b

@post(note) {
   let bark:str = endWord
   let noteText:str = note.text
   let barkPoint:num = 0
   let barkText:str = ""
   for let i=1 noteText.len {
    barkText = noteText.slice(noteText.len-i, noteText.len-i+1)
    if !(barkText == "!" || barkText == "?" || barkText == "!" || barkText == "?" || barkText == "。" || barkText == ";") {
      barkPoint = i
      break}
   }

   barkText = [noteText.slice(0, noteText.len+1-barkPoint ), bark].join()
   barkText = [barkText , noteText.slice(noteText.len-barkPoint +1, noteText.len)].join()
   note.text = barkText
  note = remove_null_property(note)
  note
}

if !ok {
  // Json:parseが例外落ちしたら機能しません
  Mk:dialog('Word Replace' '置換リストの一部がうまく読み込めませんでした' 'error')
}

Plugin:register_note_view_interruptor(view)
Plugin:register_note_post_interruptor(post)

畳む


Q:設定してるのに一度見たRNがずっと流れる!
リアクションを押さないと一度見たと認識されない……

Q:鯖支援できる?
できるよ。今できるのはアマギフを送ること。
支援は義務ではないので無理のない課金をね。
支援ページ

Q:なんでほかにもお役立ちまとめあるのに作ったんですか?
楽しかったから……

Q&A