public void rpc_receiveTarget(int target, PhotonMessageInfo info) { //player saves his own target targetPlayer = (Player_ID)target; //and sets the right face to the target image in the HUD targetImage.setImage("Players/player_" + target.ToString()); }
public void CreateBoards(Player_ID ID) { if (isLocalPlayer) { playerIdentity = ID; playerTeam = playerIdentity.playerTeam; createBoard (POS_BOARD1_X, POS_BOARD1_Y, LEN_BOARD_X, LEN_BOARD_Y, e_player.PLAYER1); createBoard (POS_BOARD2_X, POS_BOARD2_Y, LEN_BOARD_X, LEN_BOARD_Y, e_player.PLAYER2); } }
void Awake() { //Create scrripts playerFunctions = new PlayerFunctionsScript(this); markerDistribution = new MarkerDistributionScript(); playerTool = new PlayerToolScript(Tool.NONE); //set TrackedTarget and Tracked Tool to unknown and -1 trackedTarget = Player_ID.UNKNOWN; trackedToolMarker = -1; }
// Use this for initialization void Start() { audioSync = GetComponent <Audio_Sync>(); playerPauseScirpt = GetComponent <Player_Pause>(); //engineParent = transform.Find("Engines").gameObject; healthScript = GetComponent <Player_Health>(); variablesScript = GetComponent <variables>(); playerChatScript = GetComponent <Player_Chat>(); playerIDScript = GetComponent <Player_ID>(); healthScript.EventDie += DisablePlayer; //Subscribes it to the EventDie }
// Use this for initialization void Start() { //if (isLocalPlayer) { variablesScript = GetComponent <variables>(); playerBoostScript = GetComponent <Player_Boost>(); playerDeathScript = GetComponent <Player_Death>(); playerRespawnScript = GetComponent <Player_Respawn>(); playerFireScript = GetComponent <Player_Fire>(); playerHealthScript = GetComponent <Player_Health>(); playerIDScript = GetComponent <Player_ID>(); shipControlScript = GetComponent <ShipControl>(); playerEngineScript = GetComponent <Player_Engine>(); playerSpotlightScript = GetComponent <Player_Spotlight>(); playerNetworkSetup = GetComponent <Player_NetworkSetup>(); if (isLocalPlayer) { playerType = PlayerPrefs.GetString("ShipType"); //print("Setting player type to: " + playerType); if (playerType != "Large" && playerType != "Medium" && playerType != "Small") { playerType = "Medium"; } if (playerType == "Small") { Cmd_EnableSmallShip(); } else if (playerType == "Medium") { Cmd_EnableMediumShip(); } else if (playerType == "Large") { Cmd_EnableLargeShip(); } CmdTellServerMyShip(playerType); } /* * if (!isLocalPlayer) { * if (playerTypeGlobal == "Small") { * Cmd_EnableSmallShip(); * } * else if (playerTypeGlobal == "Medium") { * Cmd_EnableMediumShip(); * } * else if (playerTypeGlobal == "Large") { * Cmd_EnableLargeShip(); * } * } */ }
//Master checks if the game is finished //His player ID is the playerID of the last player that has been arrested public void checkIfGameFinished(Player_ID hisPlayerID) { //loop over all active players //Remove lastly arrested player from active player list for (int i = 0; i < activePlayers.Count; i++) { //if active player id matches player id if (activePlayers[i] == hisPlayerID) { //remove whole player and his target from the list activePlayers.RemoveAt(i); activePlayersTargets.RemoveAt(i); break; } } //loop over all active player targets and remove the //lastly arrested player as a target from the player for (int i = 0; i < activePlayersTargets.Count; i++) { //if active player target id matches player id if (activePlayersTargets[i] == hisPlayerID) { //set this players target to unknown activePlayersTargets[i] = Player_ID.UNKNOWN; } } //init test variable bool gameFinished = true; //loop over all player targets for (int i = 0; i < activePlayersTargets.Count; i++) { //check if at least one Target is not unknown yet //in this case the variable gameFinished will get false and can never be true again gameFinished &= (activePlayersTargets[i] == Player_ID.UNKNOWN); } //if game finished and not stopped yet if (gameFinished && !gameStopped) { //inform all clients that the game is over gameStopped = true; player.GetComponent <PhotonView>().RPC("rpc_gameIsOver", PhotonTargets.All); } }
public void NewShip() { if (isLocalPlayer) { NetworkIdentity ni = GetComponent <NetworkIdentity>(); Player_ID id = GetComponent <Player_ID> (); GameObject[] spawnPoint = GameObject.FindGameObjectsWithTag("SpawnPoint"); int r = Random.Range(0, spawnPoint.Length); GameObject newShip = (GameObject)Instantiate(playerPrefab, spawnPoint [r].transform.position, spawnPoint [r].transform.rotation); NetworkIdentity newNi = newShip.GetComponent <NetworkIdentity> (); newNi = ni; Player_ID newId = newShip.GetComponent <Player_ID> (); newId = id; NetworkServer.Destroy(gameObject); } }
public void generatePlayerAndTargetList() { //Add all available players to a list for available players and also available targets for (int i = 0; i < NetworkManager.expectedNumberOfPlayers; i++) { playerScript.getAvailableTargets().Add((Player_ID)i); playerScript.getAvailablePlayers().Add((Player_ID)i); } //the following code is some logic, to prevent the players from having themselves as a target //and also to give the targets some random order, that not every round the same target distribution exists bool invalidList = true; while (invalidList) { invalidList = false; //Shuffle list randomly for (int i = 0; i < playerScript.getAvailableTargets().Count; i++) { //swap target list Player_ID temp_target = playerScript.getAvailableTargets()[i]; int randomIndex_target = Random.Range(0, playerScript.getAvailableTargets().Count); playerScript.getAvailableTargets()[i] = playerScript.getAvailableTargets()[randomIndex_target]; playerScript.getAvailableTargets()[randomIndex_target] = temp_target; //swap player list Player_ID temp_player = playerScript.getAvailablePlayers()[i]; int randomIndex_player = Random.Range(0, playerScript.getAvailablePlayers().Count); playerScript.getAvailablePlayers()[i] = playerScript.getAvailablePlayers()[randomIndex_player]; playerScript.getAvailablePlayers()[randomIndex_player] = temp_player; } //if some player has himself as target, shuffle again for (int i = 0; i < playerScript.getAvailablePlayers().Count; i++) { if (playerScript.getAvailablePlayers()[i] == playerScript.getAvailableTargets()[i]) { invalidList = true; } } } }
// Use this for initialization void Start() { //Get references to other scripts on the player's gameobject variablesScript = GetComponent <variables>(); gameManager = GameObject.Find("GameManager"); chatManager = gameManager.GetComponent <Chat_Manager>(); chatInput = gameManager.GetComponent <GameManager_References>().chatInput.GetComponent <InputField>(); playerIDScript = GetComponent <Player_ID>(); if (isLocalPlayer) //If its the local player //Get the chat send button from the references stored in the GameManager { chatSend = gameManager.GetComponent <GameManager_References>().chatSendButton.GetComponent <Button>(); chatSend.onClick.AddListener(SendChat); //Add a listener to that button //Add listeners to the inputbox for the chat chatInput.onValueChanged.AddListener(Typing); chatInput.onEndEdit.AddListener(ExitEditing); } }
public bool SaveAchievement() { DataRow result = (from row in ds.Tables[(int)XMLTbls.player_achievement].AsEnumerable() where row.Field <string>("player_ID") == Player_ID.ToString() && row.Field <string>("achievement_ID") == ((int)Player_Achievement).ToString() select row).SingleOrDefault(); result.BeginEdit(); int.TryParse(result.ItemArray[(int)PlayerAchievementsTbl.achievement_data].ToString(), out int achievementCount); //current player achievement count if (Player_Achievement == Achievements.Star_Light) // Star Collection is a counter { if (achievementCount == 0) // record first level achievement { DataRow r = (from row in ds.Tables[(int)XMLTbls.player_achievement].AsEnumerable() where row.Field <string>("player_ID") == Player_ID.ToString() && row.Field <string>("achievement_ID") == ((int)Achievements.Star_Power).ToString() select row).SingleOrDefault(); r.BeginEdit(); r[(int)PlayerAchievementsTbl.achievement_data] = achieved.ToString(); r[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); //record date of achievement r.EndEdit(); r.AcceptChanges(); xmlUtils.UpdateXMLfile(ds); } result.ItemArray[(int)PlayerAchievementsTbl.achievement_data] = (Achievement_Data + achievementCount).ToString(); if ((Achievement_Data + achievementCount) >= (int)Achievement_Counters.Stars && result.ItemArray[(int)PlayerAchievementsTbl.achievement_date].ToString() == string.Empty) { result[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); //record date of achievement } } if (Player_Achievement == Achievements.Electrocuted) // Death by Lighting is a counter { if (achievementCount == 0) // record first level achievement { DataRow r = (from row in ds.Tables[(int)XMLTbls.player_achievement].AsEnumerable() where row.Field <string>("player_ID") == Player_ID.ToString() && row.Field <string>("achievement_ID") == ((int)Achievements.Shocked).ToString() select row).SingleOrDefault(); r.BeginEdit(); r[(int)PlayerAchievementsTbl.achievement_data] = achieved.ToString(); r[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); //record date of achievement r.EndEdit(); r.AcceptChanges(); xmlUtils.UpdateXMLfile(ds); } result.ItemArray[(int)PlayerAchievementsTbl.achievement_data] = (Achievement_Data + achievementCount).ToString(); if ((Achievement_Data + achievementCount) >= (int)Achievement_Counters.Lighting && result.ItemArray[(int)PlayerAchievementsTbl.achievement_date].ToString() == string.Empty) { result[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); } } if (Player_Achievement == Achievements.Kills_1) { result.ItemArray[(int)PlayerAchievementsTbl.achievement_data] = (Achievement_Data + achievementCount).ToString(); if (Achievement_Data >= (int)Achievement_Counters.Kill_1) { result[(int)PlayerAchievementsTbl.achievement_data] = 1; result[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); // record date of first achievement } } if (Player_Achievement == Achievements.Kills_2) { result.ItemArray[(int)PlayerAchievementsTbl.achievement_data] = (Achievement_Data + achievementCount).ToString(); if (Achievement_Data >= (int)Achievement_Counters.Kill_2) { result[(int)PlayerAchievementsTbl.achievement_data] = 1; result[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); // record date of first achievement } } if (Player_Achievement == Achievements.Kills_3) { result.ItemArray[(int)PlayerAchievementsTbl.achievement_data] = (Achievement_Data + achievementCount).ToString(); if (Achievement_Data >= (int)Achievement_Counters.Kill_3) { result[(int)PlayerAchievementsTbl.achievement_data] = 1; result[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); // record date of first achievement } } // All other achievements are true or false data types, save as 1, to change from default of 0 if (result.ItemArray[(int)PlayerAchievementsTbl.achievement_date].ToString() == string.Empty) { result[(int)PlayerAchievementsTbl.achievement_data] = 1; result[(int)PlayerAchievementsTbl.achievement_date] = DateTime.Now.ToString(); // record date of first achievement } result.EndEdit(); result.AcceptChanges(); xmlUtils.UpdateXMLfile(ds); return(true); }
public bool SaveLevel() { DataTable dt = ds.Tables[(int)XMLTbls.player_history]; int count = dt.AsEnumerable() .Where(i => i.Field <string>("player_ID") == StartScreen.PlayerID.ToString()) .Count(); if (count > 0) { //player_history DataRow result = (from row in ds.Tables[(int)XMLTbls.player_history].AsEnumerable() where row.Field <string>("player_ID") == Player_ID.ToString() && //player1 row.Field <string>("level_ID") == Level_ID.ToString() //level1 select row).SingleOrDefault(); result.BeginEdit(); int.TryParse(result.ItemArray[(int)PlayerHistoryTbl.points].ToString(), out int level_score); if (Level_Score > level_score) { result[(int)PlayerHistoryTbl.points] = Level_Score.ToString(); // final score of the level } int.TryParse(result.ItemArray[(int)PlayerHistoryTbl.level_time].ToString(), out int level_time); if (Level_Time < level_time || level_time == 0) { result[(int)PlayerHistoryTbl.level_time] = Level_Time; // how long it took to complete the level in seconds } int.TryParse(result.ItemArray[(int)PlayerHistoryTbl.special_count].ToString(), out int special_count); if (Special_Count > special_count) { result[(int)PlayerHistoryTbl.special_count] = Special_Count; // how many special items were found in the level-default is one if the player finished the level } int.TryParse(result.ItemArray[(int)PlayerHistoryTbl.monster_count].ToString(), out int monster_count); if (Monster_Count > monster_count) { result[(int)PlayerHistoryTbl.monster_count] = Monster_Count; // how many bad guys were defeated } result[(int)PlayerHistoryTbl.last_played] = DateTime.Now.ToString(); //last played if (result.ItemArray[(int)PlayerHistoryTbl.completed].ToString() == string.Empty) { result[(int)PlayerHistoryTbl.completed] = DateTime.Now.ToString(); //completed the first time } int.TryParse(result.ItemArray[(int)PlayerHistoryTbl.level_attempts].ToString(), out int level_attempts); if (Level_Attempts < level_attempts || level_attempts == 0) { result[(int)PlayerHistoryTbl.level_attempts] = Level_Attempts.ToString(); // how many times the level has been played } result.EndEdit(); result.AcceptChanges(); xmlUtils.UpdateXMLfile(ds); } dt = ds.Tables[(int)XMLTbls.player]; count = dt.AsEnumerable() .Where(i => i.Field <string>("player_ID") == StartScreen.PlayerID.ToString()) .Count(); if (count > 0) { //player character update DataRow result = (from row in ds.Tables[(int)XMLTbls.player].AsEnumerable() where row.Field <string>("player_ID") == Player_ID.ToString() //player1 select row).SingleOrDefault(); result.BeginEdit(); int.TryParse(result.ItemArray[(int)PlayerTbl.char_points].ToString(), out int char_points); int.TryParse(result.ItemArray[(int)PlayerTbl.char_level].ToString(), out int char_level); decimal points = char_points + Char_Points; int lvl = 0; if (points >= LevelUp) { points = points / LevelUp; lvl = (int)Math.Round(points); } result[(int)PlayerTbl.char_level] = char_level + lvl; Char_Level = char_level + lvl; result[(int)PlayerTbl.char_points] = char_points - (lvl * LevelUp); result.EndEdit(); result.AcceptChanges(); xmlUtils.UpdateXMLfile(ds); } return(true); }
public void rpc_receivePlayer(int player, PhotonMessageInfo info) { //player saves his own playerID playerID = (Player_ID)player; }
//Set tracked target to active marker public void setTrackedTarget(int trackedEnemy) { trackedTarget = (Player_ID)trackedEnemy; }