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...


Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - bamyito

Pages: [1]
1
Foro técnico / Juegos/ejemplos con el código libre.
« on: January 16, 2011, 09:14:32 PM »
Buenas a todos. Aquí estoy de nuevo, para pediros mas favores.

Si me pudierais dar unas direcciones de juegos descargables que tengan el código manipulable os lo agradecería muchisimo. He probado con The white chamber, pero en lugar del código este que usamos nosotros (o al menos yo) salen unos recuadritos de 3 letras muy extraños, que puede que sean el código, pero yo de ahí no puedo copiar las lineas que me interesan ni borrar otras para probar los efectos... no sé si me explico.
 ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug ::slug

2
Foro técnico / 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?

3
Foro técnico / Interacciones, cambios de sprite, objetos e inventario.
« on: January 14, 2011, 07:49:41 PM »
No sabía cómo generalizar este post para poder usarlo mas adelante. creo que el título es bastante apropiado. os voy a exponer, de nuevo, el problema de la basura. A ver si a alguien se le ocurre algo... una solución, u otro metodo para resolverlo sin errores. He aquí el script de la basura:
Code: [Select]
#include "scripts\base.inc"


////////////////////////////////////////////////////////////////////////////////
on "LookAt"
{
  Game.Interactive = false;    // Que el juego deje de ser interactivo (opcional).

  switch(this.GetSprite())    //  Establecemos el "sprite" de la fuente como variable a comparar.
  {

  case "scenes\Room\basuraclosed.sprite":    // Si la fuente tiene su "sprite" por defecto.
     actor.Talk("puaj, basura.");
    break;    // ¡Línea importante! Nunca la olvides.

  case "scenes\Room\basuraopen.sprite":    // Si la fuente ya tiene su otro "sprite".
    actor.Talk("Antes he tocado algo muy blando... y húmedo...");
break;
  }

  Game.Interactive = true;
 
}
////////////////////////////////////////////////////////////////////////////////
on "Take"
{
  actor.GoToObject(this);    // Que el actor vaya a él (opcional).
  Game.Interactive = false;    // Que el juego deje de ser interactivo (opcional).

  switch(this.GetSprite())    //  Establecemos el "sprite" de la fuente como variable a comparar.
  {

  case "scenes\Room\basuraclosed.sprite":    // Si la fuente tiene su "sprite" por defecto.
    actor.Talk("A ver qué encuentro...");
 actor.Talk("Un segundo.");
   this.SetSprite("scenes\Room\basuraopen.sprite");    // Asignarle otro "sprite".
  Game.TakeItem("albal");
  actor.Talk("esto podrá serme util. A ver algo más...");
  actor.Talk("...");
  Game.TakeItem("martillo");
    actor.Talk("¡Un martillo y un trozo de papel albal!");
break;    // ¡Línea importante! Nunca la olvides.

  case "scenes\Room\basuraopen.sprite":    // Si la fuente ya tiene su otro "sprite".
    actor.Talk("Bastante he buscado ya. ¿No crees?");
break;
  }

  Game.Interactive = true;
  }
////////////////////////////////////////////////////////////////////////////////
on "Talk"
{
  actor.Talk("¿saldrá el bicho de barrio sésamo?");
}
////////////////////////////////////////////////////////////////////////////////
on "LeftClick"
{
  actor.Talk("¡¡Ya voy!!");
  actor.GoToObject(this);
}
Siempre comienzo las pruebas en la escena en la que está la basura. Pues bien:

