Please login or register.

Login with username, password and session length
Advanced search  

News:

This forum provides RSS feed. To query recent posts use this url. More...


Author Topic: Compilando.  (Read 4996 times)

0 Members and 1 Guest are viewing this topic.

bamyito

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 53
  • Aprendoaprendoaprendo...
    • View Profile
Compilando.
« on: January 14, 2011, 07:53:59 PM »

¡Buenas gente!

Resulta que el otro dia compilé lo poco que tengo hecho para enseñarlo fuera de mi pc como ejemplo. Pues bien, resulta que al ir a la escena BUS (desde los 2 caminos que hay), el actor aparece donde a él le parece bien, cambiando de localización a cada nueva entrada que hago de esta escena (a veces aparece en el centro, otras a la izquierda,... pero nunca en su entrada adecuada). Sin embargo, al ir a las demas escenas (incluso desde la escena BUS) no existe ningún problema. Empieza donde debe.

¿Qué puede estar ocurriendo en esa escena?
Logged

Jose

  • Regular poster
  • ***
  • Karma: 2
  • Offline Offline
  • Posts: 134
    • View Profile
Re: Compilando.
« Reply #1 on: January 15, 2011, 12:33:39 PM »

¿Puedes postear el scene_init.script de la escena BUS?
Logged

bamyito

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 53
  • Aprendoaprendoaprendo...
    • View Profile
Re: Compilando.
« Reply #2 on: January 15, 2011, 03:38:24 PM »

Faltaría más. ;D

Code: [Select]
#include "scripts\base.inc"

// here comes the stuff which initializes the scene

global Entrada;
switch(Entrada)
{
 case "Camino1":
 actor.SkipTo(1453, 578);
 actor.Direction = DI_LEFT;
 Scene.SkipTo(actor); break;
 
 case "Camino2":
 actor.SkipTo(1456, 119);
 actor.Direction = DI_DOWNLEFT;
 Scene.SkipTo(actor); break;
 
 default:    // Si la escena anterior no se llama "UnaEscena" ni "OtraEscena" ni "UnaEscenaMas", ejecutar el código siguiente hasta el final.
            actor.SkipTo(400, 400);
            actor.Direction = DI_RIGHT;
}

var Fuente = Scene.GetNode("fuente");    // Crear una variable Fuente que sea tu objeto "fuente", si es que se llama así.

switch(Fuente.GetSprite())    // ¿Qué sprite tiene tu fuente?
{
case "scenes\BUS\fuenteon.sprite":    // Si tiene la animación "fuenteon.sprite"...
Fuente.PlaySound("scenes\BUS\stream-3.wav",true);    // ...que reproduzca su sonido.
}

////////////////////////////////////////////////////////////////////////////////
// scene state
global StateBUS;


// default values
if(StateBUS==null)
{
  StateBUS.Visited = false;
  // add scene states here
}



////////////////////////////////////////////////////////////////////////////////
// setup scene according to state variables



////////////////////////////////////////////////////////////////////////////////
if(!StateBUS.Visited)
{
  StateBUS.Visited = true;

  // this is our first visit in this scene...
}
Logged

HelLRaiseR

  • I don't want to make a Monkey Island clone :(
  • Moderator
  • Frequent poster
  • *****
  • Karma: 4
  • Offline Offline
  • Posts: 270
    • View Profile
    • Adventure Box Studios
Re: Compilando.
« Reply #3 on: January 15, 2011, 04:47:01 PM »

Evidentemente en alguna de las escenas no has puesto bien el nombre de la entrada y por eso te aparece donde no es.

Hay un tutorial sobre esto escrito por Jyujinkai: http://res.dead-code.org/doku.php/kbase:meaecode aunque no creo que el problema este en como esta hecho sino en que la variable Entreada no esta bien puesta en algun lado.
Logged
Regards,

    Fernando

Jose

  • Regular poster
  • ***
  • Karma: 2
  • Offline Offline
  • Posts: 134
    • View Profile
Re: Compilando.
« Reply #4 on: January 15, 2011, 11:46:10 PM »

