elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Top 20 herramientas Hacking más populares de 2020


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... 95
61  Programación / Scripting / Re: No atacar a enemigos ko. en: 2 Septiembre 2021, 18:30 pm
Creo que por fin lo resolví:
Código
  1. Escena 1
  2.   actions for fotograma 1
  3.      // "En" es una abreviación de Enemigo.
  4.      // "HP" es una abreviación de Health Points, o puntos de vida.
  5.      // Acciones posibles de la IA.
  6.      function Action1 () {
  7.         if (0<En1HP) {
  8.            // Si el En1 está ok, se lo ataca.
  9.            En1HP = En1HP-1;
  10.            trace ("IA attacks with 1 to Enemy1! Queda con "+En1HP);
  11.         } else {
  12.            // sino, ver si el En2 está ok.
  13.            Action = 3;
  14.            trace ("En1 is ko; ver En2");
  15.            eval("Action"+Action)();
  16.         }
  17.      }
  18.      function Action2 () {
  19.         if (0<En1HP) {
  20.            // Si el En1 está ok, se lo ataca.
  21.            En1HP = En1HP-2;
  22.            trace ("IA attacks with 2 to Enemy1! Queda con "+En1HP);
  23.         } else {
  24.            // sino, ver si el En2 está ok.
  25.            Action = 3;
  26.            trace ("En1 is ko; ver En2");
  27.            eval("Action"+Action)();
  28.         }
  29.      }
  30.      function Action3 () {
  31.         if (0<En2HP) {
  32.            // Si el En2 está ok, se lo ataca.
  33.            En2HP = En2HP-1;
  34.            trace ("IA attacks with 1 to Enemy2! Queda con "+En2HP);
  35.         } else {
  36.            // sino, load unsolved sit.
  37.            Action = 4;
  38.         }
  39.      }
  40.      function Action4 () {
  41.         if (0<En2HP) {
  42.            // Si el En2 está ok, se lo ataca.
  43.            En2HP = En2HP-2;
  44.            trace ("IA attacks with 2 to Enemy2! Queda con "+En2HP);
  45.         } else {
  46.            // sino, load unsolved sit.
  47.            Action = 4;
  48.         }
  49.      }
  50.      // Nro de acción que se usará en el fotograma 2.
  51.      Action = 1;
  52.      // Situación inicial.
  53.      IAHP = 10;
  54.      BaseEn1HP = 5;
  55.      BaseEn2HP = 5;
  56.      // Guardar Situación inicial.
  57.      SitID = "S"+BaseEn1HP+"_"+BaseEn2HP;
  58.      set (SitID+"En1HP", BaseEn1HP);
  59.      set (SitID+"En2HP", BaseEn2HP);
  60.      set (SitID+"Action", "Ninguno");
  61.      // ID de la Unsolved situación que será analizada (luego de sumarle 1).
  62.      U = 0;
  63.      // Cantidad de Unsolved situaciones.
  64.      Us = 0;
  65.   actions for fotograma 2
  66.      // Sit reseteada
  67.      En1HP = BaseEn1HP;
  68.      En2HP = BaseEn2HP;
  69.      trace ("Sitreset; queda en "+En1HP+" y "+En2HP);
  70.      // IA attacks
  71.      eval("Action"+Action)();
  72.      if (En1HP<=0 && En2HP<=0) {
  73.         // Todo Enemigo fue derrotado: Solución, iniciar mostrar Lista de Acciones usadas.
  74.         trace ("Solución hallada, ir al F4");
  75.         List = Action;
  76.         gotoAndPlay (4);
  77.      } else {
  78.         if (0<En1HP) {
  79.            // Si En1 está ok, él attacks IA.
  80.            trace ("En1 attacks IA");
  81.         }
  82.         if (0<IAHP) {
  83.            // Si IA está ok, ver si En2 está ok.
  84.            if (0<En2HP) {
  85.               // Si En2 está ok, él attacks IA.
  86.               trace ("En2 attacks IA");
  87.            }
  88.         }
  89.         if (0<IAHP) {
  90.            // Si IA está ok, ver si la situación está anotada.
  91.            if (eval("S"+En1HP+"_"+En2HP+"En1HP") == undefined) {
  92.               // No. Anotarla.
  93.               trace ("Nueva Sit hallada; grabando.");
  94.               SitID = "S"+En1HP+"_"+En2HP;
  95.               set (SitID+"En1HP", BaseEn1HP);
  96.               set (SitID+"En2HP", BaseEn2HP);
  97.               set (SitID+"Action", Action);
  98.               Us = Us+1;
  99.               SitID = "U"+Us;
  100.               set (SitID+"En1HP", En1HP);
  101.               set (SitID+"En2HP", En2HP);
  102.            }
  103.         } else {
  104.            // Game over, ver si hay más acciones posibles.
  105.            trace ("Gameover; ver si hay otras acciones");
  106.         }
  107.      }
  108.   actions for fotograma 3
  109.      // La situación existe. ¿Modificar candidato es posible?
  110.      if (Action<4) {
  111.         // Modificación de candidato.
  112.         Action = Action+1;
  113.         gotoAndPlay (2);
  114.      } else if (U<Us) {
  115.         // Usar Unsolveds.
  116.         U = U+1;
  117.         BaseEn1HP = eval("U"+U+"En1HP");
  118.         BaseEn2HP = eval("U"+U+"En2HP");
  119.         Action = 1;
  120.         gotoAndPlay (2);
  121.      } else {
  122.         // No hay Solución.
  123.         List = "No hay sol";
  124.         stop ();
  125.      }
  126.   actions for fotograma 5
  127.      SitID = eval("S"+BaseEn1HP+"_"+BaseEn2HP+"Action");
  128.      BaseEn1HP = eval("S"+BaseEn1HP+"_"+BaseEn2HP+"En1HP");
  129.      BaseEn2HP = eval("S"+BaseEn1HP+"_"+BaseEn2HP+"En2HP");
  130.      if (SitID != "Ninguno") {
  131.         List = SitID+" "+List;
  132.         gotoAndPlay (4);
  133.      } else {
  134.         stop ();
  135.      }
  136.  

