Uto escribió:
La solución a tu problema edlobez obviamente es cambiar ese PLUS 100 por PLUS 356.
Con esto perfecto... bueno casi. Cuando tengo un objeto en el inventario me lo pinta en la posición de la pantalla que quiero. Pero cuando el segundo objeto, me lo pinta en la posición que corresponde, pero se borra el primer objeto.
Es como si el pintar el segundo objeto borrara el primero. O no da tiempo a que se muestre ya que cuando tengo dos objetos en el inventario si me quedo quieto en una estancia se puede ver el primer objeto casi parpadeando muy muy rápido.
Como dato, cuando pinta el segundo objeto me lo pinta desplazado, es decir en el lugar que corresponde de la pantalla para un segundo objeto. Cuando suelto este segundo objeto, aparece el primero pintado en la posición que corresponde de la pantalla... no sé si me explico.
El caso es como digo, como si el segundo objeto borrara el primero.
He intentado trastear en el código del condacto PICTUREAT, pero no me aclaro mucho.
Por cierto:
Sólo se pueden tener como máximo dos objetos en el inventario, sí ya tienes dos objetos:
> coger chanclas
Wally : ¡¡¡¡Eyy!!!! que sólo tengo dos manos.
EDITO:
Si sirve de ayuda, he puesto el código anterior para imprimir los objetos en lugar de un proceso interrupción en el proceso 1, así lo puedo visualizar en el html. El código html que se genera teniendo dos objetos en el inventario ( pecera-357 flipflop- 361) es:
Código:
<div class="graphics half_graphics">
<img style="height: 100%;" alt="" class="location_picture" src="dat/diez.png">
<img alt="" id="pictureat_357" style="display:none">
<img src="dat/inv_flipflop.png" alt="" id="pictureat_361" style="position: absolute; left: 392px; top: 80px; z-index: 100; height: 15px;">
</div>
Al objeto con id=357, es como si no se rellenara ningún campo, en concreto la parte del código del condacto pictureat:
Código:
....
var newImage = new Image();
newImage.onload = function ()
{
newimageHeight = Math.floor(newImage.height * scale);
$('#' + id).css('position','absolute');
$('#' + id).css('left', x + screenImageX + 'px');
$('#' + id).css('top',y + 'px');
$('#' + id).css('z-index','100');
$('#' + id).attr('src', filename);
$('#' + id).css('height',newimageHeight + 'px');
$('#' + id).show();
}
.....
Parece que no llega a ejecutarse y ya esto se me escapa, no sé porqué es, o bien no tiene nada que ver con el problema. Sólo pasa cuando hay un segundo objeto. Si sólo hay un objeto en el inventario lo pinta en su posición sin problemas sea cual sea el objeto.
Bueno no sé si estoy liando mucho la cosa, en todo caso se quita el inventario gráfico y tampoco nos complicamos la vida.
Gracias