public async void LoadFriends(string username)
        {
            IsLoading = true;
            var           friendManager = new FriendManager();
            FriendsEntity friendEntity  =
                await
                friendManager.GetFriendsList(username, Offset, BlockedPlayer, RecentlyPlayed, PersonalDetailSharing,
                                             FriendStatus, Requesting, Requested, OnlineFilter, UserAccountEntity);

            if (friendEntity == null)
            {
                return;
            }
            if (friendEntity.FriendList == null)
            {
                HasMoreItems = false;
                return;
            }
            foreach (FriendsEntity.Friend friend in friendEntity.FriendList)
            {
                Add(friend);
            }
            if (friendEntity.FriendList.Any())
            {
                HasMoreItems = true;
                Offset       = Offset += 32;
            }
            else
            {
                HasMoreItems = false;
            }
            IsLoading = false;
        }
Пример #2
0
        public Character(CharacterType type, TCharacter cha) :
            base(type, cha.TID, cha.Level, new Core.Vector3Int(cha.MapPosX, cha.MapPosY, cha.MapPosZ), new Core.Vector3Int(100, 0, 0))
        {
            this.AI         = new AIAgent(this);
            this.Data       = cha;
            this.Id         = cha.ID;
            this.Info.Id    = cha.ID;
            this.Info.Exp   = cha.Exp;
            this.Info.Class = (CharacterClass)cha.Class;
            this.Info.mapId = cha.MapID;
            this.Info.Gold  = cha.Gold;
            this.Info.Ride  = 0;
            this.Info.Name  = cha.Name;

            this.ItemManager = new ItemManager(this);
            this.ItemManager.GetItemInfos(this.Info.Items);
            this.Info.Bag          = new NBagInfo();
            this.Info.Bag.Unlocked = this.Data.Bag.Unlocked;
            this.Info.Bag.Items    = this.Data.Bag.Items;
            this.Info.Equips       = this.Data.Equips;
            this.QuestManager      = new QuestManager(this);
            this.QuestManager.GetQuestInfos(this.Info.Quests);
            this.StatusManager = new StatusManager(this);
            this.FriendManager = new FriendManager(this);
            this.FriendManager.GetFriendInfos(this.Info.Friends);
            this.PetManager = new PetManager(this);

            this.Guild = GuildManager.Instance.GetGuild(this.Data.GuildId);

            this.Chat                = new Chat(this);
            this.Info.attrDynamic    = new NAttributeDynamic();
            this.Info.attrDynamic.Hp = cha.HP;
            this.Info.attrDynamic.Mp = cha.MP;
        }
Пример #3
0
    public void DeclineFriend()
    {
        LeftButton.interactable  = false;
        RightButton.interactable = false;

        FriendManager.ResponeFriend(friendInfo.processID, false);
    }
Пример #4
0
    void Awake()
    {
        instance = this;

        Load();
        UpdateFriend();
    }
Пример #5
0
        public bool HandleRequest(Client client, HttpListenerContext context, params string[] args)
        {
            if (!UserManager.Connected(client))
            {
                context.Send("not connected");
                return(true);
            }

            User user = UserManager.GetUser(UserManager.GetUserID(client));

            if (user == null)
            {
                context.Send("user not found");
                return(true);
            }

            if (context.Request.HttpMethod == "GET")
            {
                if (args.Length == 0)
                {
                    User[] requests = FriendManager.GetFriends(user);

                    string output = JsonConvert.SerializeObject(requests.ToResponse());

                    context.Send(output);

                    return(true);
                }

                int userId = 0;

                if (int.TryParse(args[0], out userId))
                {
                    User friend = UserManager.GetUser(userId);

                    if (friend == null)
                    {
                        return(true);
                    }

                    if (args.Length == 1)
                    {
                        context.Send(JsonConvert.SerializeObject(new User[] { friend }.ToResponse()));
                    }
                    else
                    {
                        switch (args[1])
                        {
                        case "remove":
                            FriendManager.RemoveFriend(user, friend);
                            break;
                        }

                        context.Redirect(context.Request.UrlReferrer.AbsoluteUri);
                    }
                }
            }

            return(true);
        }
