如何使用JavaScript将数据随机化

时间:2017-08-04 17:01:48

标签: javascript random unityscript

我在项目中有一些带有一些文本数据的文本文件。使用下面的代码我在玩家点击一个按钮(称为NEXT)时一次显示我的数据。

出于某种原因,我想做的是制作一个名为“RANDOM”的按钮。当玩家点击它时,将显示文本文件中的随机行。 这是我的JavaScript代码:

  #pragma strict

  import UnityEngine;
  import UnityEngine.UI;

  var textFile : TextAsset;
  var dialogLines : String [];
  var lineNumber : int;

  var uiText : Text;
  var canvas : Canvas;


  function Start () {
    if (textFile){
        dialogLines = (textFile.text.Split("\n"[0]));
  }


  }

  function Update () {
    if(lineNumber <0){
    lineNumber = 0;
    }

    var dialog : String = dialogLines[lineNumber];
    uiText.text = dialog;
  }

  function Next () {
    var randomLine = Math.floor((Math.random() * dialogLines.length) + 1); //1-10
    //if dialogLines is not strictly typed, go ahead and use dialogLines.length instead of 10
    return dialogLines[randomLine];
  }

2 个答案:

答案 0 :(得分:0)

您可以使用类似的功能

function randomLine() {
  var randomLine = Math.floor((Math.random() * 10) + 1); //1-10
  //if dialogLines is not strictly typed, go ahead and use dialogLines.length instead of 10
  return dialogLines[randomLine];
}

答案 1 :(得分:0)

由于您将文件拆分为数组,因此请抓取随机行号。

Math.rndRange = function ( min, max ){
    if( isNaN(min) || isNaN(max) ) return NaN;
    return Math.round(Math.random()*(max-min)+min);
}

也许做一个地板或其他东西而不是圆形。你想要的。