新手任务

This commit is contained in:
hahwu 2025-08-26 09:58:06 +08:00
parent 9dde6ce4a7
commit 787041b6ec
3 changed files with 14 additions and 1 deletions

View File

@ -42,7 +42,7 @@ func ReqGmCommand_(player *Player, Command string) error {
// log.Error("ReqGmCommand panic: %v", err)
// }
// }()
if conf.Server.GameName != "pet_home" && conf.Server.GameName != "merge_pet_sdk" {
if conf.Server.GameName != "pet_home" && conf.Server.GameName != "merge_pet_sdk" && conf.Server.GameName != "Merge_Pet_Local" {
return fmt.Errorf("Player %d ReqGmCommand not support in game %s, command %s", player.M_DwUin, conf.Server.GameName, Command)
}
player.TeLog("gm", map[string]interface{}{
@ -89,6 +89,7 @@ func ReqGmCommand_(player *Player, Command string) error {
player.PlayMod.getBaseMod().Exp = 0
player.PushClientRes(player.PlayerBaseMod.BackAsset())
player.initAcitivity()
player.PlayMod.getGuideTaskMod().Unlock(num)
player.BackDataActivity()
case "zeroUpdate":
VarMod := player.PlayMod.getVarMod()

View File

@ -154,8 +154,10 @@ func (p *Player) ProcessTrigger() {
DailyTaskMod := p.PlayMod.getDailyTaskMod()
MailMod := p.PlayMod.getMailMod()
PlayroomMod := p.PlayMod.getPlayroomMod()
GuideTaskMod := p.PlayMod.getGuideTaskMod()
IsPlayroomBack := false
IsMailBack := false
IsGuideTask := false
for _, tr := range p.Trigger {
if DailyTaskMod.Trigger(tr) {
IsDailyBack = true
@ -166,6 +168,9 @@ func (p *Player) ProcessTrigger() {
if PlayroomMod.QuestTrigger(tr) {
IsPlayroomBack = true
}
if GuideTaskMod.Trigger(tr) {
IsGuideTask = true
}
}
if IsDailyBack {
@ -177,6 +182,9 @@ func (p *Player) ProcessTrigger() {
if IsPlayroomBack {
p.NotifyPlayroomTask()
}
if IsGuideTask {
p.PushClientRes(GuideTaskMod.BackData())
}
p.Trigger = make([]*quest.Trigger, 0)
}

View File

@ -54,6 +54,7 @@ func (gt *GuideTaskMod) Unlock(lv int) bool {
UnLockLv := GuideTaskCfg.GetUnlockLv()
if lv >= UnLockLv && gt.UnlockTime == 0 {
gt.UnlockTime = GoUtil.Now()
gt.Trigger(&quest.Trigger{Label: quest.TRIGGER_LABEL_LOGIN})
return true
}
return false
@ -123,6 +124,9 @@ func (gt *GuideTaskMod) GetActiveReward(Id int) ([]*item.Item, error) {
}
func (gt *GuideTaskMod) BackData() *msg.ResGuideTask {
if !gt.CheckOpen() {
return nil
}
resTask := make(map[int32]*msg.GuideTask)
for k, v := range gt.Tasks {
resTask[int32(k)] = &msg.GuideTask{