Пример #6
0
        private static void Main(string[] args)
        {
            try
            {
                FriendManager friendManager = CreatePlugin <FriendManager>();
                friendManager.OnPluginLoaded("", "", "");
                friendManager.OnPluginEnable();
                friendManager.OnPluginDisable();


                RemoteManager remoteManager = CreatePlugin <RemoteManager>();
                remoteManager.OnPluginLoaded("", "", "");
                remoteManager.OnPluginEnable();
                remoteManager.OnPluginDisable();


                ServerLogger serverLogger = CreatePlugin <ServerLogger>();
                serverLogger.OnPluginLoaded("", "", "");
                serverLogger.OnPluginEnable();
                serverLogger.OnPluginDisable();
            }
            catch (Exception ex)
            {
                Trace.TraceError(ex.ToString());
            }
            Console.ReadLine();
        }
Пример #7
0
        public Character(CharacterType type, TCharacter cha) :
            base(new Core.Vector3Int(cha.MapPosX, cha.MapPosY, cha.MapPosZ), new Core.Vector3Int(100, 0, 0))
        {
            //data为数据库表角色
            this.Data          = cha;
            this.Id            = cha.ID;
            this.Info          = new NCharacterInfo();
            this.Info.Type     = type;
            this.Info.Id       = cha.ID;
            this.Info.EntityId = this.entityId;
            this.Info.Name     = cha.Name;
            this.Info.Level    = 10;//cha.Level;
            this.Info.ConfigId = cha.TID;
            this.Info.Gold     = cha.Gold;
            this.Info.Ride     = 0;
            this.Info.Class    = (CharacterClass)cha.Class;
            this.Info.mapId    = cha.MapID;
            this.Info.Entity   = this.EntityData;
            this.Define        = DataManager.Instance.Characters[this.Info.ConfigId];

            this.ItemManager = new ItemManager(this);
            this.ItemManager.GetItemInfos(this.Info.Items);
            this.Info.Bag          = new NBagInfo();
            this.Info.Bag.Unlocked = this.Data.Bag.Unlocked;
            this.Info.Bag.Items    = this.Data.Bag.Items;
            this.Info.Equips       = this.Data.Equips;
            this.QuestManager      = new QuestManager(this);
            this.QuestManager.GetQuestInfos(this.Info.Quests);
            this.StatusManager = new StatusManager(this);
            this.FriendManager = new FriendManager(this);
            this.FriendManager.GetFriendInfos(this.Info.Friends);

            this.Guild = GuildManager.Instance.GetGuild(this.Data.GuildId);
        }
Пример #8
0
 public Character(CharacterType type, TCharacter cha) :
     base(new Core.Vector3Int(cha.MapPosX, cha.MapPosY, cha.MapPosZ), new Core.Vector3Int(cha.MapDirection, 0, 0))
 {
     this.Data          = cha;
     this.Info          = new NCharacterInfo();
     this.Id            = cha.ID;
     this.Info.Type     = type;
     this.Info.Id       = cha.ID;
     this.Info.EntityId = this.entityId;
     this.Info.ConfigId = cha.TID;
     this.Info.Name     = cha.Name;
     this.Info.Level    = cha.Level;
     this.Info.Class    = cha.Class;
     this.Info.mapId    = cha.MapID;
     this.Info.Entity   = this.EntityData;
     this.Info.Gold     = this.Gold;
     this.Info.Equiped  = cha.Equiped;
     this.Define        = DataManager.Instance.Characters[cha.TID];
     this.itemManager   = new ItemManager(this);
     this.itemManager.GetItemInfo(Info.Items);
     this.statusManager     = new StatusManager(this);
     this.goodsLimitManager = new GoodsLimitManager(this);
     this.goodsLimitManager.GetGoodsLimits(Info.goodsLimits);
     this.equipManager = new EquipManager(this);
     this.equipManager.GetEquipInfos(Info.Equips);
     this.questManager = new QuestManager(this);
     this.questManager.GetQuestInfos(Info.Quests);
     this.messageManager = new MessageManager(this);
     this.messageManager.GetMessageInfos(Info.Messages);
     this.friendManager = new FriendManager(this);
     this.friendManager.GetFriendsInfo(Info.Friends);
 }
