Please login or register.

Login with username, password and session length
Advanced search  

News:

For WME related articles and tutorials visit WME Resource Center.

Author Topic: Problema con los actores  (Read 10301 times)

0 Members and 1 Guest are viewing this topic.

SPM

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
    • View Profile
Problema con los actores
« on: March 24, 2010, 10:16:04 PM »

Hola a todos, me llamo Pedro hace un tiempo me anime a hacer una aventura grafica con el Wintermute, y como no...
me han surgido algunos problemillas, uno de estos es con los actores, cuando intento cargar a alguno de estos en el escenario o no me aparece o directamente me sale un recuadro diciendo que la imagen esta mal. No se si hago algo mal con los scripts o directamente soy un negado...

Muchas gracias.
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: Problema con los actores
« Reply #1 on: March 25, 2010, 05:10:48 PM »

Lo unico que se me ocurre es que despues de hacer el sprite hayas cambiado los graficos de sitio y no los encuentre. Danos alguna pista mas, porque es un problema raro, no tiene mucho misterio.
Logged
Regards,

    Fernando

SPM

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
    • View Profile
Re: Problema con los actores
« Reply #2 on: March 25, 2010, 09:43:51 PM »

Creo que eso no es, lo revisado mil y una veces.

Te paso el codigo de .actor de mi personaje a ver si ves alguna cosa extraña.



ACTOR
{

  NAME = "Laura"
  CAPTION="Laura"
  X = 250
  Y = 351
  SCALABLE = TRUE
  INTERACTIVE = TRUE
  COLORABLE=TRUE
  ROTATABLE = FALSE
  SOUND_PANNING=TRUE
  SCRIPT="actors\Laura\Laura.script"
  FONT = "fonts\outline_white.font"

 
    ANIMATION
  {
    NAME       = "idle"
   
    LEFT       = "actors\Laura\idle\idleiz.sprite"
    RIGHT      = "actors\Laura\idle\idlede.sprite"
    UP         = "actors\Laura\idle\idletra.sprite"
    DOWN       = "actors\Laura\idle\idlede.sprite""

  } 


 ANIMATION
  {
    NAME       = "walk"
   
    LEFT       = "actors\Laura\walk\perfiles\perfiliz\walkiz.sprite"
    RIGHT      = "actors\Laura\walk\perfiles\perfilde\walkperde.sprite"
    UP         = "actors\Laura\walk\frente\walkf.sprite"
    DOWN       = "actors\Laura\walk\espaldas\walkes.sprite"

  } 
}
Logged

newbits

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Gender: Male
  • Posts: 14
  • NewBits Games
    • View Profile
    • NewBits Games
Re: Problema con los actores
« Reply #3 on: March 26, 2010, 12:04:05 AM »

Probablemente me esté equivocando y, la verdad, no tengo conocimientos como para ayudarte a nivel de código. Sólo por si te sirve de algo, he observado dos cosas que me resultan 'raras':

1. En el primer Animation, el correspondiente a "Idle". El Sprite que corresponde a RIGHT y el que corresponde a DOWN tienen el mismo nombre y localización. No se si esto puede generar algún tipo de conflicto para Wintermute.
2. Además, veo que el sprite que corresponde a DOWN termina con un doble entrecomillado "".

  ANIMATION
  {
    NAME       = "idle"
   
    LEFT       = "actors\Laura\idle\idleiz.sprite"
    RIGHT      = "actors\Laura\idle\idlede.sprite"
    UP          = "actors\Laura\idle\idletra.sprite"
    DOWN      = "actors\Laura\idle\idlede.sprite""

  }

Espero que pueda ayudarte en algo.
Saludos!
Logged
NewBits, el blog de NewBits Games: http://newbitsgames.blogspot.com
Desarrollando una aventura gráfica independiente.

SPM

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
    • View Profile
Re: Problema con los actores
« Reply #4 on: March 26, 2010, 04:55:43 PM »

Si, muchas gracias por la ayuda, era eso, aunque tambien era culpa de un par de comillas de mas que habia puesto. :P
Eso pasa por no repasar mil veces las cosas. Ahora tengo otro gran problemo...:P
En el juego no se me mueve el actor, se queda parado y no camina ni sigue al mouse...ni nada de nada. ( Siempre problemas)

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: Problema con los actores
« Reply #5 on: March 27, 2010, 02:25:58 PM »


En el game.script tienes que cargar el actor y asignarlo como objeto principal:

actor = Game.LoadActor("actors\Laura\Laura.actor");
Game.MainObject = actor;


La variable "actor" está definida en const.inc si has usado la plantilla de wme, si no, tendrás que hacer un
global actor;
antes del código anterior.

