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


Tema destacado:


Páginas: [1] 2 3 4 5 6 7 8 9 10
 1 
 en: Hoy a las 10:43 
Iniciado por 4aaw - Último mensaje por 4aaw
Lo vemos.

Gracias por todas las respuestas.

 2 
 en: Hoy a las 10:43 
Iniciado por 4aaw - Último mensaje por 4aaw
Actualmente no se dispone de número de teléfono ni teléfono, por lo que no es posible tener servicio en Telegram. ¿Hay otra manera de poder usarlo?

 3 
 en: Hoy a las 09:55 
Iniciado por Terminator5 - Último mensaje por Terminator5
Hola hay alguna app para disfrazar el número por otro número?

 4 
 en: Hoy a las 09:20 
Iniciado por 4aaw - Último mensaje por Mr.Byte
Denunciar una cuenta es algo dificil, otra cosa es denunciar el contenido de un enlace.
Pongo un par de enlaces random:
https://drive.proton.me/urls/K7PD84CVNW#MzAeI2l9PCWm

https://drive.google.com/file/d/1EJMnxkCTpG7-JaAozRik4koynabBb5hM/view

En el primero , alojado en Proton, abajo a la izquierda hay un banderin. Es alli donde lo tienes que denunciar.
En el segundo, Google , los tres puntos verticales a la parte superior-derecha , la ultima opción aparece el signo !

 5 
 en: Hoy a las 03:47 
Iniciado por Kahi - Último mensaje por .xAk.
por eso fiera, está/ba por defecto

 6 
 en: Hoy a las 02:52 
Iniciado por Tachikomaia - Último mensaje por Tachikomaia
Me acerqué a esto y sigo sin saber cómo resolverlo.

Mi idea es:
// Frame 1: La IA recibe una carta, el humano también.
// F2: Un objeto repite TurnoDeHumano hasta que se presione A.
// F3: Un objeto repite CartaOpcional hasta que se elija una opción.
// F4: Pequeña pausa.
// F5: Turno de la IA.
// F6: Nada, sólo para mostrar victoria o derrota.

El problema es CartaOpcional.

Variables relevantes:
MarioDKAt = 2;
MarioDKDescription = "Mario de Donkey Kong. Poder: "+MarioDKAt+"\nElige:\n<- Mario ataca con su poder normal.\n-> Pierdes 1HP, Mario ataca con su poder +1.";

Función normal, hay una para cada carta:
Código
  1. function MarioDK (ataque, objetivo) {
  2. if (objetivo == "IA") {
  3. // Esta carta tiene opciones:
  4. // Option1 = "Normal";
  5. Ataque1 = ataque;
  6. Mensaje1 = "¡Rival dañado!";
  7. // Option2 = "Hammer";
  8. Ataque2 = ataque+1;
  9. Mensaje2 = "¡Rival dañado y perdiste 1HP!";
  10. // Va a un frame hasta que se elige una:
  11. gotoAndStop (3);
  12. } else {
  13. // ESTO NECESITA IA
  14. Mensaje = Mensaje+"\n¡DKMario rival te dañó!";
  15. TipicoAtaqueDeIA(ataque);
  16. }
  17. }
  18.  
Que necesita IA no es el problema, eso lo debo hacer luego.

Función problemática:
Código
  1. function CartaOpcional () {
  2. // Si se presiona izquierda:
  3. if (Key.isDown(37)) {
  4. // Usa la carta elegida aplicando la opción 1:
  5. Mensaje = Mensaje1;
  6. TipicoAtaqueHumano (Ataque1);
  7. play();
  8. // sino si se presiona derecha:
  9. } else if (Key.isDown(39)) {
  10. Mensaje = Mensaje2;
  11. // ACÁ DEBE PERDER 1HP, NO ES TÍPICO
  12. TipicoAtaqueHumano (Ataque2);
  13. play();
  14. }
  15. }

El problema es que esa función debe ejecutarse repetidamente en el frame 3, hasta que el humano elija una opción. Sea cual sea la carta que usó. Pero las opciones y efectos dependen de la carta. En la función que ejecuta los efectos de DKMario intenté crear lo que servirían de parámetros. Pero no parece suficiente. Paso el mensaje que debe dar y el daño que debe causar al rival, pero no los efectos atípicos como daño al usuario, paralizar al rival, etc. ¿Debería crear una función para cada efecto y pasar el parámetro de qué efectos se deben llamar en cada opción?
Otra opción sería crear una función extra para este tipo de cartas, y con una variable indicar cual de ellas debe ejecutarse cuando se elija una opción.
Supongo que lo de función para cada efecto es mejor, aunque al principio parezca una tarea más pesada.
¿Está bien? ¿alternativas mejores?

 7 
 en: Hoy a las 02:25 