Пример #9
0
        public void HandlePlayerUpdateStatusRequest(PlayerUpdateStatusRequest request)
        {
            Log.Print(LogType.Lobby, $"{this.UserName} is now {request.StatusString}");
            PlayerUpdateStatusResponse response = FriendManager.OnPlayerUpdateStatusRequest(this, request);

            Send(response);
        }
Пример #10
0
 public FriendMessageEventArgs(FriendManager friendManager,
                               IFriend friend, string message)
     : base(friend)
 {
     this.friendManager = friendManager;
     Message            = message;
 }
Пример #11
0
        protected internal override void run()
        {
            bool flag = base.getClient() != null;

            if (flag)
            {
                Account player  = base.getClient().getPlayer();
                Message message = new Message
                {
                    object_id      = MessageManager.getInstance().getMessages().Count + 1,
                    recipient_name = ClanManager.getInstance().get(player.getClanId()).getClanName(),
                    owner_id       = FriendManager.getInstance().getFriend2(this.number).getFriendId()
                };
                MessageManager.getInstance().AddMessage(message);
                player.sendPacket(new SM_1392());
                MessageManager.getInstance().createMessageInDb(ClanManager.getInstance().get(player.getClanId()).getClanName(), FriendManager.getInstance().getFriend2(this.number).getFriendId(), message.getObjId(), " ");
                bool flag2 = AccountManager.getInstance().getAccountInPlayerId(FriendManager.getInstance().getFriend2(this.number).getFriendId()) != null;
                if (flag2)
                {
                    Account accountInPlayerId = AccountManager.getInstance().getAccountInPlayerId(FriendManager.getInstance().getFriend2(this.number).getFriendId());
                    CLogger.getInstance().info("[Friend] " + accountInPlayerId.getPlayerName());
                    accountInPlayerId.sendPacket(new SM_427_2(message.getRecName(), message.getObjId()));
                }
            }
        }
Пример #12
0
        private async void SetFriendButtons()
        {
            FriendRequestButton.Visibility = App.SelectedUser.Relation.Contains("friend")
                ? Visibility.Collapsed
                : Visibility.Visible;

            if (App.SelectedUser.Relation.Equals("friend of friends") ||
                App.SelectedUser.Relation.Equals("no relationship"))
            {
                FriendRequestButton.Visibility = Visibility.Visible;
            }

            if (App.SelectedUser.Relation.Equals("requested friend"))
            {
                FriendAcceptButton.Visibility = Visibility.Visible;
                var friendManager = new FriendManager();
                App.SelectedFriendRequestMessage =
                    await friendManager.GetRequestMessage(App.SelectedUser.OnlineId, App.UserAccountEntity);
            }
            else
            {
                FriendAcceptButton.Visibility = Visibility.Collapsed;
            }

            CancelFriendRequestButton.Visibility = App.SelectedUser.Relation.Equals("requesting friend")
                ? Visibility.Visible
                : Visibility.Collapsed;

            if (App.SelectedUser.personalDetail == null ||
                string.IsNullOrEmpty(App.SelectedUser.personalDetail.FirstName))
            {
                return;
            }
            FriendRequestButton.Visibility = Visibility.Collapsed;
        }
Пример #13
0
    public void ClickRefresh()
    {
        RefreshButton.interactable = false;
        SearchToggle.interactable  = false;
        FriendManager.UpdateState();

        InitFriendList();
    }
Пример #14
0
 public Person(string person_live_id, string person_name, string token, Bank bankInstance, FriendManager friendManager)
 {
     this.person_live_id = person_live_id;
     this.person_name = person_name;
     this.token = token;
     this.bankInstance = bankInstance;
     this.friendManagerInstance = friendManagerInstance;
 }
Пример #15
0
    public override void OnLogIn(UserInfo info)
    {
        DemoControlManager.Instance.currentState = DemoState.menu;
        FriendManager.UpdateState();

        MainTab.SetActive(true);
        Destroy(LoginTab);
    }
