public override async Task RunImpl() { L2Player player = _client.CurrentPlayer; player.SetCharLastAccess(); CharacterService.UpdatePlayer(player); player.TotalRestore(); player.SendPacketAsync(new SystemMessage(SystemMessageId.WelcomeToLineage)); _announcementManager.OnEnter(player); foreach (L2Item item in player.Inventory.Items.Where(item => item.IsEquipped != 0)) { item.NotifyStats(player); } // player.sendItemList(false); player.SendPacketAsync(new FriendList()); player.SendQuestList(); player.UpdateReuse(); player.SendPacketAsync(new ExStorageMaxCount(player)); // player.sendPacket(new ExBasicActionList()); // NpcTable.getInstance().spawnNpc("grandmaster_ramos", player.X, player.Y, player.Z, player.Heading); player.SendActionFailedAsync(); GameTime.UpdateTimeForPlayer(player); player.Timer(); player.SpawnMeAsync(); //L2WorldRegion worldRegion = L2World.GetRegion(player.X, player.Y); //player.SetRegion(worldRegion); //player.getKnowns(500, 500, false); player.SetupKnowsAsync(); player.SendPacketAsync(new UserInfo(player)); foreach (Plugin plugin in PluginManager.Instance.Plugins) { plugin.OnLogin(player); } //player.sendPacket(new ShortCutInit(player)); player.StartAi(); player.CharStatus.StartHpMpRegeneration(); player.ShowHtm("servnews.htm", player); player.BroadcastUserInfoAsync(); L2World.AddPlayer(player); }