1º- Si abandono la scene y vuelvo, la basura ha desaparecido >:(, con todos sus sprites, objetos y letreros en el ratón.

2º- Si no abandono la escena, la basura funciona estupendamente: La observa de diferentes formas dependiendo de su sprite, la usa y coge los objetos sin problemas, añadiendolos al inventario y no permitiéndome volver a cogerlos de la basura, cambia el sprite como debe,... en fin, todo estupendo ;D. Pero en cuanto salgo de la scene y vuelvo, ocurre lo mismo que en el caso 1: desaparece, y ya no puedo ni observarla, ni marcarla con el ratón ni nada. >:(

¿Qué ocurre?

4
Foro técnico / Diálogos
« on: January 14, 2011, 06:16:37 PM »
Quote
18:15:02:  Compiling script 'scenes\Room\scr\entitiprueba.script'...
18:15:02:    Error@line 57: Variable 'hablar_barco' is referenced but not defined
18:15:02:  Compiling script 'scenes\Room\scr\entitiprueba.script'...
18:15:02:    Error@line 61: Variable 'hablar_coche' is referenced but not defined
18:15:02:  Compiling script 'scenes\Room\scr\entitiprueba.script'...
18:15:02:    Error@line 79: Variable 'hablar_barco' is referenced but not defined
18:15:02:  Compiling script 'scenes\Room\scr\entitiprueba.script'...
18:15:02:    Error@line 83: Variable 'hablar_barco' is referenced but not defined
18:15:02:  Compiling script 'scenes\Room\scr\entitiprueba.script'...
18:15:02:    Error@line 92: Variable 'hablar_coche' is referenced but not defined
18:15:02:  Compiling script 'scenes\Room\scr\entitiprueba.script'...
18:15:02:    Error@line 96: Variable 'hablar_coche' is referenced but not defined

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


////////////////////////////////////////////////////////////////////////////////
on "LookAt"
{
actor.GoToObjectAsync(this);    // comenzar a caminar hacia él,
    Sleep(250);    // esperar una décima de segundo
    actor.Reset();    // y dejar de caminar.
    actor.Talk("Si tenemos suerte, estoy mirando hacia el bicho en cuestión.");
  actor.Talk("¡¡Y EFESTIVAMENTE!!");
}
////////////////////////////////////////////////////////////////////////////////
on "Take"
{
  actor.Talk("No llego.");
}
////////////////////////////////////////////////////////////////////////////////
on "Talk"
{
Dialogo();
}
////////////////////////////////////////////////////////////////////////////////
on "LeftClick"
{
  actor.GoToObject(this);
}
////////////////////////////////////////////////////////////////////////////////
function Dialogo()
{
  var Responses;
  var Selected;

  var Loop = true;

  while(Loop)
  {
// preparamos las frases, hablar_barco y hablar_coche lo usamos para saber si ya ha hecho la pregunta con anterioridad y cambiar la foma de hacerla
// en función de si se ha hablado o no
// Se entiende que previamente estas variables estan declaradas globalmente e inicializadas a false, o sea:
// global hablar_barco = false; // y lo mismo con hablar_coche
// De esta forma, la primera vez que se ejecute el código, se dice la primera frase y se indica que ya se ha hablado para que las sucesivas veces
// Salga lo de "Vuelveme a contar"

if (!hablar_barco)
Responses[0] = "Hablame del barco";
else
Responses[0] = "Vuelveme a contar lo del barco";
if (!hablar_coche)
Responses[1] = "Hablame del coche";
else
Responses[1] = "Vuelveme a contar lo del coche";

    // Creamos el cuadro de conversación con las frases que hemos preparado
    Game.AddResponse(0, Responses[0]);
    Game.AddResponse(1, Responses[1]);

    // Ahora lo presentamos en pantalla para que el jugador seleccione una, el resultado se almacena en Selected
    Selected = Game.GetResponse();

    // El actor repite lo que hemos seleccionado
    actor.Talk(Responses[Selected]);

   // Ahora el personaje contesta en función de la pregunta que se ha hecho y si ya se habia hecho antes o no
    if(Selected==0) // Pregunta de los barcos
    {
if (!hablar_barco)
{

this.Talk("Los barcos flotan");
hablar_barco=true;
}
else
{
this.Talk("Como ya te dije, los barcos flotan, excepto si tienen un agujero, claro");
}
}
    if(Selected==1) // Pregunta de los coches
    {
if (!hablar_coche)
{

this.Talk("Los coches van rodando");
hablar_coche=true;
}
else
{
this.Talk("Como ya te dije, los coches van rodando, excepto por cuestiones de gasolina, pinchazos y similares, por supuesto");
}

}
}
}

Abreviando: En el script del bicho amarillo me da esos errores al intentar probar el juego. Sustituí el "personaje" por "this", ya que ese es el personaje que habla en mi ejemplo. Corregí tambien un actor.Talkt(Responses[Selected]); eliminando la T despues de Talk (que supuse que estaba de más), e hice la llamada a la función dialogo en la opción Talk.

¿Qué falla?

5
Foro técnico / Empezando y con problemas.
« on: December 07, 2010, 06:20:15 PM »
Lo primero, un saludo a todos.
Desde hace ya muchísimos años soy aficionado a los juegos de aventuras. El dia que conocí a Manny Calavera descubrí cómo se debe contar una buena historia interactiva. Pero no voy a aburriros con mi vida.
Llevo mucho buscando un tutorial en español para este programa, y lo encontré hace poco. Aunque ya domino bien el editor de escenas y el editor de sprites, siguen surgiendo problemas que me gustaria que resolvieseis. Empecemos por los mas graves y problemáticos. ya os iré exponiendo más.

Cuando cambio de escena con el personaje, siempre se me coloca en mitad de la escena. Antes no podía ni moverlo, ya que se colocaba en una region no transitable. lo solucioné ampliando esa zona, pero solo es una solución provisional. ¿Cómo se consigue que el personaje se coloque en la entrada de la escena, y no en el centro? ¿y si tiene mas de una entrada la escena, tambien puedo colocarlo para que entre por ambas? Por ejemplo, dos caminos, uno superior y otro inferior. El camino superior debería conectar con el superior de la otra escena, y el inferior con el inferior.
¿Cómo logro esto?

Gracias de antemano. ;D

Pages: [1]

Page created in 0.02 seconds with 20 queries.