切换风格

默认晚霞 雪山 粉色心情 伦敦 花卉 绿野仙踪 加州 白云 星空 薰衣草 城市 简约黑色 龙珠
回复 2

13

主题

37

帖子

470

积分

大区版主

Rank: 7Rank: 7Rank: 7

积分
470
人气
14 点
钻石粒
583 粒
贡献
0 点
论坛币
81 个
爱心
0 点
[1.7.10][ECMA]可在脚本中使用的选择器[复制链接]
发表于 2019-8-17 19:19:48 | 显示全部楼层 |阅读模式
脚本例子
脚本版本: 0.0.1
适用版本: 1.7.10 
编写语言: ECMA
最后更新: 2019-08-17
代码版权: 强版权

请注册论坛会员,已便查看高清图片!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
是不是有新入坑的小伙伴很迷茫,对那些doc感觉很迷茫,看不懂,之类的对吧。
相信在此之前已经有不少小伙伴接触过指令了,觉得里面的选择器很方便,直接就选中了,不像脚本那么麻烦。
所以,这次我带来的一个脚本就是自制选择器,由于变量名无法以@开头,所以我这里用的是Q,比如Qa,Qp
话不多说直接上代码,下面的注释也有介绍,自己仔细看看吧。
顺带一提由于水平有限,只做出来了@a(就是获取世界玩家,水),@p(获取最近玩家),@s(获取随机玩家)
worldPlayer(world.getAllServerPlayers());
function worldPlayer(Qa) {
  this.Qa = Qa;
  var ranKing = [];
  for (var a in Qa) {
    var x = Qa[a].getX();
    var y = Qa[a].getY();
    var z = Qa[a].getZ();
    var q = Math.sqrt((x - npc.getX()) * (x - npc.getX()) + (y - npc.getY()) * (y - npc.getY()) + (z - npc.getZ()) * (z - npc.getZ()));
    var m = new distance(Qa[a], q);
    ranKing.push(m);
  }
  var ju = bubbleSortPlus(ranKing);
  this.Qp = ju[0].player
  //设置最大值
  var Max = Qa.length;
  //设置最小值
  var Min = 0;
  var i = Math.floor(Math.random() * (Max - Min) + Min)
  //测试
  this.Qs = Qa;
  function distance(player, m) {
    this.player = player;
    this.m = m;
  }
  function bubbleSortPlus(arr) {
    var len = arr.length;
    for (var i = 0; i < len; i++) {
      for (var j = 0; j < len - 1 - i; j++) {
        if (arr[j].m > arr[j + 1].m) {        //相邻元素两两对比
          var temp = arr[j + 1];        //元素交换
          arr[j + 1] = arr[j];
          arr[j] = temp;
        }
      }
    }
    return arr;
  }
}
{
  //代码块
}
/*
*使用说明:
*Qa:全部玩家(需要遍历)
*示例:
*for(var x in Qa){
*npc.say(Qa[x].getName())
*}
*Qp:距离NPC最近的玩家
*Qs:随机玩家
*示例:npc.say(Qp.getName())
*版权归思望文宣所有
*2019\8\17
*/

版权声明:
1.您不能转载本帖
2.您不能声称作者是自己

评分

参与人数 2人气 +3 钻石粒 +40 收起 理由
小坤 + 1 赞一个!
1370698539 + 2 + 40 思望nb!!

查看全部评分

莫得
回复

使用道具 举报

0

主题

2

帖子

159

积分

论坛萌新

Rank: 1

积分
159
人气
0 点
钻石粒
115 粒
贡献
0 点
论坛币
49 个
爱心
0 点
发表于 2019-8-17 22:13:35 | 显示全部楼层
nb6666666666
回复

使用道具 举报

0

主题

9

帖子

74

积分

论坛萌新

Rank: 1

积分
74
人气
0 点
钻石粒
67 粒
贡献
0 点
论坛币
19 个
爱心
0 点

论坛注册会员

发表于 2020-3-14 10:10:28 | 显示全部楼层
萌新报道
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|自定义NPC脚本中文论坛 ( 蜀ICP备17005795号-3 )

GMT+8, 2020-7-4 18:12 , Processed in 0.101801 second(s), 36 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部