如何使用 JavaScript 统一随机化数据

How to randomize data in unity using JavaScript

我在项目中有一个包含一些文本数据的文本文件。使用下面的代码,当玩家点击一个按钮(称为 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];
  }

你可以像这样使用函数

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];
}

由于您将文件拆分为一个数组,因此只需获取一个随机行号即可。

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

也许做地板之类的东西而不是圆形。 W.e你要。