彬哥笔记 --18 Go语言 游戏服务器使用插入排序实现经验换算等级

Golang语言社区 · · 1240 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

      大家好,我是彬哥,本节给大家讲下go语言服务器游戏增加的经验换算等级相关,抛砖引玉了,主要是针对Go语言游戏服务器开发增加的经验换算等级使用。

首先

先给大家看了小demo,LollipopGo框架版本v1.0.20190104 ,demo代码如下:

package main

import (
    "LollipopGo/LollipopGo/util"
    "fmt"
)

var G_Exp_Lev map[string]*EXP

// 经验表结构
type EXP struct {
    Lev string
    Exp string
}

func init() {
    G_Exp_Lev = make(map[string]*EXP)
}

func SaveDataslice(data map[string]*EXP, iExp int) int {
    var length = len(data)
    var ssort []int

    for _, v := range data {
        ssort = append(ssort, util.Str2int_LollipopGo(v.Exp))
    }

    for i := 1; i < length; i++ {
        for j := i; j > 0 && ssort[j] < ssort[j-1]; j-- {
            ssort[j], ssort[j-1] = ssort[j-1], ssort[j]
        }
    }
    fmt.Println(ssort)
    for index, val := range ssort {
        fmt.Printf("index array[%d] = %d\n", index, val)
        if iExp == val {
            return index
        }
    }
    return 0
}

func main() {

    for i := 1; i <= 10; i++ {
        // 模拟经验表配置数据
        data := &EXP{
            Lev: util.Int2str_LollipopGo(i),
            Exp: util.Int2str_LollipopGo(i * 10),
        }
        G_Exp_Lev[util.Int2str_LollipopGo(i)] = data
    }

    data := &EXP{
        Lev: util.Int2str_LollipopGo(11111),
        Exp: util.Int2str_LollipopGo(55),
    }
    G_Exp_Lev[util.Int2str_LollipopGo(11)] = data
    sss := SaveDataslice(G_Exp_Lev, 55)
    fmt.Println("排名:", sss)
}

运行结果

      每天坚持学习1小时Go语言,大家加油,我是彬哥,下期见!如果文章中不同观点、意见请文章下留言或者关注下方订阅号反馈!


社区交流群:221273219
Golang语言社区论坛 :
www.Golang.Ltd
LollipopGo游戏服务器地址:
https://github.com/Golangltd/LollipopGo
社区视频课程课件GIT地址:
https://github.com/Golangltd/codeclass


Golang语言社区

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:Golang语言社区

查看原文:彬哥笔记 --18 Go语言 游戏服务器使用插入排序实现经验换算等级

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1240 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传