Пример #16
0
 public static Person makePerson(string userId, string person_name, string token)
 {
     // Set Instance
     bankInstance = new TestBank();
     friendManagerInstance = new TestFriendManager();
     Person person = new Person(userId, person_name, token, bankInstance, friendManagerInstance);
     return person;
 }
Пример #17
0
 public UnitOfWork(ApplicationDbContext ctx)
 {
     _ctx                = ctx;
     FriendManager       = new FriendManager(_ctx);
     MediaManager        = new MediaManager(_ctx);
     PostManager         = new PostManager(_ctx);
     PostReactionManager = new PostReactionManager(_ctx);
 }
        public ActionResult KısaYollar()
        {
            VotedressUser kullanici = Session["login"] as VotedressUser;

            KısaYollarViewModel   view_model             = new KısaYollarViewModel();
            PrivateMessageManager privatemessage_manager = new PrivateMessageManager();

            view_model.GorulmemisMesajlar = privatemessage_manager.GorulmemisMesajlariGetir(kullanici.id).Select(x => new PrivateMessage_sade()
            {
                userId           = x.User.id,
                adSoyad          = x.User.UserDetail.Name + " " + x.User.UserDetail.SurName,
                GonderilmeTarihi = x.GöndermeTarihi.ToString(),
                Message          = x.Message,
                ProfilImage      = x.User.ProfileImage,
                Sahip            = (x.User.id == kullanici.id) ? true : false
            }).ToList();


            BahsedilenManager      bahsedilenManager = new BahsedilenManager();
            List <Bahsedilen_sade> bahsedenler       = bahsedilenManager.BahsedenleriGetir(kullanici.id);

            view_model.Bahsedenler = bahsedenler;


            FriendManager friendManager       = new FriendManager();
            List <Friend> arkadaslikIstekleri = friendManager.ArkadaslikIsteklerimiGetir(kullanici.id);

            view_model.ArkadaslikIsteklerim = arkadaslikIstekleri.Select(x => new Friend_sade()
            {
                UserId           = x.User.id,
                UserNameSurname  = x.User.UserDetail.Name + " " + x.User.UserDetail.SurName,
                UserProfileImage = x.User.ProfileImage,
                Tarih            = x.ArkadaslikTarihi,
            }).ToList();

            CartManager cartManager = new CartManager();

            Cart carts = cartManager.SepetimiGetir(kullanici.id);

            if (carts != null)
            {
                List <Cart_sade> cart_Sades = carts.CartDetail.Select(x => new Cart_sade()
                {
                    id             = x.id,
                    Count          = x.ProductCount,
                    ProductId      = x.Product.id,
                    ProductName    = x.Product.ProductName,
                    ProductImage   = x.Product.ProductImage,
                    ProductPrice   = x.Product.Price,
                    ProductColorId = x.ProductColorId,
                    Size           = x.Size
                }).ToList();
                view_model.Cart_Sades = cart_Sades;
            }


            return(View(view_model));
        }
