GCG技能初步 但有很多问题

This commit is contained in:
UnKownOwO
2023-01-08 20:33:14 +08:00
parent dee9fea310
commit 99408a745f
10 changed files with 1031 additions and 180 deletions
+27 -12
View File
@@ -3,6 +3,7 @@ package game
import (
"hk4e/pkg/logger"
"hk4e/protocol/proto"
"time"
)
type GCGAi struct {
@@ -28,24 +29,38 @@ func (g *GCGAi) ReceiveGCGMessagePackNotify(notify *proto.GCGMessagePackNotify)
switch msg.AfterPhase {
case proto.GCGPhaseType_GCG_PHASE_TYPE_ON_STAGE:
logger.Error("请选择你的英雄 hhh")
// 默认选第一张牌
cardInfo := gameController.cardList[0]
// 操控者选择角色
g.game.ControllerSelectChar(gameController, cardInfo, []uint32{})
go func() {
time.Sleep(3 * 1000)
// 默认选第一张
cardInfo := gameController.charCardList[0]
// 操控者选择角色牌
g.game.ControllerSelectChar(gameController, cardInfo, []uint32{})
}()
case proto.GCGPhaseType_GCG_PHASE_TYPE_MAIN:
if gameController.allow == 0 {
return
}
go func() {
time.Sleep(3 * 1000)
g.game.ControllerUseSkill(gameController, 30012, []uint32{})
}()
}
case *proto.GCGMessage_DiceRoll:
// 摇完骰子
msg := message.GetPhaseChange()
switch msg.AfterPhase {
case proto.GCGPhaseType_GCG_PHASE_TYPE_ON_STAGE:
logger.Error("战斗意识?!")
cardInfo1 := g.game.controllerMap[g.controllerId].cardList[0]
cardInfo2 := g.game.controllerMap[g.controllerId].cardList[1]
g.game.AddMsgPack(0, proto.GCGActionType_GCG_ACTION_TYPE_NONE, g.game.GCGMsgPVEIntention(&proto.GCGMsgPVEIntention{CardGuid: cardInfo1.guid, SkillIdList: []uint32{cardInfo1.skillIdList[1]}}, &proto.GCGMsgPVEIntention{CardGuid: cardInfo2.guid, SkillIdList: []uint32{cardInfo2.skillIdList[0]}}))
msg := message.GetDiceRoll()
if msg.ControllerId != g.controllerId {
return
}
logger.Error("敌方行动意图")
go func() {
time.Sleep(3 * 1000)
cardInfo1 := g.game.controllerMap[g.controllerId].charCardList[0]
cardInfo2 := g.game.controllerMap[g.controllerId].charCardList[1]
g.game.AddMsgPack(0, proto.GCGActionType_GCG_ACTION_TYPE_NONE, g.game.GCGMsgPVEIntention(&proto.GCGMsgPVEIntention{CardGuid: cardInfo1.guid, SkillIdList: []uint32{cardInfo1.skillList[0].skillId}}, &proto.GCGMsgPVEIntention{CardGuid: cardInfo2.guid, SkillIdList: []uint32{cardInfo2.skillList[0].skillId}}))
g.game.SendAllMsgPack()
g.game.SetControllerAllow(g.game.controllerMap[g.controllerId], false, true)
g.game.AddMsgPack(0, proto.GCGActionType_GCG_ACTION_TYPE_SEND_MESSAGE, g.game.GCGMsgPhaseContinue())
}
}()
}
}
}