Si quieres colocar al actor en una entrada o en otra en función de la escena anterior yo me quitaría de movidas y en lugar de usar una variable global como haces con la variable Entrada, usaría la función Game.PrevScene para que te devuelva el nombre de la escena de la que viene y en función de ello posicionaría al actor donde te interese.
Logged

bamyito

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 53
  • Aprendoaprendoaprendo...
    • View Profile
Re: Compilando.
« Reply #5 on: January 16, 2011, 09:09:47 PM »

A ver si no me equivoco demasiado ni digo demasiadas tonterías...

Hellraiser, los nombres tienen que estar bien, porque este error solo me ocurre cuando compilo el juego. Si lo pruebo desde el wintermute, funciona a las mil maravillas. Solo me da este error cuando lo compilo y lo pruebo, lo cual no tiene mucho sentido para mi. Pensaba que la "simulación" que hacía wintermute del juego era idéntica al resultado final.

Jose, haría eso si no me hubiese complicado la vida con el tema de las diferentes entradas de una escena a otra. No puedo colocar al actor solo teniendo en cuenta la escena de la que viene, sino tambien la entrada que ha utilizado.
Logged

bamyito

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 53
  • Aprendoaprendoaprendo...
    • View Profile
Re: Compilando.
« Reply #6 on: January 17, 2011, 12:39:29 AM »

Vale, acabo de darme cuenta de un mensaje que me manda la consola de errores cuando entro en la escena del bus:

Quote
0:37:18:  WARNING: Referencing absolute path 'c:\documents and settings\eduardo\mis documentos\wme projects\pruebaaa\data\scenes\bus\scr\scene_init.script'. The game will NOT work on another computer.
0:37:18:  WARNING: Referencing absolute path 'c:\documents and settings\eduardo\mis documentos\wme projects\pruebaaa\data\scenes\bus\scr\scene_init.script'. The game will NOT work on another computer.

No sé si tendrá relación con el problema de las entradas, pero no sé por qué me da a mi que si. ???
Logged

Jose

  • Regular poster
  • ***
  • Karma: 2
  • Offline Offline
  • Posts: 134
    • View Profile
Re: Compilando.
« Reply #7 on: January 17, 2011, 09:17:59 AM »

Efectivamente tiene que ver, las rutas debes ponerlas siempre relativas porque sino en el otro ordenador vas a tener que crear las mismas carpetas que tengas en el tuyo para que te funcione.
Logged

bamyito

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 53
  • Aprendoaprendoaprendo...
    • View Profile
Re: Compilando.
« Reply #8 on: January 17, 2011, 03:38:15 PM »

Rutas relativas... ¿eso quiere decir que solo debo poner la dirección a partir de "data/scenes/..."? ???

mensaje editado: como yo pensaba, no sé hacerlo. me siento como un inutil...
Un poco de ayuda, plis.
« Last Edit: January 17, 2011, 04:18:45 PM by bamyito »
Logged

Jose

  • Regular poster
  • ***
  • Karma: 2
  • Offline Offline
  • Posts: 134
    • View Profile
Re: Compilando.
« Reply #9 on: January 17, 2011, 04:41:14 PM »

Abre el archivo de la escena en cuestión (imagino que se llamará bus.scene o algo así) con el bloc de notas. En todas las rutas que veas a lo largo de todo el fichero asegúrate de que quedan como rutas relativas y no como absolutas. Por ejemplo la ruta del script debería quedar como algo así:

SCRIPT="scenes\bus\scr\scene_init.script"

Las rutas deben ser relativas a la carpeta data y por lo tanto ésta no debe entrar en las rutas relativas (no sería "data\scenes\..." sino "scenes\...").

Un saludo.
Logged

bamyito

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 53
  • Aprendoaprendoaprendo...
    • View Profile
Re: Compilando.
« Reply #10 on: January 17, 2011, 05:14:14 PM »

Yeah! Ya no hay problemas de compilación ni errores en la consola. La basura sigue dando sus contratiempos (exactamente los mismos que antes, vaya), pero seguimos hablando de eso por el otro hilo. ;D
Logged
 

Page created in 0.152 seconds with 23 queries.