reject and remove

This commit is contained in:
ScrawnyRonnie 2023-12-25 21:01:24 -05:00
parent 350f78f46a
commit 8d483ea63a
2 changed files with 7 additions and 4 deletions

View file

@ -426,14 +426,14 @@ class SquadInvitationManager(subs: SquadSubscriptionEntity, parent: ActorRef) {
Refused(rejectingPlayer, invitingPlayerCharId)
(Some(rejectingPlayer), Some(invitingPlayerCharId))
case Some(VacancyInvite(leader, _, features))
if notLeaderOfThisSquad(squadsToLeaders, features.Squad.GUID, rejectingPlayer) =>
case Some(VacancyInvite(leader, _, _))
/*if notLeaderOfThisSquad(squadsToLeaders, features.Squad.GUID, rejectingPlayer)*/ =>
//rejectingPlayer is the would-be squad member; the squad leader sent the request and was rejected
Refused(rejectingPlayer, leader)
(Some(rejectingPlayer), Some(leader))
case Some(ProximityInvite(_, features, position))
if notLeaderOfThisSquad(squadsToLeaders, features.Squad.GUID, rejectingPlayer) =>
/*if notLeaderOfThisSquad(squadsToLeaders, features.Squad.GUID, rejectingPlayer)*/ =>
//rejectingPlayer is the would-be squad member; the squad leader sent the request and was rejected
ReloadProximityInvite(
tplayer.Zone.Players,
@ -2028,7 +2028,8 @@ class SquadInvitationManager(subs: SquadSubscriptionEntity, parent: ActorRef) {
avatar.lookingForSquad &&
!deniedAndExcluded.contains(charId) &&
!refused(charId).contains(squadLeader) &&
requirementsToMeet.intersect(avatar.certifications) == requirementsToMeet
requirementsToMeet.intersect(avatar.certifications) == requirementsToMeet &&
charId != invitingPlayerCharId //don't send invite to yourself. can cause issues if rejected
} match {
case None =>
None

View file

@ -1009,6 +1009,8 @@ class SquadService extends Actor {
subs.Publish(charId, SquadResponse.Detail(PlanetSideGUID(0), completelyBlankSquadDetail))
}
UpdateSquadListWhenListed(features.Stop, None)
//I think this is right, otherwise squadFeatures will never be empty and TryResetSquadId will not reset to 1
squadFeatures.remove(guid)
}
/**