Пример #19
0
        public override void SendInvitation(IRpcController controller, bnet.protocol.invitation.SendInvitationRequest request, Action <bnet.protocol.NoData> done)
        {
            //TODO: Add battletag invitation -Egris

            // somehow protobuf lib doesnt handle this extension, so we're using a workaround to get that channelinfo.
            var extensionBytes = request.Params.UnknownFields.FieldDictionary[103].LengthDelimitedList[0].ToByteArray();
            var friendRequest  = bnet.protocol.friends.FriendInvitationParams.ParseFrom(extensionBytes);

            if (friendRequest.TargetEmail.ToLower() == this.Client.Account.Email.ToLower())
            {
                return;                                                                             // don't allow him to invite himself - and we should actually return an error!
            }
            // also he shouldn't be allowed to invite his current friends - put that check too!. /raist
            if (friendRequest.TargetBattleTag == this.Client.Account.BattleTag)
            {
                return;
            }

            Account invitee = null;

            if (friendRequest.HasTargetEmail)
            {
                invitee = AccountManager.GetAccountByEmail(friendRequest.TargetEmail);
            }
            else
            {
                invitee = AccountManager.GetAccountByBattletag(friendRequest.TargetBattleTag);
            }

            if (invitee == null)
            {
                return;                  // we need send an error response here /raist.
            }
            //Header.Status(4) = account does not exist

            Logger.Trace("{0} sent {1} friend invitation.", this.Client.Account, invitee);

            var invitation = bnet.protocol.invitation.Invitation.CreateBuilder()
                             .SetId(FriendManager.InvitationIdCounter++) // we may actually need to store invitation ids in database with the actual invitation there. /raist.
                             .SetInviterIdentity(this.Client.GetIdentity(true, false, false))
                             .SetInviterName(this.Client.Account.Email)  // we shoulde be instead using account owner's name here.
                             .SetInviteeIdentity(bnet.protocol.Identity.CreateBuilder().SetAccountId(invitee.BnetEntityId))
                             .SetInviteeName(invitee.Email)              // again we should be instead using invitee's name.
                             .SetInvitationMessage(request.Params.InvitationMessage)
                             .SetCreationTime(DateTime.Now.ToUnixTime())
                             .SetExpirationTime(86400);

            // Response is bnet.protocol.NoData as of 7728. /raist.
            //var response = bnet.protocol.invitation.SendInvitationResponse.CreateBuilder()
            //    .SetInvitation(invitation.Clone());

            var response = bnet.protocol.NoData.CreateBuilder();

            done(response.Build());

            // notify the invitee on invitation.
            FriendManager.HandleInvitation(this.Client, invitation.Build());
        }
Пример #20
0
    }                                 //下一次重置时间
    #endregion

    #region 必要函数
    public FriendManager(EntityMyself _myself)
    {
        myself = _myself;
        AddListeners();
        //进入游戏的时候申请好友信息,add by Win.J H
        ReqFriendList();
        FriendReqListReq();
        Instance = this;
    }
        public FriendCreatePage(SQLiteDataBase database, MainPage parent)
        {
            this._friendManager = new FriendManager(database);
            this.parent         = parent;
            InitializeComponent();


            FindLocation();
        }
Пример #22
0
        public override void DeclineInvitation(IRpcController controller, bnet.protocol.invitation.GenericRequest request, Action <bnet.protocol.NoData> done)
        {
            Logger.Trace("{0} declined friend invitation.", this.Client.Account);

            var response = bnet.protocol.NoData.CreateBuilder();

            done(response.Build());

            FriendManager.HandleDecline(this.Client, request);
        }
Пример #23
0
 public PSNService()
 {
     _authManager           = new AuthenticationManager();
     _recentActivityManager = new RecentActivityManager();
     _friendManager         = new FriendManager();
     _messageManager        = new MessageManager();
     _userManager           = new UserManager();
     _trophyManager         = new TrophyManager();
     _trophyDetailManager   = new TrophyDetailManager();
 }
Пример #24
0
 public void UpdateFriendTip()
 {
     if (this.CheckIsShowAddFriendTipPoint() || this.CheckIsShowChatTipPoint())
     {
         FriendManager.UpdateFriendTip(true);
     }
     else
     {
         FriendManager.UpdateFriendTip(false);
     }
 }
Пример #25
0
 private void Awake()
 {
     if (!instance)
     {
         instance = this;
     }
     else
     {
         Destroy(this.gameObject);
     }
 }
Пример #26
0
    public void StartToSearch()
    {
        if (string.IsNullOrWhiteSpace(SearchInputfield.text))
        {
            return;
        }

        SearchButton.interactable = false;
        InitSearchList();
        FriendManager.SearchFriendList(SearchInputfield.text);
    }
Пример #27
0
    private void Awake()
    {
        if (_friendmanager != null)
        {
            Destroy(this);
        }
        _friendmanager = this;
        GetPlayerTeam();

        playerActions = new PlayerAction[friends.Length];
    }
Пример #28
0
        public MainPage(SQLiteDataBase dataBase)
        {
            _friendManager = new FriendManager(dataBase);
            friends        = _friendManager.GetFriends();

            _database = dataBase;

            InitializeComponent();

            this.FriendList.ItemsSource = friends;
        }
