package constant import ( "slices" ) const ( TeamMemberIndex_Start = 0 // 队伍阵容最小索引 TeamMemberIndex_End = 5 // 队伍阵容最大索引 TeamMemberTeamIndex_Start = 1 // 队伍位置最小索引 TeamMemberTeamIndex_End = 3 // 队伍位置最大索引 TeamMemberIndex_Leader = 1 // 主将下标 TeamMemberIndex_2 = 2 // 副将下标 TeamMemberIndex_3 = 3 // 副将下标 ) // ValidateTeamMemberIndex 检测队伍成员索引值是否正确 func ValidateTeamMemberIndex(indexs ...int32) bool { return ValidateTeamIndex(TeamMemberIndex_Start, TeamMemberIndex_End, indexs...) } // ValidateTeamMemberTeamIndex 检测队伍成员索引值是否正确 func ValidateTeamMemberTeamIndex(teamIndexs ...int32) bool { return ValidateTeamIndex(TeamMemberTeamIndex_Start, TeamMemberTeamIndex_End, teamIndexs...) } // ValidateTeamIndex 检测队伍索引值是否正确 func ValidateTeamIndex(startIndex int32, endIndex int32, indexs ...int32) bool { for _, index := range indexs { if index < startIndex || index > endIndex { return false } } return true } // IsTeamMainIndex 是否是主将位置 func IsTeamMainIndex(index int32) bool { return index == TeamMemberTeamIndex_Start } // 随机队伍阵容位置 func RandomTeamLineupIndex(excludeIndexs []int32) int32 { for index := int32(TeamMemberIndex_Start); index <= TeamMemberIndex_End; index++ { if !slices.Contains(excludeIndexs, index) { return int32(index) } } return 0 } const ( TeamMaxCount int32 = 5 )