public void updateRemotePlayerSkin(ClientPlayerData player, ushort skin) { var old = player.Skin; player.Skin = skin; clientSkin playerSkin = getSkinForIndex(skin); // Get the player object and update the skin SkinManager.updateTextureInMaterialPropertyBlock(player.PlayerObject, playerSkin.Knight); if (old != skin) { UI.UIManager.InfoBox.AddMessage($"Player '{player.Username}' is now {getSkinNameForIndex(skin)}"); } }
public void Init() { CheckQuestTime = Network.Instance.ServerTime.AddMinutes(1f); if (GameMain.Instance == null) { return; } PlayerInfo = Network.PlayerInfo; m_energy_regen_time = GameConfig.Get <int>("energy_regen_time"); GameMenu game_menu = GameMain.Instance.CurrentGameMenu; switch (game_menu) { case GameMenu.MainMenu: m_BtnBack.SetActive(false); m_Toggle.value = true; m_Center.SetActive(true); m_Right.SetActive(true); break; case GameMenu.HeroesEval: m_Center.SetActive(false); m_Right.SetActive(false); break; default: m_BtnBack.SetActive(true); m_LabelBackMenu.text = Localization.Get("Menu_" + game_menu); m_Toggle.value = false; m_Center.SetActive(true); m_Right.SetActive(true); break; } UpdatePlayerInfo(); UpdateNotify(); }
public void OnServerKnightUpdate(ClientPlayerData player, int id, ushort skin, ushort emote) { skinManager.updateRemotePlayerSkin(player, skin); emoteManager.showRemotePlayerEmote(player, emote); }
void OnConnect(C2G.Connect packet, C2G.ConnectAck ack) { Debug.Log("OnConnect : "); DailyIndex = ack.daily_index; WeeklyIndex = ack.weekly_index; ServerTimeSpan = ack.server_time - DateTime.Now; GameConfig.Instance.Init(ack.config_values); EventHottimeManager.Instance.Init(ack.events); if (ack.info_files != null) { SHSavedData.Instance.SaveGameInfo(ack.info_files, ack.info_version); } SHSavedData.Instance.LoadData(); PlayerInfo = new ClientPlayerData(ack.player_info); GuildManager.Instance.SetGuildInfo(ack.guild); #if !FINAL_BUILD CheatCommandHandlers.Uninitialize(); if (PlayerInfo.can_cheat == true) { CheatCommandHandlers.Initialize(); } #endif QuestManager.Instance.Init(ack.player_info.quests); if (ack.detail_data != null) { SaveDataManger.Instance.InitFromData(ack.detail_data); } else { if (SaveDataManger.Instance.InitFromFile() == false) { C2G.Connect _Connect = new C2G.Connect(); _Connect.request_info = true; _Connect.request_data = true; game_server.JsonAsync <C2G.Connect, C2G.ConnectAck>(_Connect, OnConnect); return; } } switch (ack.player_info.unread_mail) { case pe_UnreadMailState.MainMenuOpen: SetUnreadMail(pe_UnreadMailState.MainMenuOpen); break; case pe_UnreadMailState.UnreadMail: SetUnreadMail(pe_UnreadMailState.UnreadMail); break; } if (string.IsNullOrEmpty(PlayerInfo.nickname) == true) { Popup.Instance.Show(ePopupMode.Nickname, false, new EventDelegate.Callback(OnNicknameSetCallback)); } else { ConnectState = eConnectState.connected; ChattingMain.Instance.Init(); } }
public void showRemotePlayerEmote(ClientPlayerData playerData, ushort Index) { showEmote(Index, playerData.PlayerObject); }