Hola amigos, hace varios días que me encuentro con este inconveniente y no sabía donde publicarlo.
Resulta que al asignar un valor distinto a text_z no consigo cambiar la profundidad del texto (respecto de los gráficos). He intentado tanto con la
beta13 como con la NightlyBuild más reciente sin éxito.
Tal vez estoy haciendo algo mal, me gustaría ver un ejemplo o que pudieran verificarlo.
Desde ya muchas gracias, saludos!!
Por default text_z tiene un valor de Z igual a "-256" esto significa que el texto se situara encima de otros graficos con Z mayor, es decir cuanto mas
grande es el numero, mayor es la profundidad del grafico, aqui te pongo un ejemplo apenas probado con la ultima nightlybuild:
Code:
program example_text_z;
begin
mouse.graph = new_map(10, 10, 5, 5, 15);
write(0, 160, 100, 4, "Text");
loop
if(key(_1)) text_z = -1024; end
if(key(_2)) text_z = -256; end
frame;
end
end
Probando el ejemplo veras que el puntero del mouse se situa encima del texto (porque tiene una Z = -512), si pulsas 1 veras que el texto se situa por
encima, si pulsas 2, vuelve a lo normal.
By default text_z has a value of Z equal to "-256" This means that the text will be located above other graphics with greater Z, that is, the larger
the number, the greater the depth of the graphic, here an example just tried with last nightlybuild:
Code:
program example_text_z;
begin
mouse.graph = new_map(10, 10, 5, 5, 15);
write(0, 160, 100, 4, "Text");
loop
if(key(_1)) text_z = -1024; end
if(key(_2)) text_z = -256; end
frame;
end
end
Trying the example you'll see that the mouse pointer is located above the text (because it has a Z = -512), if you press 1 you'll see that the text is
located above the pointer, if you press 2, it will return to normal operation.
Gracias por la pronta respuesta, eso me funciona. Pero cuando utilizo "xput" no consigo poner los textos por detrás.
P/d: si utilizo "map_xput" funciona.
Porque "text_z" solo funciona con los textos creados con las funciones WRITE y WRITE_INT.
XPUT es una funcion que renderiza (pinta) en el fondo de la pantalla que es siempre detras de todo, por eso no te funciona, exactamente cosa deseas
hacer, quizas te podemos dar soluciones mejores.
Because "text_z" only works with text created with WRITE and WRITE_INT functions.
XPUT is a function that renders (draw) in the bottom of the screen, which is always behind everything else, why not work, exactly what you like to do,
maybe we can give you the best solutions.
Oooh, has aclarado mis dudas, solo soy un aficionado y me siento muy cómodo usando DIV, y la ayuda integrada en el IDE no venía con ejemplos al
respecto. Muchas gracias nuevamente
Estoy armando una herramienta para calcular talentos para el video juego "lords mobile" y no tener que gastar dinero real para probar las distintas
combinaciones. Lo había hecho en Delphi7 que usa lenguaje Pascal, pero no me gustó para nada la interfaz gráfica y decidí buscar algún programa
que me diera la libertad de crear de manera sencilla toda la interfaz, y me encontré con que DIV había resurgido (conocí DIV1 por revistas cuando
era un niño).
Si, no viene un ejemplo de text_z porque redirecciona a las funciones WRITE y WRITE_INT y en su ayuda explica nuevamente el uso de text_z.
Por ejemplo en la ayuda en español sobre "text_z" indica:
Quote:
Nota 2: Los textos únicamente pueden imprimirse con la función write() (textos alfanuméricos) o con la función write_int() (valores numéricos de
variables).
En la ayuda de la funcion WRITE, indica:
Quote:
El plano de profundidad en el que aparecen los textos escritos se controla mediante la variable global text_z, que sirve para regular qué gráficos
se deben ver por encima de los textos y cuáles por debajo.
Los textos podrán, luego, moverse hasta otra posición si es necesario utilizando la función move_text(), que también requiere como parámetro el
código identificador que devuelve write().
Quizas no es visible a primera vista, y podria ser mejorada.
Estoy armando una herramienta para calcular talentos para el video juego "lords mobile" y no tener que gastar dinero real para probar las distintas
combinaciones. Lo había hecho en Delphi7 que usa lenguaje Pascal, pero no me gustó para nada la interfaz gráfica y decidí buscar algún programa
que me diera la libertad de crear de manera sencilla toda la interfaz, y me encontré con que DIV había resurgido (conocí DIV1 por revistas cuando
era un niño).
Si, DIV permite hacer cosas sencillamente.
Parece interesante, estas haciendo la herramienta en DIV y tambien el juego, o solo la herramienta ?
Solo la herramienta, toda la matemática respecto a los cálculos ya las tengo y las uso en una hoja de cálculo, pero me dieron ganas de plasmarlo en
un programa ejecutable en lugar de una simple hoja de cálculo. Tengo experiencia en programación de microcontroladores PICs en assembler, y
realmente disfruto mucho ver lo ameno que es pensar y escribir en lenguaje de alto nivel. La ayuda que utilizo para DIV_DX es la que viene integrada
al mismo programa que viene en inglés, ¿podría conseguirla en español?, de todas formas no tengo mayores problemas con el Inglés, pero sería
otra comodidad
Para la doc en español, creo recordar que hay un fichero da substituir, ahora mismo no recuerdo donde encontrarlo, creo que Mike te puede dar mejor
info para eso.
----------------------------------------------------------------------------------------------------------------------------
Well, anyway, good job with the project.
About the documentation in Spanish, I remember that you have to replace a file, I can not remember where to find it, I think Mike can give you better
information about this.