public void processEvent(EventObject eventObject)
        {
            List <MethodConfig> methodList = null;

            if (this.patchCfgDict.TryGetValue((EventTypes)eventObject.getEventType(), out methodList))
            {
                if (methodList != null && methodList.Count > 0)
                {
                    GameClient client = null;
                    if (eventObject.getEventType() == 14)
                    {
                        PlayerInitGameEventObject eventObj = (PlayerInitGameEventObject)eventObject;
                        client = eventObj.getPlayer();
                    }
                    else if (eventObject.getEventType() == 41)
                    {
                        PlayerLoginGameEventObject eventObj2 = (PlayerLoginGameEventObject)eventObject;
                        client = eventObj2.getPlayer();
                    }
                    else if (eventObject.getEventType() == 12)
                    {
                        PlayerLogoutEventObject eventObj3 = (PlayerLogoutEventObject)eventObject;
                        client = eventObj3.getPlayer();
                    }
                    else if (eventObject.getEventType() == 38)
                    {
                        PlayerOnlineEventObject eventObj4 = (PlayerOnlineEventObject)eventObject;
                        client = eventObj4.getPlayer();
                    }
                    foreach (MethodConfig item in methodList)
                    {
                        AssemblyLoader loader = this.GetAssemblyLoader(item.assemblyName);
                        if (null != loader)
                        {
                            object[] paramarray;
                            if (null != client)
                            {
                                int index = 1;
                                paramarray    = new object[item.methodParams.Length + index];
                                paramarray[0] = client;
                                for (int i = 0; i < item.methodParams.Length; i++)
                                {
                                    paramarray[i + index] = item.methodParams[i];
                                }
                            }
                            else
                            {
                                paramarray = new object[item.methodParams.Length];
                                for (int i = 0; i < item.methodParams.Length; i++)
                                {
                                    paramarray[i] = item.methodParams[i];
                                }
                            }
                            loader.Invoke(item.fullClassName, item.methodName, paramarray);
                        }
                    }
                }
            }
        }
 public void processEvent(EventObject eventObject)
 {
     if (eventObject.getEventType() == 12)
     {
         PlayerLogoutEventObject _eventObject = (PlayerLogoutEventObject)eventObject;
         JingJiChangManager.getInstance().onChallengeEndForPlayerLogout(_eventObject.getPlayer());
     }
 }
Exemple #3
0
 public void processEvent(EventObject eventObject)
 {
     if (eventObject.getEventType() == 1)
     {
         PlayerLogoutEventObject logoutEvent = (PlayerLogoutEventObject)eventObject;
         WanMoTaManager.getInstance().onPlayerLogout(logoutEvent.RoleInfo.RoleID);
     }
 }
Exemple #4
0
        public void processEvent(EventObject eventObject)
        {
            if (eventObject.getEventType() != (int)EventTypes.PlayerLogout)
            {
                return;
            }

            PlayerLogoutEventObject logoutEvent = (PlayerLogoutEventObject)eventObject;

            WanMoTaManager.getInstance().onPlayerLogout(logoutEvent.RoleInfo.RoleID);
        }
 public void processEvent(EventObject eventObject)
 {
     if (eventObject.getEventType() == (int)EventTypes.PlayerLeaveFuBen)
     {
         PlayerLeaveFuBenEventObject eventObj = (PlayerLeaveFuBenEventObject)eventObject;
         CopyTeamManager.getInstance().RoleLeaveFuBen(eventObj.getPlayer());
     }
     else if (eventObject.getEventType() == (int)EventTypes.PlayerInitGame)
     {
         //PlayerInitGameEventObject eventObj = (PlayerInitGameEventObject)eventObject;
         //CopyTeamManager.getInstance().OnPlayerInitGame(eventObj.getPlayer());
     }
     else if (eventObject.getEventType() == (int)EventTypes.PlayerLogout)
     {
         PlayerLogoutEventObject eventObj = (PlayerLogoutEventObject)eventObject;
         CopyTeamManager.getInstance().OnPlayerLogout(eventObj.getPlayer());
     }
 }
Exemple #6
0
        public void processEvent(EventObject eventObject)
        {
            int eventType = eventObject.getEventType();

            if (eventType == 12)
            {
                PlayerLogoutEventObject e = eventObject as PlayerLogoutEventObject;
                if (null != e)
                {
                    GameClient client = e.getPlayer();
                    this.HandlePlayerLogout(client);
                }
            }
            else if (eventType == 28)
            {
                OnStartPlayGameEventObject e2 = eventObject as OnStartPlayGameEventObject;
                if (null != e2)
                {
                    GameClient client = e2.Client;
                    this.HandleStartPlayGame(client);
                }
            }
        }