public void SelectCharacter(int index) { var c = CurrentCharacter = Characters[index]; ZoneController.Instance.TargetZone = (ZoneNumber)c.Zone; Connection.SendEnterWorld(new EnterWorld(c.Name, false, false)); }
/* * public void SelectCharForPlayer(string characterName, CommandPanel playerCP) * { * * if (roster.ContainsKey(characterName)) * { * CharacterSelectEntry desiredCharacter = roster[characterName]; * * // if the character is * if (desiredCharacter.isPicked == false) * { * // deselect any character they may already have selected * if (playerCP.Character != null) * { * roster[playerCP.].isPicked = false; * } * // select the newly desired character * desiredCharacter.isPicked = true; * playerCP.Character = desiredCharacter; * * // if the player clicks the character they already have, deselect it * } else if (desiredCharacter.isPicked == true && playerCP.Character.Equals(desiredCharacter)) * { * desiredCharacter.isPicked = false; * playerCP.Character = null; * } * * } * * } */ public void SelectCharForPlayer(string characterName, CommandPanel playerCP) { if (roster.ContainsKey(characterName)) { CharacterSelectEntry desiredCharacter = roster[characterName]; if (desiredCharacter.Owner != null && desiredCharacter.Owner.Equals(playerCP)) // If player selects the character they already had again, deselect it instead { DeselectPlayerCharacter(playerCP); } else if (desiredCharacter.Owner == null && playerCP.Character == null) // If player has no character and selected character has no owner, { desiredCharacter.Owner = playerCP; playerCP.Character = desiredCharacter.CharacterPrefab; } else if (desiredCharacter.Owner == null && playerCP.Character != null) // If the player selects a character with no owner and already has a character, deselect the old character { DeselectPlayerCharacter(playerCP); desiredCharacter.Owner = playerCP; playerCP.Character = desiredCharacter.CharacterPrefab; } } }
void OnCharacterList(object sender, List <CharacterSelectEntry> chars) { //var i = 0; Debug.Log("Character list"); foreach (var character in chars) { if (isInitialized) { return; } // Debug.Log(character.Name); if (character.Name == CharacterName) { isInitialized = true; Debug.Log("Found character " + CharacterName + ", class " + character.Class + ", ready to enter world."); characterSelected = character; } /* charGrid.RowDefinitions.Add(new StripDefinition(StripType.Fixed, 25)); * var namefield = new TextBlock * { * Text = character.Name, * Font = charNameHeader.Font, * TextSize = charNameHeader.TextSize, * TextColor = charNameHeader.TextColor * }; * namefield.SetGridColumn(0); * namefield.SetGridRow(i); * charGrid.Children.Add(namefield); * * var classfield = new TextBlock * { * Text = ((ClassTypes)character.Class).GetClassName(), * Font = charNameHeader.Font, * TextSize = charNameHeader.TextSize, * TextColor = charNameHeader.TextColor * }; * classfield.SetGridColumn(1); * classfield.SetGridRow(i); * charGrid.Children.Add(classfield); * * var levelfield = new TextBlock * { * Text = character.Level.ToString(), * Font = charNameHeader.Font, * TextSize = charNameHeader.TextSize, * TextColor = charNameHeader.TextColor * }; * levelfield.SetGridColumn(2); * levelfield.SetGridRow(i); * charGrid.Children.Add(levelfield); * * var serverButton = new Button { MouseOverImage = buttonCreateCharacter.MouseOverImage, NotPressedImage = buttonCreateCharacter.NotPressedImage, PressedImage = buttonCreateCharacter.PressedImage }; * var buttonLabel = new TextBlock { Text = "Play", Font = charNameHeader.Font, TextSize = 8, TextColor = charNameHeader.TextColor, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; * serverButton.Content = buttonLabel; * serverButton.SetGridColumn(3); * serverButton.SetGridRow(i++); * charGrid.Children.Add(serverButton); * serverButton.Click += (s, e) => { * ((Button)s).IsEnabled = false; * world.ResetAckForZone(); * world.SendEnterWorld(new EnterWorld * { * Name = character.Name, * GoHome = false, * Tutorial = false * }); * }; */ } }