public ManejadorScript(Cuenta _cuenta)
        {
            cuenta           = _cuenta;
            manejador_script = new LuaManejadorScript();
            manejar_acciones = new ManejadorAcciones(cuenta);
            banderas         = new List <Bandera>();

            manejar_acciones.evento_accion_finalizada += get_Accion_Finalizada;
            cuenta.pelea.pelea_creada  += get_Pelea_Creada;
            cuenta.pelea.pelea_acabada += get_Pelea_Acabada;
        }
Beispiel #2
0
        public ManejadorScript(Cuenta _cuenta)
        {
            cuenta           = _cuenta;
            manejador_script = new LuaManejadorScript();
            manejar_acciones = new ManejadorAcciones(cuenta, manejador_script);
            banderas         = new List <Bandera>();
            api = new API(cuenta, manejar_acciones);

            manejar_acciones.evento_accion_normal        += get_Accion_Finalizada;
            manejar_acciones.evento_accion_personalizada += get_Accion_Personalizada_Finalizada;
            cuenta.juego.pelea.pelea_creada  += get_Pelea_Creada;
            cuenta.juego.pelea.pelea_acabada += get_Pelea_Acabada;
        }
Beispiel #3
0
        public ScriptHandler(Account _account)
        {
            Account          = _account;
            manejador_script = new LuaManejadorScript();
            manejar_acciones = new ManejadorAcciones(_account, manejador_script);
            banderas         = new List <Bandera>();
            api = new API(_account, manejar_acciones);

            manejar_acciones.evento_accion_normal        += get_Accion_Finalizada;
            manejar_acciones.evento_accion_personalizada += get_Accion_Personalizada_Finalizada;
            Account.Game.Fight.pelea_creada  += get_Pelea_Creada;
            Account.Game.Fight.pelea_acabada += get_Pelea_Acabada;
        }
 public virtual void Dispose(bool disposing)
 {
     if (disposed)
     {
         if (disposing)
         {
             manejador_script.Dispose();
             manejar_acciones.Dispose();
         }
         manejar_acciones = null;
         manejador_script = null;
         activado         = false;
         cuenta           = null;
         disposed         = true;
     }
 }
Beispiel #5
0
        private static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            Task.Run(() =>
            {
                GlobalConf.cargar_Todas_Cuentas();
                LuaManejadorScript.inicializar_Funciones();
                XElement.Parse(Properties.Resources.interactivos).Descendants("SKILL").ToList().ForEach(i => new ObjetoInteractivoModelo(i.Element("nombre").Value, i.Element("gfx").Value, bool.Parse(i.Element("caminable").Value), i.Element("habilidades").Value, bool.Parse(i.Element("recolectable").Value)));
                PaqueteRecibido.Inicializar();
            }).ContinueWith(t =>
            {
                XElement.Parse(Properties.Resources.hechizos).Descendants("HECHIZO").ToList().ForEach(mapa =>
                {
                    Hechizo hechizo = new Hechizo(short.Parse(mapa.Attribute("ID").Value), mapa.Element("NOMBRE").Value);

                    mapa.Descendants("NIVEL").ToList().ForEach(stats =>
                    {
                        HechizoStats hechizo_stats = new HechizoStats();

                        hechizo_stats.coste_pa       = byte.Parse(stats.Attribute("COSTE_PA").Value);
                        hechizo_stats.alcanze_minimo = byte.Parse(stats.Attribute("RANGO_MINIMO").Value);
                        hechizo_stats.alcanze_maximo = byte.Parse(stats.Attribute("RANGO_MAXIMO").Value);

                        hechizo_stats.es_lanzado_linea       = bool.Parse(stats.Attribute("LANZ_EN_LINEA").Value);
                        hechizo_stats.es_lanzado_con_vision  = bool.Parse(stats.Attribute("NECESITA_VISION").Value);
                        hechizo_stats.es_celda_vacia         = bool.Parse(stats.Attribute("NECESITA_CELDA_LIBRE").Value);
                        hechizo_stats.es_alcanze_modificable = bool.Parse(stats.Attribute("RANGO_MODIFICABLE").Value);

                        hechizo_stats.lanzamientos_por_turno    = byte.Parse(stats.Attribute("MAX_LANZ_POR_TURNO").Value);
                        hechizo_stats.lanzamientos_por_objetivo = byte.Parse(stats.Attribute("MAX_LANZ_POR_OBJETIVO").Value);
                        hechizo_stats.intervalo = byte.Parse(stats.Attribute("COOLDOWN").Value);

                        stats.Descendants("EFECTO").ToList().ForEach(efecto => hechizo_stats.agregar_efecto(new HechizoEfecto(int.Parse(efecto.Attribute("TIPO").Value), Zonas.Parse(efecto.Attribute("ZONA").Value)), bool.Parse(efecto.Attribute("ES_CRITICO").Value)));
                        hechizo.get_Agregar_Hechizo_Stats(byte.Parse(stats.Attribute("NIVEL").Value), hechizo_stats);
                    });
                });
            }).Wait();

            DiscordBot.Bot bot = new DiscordBot.Bot();

            m_bot = bot;

            Application.Run(new Principal());
        }
Beispiel #6
0
        public virtual void Dispose(bool disposing)
        {
            if (disposed)
            {
                if (disposing)
                {
                    manejador_script.Dispose();
                    api.Dispose();
                    manejar_acciones.Dispose();
                }

                manejar_acciones = null;
                manejador_script = null;
                api      = null;
                activado = false;
                pausado  = false;
                Account  = null;
                disposed = true;
            }
        }