public static Club GetClub(int id, bool playersRequired) { string query = string.Format("SELECT * FROM Teams WHERE ID = {0};", id); List <Club> list = new List <Club>(); string conn = "URI=file:" + Application.dataPath + "/StreamingAssets/db.db"; //Path to database. using (SqliteConnection c = new SqliteConnection(conn)) { c.Open(); using (SqliteCommand cmd = new SqliteCommand(query, c)) { using (SqliteDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { int clubID = reader.GetInt32(0); string clubName = reader.GetString(1); int clubWealth = reader.GetInt16(2); int clubFame = reader.GetInt16(3); int clubEstYear = reader.GetInt16(4); string clubLocation = reader.GetString(5); string transferList = reader.GetString(6); string loanList = reader.GetString(7); string players = reader.GetString(8); int belongingLeague = reader.GetInt32(9); int generated = reader.GetInt32(10); int captain = reader.GetInt32(11); int supporterCount = reader.GetInt32(12); string startingLineup = reader.GetString(13); string stadiumName = reader.GetString(17); int capacity = reader.GetInt32(18); int managerID = reader.GetInt32(19); int relationship = reader.GetInt32(20); var club = new Club(clubID, clubName, clubEstYear, new List <Player>(), clubLocation, clubFame, clubWealth, players, transferList, loanList, 0, generated, startingLineup, capacity, stadiumName, supporterCount, managerID, relationship); List <Player> playersList = playersRequired ? StreamingDatabaseManager.GetPlayersFromTeam(clubID) : new List <Player>(); club.players = playersList; club.captainPID = captain; list.Add(club); } } } } RestoreConnection(); return(list[0]); }
void Start() { myBtn = GetComponent <Button>(); myBtn.onClick.AddListener(delegate { StreamingDatabaseManager.UpdatePlayerTrainingInTeam(0, "Strength"); StreamingDatabaseManager.UpdatePlayerTrainingInTeam(0, "Agility"); StreamingDatabaseManager.UpdatePlayerTrainingInTeam(0, "Tackling"); //This is a test Debug.Log("update success"); List <Player> TempPlayer = StreamingDatabaseManager.GetPlayersFromTeam(0);//Test if player's ability is indeed increased int RandomIndex = Random.Range(0, TempPlayer.Count - 1); myText.text = "Right now player's Strength is: " + TempPlayer[RandomIndex].strength + " Player Name is " + TempPlayer[RandomIndex].playerName; myText1.text = "Right now player's Agility is: " + TempPlayer[RandomIndex].agility + " Player Name is " + TempPlayer[RandomIndex].playerName; myText2.text = "Right now player's Tackling is: " + TempPlayer[RandomIndex].tackling + " Player Name is " + TempPlayer[RandomIndex].playerName; }); }
void Start() { myBtn = GetComponent <Button>(); myBtn.onClick.AddListener(delegate {//I am using current team = 0's players to test List <Player> TempPlayer = StreamingDatabaseManager.GetPlayersFromTeam(0); float before = PlayerEvaluater.EvaluateCM(TempPlayer[11]); for (int i = 1; i < 61; i++) { GrowthCalculation.RoundUpdate(TempPlayer); } float after = PlayerEvaluater.EvaluateCM(TempPlayer[11]); //TempPlayer[11].pace += (float)0.5; Debug.Log(TempPlayer[11].playerName + " " + TempPlayer[11].position + " " + TempPlayer[11].GetAge() + "Pace is: " + TempPlayer[11].pace + "Before: " + before + "After: " + after); //+"Before: "+before + "After: " + after }); }
void Start() { myBtn = GetComponent <Button>(); myBtn.onClick.AddListener(delegate { //StreamingDatabaseManager.CorrectDBWealth(); You only need to run this once, because now that all team wealth has been multiplied by 10w StreamingDatabaseManager.UpdateNull();//Fixed Database Null bug, not necessary if database does not have null values. //Very IMPORTANT: // Only use this at the begining of trading season, this will make all players available, StreamingDatabaseManager.MakeAllPlayersTradable(); //but we don't want this during trading season when players are traded they shouldn't be traded again. int TeamIndex = 6;//just using team 4 as an example, later you can change to any team. int TeamWealth = StreamingDatabaseManager.GetTeamWealth(TeamIndex); List <Player> TeamPlayers = StreamingDatabaseManager.GetPlayersFromTeam(TeamIndex); TransferSystem.GetChinesePlayersInTeam(TeamPlayers); //This step is very important to include: right now we only make Chinese Players transfer system List <Player> LeaguePlayers = StreamingDatabaseManager.SearchChinesePlayersFromSameLeague(TeamIndex); Dictionary <string, float> LeagueAvg = new Dictionary <string, float>(); Dictionary <string, float> LeaguePositionCount = new Dictionary <string, float>(); Dictionary <string, float> TeamAvg = new Dictionary <string, float>(); Dictionary <string, float> TeamPositionCount = new Dictionary <string, float>(); TransferSystem.CalculateLeagueAvg(LeagueAvg, LeaguePositionCount, LeaguePlayers); TransferSystem.CalculateLeagueAvg(TeamAvg, TeamPositionCount, TeamPlayers); List <Player> AllChinesePlayers = StreamingDatabaseManager.GetAllTradableChinesePlayers(); //以上是准备工作,下面是决定不同type的transfer List <string> PositionsNeeded = TransferSystem.CompareTeamAvgAndLeagueAvg(LeagueAvg, TeamAvg); Dictionary <string, Player> TypeOneTransfer = TransferSystem.TypeOnePlayers(PositionsNeeded, AllChinesePlayers, LeagueAvg, TeamAvg, TeamWealth); Dictionary <string, float> TypeTwoPositionsNeeded = TransferSystem.ComparePositionAvgAndTeamAvg(TeamPlayers, TeamAvg, TeamPositionCount); Dictionary <string, float> TypeThreePositionsNeeded = TransferSystem.FindPositionsLackingInTheTeam(TeamPositionCount, LeagueAvg); Dictionary <string, Player> TypeThreeTransfer = TransferSystem.GetTransfersByPosEval(TypeThreePositionsNeeded, AllChinesePlayers, TeamWealth); Dictionary <string, Player> TypeTwoTransfer = TransferSystem.GetTransfersByPosEval(TypeTwoPositionsNeeded, AllChinesePlayers, TeamWealth); Dictionary <string, Player> AgeTransfer = TransferSystem.GetAgeTransferPlayers(TeamPlayers, AllChinesePlayers, TeamWealth); Dictionary <string, float> KeyPlayerSubPositionNeeded = TransferSystem.IfNeedKeyPlayerSub(TeamPlayers); Dictionary <string, Player> KeyPlayerSubTransfer = TransferSystem.GetTransfersByPosEval(KeyPlayerSubPositionNeeded, AllChinesePlayers, TeamWealth); List <Player> TransferList = TransferSystem.FinalPlayersToBuy(TypeOneTransfer, TypeTwoTransfer, TypeThreeTransfer, AgeTransfer, KeyPlayerSubTransfer); /*foreach (Player player in TransferList) { * Debug.Log(player.position); * Debug.Log(PlayerEvaluater.EvaluatePlayer(player)); * } */ Dictionary <Player, int> TransferFinalList = TransferSystem.MakeTransfer(TypeOneTransfer, TypeTwoTransfer, TypeThreeTransfer, AgeTransfer, KeyPlayerSubTransfer, TeamWealth); foreach (KeyValuePair <Player, int> pair in TransferFinalList) { Debug.Log(pair.Key.currentClub); Debug.Log(pair.Key.ID); //Debug.Log(PlayerEvaluater.EvaluatePlayer(pair.Key)); } StreamingDatabaseManager.Transfer(TeamIndex, TransferFinalList); } ); }