예제 #1
0
 public void SendFieldDrop(FieldDropModel.RequestSendForm send, Action <bool> call_back)
 {
     Protocol.Send(FieldDropModel.URL, send, delegate(FieldDropModel ret)
     {
         bool obj = false;
         if (ret.Error == Error.None)
         {
             obj = true;
         }
         call_back(obj);
     }, string.Empty);
 }
    public void SendFieldDrop(Action <bool> call_back = null)
    {
        bool is_send = false;

        FieldDropModel.RequestSendForm form = new FieldDropModel.RequestSendForm();
        form.fieldId = fieldId;
        form.mapId   = mapId;
        defeatList.ForEach(delegate(DefeatEnemy o)
        {
            if (!o.isSended)
            {
                is_send = true;
                form.eids.Add(o.enemyId);
                form.esigs.Add(o.sigInfo);
                o.isSended = true;
            }
        });
        rewardList.ForEach(delegate(Reward o)
        {
            if (!o.isSended && o.IsPickup())
            {
                is_send = true;
                form.deids.Add(o.enemyId);
                form.dsigs.Add(o.sigInfo);
                o.isSended = true;
            }
        });
        if (!is_send)
        {
            if (call_back != null)
            {
                call_back(true);
            }
        }
        else
        {
            MonoBehaviourSingleton <FieldManager> .I.SendFieldDrop(form, delegate(bool is_success)
            {
                RecvFieldDrop(is_success);
                if (call_back != null)
                {
                    call_back(is_success);
                }
            });
        }
    }