game_sync/api3th/smart/tienlen/api.go

77 lines
3.6 KiB
Go

package tienlen
import "mongo.games.com/game/api3th"
var Config = api3th.NewBaseConfig("TIENLEN", api3th.APITypeSmart)
const (
Predict = "predict"
Legal = "legal"
)
func init() {
Config.Register("PostFormTimeOut", Predict, "/predict")
Config.Register("PostFormTimeOut", Legal, "/legal")
}
type PredictRequest struct {
Bomb_num int `url:"bomb_num" form:"bomb_num"`
Card_play_action_seq string `url:"card_play_action_seq" form:"card_play_action_seq"`
Last_move_0 string `url:"last_move_0" form:"last_move_0"`
Last_move_1 string `url:"last_move_1" form:"last_move_1"`
Last_move_2 string `url:"last_move_2" form:"last_move_2"`
Last_move_3 string `url:"last_move_3" form:"last_move_3"`
Num_cards_left_0 int `url:"num_cards_left_0" form:"num_cards_left_0"`
Num_cards_left_1 int `url:"num_cards_left_1" form:"num_cards_left_1"`
Num_cards_left_2 int `url:"num_cards_left_2" form:"num_cards_left_2"`
Num_cards_left_3 int `url:"num_cards_left_3" form:"num_cards_left_3"`
Other_hand_cards string `url:"other_hand_cards" form:"other_hand_cards"`
Played_cards_0 string `url:"played_cards_0" form:"played_cards_0"`
Played_cards_1 string `url:"played_cards_1" form:"played_cards_1"`
Played_cards_2 string `url:"played_cards_2" form:"played_cards_2"`
Played_cards_3 string `url:"played_cards_3" form:"played_cards_3"`
Player_hand_cards string `url:"player_hand_cards" form:"player_hand_cards"`
Player_position int `url:"player_position" form:"player_position"`
IsTienLenYule bool `url:"isTienLenYule" form:"isTienLenYule"`
IsFirstHand bool `url:"isFirstHand" form:"isFirstHand"`
Cards_left_0 []int32 `url:"cards_left_0" form:"cards_left_0"`
Cards_left_1 []int32 `url:"cards_left_1" form:"cards_left_1"`
Cards_left_2 []int32 `url:"cards_left_2" form:"cards_left_2"`
Cards_left_3 []int32 `url:"cards_left_3" form:"cards_left_3"`
Last_pos int32 `url:"last_pos" form:"last_pos"`
IsEnd bool `url:"isend" form:"isend"`
WinSnids []int32 `url:"winsnids" form:"winsnids"`
IsWin bool `url:"iswin" form:"iswin"`
}
type PredictResponse struct {
Message string `json:"message"`
Status int `json:"status"`
Result map[string]string `json:"result"`
WinRates map[string]string `json:"win_rates"`
}
type LegalRequest struct {
Player_hand_cards int `url:"player_hand_cards" form:"player_hand_cards"`
Rival_move string `url:"rival_move" form:"rival_move"`
}
type LegalResponse struct {
Legal_action string `json:"legal_action"`
Message string `json:"message"`
Status int `json:"status"`
}
var CardToAiCard = map[int32]int32{
-1: -1, 0: 2, 1: 3, 2: 4, 3: 5, 4: 6, 5: 7, 6: 8, 7: 9, 8: 10, 9: 11, 10: 12, 11: 0, 12: 1,
13: 15, 14: 16, 15: 17, 16: 18, 17: 19, 18: 20, 19: 21, 20: 22, 21: 23, 22: 24, 23: 25, 24: 13, 25: 14,
26: 28, 27: 29, 28: 30, 29: 31, 30: 32, 31: 33, 32: 34, 33: 35, 34: 36, 35: 37, 36: 38, 37: 26, 38: 27,
39: 41, 40: 42, 41: 43, 42: 44, 43: 45, 44: 46, 45: 47, 46: 48, 47: 49, 48: 50, 49: 51, 50: 39, 51: 40,
}
var AiCardToCard = map[int32]int32{
-1: -1, 2: 0, 3: 1, 4: 2, 5: 3, 6: 4, 7: 5, 8: 6, 9: 7, 10: 8, 11: 9, 12: 10, 0: 11, 1: 12,
15: 13, 16: 14, 17: 15, 18: 16, 19: 17, 20: 18, 21: 19, 22: 20, 23: 21, 24: 22, 25: 23, 13: 24, 14: 25,
28: 26, 29: 27, 30: 28, 31: 29, 32: 30, 33: 31, 34: 32, 35: 33, 36: 34, 37: 35, 38: 36, 26: 37, 27: 38,
41: 39, 42: 40, 43: 41, 44: 42, 45: 43, 46: 44, 47: 45, 48: 46, 49: 47, 50: 48, 51: 49, 39: 50, 40: 51,
}