コード例 #1
0
        public string AttackResult(FormCollection collection)
        {
            string id             = Request.Form["PlayerId"];
            string opponentid     = Request.Form["opponenId"];
            int    gatheredCoin   = Int32.Parse(Request.Form["gatheredCoin"]);
            int    gatheredElixir = Int32.Parse(Request.Form["gatheredElixir"]);


            PlayerForDataBase PlayerData   = dataBase.PlayerinDataBase.Find(id);
            PlayerForDataBase opponentData = dataBase.PlayerinDataBase.Find(opponentid);

            if (PlayerData != null && opponentData != null)
            {
                PlayerData.UpdatePropertyByTime();
                opponentData.UpdatePropertyByTime();
                AddNew.WaitOne();
                opponentData.coin   -= gatheredCoin;
                opponentData.elixir -= gatheredElixir;
                PlayerData.coin     += gatheredCoin;
                PlayerData.elixir   += gatheredElixir;
                dataBase.Entry(PlayerData).State   = EntityState.Modified;
                dataBase.Entry(opponentData).State = EntityState.Modified;
                dataBase.SaveChanges();
                AddNew.ReleaseMutex();
                new PlayerListManager().UpdatePlayerInfo(PlayerData);
                new PlayerListManager().UpdatePlayerInfo(opponentData);
                return(true.ToString());
            }
            else
            {
                return(false.ToString());
            }
        }
コード例 #2
0
        public string UpdateBuilding(string buildst)
        {
            string id = Request.Form["PlayerId"];
            string BulidngString = Request.Form["BulidngString"];            
            PlayerForDataBase PlayerData = dataBase.PlayerinDataBase.Find(id);
            if (PlayerData != null)
            {
                PlayerData.buildingCode = BulidngString;
                dataBase.Entry(PlayerData).State = EntityState.Modified;
                dataBase.SaveChanges();

                return true.ToString();
            }
            else
            {
                return false.ToString();
            }
        }
コード例 #3
0
        public string ResetAllPlayersInfos(FormCollection collection)
        {
            foreach (PlayerForDataBase p in dataBase.PlayerinDataBase)
            {
                dataBase.PlayerinDataBase.Remove(p);
            }
            dataBase.SaveChanges();
            PlayerListManager iiii = new PlayerListManager();

            iiii.ClearPlayerList();
            return(true.ToString());
        }
コード例 #4
0
        public string LoadPlayerData1(FormCollection collection)
        {
            string id                  = Request.Form["PlayerId"];
            string Shipname            = Request.Form["Shipname"];
            string Password            = Request.Form["Password"];
            string PasswordForCreation = "11111";
            string PasswordForEdit     = "11111";


            new Theif2dDataDBContext().LoadForFisttimeIfNessecary();

            AddNew.WaitOne();

            if (Shipname == "PlayerShip")
            {
                DualString findedShip = dataBase.AllDualStrings.Find(id);
                if (findedShip == null)
                {
                    findedShip = new DualString();
                    string ss    = new Random().NextDouble().ToString();
                    int    index = dataBase.PlayerinDataBase.Count <PlayerForDataBase>() + 1;
                    findedShip.key = index.ToString() + ss;
                    ShipForSerialize forsss = new ShipForSerialize();
                    //forsss.ProducersInShip = new long[1];
                    //forsss.ProducersInShip[0] = 11;
                    //forsss.Items.Add(223);
                    forsss.OwnerID   = findedShip.key;
                    findedShip.value = new JavaScriptSerializer().Serialize(forsss);
                    dataBase.AllDualStrings.Add(findedShip);
                    dataBase.SaveChanges();
                }
                AddNew.ReleaseMutex();
                return(findedShip.value);
            }
            else
            {
                string     code       = Shipname + Password;
                DualString findedShip = dataBase.AllDualStrings.Find(id);
                if (findedShip == null)
                {
                    if (Password == PasswordForCreation)
                    {
                        findedShip = new DualString();
                        string ss    = new Random().NextDouble().ToString();
                        int    index = dataBase.PlayerinDataBase.Count <PlayerForDataBase>() + 1;
                        findedShip.key = code;
                        ShipForSerialize forsss = new ShipForSerialize();
                        forsss.OwnerID   = findedShip.key;
                        findedShip.value = new JavaScriptSerializer().Serialize(forsss);
                        dataBase.AllDualStrings.Add(findedShip);
                        dataBase.SaveChanges();
                    }
                    else
                    {
                        AddNew.ReleaseMutex();
                        return("shipNotFinded  & CreationPaswordIsWrong");
                    }
                }
                AddNew.ReleaseMutex();
                return(findedShip.value);
            }
        }