qna_rh
Thread Id: 25382
Thread Name: Applymovement de camara, problema.
#0
danizt 28312
Buenaaas, yo otra vez xD los script me están matando jajaja. Uso este script para hacer un movimiento de camara, y me ocurre esto:
'---------------
#org 0x800291
checkflag 0x2501
if 0x0 goto 0x88002B6
special 0x113
applymovement MOVE_CAMERA 0x8800303
waitmovement 0x0
msgbox 0x88002C6 MSG_NORMAL '"[player]. ¿Quien es ese? Está entr..."
applymovement MOVE_CAMERA 0x8800305
release
end

'---------------
#org 0x8002B6
release
end


'---------
' Strings
'---------
#org 0x8002C6
= [player]. ¿Quien es ese? Está entrando\nen casa.. Iré a comprobar.


'-----------
' Movements
'-----------
#org 0x800303
#raw 0x16 'Slide Up
#raw 0x16 'Slide Up
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0xFE 'End of Movements

#org 0x800305
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0x15 'Slide Down
#raw 0xFE 'End of Movements

Donde están los #raw 0x15 'Slide Down del offset #org 0x800303 tendría que haber, #raw 0x16 'Slide Up, y cuando compilo, y voy a probarlo, se han cambiado.
¿Solución? :(
#1
eing 12479
Mira los offsets.
Estas sobreescribiendo la información.
Cada #raw 0x?? Es un +1 al offset que apunta el apllymovement.
Es decir el siguiente aplly debe de contener la direccion : 1aplly + cantidad de moves + 3 (ese 3 ultimo es x si algun dia decides cambiar algun mov..)

Por lo tanto quedaria: 800303 + 14 = 800311.

Prueba eso ;)
#2
danizt 28312
No se si lo habré hecho bien, los e sumado y colocado en lugar donde iban los antiguos:
Ahora queda así, y el otro igual. (con su suma)

applymovement MOVE_CAMERA 0x8800316

Pero me sigue cambiando los mvimientos, y me borra el special 0x114 y un waitmovement.
#3
eing 12479
El special 0x114 no lo habias puesto ni de inicio xD
Asi que dudo que se te borre...

Por otto lado lo que has de cambiar es UN offset, que es el del segundo apllymovement, y el del primer aplly lo dejas como estaba xD.

Si vuelves a poner en los dos applyd la misma direccion estamos en las mismas..
#4
Loony Boo♪ 12263
Si te lías a la hora de calcular el espacio libre necesario para tu script, puedo sugerirte una alternativa, borrar el contenido de tu script actual y compilarlo de nuevo, sigue los siguientes pasos:

1º Guarda en un Bloc de Notas el script bien estructurado (osea, el "bien escrito").
2º Haz una copia de seguridad del rom.
3º Abre el rom con una herramienta de edición hexadecimal (como Thingy32 o HexWorkShop) y ve a la siguiente dirección: 800291.
4º Esta es la parte peligrosa, tienes que reemplazar los bytes por esta sucesión de bytes: "FF" (sin las comillas). Ten en cuenta que si has compilado en offsets posteriores a los que aparecen en tu script, tendrás que tener cuidado de no dañar el contenido de otros offsets que hayas empleado (dicho de forma tosca, que hayas asignado offsets posteriores a 800305).
5º Cuando lo hayas hecho, ahora te tocará compilar de nuevo el script, coge el script que guardaste en el bloc de notas y reemplaza los offsets por etiquetas dinámicas (por ejemplo, en vez de poner 0x88002B6, pones @mov1), especifica que se busque espacio disponible a partir de 0x8800291 (viene a escribirse así: #DYNAMIC 0x8800291.
6º El resto viene a ser lo mismo de siempre: copiar el offset principal del script y asignarlo.

De todas formas, para "borrar" el script existía un comando en el propio XSE, pero en estos momentos no lo recuerdo (y ni siquiera suelo emplearlo). Esa es una forma, puedes esperar si quieres a otras respuestas y tantear la mejor opción.

Edito: Muy importante el detalle que acaba de señalarte [MENTION=26309]Sayer D. Flow![/MENTION], deberás corregir la estructura de tu script.
#5
Tito Sayer301 26309
el ultimo apply no tiene un wait, por lo que nada mas empezar, terminara.
#6
danizt 28312
Solucionado. Podeis cerrar tema, muchas gracias ! :D
#7
Tito Sayer301 26309
Yiah yiah makayinah, ultimamente estamos que lo cerramos!!!!

Bueno bonito y barato pasense por dudas!!!
Tema cerrado~

Hack or Die