new
This commit is contained in:
40
service/framework/controller/intranet/map.go
Normal file
40
service/framework/controller/intranet/map.go
Normal file
@@ -0,0 +1,40 @@
|
||||
/**
|
||||
#*****************************************************************************
|
||||
# @author MakerYang
|
||||
# @site mir2.makeryang.com
|
||||
#*****************************************************************************
|
||||
*/
|
||||
|
||||
package IntranetController
|
||||
|
||||
import (
|
||||
"Service/framework/database"
|
||||
"Service/framework/database/game_map_data"
|
||||
"Service/framework/utils"
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
type responseMapList struct {
|
||||
Map []GameMapData.Return `json:"map"`
|
||||
}
|
||||
|
||||
func MapList(c *gin.Context) {
|
||||
|
||||
returnData := responseMapList{}
|
||||
returnData.Map = make([]GameMapData.Return, 0)
|
||||
|
||||
mapDatabase := Database.New(GameMapData.TableName)
|
||||
mapList := make([]GameMapData.Data, 0)
|
||||
mapWhere := fmt.Sprintf("map_status = %d", 2)
|
||||
err := mapDatabase.ListData(&mapList, mapWhere, "map_id", 1000)
|
||||
if err == nil {
|
||||
for _, v := range mapList {
|
||||
item := GameMapData.ReturnData(&v)
|
||||
returnData.Map = append(returnData.Map, item)
|
||||
}
|
||||
}
|
||||
|
||||
Utils.Success(c, returnData)
|
||||
return
|
||||
}
|
||||
61
service/framework/controller/intranet/message.go
Normal file
61
service/framework/controller/intranet/message.go
Normal file
@@ -0,0 +1,61 @@
|
||||
/**
|
||||
#*****************************************************************************
|
||||
# @author MakerYang
|
||||
# @site mir2.makeryang.com
|
||||
#*****************************************************************************
|
||||
*/
|
||||
|
||||
package IntranetController
|
||||
|
||||
import (
|
||||
"Service/framework/package/socket"
|
||||
"encoding/json"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/gookit/color"
|
||||
"github.com/gorilla/websocket"
|
||||
"log"
|
||||
)
|
||||
|
||||
func MessageIndex(c *gin.Context) {
|
||||
|
||||
conn, err := SocketPackage.SocketGrader.Upgrade(c.Writer, c.Request, nil)
|
||||
if err != nil {
|
||||
log.Println("[controller:intranet:message:index:error]", color.Yellow.Text("websocket upgrade error:"+err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
if SocketPackage.Message.Status == false {
|
||||
SocketPackage.Message.User = make(map[*websocket.Conn]bool)
|
||||
SocketPackage.Message.Status = true
|
||||
}
|
||||
|
||||
SocketPackage.Message.User[conn] = true
|
||||
|
||||
log.Println("[controller:intranet:message:index]", color.Green.Text("game server connection socket..."))
|
||||
|
||||
for {
|
||||
_, data, err := conn.ReadMessage()
|
||||
if err != nil {
|
||||
_ = conn.Close()
|
||||
delete(SocketPackage.Message.User, conn)
|
||||
return
|
||||
}
|
||||
|
||||
SocketPackage.Callback(data)
|
||||
|
||||
jsonFormat := SocketPackage.MessageFormat{}
|
||||
err = json.Unmarshal(data, &jsonFormat)
|
||||
if err == nil {
|
||||
if jsonFormat.Command != "" {
|
||||
for user := range SocketPackage.Message.User {
|
||||
err := user.WriteMessage(websocket.TextMessage, data)
|
||||
if err != nil {
|
||||
_ = user.Close()
|
||||
delete(SocketPackage.Message.User, user)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
51
service/framework/controller/intranet/player.go
Normal file
51
service/framework/controller/intranet/player.go
Normal file
@@ -0,0 +1,51 @@
|
||||
/**
|
||||
#*****************************************************************************
|
||||
# @author MakerYang
|
||||
# @site mir2.makeryang.com
|
||||
#*****************************************************************************
|
||||
*/
|
||||
|
||||
package IntranetController
|
||||
|
||||
import (
|
||||
"Service/framework/database"
|
||||
"Service/framework/database/game_player_data"
|
||||
"Service/framework/utils"
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
func PlayerUpdateClientId(c *gin.Context) {
|
||||
|
||||
clientId := c.DefaultQuery("client_id", "")
|
||||
if clientId == "" {
|
||||
Utils.Error(c, Utils.EmptyData{})
|
||||
return
|
||||
}
|
||||
|
||||
token := c.DefaultQuery("token", "")
|
||||
if token == "" {
|
||||
Utils.Error(c, Utils.EmptyData{})
|
||||
return
|
||||
}
|
||||
|
||||
playerId, _ := Utils.DecodeId(32, token)
|
||||
if len(playerId) != 3 {
|
||||
Utils.Error(c, Utils.EmptyData{})
|
||||
return
|
||||
}
|
||||
|
||||
playerDatabase := Database.New(GamePlayerData.TableName)
|
||||
playerWhere := fmt.Sprintf("player_server_id = %d AND player_id = %d", playerId[2], playerId[0])
|
||||
clientIdInt, _ := strconv.Atoi(clientId)
|
||||
update := map[string]interface{}{"player_client_id": clientIdInt}
|
||||
err := playerDatabase.UpdateData(playerWhere, update)
|
||||
if err != nil {
|
||||
Utils.Error(c, Utils.EmptyData{})
|
||||
return
|
||||
}
|
||||
|
||||
Utils.Success(c, Utils.EmptyData{})
|
||||
return
|
||||
}
|
||||
Reference in New Issue
Block a user