private static SquadMsg CreateActionMessage(SquadAction action, SquadController.ActionCallback callback, object cookie) { SqmActionData sqmActionData = new SqmActionData(); sqmActionData.Type = action; sqmActionData.Callback = callback; sqmActionData.Cookie = cookie; SqmOwnerData sqmOwnerData = new SqmOwnerData(); sqmOwnerData.PlayerId = Service.CurrentPlayer.PlayerId; sqmOwnerData.PlayerName = Service.CurrentPlayer.PlayerName; return(new SquadMsg { OwnerData = sqmOwnerData, ActionData = sqmActionData }); }
private void OnActionCommandSuccess(AbstractResponse response, object cookie) { SquadMsg squadMsg = (SquadMsg)cookie; SqmActionData actionData = squadMsg.ActionData; SquadAction type = actionData.Type; SquadMsg squadMsg2; switch (type) { case SquadAction.Create: case SquadAction.Join: squadMsg2 = SquadMsgUtils.GenerateMessageFromSquadResponse((SquadResponse)response, Service.LeaderboardController); goto IL_B5; case SquadAction.Leave: squadMsg2 = squadMsg; this.controller.WarManager.ClearSquadWarData(); goto IL_B5; case SquadAction.Edit: case SquadAction.ApplyToJoin: IL_35: switch (type) { case SquadAction.DonateTroops: case SquadAction.DonateWarTroops: squadMsg2 = SquadMsgUtils.GenerateMessageFromTroopDonateResponse((TroopDonateResponse)response); Service.TroopDonationTrackController.UpdateTroopDonationProgress((TroopDonateResponse)response); goto IL_B5; } squadMsg2 = squadMsg; goto IL_B5; case SquadAction.AcceptApplicationToJoin: squadMsg2 = SquadMsgUtils.GenerateMessageFromSquadMemberResponse((SquadMemberResponse)response); goto IL_B5; } goto IL_35; IL_B5: squadMsg2.BISource = squadMsg.BISource; this.controller.OnPlayerActionSuccess(actionData.Type, squadMsg2); if (actionData.Callback != null) { actionData.Callback(true, actionData.Cookie); } }