Пример #29
0
        public void SignIn(AccountInfo accountInfo, string characterAccount, CharacterObject characterObject)
        {
            Account          = accountInfo;
            CharacterAccount = characterAccount;
            Character        = characterObject;

            State = SessionState.SignedIn;

            FriendManager.Initialise(this);
            CharacterUpdateManager.SignIn(characterObject);
        }
Пример #30
0
        protected internal override void write()
        {
            Account account = AccountManager.getInstance().get(this._lc.getLogin());
            bool    flag    = FriendManager.getInstance().getFriends(account.getPlayerId()).Count != 0;

            if (flag)
            {
                foreach (Friends current in FriendManager.getInstance().getFriends(account.getPlayerId()))
                {
                    account.friends.Add(current);
                }
            }
            base.writeH(274);
            base.writeC((byte)account.friends.Count);
            bool flag2 = FriendManager.getInstance().getFriends(account.getPlayerId()).Count == 0;

            if (flag2)
            {
                base.writeC(33);
                base.writeS("", 33);
                base.writeQ(0L);
                base.writeD(0);
                base.writeC(0);
                base.writeC(0);
            }
            else
            {
                foreach (Friends current2 in account.friends)
                {
                    base.writeC(33);
                    base.writeS(Convert.ToString((AccountManager.getInstance().getAccountInPlayerId(current2.getFriendId()) == null || account == null) ? "" : AccountManager.getInstance().getAccountInPlayerId(current2.getFriendId()).getPlayerName()), Convert.ToInt32((AccountManager.getInstance().getAccountInPlayerId(current2.getFriendId()) == null || account == null) ? 33 : 33));
                    base.writeC(Convert.ToByte(current2.FriendNumered));
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(Convert.ToByte((AccountManager.getInstance().getAccountInPlayerId(current2.getFriendId()) == null || account == null) ? 0 : AccountManager.getInstance().getAccountInPlayerId(current2.getFriendId()).getRank()));
                    base.writeC(3);
                    base.writeC(3);
                    base.writeC(3);
                }
            }
            base.writeH(1);
            base.writeC(10);
            base.writeC(33);
            base.writeS(account.getPlayerName(), 33);
        }
Пример #31
0
        public override void RemoveFriend(IRpcController controller, bnet.protocol.friends.GenericFriendRequest request, Action <bnet.protocol.friends.GenericFriendResponse> done)
        {
            Logger.Trace("{0} removed friend with id {1}.", this.Client.Account, request.TargetId);

            var response = bnet.protocol.friends.GenericFriendResponse.CreateBuilder()
                           .SetTargetFriend(bnet.protocol.friends.Friend.CreateBuilder().SetId(request.TargetId).Build());

            done(response.Build());

            FriendManager.HandleRemove(this.Client, request);
        }
Пример #32
0
        public FriendsList()
        {
            this.InitializeComponent();

            var friendManager = FriendManager.GetInstance();

            OnlineFriendsListUI.ItemsSource  = friendManager.OnlineFriendList;
            OfflineFriendsListUI.ItemsSource = friendManager.OfflineFriendList;
            FriendsSearchUI.ItemsSource      = friendManager.FriendSearchResultsList;

            SearchBar.KeyUp += SearchBar_KeyUp;
        }
Пример #33
0
        /// <summary>
        /// </summary>
        /// <param name="user">The user.</param>
        public QQClient(QQUser user)
        {
            PacketManager = new PacketManager(this);
            ConnectionManager = new ConnectionManager(this);
            LoginManager = new LoginManager(this);
            MessageManager = new MessageManager(this);
            FriendManager = new FriendManager(this);
            PrivateManager = new PrivateManager(this);
            ClusterManager = new ClusterManager(this);

            // this.inConn = new Dictionary<InPacket, string>();
            this.QQUser = user;
            this.Proxy = new Proxy();
            this.LogManager = new QQLog(this);
            #if DEBUG
            this.LogManager.Log("uin:" + this.QQUser.QQ.ToString() + "-->" + this.QQUser.QQ.ToString("X8") + "\r\nPassword md5_1: " + Utils.Util.ToHex(this.QQUser.Password) + "\r\nPassword md5_2 (key): " + Utils.Util.ToHex(this.QQUser.QQKey.PasswordKey));
            #endif
            this.ServerInfo = new ServerInfo();
        }
