1. En el código de enemy, tenemos esto:
//being attacked
if(procID = collision(type bullet_1))
say(procID);
//FRAME(200); //TEMPORARY UNTIL SOMETHING BETTER WORKS
signal(procID,s_kill_force);
boss_a.health--;
procID = 0;
end
La salud se está quitando, pero la bala no se está destruyendo.
2. He descargado esta canción como un .mp3 y luego se utiliza un programa para convertirlo a .ogg: http://www.youtube.com/watch?v=Slsk4Xct0aA (http://www.youtube.com/watch?v=Slsk4Xct0aA)
set_song_volume es 128. Sin embargo, la canción es muy callado.
¿Cómo pueden estos dos problemas puede arreglar? Gracias
la canción ábrela con audacity y normalizala, y mira si hay algún chasquido, se nota porque al normalizar toda la onda se ve mas o menos dentro de un rango y luego hay un pico muy alto fuera de rango, lo borras y vuelves a normalizar, así ganarás la máxima voz de tu canción.
lo de que no muera la bala, es raro, debería funcionar. quizas tengas más de un proceso bala ejecutado y haciendo lo mismo, cambia el if por un while, a ver si se muere.
Otra opción es hacer ese chequeo dentro del proceso bala y en vez de un signal usas un return, para terminar el proceso.
tambien puedes usar la libmod_debug.so/.dll para comprobar en este caso que pasa con los procesos bala, y poner una línea "debug;" dentro del if, para que se abra sola la consola cuando muere un proceso bala
Este es el programa:
http://forum.bennugd.org/index.php?topic=3238.msg55630#msg55630 (los archivos se encuentran aquí también)
http://forum.bennugd.org/index.php?topic=3238.msg55628#msg55628
Alguna vez me pasaba lo mismo, yo por eso la colisión la gestiono en el proceso que se va a morir. Así sólo tengo que hacer signal(id,s_kill) y funciona siempre.
Lo que te ocurre, yo creo es que no te guarda la id de la bala en la variable que has declarado.
ya el misterio esta resuelto...
en otro proceso, tenia un signal weakup...