예제 #1
0
 static void CrearZona(SessionInstance Session, string[,] Parameters)
 {
     if (Session.User != null)
     {
         if (Session.User.PreLock__Proteccion_SQL == true)
         {
             return;
         }
         if (Session.User.Sala != null)
         {
             return;
         }
         IslaInstance Isla = IslasManager.ObtenerIsla(int.Parse(Parameters[0, 0]));
         if (Isla != null)
         {
             if (IslasManager.ControlDeSeguridad(Session.User, Isla))
             {
                 if (IslasManager.ZonasIsla(Isla).Count <= 4)
                 {
                     if (Session.ValidarEntrada(Parameters[1, 0], false))
                     {
                         int ZonaID = IslasManager.Crear_Zona(Isla, Session.User, Parameters[1, 0], int.Parse(Parameters[6, 0]),
                                                              Parameters[7, 0], Parameters[8, 0]);
                         if (ZonaID >= 1)
                         {
                             EscenarioInstance Escenario = EscenariosManager.ObtenerEscenario(0, ZonaID);
                             if (Escenario != null)
                             {
                                 Packet_189_121(Session, Escenario);
                                 Session.User.PreLock__Proteccion_SQL = true;
                             }
                         }
                     }
                 }
             }
         }
     }
 }
예제 #2
0
        private static void Packet_189_124(SessionInstance Session, int IslaID)
        {
            ServerMessage server = new ServerMessage();

            server.AddHead(189);
            server.AddHead(124);
            IslaInstance Isla = IslasManager.ObtenerIsla(IslaID);

            if (Isla != null)
            {
                IslasManager.Diccionario_AñadirIsla(Isla);
                List <EscenarioInstance> Escenarios = IslasManager.ZonasIsla(Isla);
                server.AppendParameter(Isla.id);
                server.AppendParameter(Isla.nombre);
                server.AppendParameter(Isla.descripcion);
                server.AppendParameter(Isla.modelo);
                server.AppendParameter(Isla.uppert);
                server.AppendParameter(Isla.Creador.id);
                server.AppendParameter(Isla.Creador.nombre);
                server.AppendParameter(Isla.Creador.avatar);
                server.AppendParameter(Isla.Creador.colores);
                server.AppendParameter(Isla.mamigos_1);
                server.AppendParameter(Isla.mamigos_2);
                server.AppendParameter(Isla.mamigos_3);
                server.AppendParameter(Isla.mamigos_4);
                server.AppendParameter(Isla.mamigos_5);
                server.AppendParameter(Isla.mamigos_6);
                server.AppendParameter(Isla.mamigos_7);
                server.AppendParameter(Isla.mamigos_8);
                server.AppendParameter(Isla.noverlo_1);
                server.AppendParameter(Isla.noverlo_2);
                server.AppendParameter(Isla.noverlo_3);
                server.AppendParameter(Isla.noverlo_4);
                server.AppendParameter(Isla.noverlo_5);
                server.AppendParameter(Isla.noverlo_6);
                server.AppendParameter(Isla.noverlo_7);
                server.AppendParameter(Isla.noverlo_8);
                server.AppendParameter(Escenarios.Count);
                foreach (EscenarioInstance Escenario in Escenarios)
                {
                    server.AppendParameter(0);
                    server.AppendParameter(Escenario.es_categoria);
                    server.AppendParameter(Escenario.id);
                    server.AppendParameter(Escenario.id);
                    server.AppendParameter(Escenario.nombre);
                    server.AppendParameter(Escenario.modelo);
                    server.AppendParameter(0);
                    server.AppendParameter(0);
                    server.AppendParameter(0);
                    server.AppendParameter(SalasManager.UsuariosEnSala(Escenario));//Visitantes
                    server.AppendParameter(0);
                    if (Isla.noverlo_1.Contains(Session.User.nombre) || Isla.noverlo_2.Contains(Session.User.nombre) || Isla.noverlo_3.Contains(Session.User.nombre) || Isla.noverlo_4.Contains(Session.User.nombre) || Isla.noverlo_5.Contains(Session.User.nombre) || Isla.noverlo_6.Contains(Session.User.nombre) || Isla.noverlo_7.Contains(Session.User.nombre) || Isla.noverlo_8.Contains(Session.User.nombre))
                    {
                        server.AppendParameter(1);//Usuario no puede acceder a la isla
                        server.AppendParameter(1);
                    }
                    else
                    {
                        if (Isla.mamigos_1.Contains(Session.User.nombre) || Isla.mamigos_2.Contains(Session.User.nombre) || Isla.mamigos_3.Contains(Session.User.nombre) || Isla.mamigos_4.Contains(Session.User.nombre) || Isla.mamigos_5.Contains(Session.User.nombre) || Isla.mamigos_6.Contains(Session.User.nombre) || Isla.mamigos_7.Contains(Session.User.nombre) || Isla.mamigos_8.Contains(Session.User.nombre))
                        {
                            server.AppendParameter(0);
                        }
                        else
                        {
                            server.AppendParameter((string.IsNullOrEmpty(Escenario.Clave) ? 0 : 1));
                        }
                    }
                }
            }
            else
            {
                server.AppendParameter(0);
            }
            Session.SendData(server);
        }