Para que vaya hacia un lugar de la escena al hacer clic con el ratón en el scene.script tienes que usar:

on "LeftClick"
{
  actor.GoTo(Scene.MouseX, Scene.MouseY);
}


Lo mejor es que cojas el proyecto de tutorial de wme, te lo estudies y lo limpies para usarlo como proyecto base, ya que tiene todo lo necesario ya montado: el actor definido, el scripts de bucle asociado al juego, los includes de constantes, etc.

Sustituyes el actor "molly" por el tuyo y usas la escena del tutorial para probar tu actor y cuando ya lo tengas todo rodado, pues te la cargas y ya empiezas a añadir escenas nuevas.


Logged
Regards,

    Fernando

SPM

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
    • View Profile
Re: Problema con los actores
« Reply #6 on: March 28, 2010, 09:30:13 PM »

Los scripts del tutorial son lo que uso para la base, pero igualmente me va mal, no se si a lo mejor e sacado o e puesto algo mal en este.

nclude "scripts\base.inc"

// here comes the stuff which initializes the scene

actor.SkipTo(1568, 642);
actor.Direction = DI_LEFT;
actor.Active = true;


////////////////////////////////////////////////////////////////////////////////
// scene state
global Stateparada;

// default values
if(Stateparada==null)
{
  Stateparada.Visited = false;
  Stateparada.FanSpeed = 4;
}




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



Tambien otro fallo que veo en la escena, es que siempre cuando empieza la escena hace un barrido de esta hasta llegar al personaje, y no se que parte del script se usa para sacar esta opción.
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: Problema con los actores
« Reply #7 on: March 29, 2010, 10:06:08 AM »

bueno, la primera linea es include en vez de nclude, pero supongo que ese habrá sido al copiar y pegar.

Fijate en lo que estas haciendo:

actor.SkipTo(1568, 642);

Posicionas al actor en 1568 horizontal y 642 vertical, esta coordenada es muy grande, si la resolucion que tienes es menor, el actor estará fuera de pantalla y no se verá, como en esas coordenadas no tendrás una zona "walkable", tampoco andará. Mira a ver si es esto.

El resto está bien, si has definido correctamente el fichero del actor, en el scene.script tienes puesto el "actor.GoTo(Scene.MouseX, Scene.MouseY);" en el evento "onClick" y has cargado el actor en game.script con "actor = Game.LoadActor("actors\Laura\Laura.actor");" tal y como dijimos en el post anterior, te tendría que funcionar sin problemas.

La línea "Stateparada.FanSpeed = 4;" te sobra, es una variable que se usa en la demo para controlar la velocidad del ventilador que esta en la mesa.

Con respecto a lo del scroll de la pantalla, lo unico que tienes que hacer es poner en el scene_init.script de la escena en la que no quieres que se desplace la pantalla una llamada a la funcion skipTo asi: Scene.SkipTo(actor);

Esto hará que al inicializar la escena la camara salte al actor, por lo que cuando la escena se muestre ya estará posicionada y no se recorrera la escena hasta que llegue.

De todas formas, lo que tambien puedes hacer es subirle la velocidad al scroll para que no tarde tanto.


Logged
Regards,

    Fernando

SPM

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
    • View Profile
Re: Problema con los actores
« Reply #8 on: March 29, 2010, 04:58:15 PM »

Muchas gracias por la ayuda, e solucionado el movimiento en algunas escenas, pero hay una que me puede. ( La posicion del personaje es grande porque la escena es muy larga, es de 2014 X 768, la medida del juego es de 1024 X 768)
No se sabe el motivo pero en esa misma escena solo camina el personaje hacia el punto de salida, no camina hacia otro punto, ademas los puntos interactivos no reaccionan cuando hago salir el menu de hablar, coger... ( eso ultimo me pasa en todas las escenas).



#include "scripts\base.inc"

// scene state
global Stateparada;

// default values
if(Stateparada==null)
{
  Stateparada.Visited = false;
}


actor.SkipTo(1568, 645);
actor.Direction = DI_LEFT;
Scene.SkipTo(actor.X, actor.Y);



if(!Stateparada.Visited)
{
  Stateparada.Visited = true;
}

global WinHints;
WinHints.Init();


Siento ser tan cansino.  :'(
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: Problema con los actores
« Reply #9 on: April 04, 2010, 08:10:36 PM »

Suena a problema con los waypoints, igual estan mal definidos, o el hot spot del personaje se te ha ido por ahi, o alguna cosa de esas, pero no creo que sea problema del código. El código que has puesto en principio está bien.

Si quieres mandame la escena a fnavarro (a) adventureboxstudios . com y la hecho un vistazo.
Logged
Regards,

    Fernando
 

Page created in 0.04 seconds with 21 queries.