見出し画像

【ティラノスクリプト】画像をシャッフルするサンプル


【使用素材】

わたおきば様の立ち絵を使用させていただきました。

【参考記事】

こちらの記事を参考にさせていただきました。

【コード】

[layopt layer="0" visible="true"]

[image storage="transparent.png" layer="0" left="390" y="0" time="1"]

[glink target="*shuffle" text="スタート" x="477" y="600" width="200"]

[s]

*shuffle

[iscript]

const aryList = [
  './data/fgimage/image1.png',
  './data/fgimage/image2.png',
  './data/fgimage/image3.png',
  './data/fgimage/image4.png',
  './data/fgimage/image5.png',
  './data/fgimage/image6.png',
  './data/fgimage/image7.png',
  './data/fgimage/image8.png',
  './data/fgimage/image9.png',
  './data/fgimage/image10.png'
];

let key = 0;
const maxLen = aryList.length - 1;
let speed = 100;

function shuffleArray(array) {
  for (let i = array.length - 1; i > 0; i--) {
    const j = Math.floor(Math.random() * (i + 1));
    [array[i], array[j]] = [array[j], array[i]];
  }
  return array;
}

const shuffledAryList = shuffleArray([...aryList]);

function randShuffle() {
  if (key > maxLen) key = 0;
  $(".0_fore img").attr('src', shuffledAryList[key]);
  key++;
}

f.randStart = setInterval(randShuffle, speed);

[endscript]

[glink target="*stop" text="ストップ" x="477" y="600" width="200"]

[s]

*stop

[iscript]

clearInterval(f.randStart);

[endscript]

[glink target="*shuffle" text="スタート" x="477" y="600" width="200"]

[s]