2017-08-04 22 views
1

我在項目中有一個文本文件,並帶有一些文本數據。使用下面的代碼,當玩家點擊一個按鈕(稱爲NEXT)時,我一次顯示一行數據。如何使用JavaScript統一隨機化數據

出於某種原因,我想要做的是製作一個名爲「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]; 
    } 

回答

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

謝謝你們。我會讓你知道結果很快:) – Arman

+0

這是說[未知的標識符:「數學」] – Arman

+0

我已經更新了我的問題中的新代碼 – Arman

0

既然你有你的文件分割成一個數組只是搶一個隨機的行號。

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

也許做一個地板或東西,而不是圓的。你想要。