Se menciona que los enemigos atacan pero por ahora no estoy aplicando eso, antes de aplicarlo quería resolver el problema que tenía.
62  Foros Generales / Dudas Generales / Re: ¿Por qué al nombrar versiones se usan números decimales? en: 2 Septiembre 2021, 05:59 am
No tengo la opción de modificar mensaje. Era para avisar que hallé esto
https://es.wikipedia.org/wiki/Versionado_de_software
Responde bastante mi duda.
63  Foros Generales / Dudas Generales / ¿Por qué al nombrar versiones se usan números decimales? en: 2 Septiembre 2021, 04:31 am
A veces. Crean un programa 1.0 y luego crean otro llamado 1.1 y así sucesivamente, a veces salteándose el conteo con decimales, pasando por ejemplo de 1.6 a 2.0. Lo que di son ejemplos, no sé si sean reales.

Gracias.
64  Foros Generales / Noticias / Re: Los usuarios de WhatsApp que no acepten las condiciones de privacidad afrontarán nuevas restricciones en: 1 Septiembre 2021, 00:33 am
El link me lleva a algo de fútbol.

¿Qué es lo que cambió, concretamente? ¿van a espiar a las empresas?
65  Foros Generales / Dudas Generales / Re: Error C++ Raro en: 30 Agosto 2021, 01:39 am
"es para clases para mis alumnos"

¿Si tú no sabes qué haces enseñando? ¿lo haces gratis? Sino es una estafa.
66  Foros Generales / Dudas Generales / Re: HACKEAR UNA CANCIOM en: 28 Agosto 2021, 01:13 am
En resumen quiere hacer trampa. >:(
67  Foros Generales / Foro Libre / Re: El waifai del vecino... en: 25 Agosto 2021, 00:30 am
Yo lo vi pero no lo entendí. Pensé que Machacador era hombre, pero el que está usando el waifai del vecino parece ser la chica, además hubiera escrito "el waifu de mi vecina".
68  Seguridad Informática / Hacking / Re: HACKEAR UN SORTEO DE INTERNET en: 23 Agosto 2021, 22:57 pm
Contigo de amigo quien necesita enemigos! Tramposo!
69  Foros Generales / Sugerencias y dudas sobre el Foro / ¿Cuando un tema va en Scripting y cuando en Prog. general? en: 23 Agosto 2021, 09:50 am
 :huh:
70  Programación / Scripting / No atacar a enemigos ko. en: 23 Agosto 2021, 09:46 am
Esto es lo que tengo por ahora:
Código:
  actions for fotograma 1
      function Action1 () {
         trace ("Player attacks with 1 to Enemy1!"
         En1HP = BaseEn1HP-1;
      }
      function Action2 () {
         trace ("Player attacks with 2 to Enemy1!"
         En1HP = BaseEn1HP-2;
      }
      function Action3 () {
         trace ("Player attacks with 1 to Enemy2!"
         En2HP = BaseEn2HP-1;
      }
      function Action4 () {
         trace ("Player attacks with 2 to Enemy2!"
         En2HP = BaseEn2HP-2;
      }
      Action = 1;
   actions for fotograma 2
      // player attacks
      eval("Action"+Action) ();
      Si Enemy1 is ok
         Enemy1 attack Player
      Si Player is ok
         Si Enemy2 is ok
            Enemy2 attack Player
         sino si Enemy1 is ko
            // player wins
      sino
         // game over
   actions for fotograma 3
      // variar ataque salteando los que afectan a un enemigo ko

El jugador, que es una IA o parecido, tiene 4 posibles acciones. Dichas acciones varían en cuánto daño hace y a qué enemigo.
No he definido ciertas variables, lo haré cuando resuelva los problemas que tengo.

En el fotograma 2 hay una llamada a una función según el valor de una variable. Quizá está mal escrito, lo analizaré cuando resuelva los problemas que tengo. Lo demás puede que esté mal pero trata simplemente de que los enemigos no ataquen si están ko, de cuando hay victoria y derrota.

La cuestión está en el fotograma 3. Lo normal sería hacer Action++ y volver al fotograma 2, pero quiero evitar que se hagan ataques a enemigos ko. ¿Alguna idea de cómo? Pueden proponer distintos códigos, no sé, yo imaginé el que leyeron pero puede haber mejores. De hecho tengo pensado que pueda haber cualquier cantidad de enemigos, así que la parte de los "si" puede que necesite un arreglo.

Gracias.
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... 95
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines