Team.lua 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. Team = {}
  2. local this = {}
  3. -- 获取队伍喊话信息
  4. function Team.getteamrecruitlua(actor,msgID)
  5. local info = {}
  6. local teamId = getbaseinfo(actor, "teamid")
  7. if not teamId or teamId == 0 then
  8. sendluamsg(actor,LuaMessageIdToClient.TEAM_RECRUIT_CHANGE,info)
  9. return
  10. end
  11. local teamInfo = getteaminfo(actor,teamId)
  12. if teamInfo == nil then
  13. sendluamsg(actor,LuaMessageIdToClient.TEAM_RECRUIT_CHANGE,info)
  14. return
  15. end
  16. local allTeamMemberInfo = teamInfo["allteammemberinfo"]
  17. local leaderRid
  18. for index, value in ipairs(allTeamMemberInfo) do
  19. local leader = value["leader"]
  20. if leader == 1 then
  21. leaderRid = value["rid"]
  22. end
  23. end
  24. local targetactor
  25. if actor:toString() == tostring(leaderRid) then
  26. targetactor = actor
  27. end
  28. if actor:toString() ~= tostring(leaderRid) then
  29. targetactor = getactor(actor,leaderRid)
  30. end
  31. local teamShout = getplaydef(targetactor, tostring(teamId))
  32. if teamShout == nil then
  33. sendluamsg(actor,LuaMessageIdToClient.TEAM_RECRUIT_CHANGE,info)
  34. return
  35. end
  36. info["activeid"] = teamShout[2]
  37. info["lowerlevel"] = tonumber(teamShout[3])
  38. info["upperlevel"] = tonumber(teamShout[4])
  39. -- local info = getteamrecruit(actor)
  40. sendluamsg(actor,LuaMessageIdToClient.TEAM_RECRUIT_CHANGE,info)
  41. end
  42. --给队员发送喊话信息
  43. function Team.teamrecruitchange(actor, activeid, upperlevel, lowerlevel)
  44. local sendData = {}
  45. sendData["activeid"] = activeid
  46. sendData["upperlevel"] = tonumber(upperlevel)
  47. sendData["lowerlevel"] = tonumber(lowerlevel)
  48. sendluamsg(actor, LuaMessageIdToClient.TEAM_RECRUIT_CHANGE, sendData)
  49. end
  50. -- 队长一键同意审批记录
  51. function Team.leaderAgreeApply(actor)
  52. agreeteamapply(actor)
  53. end
  54. ---获取队伍所有成员rid
  55. function Team.GetAllMemberRids(actor)
  56. if actor == nil then
  57. return nil
  58. end
  59. local allMemberRids = {}
  60. local teamId = tonumber(getbaseinfo(actor, "teamid"))
  61. if teamId == nil or teamId == 0 then
  62. return allMemberRids
  63. end
  64. local teamInfo = getteaminfo(actor,teamId)
  65. if table.isNullOrEmpty(teamInfo) then
  66. return
  67. end
  68. local allTeamMemberInfo = teamInfo["allteammemberinfo"]
  69. if table.isNullOrEmpty(allTeamMemberInfo) then
  70. return allMemberRids;
  71. end
  72. for _, memberInfo in pairs(allTeamMemberInfo) do
  73. local rid = tonumber(memberInfo["rid"])
  74. if rid ~= nil and rid > 0 then
  75. table.insert(allMemberRids,rid)
  76. end
  77. end
  78. return allMemberRids
  79. end