美文网首页
公会列表中根据在线状态,职务,ID排序

公会列表中根据在线状态,职务,ID排序

作者: ljlord | 来源:发表于2018-01-05 11:10 被阅读0次

    规则是在线玩家显示在不在线玩家的上面,然后在线玩家和非在线玩家分别按照职务排序,如果职务相同则按ID排序。

    当时做的时候是将玩家信息用Layout Group组件调整位置,所以排序完之后通过设置玩家信息在父节点的索引来改变位置。

    调整位置 排序

    效果:

    1 2 3

    还有一种方法是:玩家的职务都是对应一个int值,玩家在线给玩家的职务*ID的位数加一个比较大的数,比如(100000000),然后加上ID。这个时候比较就按照从大到小排列就好了。

    比如  玩家A职务是 管理员(2) ID 是74  不在线    对应的值就是   2*1000+74 = 2074.

    玩家B 职务是 普通成员(1) ID 是50 在线 对应的值是 100000000 + 1*1000+50 = 100001050

    玩家C 管理员(2) ID 66  在线  值为 100000000 + 2*1000+66 = 100002066

    这样直接按大小排序,就是最终要的顺序,不过有个问题是,玩家ID位数如果不是确定的,就会有问题。

    相关文章

      网友评论

          本文标题:公会列表中根据在线状态,职务,ID排序

          本文链接:https://www.haomeiwen.com/subject/hjmjnxtx.html