Пример #1
0
    void RPC_S2C_FARM_SetAutoPlanting(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData reocrdData = (CSFarmData)_ColonyObj._RecordData;
        bool       bActive    = stream.Read <bool> ();

        reocrdData.m_AutoPlanting = bActive;
    }
Пример #2
0
    void RPC_S2C_InitDataFarm(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData reocrdData = (CSFarmData)_ColonyObj._RecordData;

        reocrdData.m_CurDeleteTime = stream.Read <float>();
        reocrdData.m_CurRepairTime = stream.Read <float> ();
        reocrdData.m_DeleteTime    = stream.Read <float> ();
        reocrdData.m_Durability    = stream.Read <float> ();
        reocrdData.m_RepairTime    = stream.Read <float> ();
        reocrdData.m_RepairValue   = stream.Read <float> ();
        int [] seedkeys    = stream.Read <int[]> ();
        int [] seedvalues  = stream.Read <int[]> ();
        int [] toolskeys   = stream.Read <int[]> ();
        int [] toolsvalues = stream.Read <int[]> ();
        for (int i = 0; i < seedkeys.Length; i++)
        {
            reocrdData.m_PlantSeeds[seedkeys[i]] = seedvalues[i];
        }
        for (int i = 0; i < toolskeys.Length; i++)
        {
            reocrdData.m_Tools[toolskeys[i]] = toolsvalues[i];
        }
        reocrdData.m_AutoPlanting       = stream.Read <bool> ();
        reocrdData.m_SequentialPlanting = stream.Read <bool> ();
    }
Пример #3
0
    void RPC_S2C_FARM_DeletePlantTool(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData recordData = (CSFarmData)_ColonyObj._RecordData;
        int        itemObjId  = stream.Read <int>();
        int        key        = -1;

        foreach (var item in recordData.m_Tools)
        {
            if (item.Value == itemObjId)
            {
                key = item.Key;
                return;
            }
        }

        if (key != -1)
        {
            recordData.m_Tools.Remove(key);
        }

        if (CSUI_MainWndCtrl.Instance.FarmUI != null)
        {
            CSUI_MainWndCtrl.Instance.FarmUI.DeleteToolResult(m_Entity, itemObjId);
        }
    }
Пример #4
0
    void RPC_S2C_FARM_SetSequentialActive(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData reocrdData = (CSFarmData)_ColonyObj._RecordData;
        bool       bActive    = stream.Read <bool> ();

        reocrdData.m_SequentialPlanting = bActive;
        if (CSUI_MainWndCtrl.Instance.FarmUI != null)
        {
            CSUI_MainWndCtrl.Instance.FarmUI.SetSequentialActiveResult(bActive, m_Entity);
        }
    }
Пример #5
0
    void RPC_S2C_FARM_FetchSeedItemResult(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData reocrdData = (CSFarmData)_ColonyObj._RecordData;
        int        index      = stream.Read <int>();
        bool       success    = stream.Read <bool>();

        if (success)
        {
            //1.data
            reocrdData.m_PlantSeeds[index] = 0;
        }
        //2.ui
        if (CSUI_MainWndCtrl.Instance.FarmUI != null)
        {
            CSUI_MainWndCtrl.Instance.FarmUI.FetchSeedResult(success, index, m_Entity);
        }
    }
Пример #6
0
    void RPC_C2S_FARM_SetPlantTool(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData reocrdData = (CSFarmData)_ColonyObj._RecordData;
        int        index      = stream.Read <int>();
        int        itemObjId  = stream.Read <int>();
        bool       success    = stream.Read <bool> ();

        if (success)
        {
            reocrdData.m_Tools [index] = itemObjId;
        }

        if (CSUI_MainWndCtrl.Instance.FarmUI != null)
        {
            CSUI_MainWndCtrl.Instance.FarmUI.SetPlantToolResult(success, itemObjId, index, m_Entity);
        }
    }
Пример #7
0
    void RPC_S2C_FARM_DeleteSeed(uLink.BitStream stream, uLink.NetworkMessageInfo info)
    {
        CSFarmData recordData = (CSFarmData)_ColonyObj._RecordData;
        int        itemObjId  = stream.Read <int>();
        int        key        = -1;

        foreach (var item in recordData.m_PlantSeeds)
        {
            if (item.Value == itemObjId)
            {
                key = item.Key;
                break;
            }
        }

        if (key != -1 && CSUI_MainWndCtrl.Instance.FarmUI != null)
        {
            CSUI_MainWndCtrl.Instance.FarmUI.DeleteSeedResult(m_Entity, itemObjId, key);
        }
    }
Пример #8
0
    public bool AssignData(int id, int type, ref CSDefaultData refData, ColonyBase _colony)
    {
        if (_colony != null && _colony._RecordData != null)
        {
            refData = _colony._RecordData;
            return(false);
        }
        else
        {
            switch (type)
            {
            case CSConst.dtAssembly:
                refData = new CSAssemblyData();
                break;

            case CSConst.dtStorage:
                refData = new CSStorageData();
                break;

            case CSConst.dtEngineer:
                refData = new CSEngineerData();
                break;

            case CSConst.dtEnhance:
                refData = new CSEnhanceData();
                break;

            case CSConst.dtRepair:
                refData = new CSRepairData();
                break;

            case CSConst.dtRecyle:
                refData = new CSRecycleData();
                break;

            case CSConst.dtppCoal:
                refData = new CSPPCoalData();
                break;

            case CSConst.dtppSolar:
                refData = new CSPPSolarData();
                break;

            case CSConst.dtDwelling:
                refData = new CSDwellingsData();
                break;

            case CSConst.dtFarm:
                refData = new CSFarmData();
                break;

            case CSConst.dtFactory:
                refData = new CSFactoryData();
                break;

            case CSConst.dtProcessing:
                refData = new CSProcessingData();
                break;

            case CSConst.dtTrade:
                refData = new CSTradeData();
                break;

            case CSConst.dtTrain:
                refData = new CSTrainData();
                break;

            case CSConst.dtCheck:
                refData = new CSCheckData();
                break;

            case CSConst.dtTreat:
                refData = new CSTreatData();
                break;

            case CSConst.dtTent:
                refData = new CSTentData();
                break;

            case CSConst.dtppFusion:
                refData = new CSPPFusionData();
                break;

            default:
                refData = new CSDefaultData();
                break;
            }
            refData.ID = id;
            return(true);
        }
    }
Пример #9
0
 //CSFarmData _MyData;
 public ColonyFarm(ColonyNetwork network)
 {
     SetNetwork(network);
     _RecordData = new CSFarmData();
     //_MyData = (CSFarmData)_RecordData;
 }