zoukankan      html  css  js  c++  java
  • 随机生成游戏用户昵称(nodejs版本)(含机器人头像,金币等)

    1 前言

    有时需要生成随机的用户(或机器人)昵称,头像,金币等,但又不想太生硬,可以现在网上爬一些常见昵称到文本中,然后读取出来,随机使用即可。

    2 代码

    var nickNameArr = [];
    
    function initNickName(){
    
        var dirname =__dirname;
        var nickname00 = fs.readFileSync(dirname+"/res/nickname00.txt","utf-8");
    
        //把换行的都全局替换成空格,然后按空格分割为数组
        var rn00 = nickname00.replace(/
    /g," ");
        var nameArr00 = rn00.split(' ');
    
        nickNameArr = [].concat(nameArr00);
    
        console.log("nickNameArr length=",nickNameArr.length);
    }
    
    function genName(){
    
        var name = "";
        var len =nickNameArr.length;
        if(len > 0){
            var pos = Math.floor(Math.random()*len);
            name = nickNameArr[pos];
            if(name.length == 0){ //防止拿到空白值,正常情况不会出现
                genName();
            }
        }
    
        return name;
    }
    
    //nickname00文本格式为每个昵称中间空一格或者换行,例子如下:
    昵称1 昵称2 昵称3
    nk1 nk2
    nk3
    昵称x
    nk4
    

    3 头像随机

    function genHeadimg(){
    
        var url_img = "";
    
        var path = "./public/images/headImages/";
        //实际使用用域名,内部测试ip如下
        var ip = "127.0.0.1";
        //如果有端口就写,如果没有,跳过
        var port = "8888";
        var path_link = "http://"+ip + ":" + port + "/public/images/headImages/";
    
        var files = fs.readdirSync(path);
    
        var len = files.length;
        var randNum = Math.floor(Math.random()*len);
        var url_img = path_link + files[randNum];
        console.log("genHeadimg rand link=",url_img);
    
        return url_img;
    }
    

    4 小结

    金币等随机数只是数字的随机数,略。

      

  • 相关阅读:
    [OpenJudge] 反正切函数的应用 (枚举)(数学)
    [OpenJudge] 摘花生 (模拟)
    [OpenJudge] 宇航员(模拟)
    [OpenJudge] 显示器(模拟)
    背包问题
    BFS_最短路径
    链表
    网站
    网站
    洛谷_递归整理
  • 原文地址:https://www.cnblogs.com/fanbi/p/9294458.html
Copyright © 2011-2022 走看看