fix(logic): 修复任务接受和完成逻辑
- 将任务 ID 索引从 1 开始改为从 0 开始,以匹配数组索引 - 在玩家下线时自动结束战斗 - 保存玩家数据时,如果玩家正处于战斗状态,自动使其逃跑
This commit is contained in:
@@ -18,8 +18,8 @@ func (h Controller) AcceptTask(data *task.AcceptTaskInboundInfo, c *service.Play
|
||||
// //isdaliy = true
|
||||
// }
|
||||
|
||||
if c.Info.TaskList[data.TaskId] == 0 {
|
||||
c.Info.TaskList[data.TaskId] = 1
|
||||
if c.Info.TaskList[data.TaskId-1] == 0 {
|
||||
c.Info.TaskList[data.TaskId-1] = 1
|
||||
}
|
||||
|
||||
result = &task.AcceptTaskOutboundInfo{}
|
||||
@@ -66,12 +66,12 @@ func randInt0To24() int {
|
||||
*/
|
||||
func (h Controller) Complete_Task(data *task.CompleteTaskInboundInfo, c *service.Player) (result *task.CompleteTaskOutboundInfo, err errorcode.ErrorCode) {
|
||||
|
||||
if c.Info.TaskList[data.TaskId] != 1 { //如果任务没有接受或者已经完成Complete_Task
|
||||
if c.Info.TaskList[data.TaskId-1] != 1 { //如果任务没有接受或者已经完成Complete_Task
|
||||
|
||||
return result, 0
|
||||
|
||||
}
|
||||
c.Info.TaskList[data.TaskId] = 3
|
||||
c.Info.TaskList[data.TaskId-1] = 3
|
||||
result = &task.CompleteTaskOutboundInfo{}
|
||||
result.ItemList = make([]task.ItemInfo, 0)
|
||||
result.TaskId = data.TaskId
|
||||
|
||||
Reference in New Issue
Block a user