内容简介:大家好,我是彬哥,本节给大家讲下go语言服务器游戏增加的经验换算等级相关,抛砖引玉了,主要是针对Go语言游戏服务器开发增加的经验换算等级使用。先给大家看了小demo,LollipopGo框架版本v1.0.20190104 ,demo代码如下:每天坚持学习1小时Go语言,大家加油,我是彬哥,下期见!如果文章中不同观点、意见请文章下留言或者关注下方订阅号反馈!
大家好,我是彬哥,本节给大家讲下 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语言社区论坛 :
LollipopGo游戏服务器地址:
https://github.com/Golangltd/LollipopGo
社区视频课程课件GIT地址:
https://github.com/Golangltd/codeclassGolang语言社区
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
编写高质量代码:改善Python程序的91个建议
张颖、赖勇浩 / 机械工业出版社 / 2014-6 / 59.00元
在通往“Python技术殿堂”的路上,本书将为你编写健壮、优雅、高质量的Python代码提供切实帮助!内容全部由Python编码的最佳实践组成,从基本原则、惯用法、语法、库、设计模式、内部机制、开发工具和性能优化8个方面深入探讨了编写高质量Python代码的技巧与禁忌,一共总结出91条宝贵的建议。每条建议对应Python程序员可能会遇到的一个问题。本书不仅以建议的方式从正反两方面给出了被实践证明为......一起来看看 《编写高质量代码:改善Python程序的91个建议》 这本书的介绍吧!