示例#1
0
        private void OnCursorChanged(GUCMainMenu sender)
        {
            if (cursor >= 0 && cursor < _Characters.Length)
            {
                Character.Character character = _Characters[cursor];

                _CharacterNameText.Text = character.Name;
                _CharacterNameText.Show();
                _CharacterDisplay.SetVisual(character.Template.Model.BaseDef.Visual);

                //We have custom visuals from the server because it is a human character.
                if (character is HumanCharacter humanCharacter)
                {
                    HumanCharacterVisuals visuals = humanCharacter.CharacterVisuals;
                    _CharacterDisplay.SetAdditionalVisuals(visuals.BodyMesh.ToString(), (int)visuals.BodyTex, visuals.HeadMesh.ToString(), (int)visuals.HeadTex);
                    _CharacterDisplay.SetFatness(visuals.Fatness);
                    _CharacterDisplay.SetScale(new Types.Vec3f(visuals.BodyWidth, 1.0f, visuals.BodyWidth));
                }
                else
                {
                    //Its a non human character, take the visuals from the template.
                    _CharacterDisplay.SetAdditionalVisuals(character.Template.BodyMesh, character.Template.BodyTex, character.Template.HeadMesh, character.Template.HeadTex);
                    _CharacterDisplay.SetFatness(1);
                    _CharacterDisplay.SetScale(new Types.Vec3f(1.0f, 1.0f, 1.0f));
                }
            }
        }
示例#2
0
 private void ErrorScreenOnOnEscape(GUCMainMenu sender)
 {
     _ErrorScreen.Close();
     _LastCallBack?.Invoke();
     _LastCallBack = null;
 }