Top > Tips > 見切れ・重なり反応を里々風に
  トップページへ   [ 一覧 | 検索 | 最終更新 ]   [ 差分 | バックアップ | 凍結 ]

見切れ・重なり反応を里々風に

里々では、見切れ・重なり状態になっても多少の間を空けてから見切れ・重なりイベントが発生するようです。
で、その方が動作としては自然っぽいので、文でやる方法を。

フラグ使いまくりなのであまり綺麗じゃありませんが。

  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
OnSecondChange
{
    if mikireenable && reference1 && !mikireflag {
       mikiretimer--;
       if mikiretimer < 1 {
          mikireflag   = 1
          "" //見切れ反応時のトーク
       }
    } else {
       mikiretimer = 5
    }
 
    if mikireflag && !reference1 {
       //5秒以内に復帰した場合は、見切れ後トークを行わない
       endmikire = 1
    }
 
    if endmikire {
       "" //見切れ終了時のトーク
    }
 
    if kasanarienable && reference2 {
       kasanaritimer--;
       if kasanaritimer < 1 {
          kasanarienable = 0;
          "" //重なり反応時のトーク
          kasanarienable = 1;
       }
    } else {
       kasanaritimer = 5
    }
}

--ひと:ぜろでばいど

別解書いてみました。
上のサンプルが動作しない場合はこちらを。
(reference*をreference[*]と書いています)

  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
OnSecondChange
{
  //見切れ反応(メインキャラ見切れ5秒後)
  if reference[1] && !mikireflag {
    mikiretimer--
    if mikiretimer < 1 {
      mikireflag = 1
      "" //見切れ反応時のトーク
    }
  }
  else {
    mikiretimer = 5
  }
 
  //見切れ終了反応(見切れ終了直後)
  if mikireflag && !reference[1] {
    mikireflag = 0
    "" //見切れ終了時のトーク
  }
 
  //重なり反応(メインとサブキャラの重なり5秒後)
  elseif !kasanariflag && reference[2] {
 
    if ISVAR('kasanaritimer') == 0 {
      kasanaritimer = 5
    }
 
    kasanaritimer--
    if kasanaritimer < 1 {
      kasanariflag = 1
      "" //重なり反応時のトーク
    }
  }
  //重なり終了反応(重なり終了直後)
  elseif kasanariflag && !reference[2] {
    kasanariflag = 0
    kasanaritimer = 5
    "" //重なり反応終了時のトーク
  }
  else {
    kasanaritimer = 5
  }
}