Iniciado por Tachikomaia - Último mensaje por Tachikomaia
Se pueden borrar sí, las globales y las declaradas en objetos (si borras el objeto, pero la forma normal también sirve supongo). Ejemplo, es parte del código que puse, en este caso de antes de que probara usar var:
Código
  1. function ChangePosibleColor () {
  2. delete EvaluedParte;
  3. NuevoColor = Rojo+Verde+Azul;
  4. delete Rojo;
  5. delete Verde;
  6. delete Azul;
  7. set (ShoweraModificar, NuevoColor);
  8. delete ShoweraModificar;
  9. PosiblesColores[NroDeColorPosible] = ConvertirHexEnDec(NuevoColor);
  10. trace ("NroDeColorPosible: "+NroDeColorPosible);
  11. delete NroDeColorPosible;
  12. delete NuevoColor;
  13. InsertarCuadros();
  14. }

¿Por qué empieza borrando una? Probablemente porque la función se usa desde 2 otras distintas que crean esa variable, entonces en vez de borrarla en cada una la borra acá. ¿Pero qué pasa si esta función se usa desde un lado donde esa variable no fue declarada? Por ahora no me ha dado problema.

Entiendo que si se usan mismos nombres en distintos lados puede haber problema, es cuestión de recordar qué nombres se ponen, no es necesario que sean iguales. Yo no uso nombres a, b, eso fue un ejemplo. De hecho abandoné intentar entender un código de GPT que tiene pila de nombres así, además era muy complicado para mí ese código. Y cuando los matemáticos ponen muchos nombres así cortos también me cuesta entender xD

 8 
 en: Hoy a las 01:58 
Iniciado por Kahi - Último mensaje por Danielㅤ
hace mucho que se guardan en remoto y se pueden recuperar sin conocimiento del usuario

Eso no es tan así compañero, porque para que eso funcione el usuario tiene que tener activada la sincronizacion en tiempo real o en todo caso hacer copias constantes de sus archivos.

 9 
 en: Hoy a las 01:24 
Iniciado por Kahi - Último mensaje por .xAk.
... cómo recuperar archivos multimedia y no archivos remotos

hace mucho que se guardan en remoto y se pueden recuperar sin conocimiento del usuario

 10 
 en: Hoy a las 01:14 
Iniciado por Tachikomaia - Último mensaje por EdePC
En Flash5 (ActionScript 1.0) las variables declaradas (var) son locales, lo que implica que solo son accesibles en el bloque donde fueron declarados y se destruyen al finalizar dicho bloque, llámese bloque a lo que está entre las llaves, por ejemplo una FUNCTION, un IF, FOR, etc y por supuesto a las variables que son parte de la definición de esos bloques como los parámetros por valor y el famoso var i = 0 del FOR, lo mismo si declaras variables fuera de los bloques.

Las variables sin declarar (sin var) son globales, por lo que son accesibles desde cualquier parte, y se destruyen al finalizar la película.

Código
  1. function GenerarTipo1ySumar () {
  2.   var a = random(10);
  3.   var b = random(10);
  4.   Sumar();
  5.   trace("Generados: "+a+", "+b);
  6. }
  7. // Supongamos que tengo generar tipo 2, 3, etc, distintas fomas de generar.
  8. function Sumar () {
  9.   Resultado = a+b;
  10.   trace("Suma: "+Resultado);
  11. }

Estás declarando las variables locales a y b, así que solo son accesibles en ese bloque, cuando llamas a Sumar() es otro bloque y no sabe de la existencia de a y b. En Sumar() has asignado a una variable sin declarar: Resultado, está será global y accesible desde cualquier otra parte

Citar
No le veo sentido a pasar parámetros que voy a borrar, prefiero que las variables estén en el lv0 y las borro, así no tengo que andar pasando cosas, que supongo es un gasto extra.

Borrarlas? no puedes borrarlas, las variables globales solo se destruyen cuando la película finalice, es buena práctica usar parámetros y variables locales para que no te llenes de variables globales acumulando memoria, las variables globales deberían ser contaditas con los dedos para que no entren en conflicto con las variables locales, más cuando usas nombres muy genéricos como a, b, i, etc

Lo bueno de las versiones viejas de javascript es que puedes usar var para redeclarar variables o no simplemente no usarlas, no te dará problemas, es muy permisivo el lenguaje, pero en las versiones modernas ya se tiene la opción de forzar la declaración de variables y evitar la redeclaración de estas para parecerse, más a los leguajes de programación más estrictos

Páginas: [1] 2 3 4 5 6 7 8 9 10
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines