private void normalizePlayerPoints(int playerId, Account playerAccount)
        {
            var infoSet = new PlayerInfoSet()
            {
                entityId      = playerId,
                upgradePoints = playerAccount.balances[ResourceType.Points],
            };

            var cmd = new APICmd(CmdId.Request_Player_SetPlayerInfo, infoSet);

            broker.ExecuteCommand(cmd);
        }
        private void normalizePlayer(PlayerLedger ledger)
        {
            var infoSet = new PlayerInfoSet()
            {
                entityId         = ledger.info.entityId,
                experiencePoints = ledger.FactionAccount.balances[ResourceType.Experience],
                upgradePoints    = ledger.PersonalAccount.balances[ResourceType.Points],
            };

            log(() => $"normalizing player: {ledger.info.playerName} with points: { infoSet.upgradePoints}");
            log(() => $"factionAccount: {Serializer.Serialize(ledger.FactionAccount)} playerAccount: {Serializer.Serialize(ledger.PersonalAccount)}");

            var cmd = new APICmd(CmdId.Request_Player_SetPlayerInfo, infoSet);

            broker.ExecuteCommand(cmd);
        }
Example #3
0
        public static void Request_Player_SetPlayerInfo(PlayerInfoSet arg, Action callback = null, Action <ErrorInfo> onError = null)
        {
            Action <CmdId, object> wiredCallback = null;

            if (callback != null)
            {
                wiredCallback = (_, val) => callback();
            }

            var apiCmd = new GenericAPICommand(
                CmdId.Request_Player_SetPlayerInfo,
                arg,
                wiredCallback,
                onError ?? noOpErrorHandler
                );

            Broker.Execute(apiCmd);
        }
Example #4
0
        //Загружаем все, что касается информации персонажа через XML
        private void Launcher_OnShowPlayerInfo(object sender, LoadTextEventArgs e)
        {
            switch (e.State)
            {
            case LoadingState.Canceled:
                break;

            case LoadingState.Started:
                //StartWaitAnimation();
                break;

            case LoadingState.Completed:
                //StopWaitAnimation();
                try
                {
                    if (e.Result.Success)
                    {
                        PlayerInfoSet playerSet = PlayerInfoSet.FromXml(e.Result.Data);     // player info
                        charInfoBox.ItemsSource = playerSet.Stat;
                        // получаем имг сорц как урл
                        ImagePath = playerSet.Stat.First(x => x.Name == CharName).Race;
                        BitmapImage bimage = new BitmapImage();
                        bimage.BeginInit();
                        bimage.UriSource = new Uri(ImagePath, UriKind.Relative);
                        bimage.EndInit();
                        bgCharInfo.Source = bimage;
                    }
                }
                catch (Exception err)
                {
                    MessageBox.Show(
                        "Not possible to generate a character info. Please restart the program. If the error persists, again, please contact technical support project");
                }
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Example #5
0
 public async Task <bool> Request_Player_SetPlayerInfo(PlayerInfoSet arg, CancellationToken ct)
 {
     return(await Broker.SendRequestAsync(CmdId.Request_Player_SetPlayerInfo, arg, ct));
 }
Example #6
0
 public async Task <bool> Request_Player_SetPlayerInfo(PlayerInfoSet arg)
 {
     return(await Broker.SendRequestAsync(CmdId.Request_Player_SetPlayerInfo, arg));
 }
 public IActionResult Post([FromBody] PlayerInfoSet player)
 {
     PlayerManager.ChangePlayerInfo(player);
     return(Ok());
 }
        public void ChangePlayerInfo(PlayerInfoSet aSet)
        {
            using (var DB = new PlayerContext())
            {
                var player = DB.Players.FirstOrDefault(P => P.EntityId == aSet.entityId);
                if (player == null)
                {
                    return;
                }

                if (aSet.factionRole.HasValue)
                {
                    player.FactionRole = aSet.factionRole.Value;
                }
                if (aSet.factionId.HasValue)
                {
                    player.FactionId = aSet.factionId.Value;
                }
                if (aSet.factionGroup.HasValue)
                {
                    player.FactionGroup = aSet.factionGroup.Value;
                }
                if (aSet.origin.HasValue)
                {
                    player.Origin = (byte)aSet.origin.Value;
                }
                if (aSet.upgradePoints.HasValue)
                {
                    player.Upgrade = aSet.upgradePoints.Value;
                }
                if (aSet.experiencePoints.HasValue)
                {
                    player.Exp = aSet.experiencePoints.Value;
                }
                if (aSet.bodyTempMax.HasValue)
                {
                    player.BodyTempMax = aSet.bodyTempMax.Value;
                }
                if (aSet.bodyTemp.HasValue)
                {
                    player.BodyTemp = aSet.bodyTemp.Value;
                }
                if (aSet.radiationMax.HasValue)
                {
                    player.RadiationMax = aSet.radiationMax.Value;
                }
                if (aSet.oxygenMax.HasValue)
                {
                    player.OxygenMax = aSet.oxygenMax.Value;
                }
                if (aSet.oxygen.HasValue)
                {
                    player.Oxygen = aSet.oxygen.Value;
                }
                if (aSet.foodMax.HasValue)
                {
                    player.FoodMax = aSet.foodMax.Value;
                }
                if (aSet.food.HasValue)
                {
                    player.Food = aSet.food.Value;
                }
                if (aSet.staminaMax.HasValue)
                {
                    player.StaminaMax = aSet.staminaMax.Value;
                }
                if (aSet.stamina.HasValue)
                {
                    player.Stamina = aSet.stamina.Value;
                }
                if (aSet.healthMax.HasValue)
                {
                    player.HealthMax = aSet.healthMax.Value;
                }
                if (aSet.health.HasValue)
                {
                    player.Health = aSet.health.Value;
                }
                if (!string.IsNullOrEmpty(aSet.startPlayfield))
                {
                    player.StartPlayfield = aSet.startPlayfield;
                }
                if (aSet.radiation.HasValue)
                {
                    player.Radiation = aSet.radiation.Value;
                }

                DB.SaveChangesAsync();
            }

            Request_Player_SetPlayerInfo(aSet);
        }
Example #9
0
 public void Request_Player_SetPlayerInfo(PlayerInfoSet arg, Action callback = null, Action <ErrorInfo> onError = null)
 {
     Broker.Request_Player_SetPlayerInfo(arg, callback, onError);
 }
Example #10
0
 public static Task <object> Request_Player_SetPlayerInfo(PlayerInfoSet param)
 {
     return(Broker.CreateCommandWithArgAndReturn <PlayerInfoSet, object>(CmdId.Request_Player_SetPlayerInfo, param));
 }
Example #11
0
 public static Task <object> Request_Player_SetPlayerInfo(PlayerInfoSet param, Action callback, Action <ErrorInfo> onError = null)
 {
     return(Broker.CreateCommandWithArgAndReturn <PlayerInfoSet, object>(CmdId.Request_Player_SetPlayerInfo, param, callback, onError));
 }