2017-08-04 3 views
1

私はいくつかのテキストデータを含むプロジェクトのテキストファイルを持っています。以下のコードを使用して、プレーヤーがボタンをクリックすると(NEXTと呼ばれる)一度に1行ずつデータを表示します。JavaScriptを使用してデータを1つにまとめる方法

私がやりたいことは、「ランダム」というボタンを作ることです。そして、プレーヤーがそれをクリックすると、テキストファイルからランダムな線が表示されます。ここ は私の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); 
} 

多分丸みではなく床などを行うことがあります。あなたは欲しい。

関連する問題