Ejemplo n.º 1
0
    private static void OnStartFight(bool success, System.Object content)
    {
        if (content != null)
        {
            //refresh pvp user if rank changed
            StartFightResponse response = content as StartFightResponse;
            if (response.pvpUser != null)
            {
                InstancePlayer.instance.model_User.model_pvpUser.PushPvpUser(response.pvpUser);
            }
        }

        PBConnect_startPVPLadderFight.DelegateConnectCallback cb = _fightCallback;
        _fightCallback = null;
        cb(success, content);
    }
Ejemplo n.º 2
0
    public static RESULT StartFight(PBConnect_startPVPLadderFight.DelegateConnectCallback callback)
    {
        Assert.assert(_fightCallback == null);

        RESULT r = CheckStartFight(InstancePlayer.instance.pvpUser);

        if (r != RESULT.OK)
        {
            return(r);
        }

        /*
         * SlgPB.PVPUser selfUser = InstancePlayer.instance.model_User.model_pvpUser.selfPvpUser;
         * int selfRank = selfUser.rank;
         *
         * if (selfRank >= opponent.rank) {
         *      return RESULT.RANK_ERROR;
         * }
         */

        _fightCallback = callback;

        SlgPB.PVPUser opponent = InstancePlayer.instance.pvpUser;

        StartPVPLadderFightRequest request = new StartPVPLadderFightRequest();

        request.api = new Model_ApiRequest().api;

        request.rank      = opponent.rank;
        request.oppUserId = opponent.userId;
        request.teamId    = InstancePlayer.instance.model_User.model_Formation.GetSelectTeamId();

        (new PBConnect_startPVPLadderFight()).Send(request, OnStartFight);

        return(r);
    }