美文网首页Golang语言社区彬哥Go语言笔记
彬哥笔记 --18 Go语言 游戏服务器使用插入排序实现经验换算

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

作者: Golang语言社区 | 来源:发表于2019-01-08 11:25 被阅读12次

          大家好,我是彬哥,本节给大家讲下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语言社区

    相关文章

      网友评论

        本文标题:彬哥笔记 --18 Go语言 游戏服务器使用插入排序实现经验换算

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