Пример #1
0
        public void DeSerializer()
        {
            FishFarmData data1 = new FishFarmData();

            var serData = Regulus.TypeHelper.Serializer(data1);

            var data2 = Regulus.TypeHelper.Deserialize<FishFarmData>(serData);

            Assert.AreEqual(data2.DataRootRoots.Length, 0);
        }
Пример #2
0
        public ZsFishStage(Guid account_id, FishFarmData fish_farm_data, FormulaPlayerRecord formula_player_record, IFormulaPlayerRecorder formula_player_recorder, IFormulaFarmRecorder formula_stage_data_recorder)
        {
            _AccountId = account_id;
            _FishFarmData = fish_farm_data;

            _FormulaFarmRecorder = formula_stage_data_recorder;
            _FormulaPlayerRecorder = formula_player_recorder;

            _FormulaPlayerRecord = formula_player_record;
        }
Пример #3
0
        public ZsHitChecker(FishFarmData fish_farm_data, FormulaPlayerRecord formula_player_record)
        {
            var record = formula_player_record.FindFarmRecord(fish_farm_data.FarmId);

            if(record == null)
            {
                var tmp = formula_player_record.FarmRecords.ToList();
                tmp.Add(new FarmRecord(fish_farm_data.FarmId));
                formula_player_record.FarmRecords = tmp.ToArray();
            }

            _DataVisitor = new DataVisitor(fish_farm_data, formula_player_record);
        }
Пример #4
0
        public Value<IFishStage> Query(Guid player_id, FishFarmData data)
        {
            var val = new Value<IFishStage>();

            _FormulaPlayerRecorder.Query(player_id).OnValue += record =>
            {
                val.SetValue(
                             new ZsFishStage(
                                    player_id,
                                    data,
                                    record,
                                    _FormulaPlayerRecorder,
                                    _FormulaFarmRecorder));
            };

            return val;
        }
Пример #5
0
        public DataVisitor(FishFarmData fish_farm, FormulaPlayerRecord formula_player_record)
        {
            Farm = fish_farm;
            PlayerRecord = formula_player_record;

            _Treasures = new List<TreasureKind>
            {
                new TreasureKind
                {
                    Kind = TreasureKind.KIND.RANDOM,
                    Treasures = new List<WEAPON_TYPE>()
                },
                new TreasureKind
                {
                    Kind = TreasureKind.KIND.CERTAIN,
                    Treasures = new List<WEAPON_TYPE>()
                }
            };
        }
Пример #6
0
        private void _DefaultBufferData(FishFarmData fish_farm_data)
        {
            foreach(var bufferBlock in EnumHelper.GetEnums<FarmDataRoot.BlockNode.BLOCK_NAME>())
            {
                var dataRoot = fish_farm_data.FindDataRoot(bufferBlock, FarmDataRoot.BufferNode.BUFFER_NAME.NORMAL);
                _SetDefaultBufferData(dataRoot, rate: fish_farm_data.GameRate - fish_farm_data.SpecialRate, top: 0, gate: 0);

                dataRoot = fish_farm_data.FindDataRoot(bufferBlock, FarmDataRoot.BufferNode.BUFFER_NAME.SPEC);
                _SetDefaultBufferData(dataRoot, rate: fish_farm_data.SpecialRate, top: 3000, gate: 1000);

                dataRoot = fish_farm_data.FindDataRoot(bufferBlock, FarmDataRoot.BufferNode.BUFFER_NAME.VIR00);
                _SetDefaultBufferData(dataRoot, rate: 5, top: 3000, gate: 1000);

                dataRoot = fish_farm_data.FindDataRoot(bufferBlock, FarmDataRoot.BufferNode.BUFFER_NAME.VIR01);
                _SetDefaultBufferData(dataRoot, rate: 3, top: 1000, gate: 1000);

                dataRoot = fish_farm_data.FindDataRoot(bufferBlock, FarmDataRoot.BufferNode.BUFFER_NAME.VIR02);
                _SetDefaultBufferData(dataRoot, rate: 1, top: 1000, gate: 1000);

                dataRoot = fish_farm_data.FindDataRoot(bufferBlock, FarmDataRoot.BufferNode.BUFFER_NAME.VIR03);
                _SetDefaultBufferData(dataRoot, rate: 1, top: 1000, gate: 1000);
            }
        }
Пример #7
0
 Value<bool> IFormulaFarmRecorder.Save(FishFarmData data)
 {
     return true;
 }
Пример #8
0
 Value<bool> IFormulaFarmRecorder.Save(FishFarmData data)
 {
     throw new NotImplementedException();
 }
Пример #9
0
        private FishFarmData _LoadFarmData(FishFarmData data)
        {
            var farmData = _Database.Find(data, obj => obj.Id);

            return farmData;
        }
Пример #10
0
        Value<bool> IFormulaFarmRecorder.Save(FishFarmData data)
        {
            Server._Logger.Info().Message("Save Farm Data To DB Start.").Property("FarmId", data.FarmId).Write();

            var val = new Value<bool>();
            var farmData = _LoadFarmData(data);

            if(farmData == null)
            {
                val.SetValue(false);
            }
            else
            {
                val.SetValue(true);

                _Database.Update(data, a => a.Id);

                Server._Logger.Info().Message("Save Farm Data To DB Finish.").Property("FarmId", data.FarmId).Write();
            }

            return val;
        }
Пример #11
0
 public void Given魚場編號是(int farm_id)
 {
     _FarmData = new FishFarmBuilder().Get(farm_id);
 }
Пример #12
0
 private Value<IFishStage> _QueryZsFishStage(Guid player_id, FishFarmData data)
 {
     return _ZsFishFormulaInitialer.Query(player_id, data);
 }