Пример #34
0
    int RefreshNextTime { get; set; } //下一次重置时间
    #endregion

    #region 必要函数
    public FriendManager(EntityMyself _myself)
    {
        myself = _myself;
        AddListeners();
        //进入游戏的时候申请好友信息,add by Win.J H
        ReqFriendList();
        FriendReqListReq();
        Instance = this;
    }
Пример #35
0
        // 对象进入场景,在这里初始化各种数据, 资源, 模型等
        // 传入数据。
        override public void OnEnterWorld()
        {
            base.OnEnterWorld();
            LoggerHelper.Info("Avatar name: " + name);
            // 在调用该函数前, 数据已经通过EntityAttach 和 EntityCellAttach 同步完毕
            CreateModel();
            inventoryManager = new InventoryManager(this);
            bodyenhanceManager = new BodyEnhanceManager(this);
            skillManager = new PlayerSkillManager(this);
            battleManger = new PlayerBattleManager(this, skillManager as PlayerSkillManager);

            doorOfBurySystem = new DoorOfBurySystem();
            runeManager = new RuneManager(this);
            towerManager = new TowerManager(this);
            missionManager = new MissionManager(this);
            taskManager = new TaskManager(this, (int)taskMain);
            marketManager = new MarketManager(this);
            friendManager = new FriendManager(this);
            operationSystem = new OperationSystem(this);
            sanctuaryManager = new SanctuaryManager(this);
            arenaManager = new ArenaManager(this);
            dailyEventSystem = new DailyEventSystem(this);
            rankManager = new RankManager(this);
            campaignSystem = new CampaignSystem(this);
            wingManager = new WingManager(this);
            rewardManager = new RewardManager(this);
            occupyTowerSystem = new OccupyTowerSystem(this);

            TipManager.Init();
            DragonMatchManager.Init();
            fumoManager = new FumoManager(this);

            MailManager.Instance.IsMailInfoDirty = true;
            TongManager.Instance.Init();
            GuideSystem.Instance.AddListeners();
            StoryManager.Instance.AddListeners();
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnNormalAttack, NormalAttack);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnPowerChargeStart, PowerChargeStart);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnPowerChargeInterrupt, PowerChargeInterrupt);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnPowerChargeComplete, PowerChargeComplete);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnSpellOneAttack, SpellOneAttack);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnSpellTwoAttack, SpellTwoAttack);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnSpellThreeAttack, SpellThreeAttack);
            EventDispatcher.AddEventListener(Events.UIBattleEvent.OnSpellXPAttack, SpecialAttack);
            EventDispatcher.AddEventListener<int>(Events.UIBattleEvent.OnSpriteSkill, OnSpriteSkill);

            EventDispatcher.AddEventListener<uint>(Events.GearEvent.Teleport, Teleport);
            EventDispatcher.AddEventListener<uint, int, int, int>(Events.GearEvent.Damage, SetDamage);

            EventDispatcher.AddEventListener<int, bool>(Events.InstanceEvent.InstanceLoaded, InstanceLoaded);
            EventDispatcher.AddEventListener<ushort>(Events.OtherEvent.MapIdChanged, OnMapChanged);
            EventDispatcher.AddEventListener<ulong>(Events.OtherEvent.Withdraw, Withdraw);
            EventDispatcher.AddEventListener(Events.OtherEvent.DiamondMine, DiamondMine);
            EventDispatcher.AddEventListener(Events.OtherEvent.CheckCharge, CheckCharge);
            EventDispatcher.AddEventListener(Events.OtherEvent.Charge, Charge);

            EventDispatcher.AddEventListener(ON_TASK_GUIDE, TaskGuide);
            EventDispatcher.AddEventListener(ON_END_TASK_GUIDE, EndTaskGuide);
            EventDispatcher.AddEventListener<int, int>(ON_TASK_MISSION, MissionOpen);

            EventDispatcher.AddEventListener(Events.AIEvent.DummyThink, DummyThink);
            EventDispatcher.AddEventListener(Events.StoryEvent.CGBegin, ProcCGBegin);
            EventDispatcher.AddEventListener(Events.StoryEvent.CGEnd, ProcCGEnd);
            EventDispatcher.AddEventListener<string>(Events.GearEvent.TrapBegin, ProcTrapBegin);
            EventDispatcher.AddEventListener<string>(Events.GearEvent.TrapEnd, ProcTrapEnd);
            EventDispatcher.AddEventListener(Events.GearEvent.LiftEnter, ProcLiftEnter);
            EventDispatcher.AddEventListener<int>(Events.GearEvent.PathPointTrigger, PathPointTrigger);
            EventDispatcher.AddEventListener(Events.DirecterEvent.DirActive, DirActive);

            EventDispatcher.AddEventListener<int>(Events.EnergyEvent.BuyEnergy, BuyEnergy);
            EventDispatcher.AddEventListener(ON_VIP_REAL_STATE, OnVIPRealState);

            EventDispatcher.AddEventListener<int>(Events.DiamondToGoldEvent.GoldMetallurgy, GoldMetallurgy);

            EventDispatcher.AddEventListener(MainUIDict.MainUIEvent.AFFECTUP, OnBattleBtnPressed);
            EventDispatcher.AddEventListener(MainUIDict.MainUIEvent.OUTPUTUP, OnBattleBtnPressed);
            EventDispatcher.AddEventListener(MainUIDict.MainUIEvent.MOVEUP, OnBattleBtnPressed);
            EventDispatcher.AddEventListener(MainUIDict.MainUIEvent.NORMALATTACK, OnBattleBtnPressed);
            EventDispatcher.AddEventListener(MainUIDict.MainUIEvent.PLAYERINFOBGUP, OnBattleBtnPressed);
            EventDispatcher.AddEventListener("MainUIControllStickPressed", OnBattleBtnPressed);

            EventDispatcher.AddEventListener<Vector3>(Events.GearEvent.CrockBroken, CrockBroken);
            EventDispatcher.AddEventListener<bool, bool, Vector3>(Events.GearEvent.ChestBroken, ChestBroken);

            EventDispatcher.AddEventListener<GameObject, Vector3, float>(MogoMotor.ON_MOVE_TO_FALSE, OnMoveToFalse);
            EventDispatcher.AddEventListener(Events.OtherEvent.BossDie, BossDie);

            EventDispatcher.AddEventListener<int, bool>(Events.InstanceEvent.InstanceLoaded, SetCampControl);

            timerID = TimerHeap.AddTimer<bool>(1000, 100, SyncPos, true);
            checkDmgID = TimerHeap.AddTimer(0, 1000, CheckDmgBase);
            syncHpTimerID = TimerHeap.AddTimer(10000, 5000, SyncHp);
            skillFailoverTimer = TimerHeap.AddTimer(1000, 3000, SkillFailover);
            TimerHeap.AddTimer(5000, 0, GetServerTickReq);
            //rateTimer = TimerHeap.AddTimer(1000, 3000, CheckRate);
            CheckCharge();
            GetWingBag();
            MogoTime.Instance.InitTimeFromServer();

            MogoUIManager.Instance.LoadUIResources();
            TimerHeap.AddTimer(500, 0, EventDispatcher.TriggerEvent, Events.RuneEvent.GetBodyRunes);
            TimerHeap.AddTimer(500, 0, marketManager.GiftRecordReq);

            if (IsNewPlayer)
            {
                CurMissionID = 10100;
                CurMissionLevel = 1;

                missionManager.EnterMissionReq(CurMissionID, CurMissionLevel);
            }


            if (PlatformSdkManager.Instance)
                TimerHeap.AddTimer(1000, 60000, PlatformSdkManager.Instance.OnSetupNotification);
        }
Пример #36
0
	// Use this for initialization
	void Start () {
		friendManager = GameObject.Find ("FriendManager").GetComponent<FriendManager> ();
	}