¿como borrar un texto y no el otro??

Started by Futu-block, June 09, 2011, 09:05:19 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Futu-block

pos eso, quiero borrar un texto y no otro, con delete_text hay que poner entre parentesis un cero, igual al ponerle otro numero pasa algo, o una variable...

anoder guan:
la z del texto cargado, el que no trae de fabrica  ;D no funciona ¿no? lo digo porque reduzco y aumento text_z y no cambia para nada...

BoMbErLiNk

Delete_text también va por ID.

texto=write(0,0,0,0,"hola"); => delete_text(texto);

Futu-block

#2
perfect, gracias BoMbErLiNk, te doy un karma, por que se que te gusta...
son cosas que uno supone pero hasta que no lo consulta no lo tiene claro
<->
vale, lo que pasa ahora es que si tengo una variable que mostrar la tengo que poner dentro de un loop porque me la borra de todas formas...

KeoH

si tienes q mostrar una variable. como la puntuacion, escribela con write_var y te olvidas de actualizarlo en un loop.

Si haces delete_text(0), te borra todos los textos.

Futu-block

vale, atentos porque voy a inundar de sarcasmo lo que voy a decir:
quiero borrar un texto, el otro no...

gecko

podes hacerlo adentro del loop del proceso que quieras que escriba los textos:
[code language="bennu"]LOOP
    id_texto = write();
    FRAME;
    delete_text(id_texto)
END[/code]
Torres Baldi Studio
http://torresbaldi.com

KeoH

Quote from: Futublock on June 10, 2011, 05:49:44 PM
vale, atentos porque voy a inundar de sarcasmo lo que voy a decir:
quiero borrar un texto, el otro no...

si solo quieres borrar un texto en particular solo tienes q poner su indicador dento de los parentesis de delete_text()

Arcontus

Quote from: Futublock on June 10, 2011, 05:49:44 PM
vale, atentos porque voy a inundar de sarcasmo lo que voy a decir:
quiero borrar un texto, el otro no...
Yo lo haría de la siguiente manera:

PROCESS escribir(int Px, int Py, char *cadena, int *salida)
PRIVATE
int miCadena;
END
BEGIN
miCadena=write(0,Px,Py,0, cadena);
while(*salida == 0)
FRAME;
END
delete_text(miCadena);
END

Para llamar al proceso, pasamos la posicion x e y, el puntero de la cadena, y un puntero a variable de salida.
Para controlar más de un mensaje, se monta una estructura así:
type Cadenas
  int salir;
  string cadena;
END

Y se usa de la siguiente manera:
Dentro de la declaracion de variables del proceso a usarla, declaramos una nueva, tipo "cadenas":
Cadenas miCadena;

Y dentro del proceso a usarla, añadimos el texto a imprimir (ej: miCadena.cadena = "Hello World";)
Imprimimos la cadena mediante el proceso anterior: escribir( x, y, &miCadena.cadena, &miCadena.salida);
Y para eliminar un texto concreto, solo hay que cambiar el valor de miCadena.salida a cualquier valor diferente a 0.

Si queremos que un proceso controle por ejemplo 10 cadenas, creamos un vector de tipo cadenas: Cadenas miCadena[10]; y accedemos a sus valores de la siguiente manera: miCadena
  • .cadena; (donde x es el número de cadena a tocar, un vector vamos).

    Espero que captéis la idea...

    Saludos!


5Leaps, el primer juego comercial desarrollado para BennuGD. http://www.5leaps.com

Drumpi

Como lo de borrar un texto está más que respondido, respondo a la segunda:

Text_z sólo afecta a los textos que escribas DESPUÉS DE LA SENTENCIA, así como text_color y alguna que otra más.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)