JVLIVS CAESAR MODS FORUM
Estimado usuario invitado: Si se registra/conecta podrá tener la mejor ventaja, postear en el foro, ya que los invitados solo pueden leer.

JVLIVS CAESAR MODS FORUM

Imperium III Mods Forvm. Último Mod - MCI 9.0!
 
ÍndiceÍndice  FAQFAQ  BuscarBuscar  RegistrarseRegistrarse  ConectarseConectarse  

Comparte | 
 

 Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
Hareld
Pretoriano
Pretoriano


Cantidad de envíos : 63
Reputación : 14
Fecha de inscripción : 21/04/2015

MensajeTema: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Sáb Mayo 02, 2015 7:35 pm

Veréis, tengo una conversación con diversas opciones, cada una de ellas comporta una recompensa, y me gustaría que una vez se ha obtenido esa recompensa, no se pudiera volver a acceder a ella, es decir, que cuando volviera a hablar con el personaje en cuestión, las opciones que ya he contestado una vez desaparecieran. Alguna idea?
Volver arriba Ir abajo
Gigoras
Veterano
Veterano
avatar

Cantidad de envíos : 357
Edad : 47
Location : Salmantica.
Reputación : 127
Fecha de inscripción : 28/11/2010

MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Dom Mayo 03, 2015 10:31 am


Supongo que sabes hacer una conversación con opciones para meterte en este jardín ...
haces una secuencia con ejecución permitida y dos protas (heroe1 y druida) pones:
while(1){
WaitConvRequest(heroe1,druida,-1);   <-- cuando selecciones heroe1 el rosco en druida
RunConv("conversacion1");
Sleep(6000);         <-- el tiempo que quieras (pero mejor alargar las cosas)
}
y en conversacion1  tienes que jugar con los if y las variables (creo que se llaman de entorno) 
en el apartado , Conditión script de la frase pones que si lee la "stringa" y si es verdad o no:
if(EnvReadString("quitar1")=="")
return true;
return false;
Y en Action script pones el premio y escribes la "stringa" quitar1 EXISTE :
GetNamedObj("heroe1").obj.AsHero().SetLevel(12);  
EnvWriteString("quitar1","si");
En cada frase su "stringa" (palabra) diferente ... (yo he puesto quitar+1,2y3 )

y


Última edición por Gigoras el Dom Mayo 03, 2015 4:38 pm, editado 1 vez
Volver arriba Ir abajo
Hareld
Pretoriano
Pretoriano


Cantidad de envíos : 63
Reputación : 14
Fecha de inscripción : 21/04/2015

MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Dom Mayo 03, 2015 3:06 pm

No he entendido para que sirve el "si", pero de todas formas funciona Muchas gracias de nuevo! Ahora solo hace falta que se active cada conversación cuando toca. Tengo este código:

while(1){
Sleep(600);
if(sergius.obj.FindItem("Bloodstone").IsValid){
WaitConvRequest(sergius, anfilopo, -1);
RunConv("conv4asclepeion");
}
else{
WaitConvRequest(sergius, anfilopo, -1);
RunConv("conv3asclepeion");
}
Sleep(600);
}


Pretendo que cuando el protagonista lleve una piedra sanguinaria encima, se active la conv4, y que si no la lleva, se active la conv3, pero eso no ocurre siempre. La primera vez que activo la conversación llevando la piedra, salta la conv3, a la segunda ya funciona y se activa la conv4. También falla cuando me gasto la piedra en una recompensa, la piedra desaparece, pero si acto seguido vuelvo a hablar con el anfilopo de los cojones, me salta la conv4. Igualmente funciona mal cuando llevo una piedra encima y cuando veo la exclamación en la cabeza del personaje, dejo la piedra en el suelo.

Algun tipo de solución?

Siento preguntar tanto Sad
Volver arriba Ir abajo
Gigoras
Veterano
Veterano
avatar

Cantidad de envíos : 357
Edad : 47
Location : Salmantica.
Reputación : 127
Fecha de inscripción : 28/11/2010

MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Dom Mayo 03, 2015 5:00 pm

No sientas preguntar al fin y al cabo has pagado la cuota ... ¿verdad...?
Tu solución tiene buena pinta ¿llevas mucho con el editor? bueno al tema , prueba con esto 1º:
while(1){
if(sergius.obj.FindItem("Bloodstone").IsValid){
WaitConvRequest(sergius, anfilopo, -1);
RunConv("conv4asclepeion");
if(!sergius.obj.FindItem("Bloodstone").IsValid(){
WaitConvRequest(sergius, anfilopo, -1);
RunConv("conv3asclepeion");
}
}
Sleep(600);
}


Observa que pasa al poner (!) delante de sergius arriba o abajo.
Y también el (}) como yo lo he puesto al final o justo encima del segundo if.
Cogido el hilo de lo que yo te he puesto podrías poner como Condition script : 
if(GetNamedObj("sergius").obj.AsUnit().FindItem("Bloondstone))
return true;
return false; 
Ya nos contaras.... 
Volver arriba Ir abajo
Hareld
Pretoriano
Pretoriano


Cantidad de envíos : 63
Reputación : 14
Fecha de inscripción : 21/04/2015

MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Dom Mayo 03, 2015 7:40 pm

La cuota? Yo pensaba que en este foro se cobraba.  Laughing

Llevo con el editor más o menos desde que me registré aquí. Échale una semana más que solo leía, unas 3 semanas. Aunque antes ya había usado algún que otro lenguaje de programación para otras cosas.

Al final no me ha rulado de esa forma. Siempre saltaba a la segunda y siempre se podía manipular dejando la piedra en el suelo. He tenido que usar dos secuencias para que funcionara, y cambiar el héroe por un ItemHolder en el que dicho héroe tiene que dejar la piedra:

Secuencia1:

while(1){
WaitConvRequest(sergius, anfilopo, -1);
RunConv("conv3asclepeion");
}

Secuencia2:

while(1){
if(cofreasclepeion.obj.AsItemHolder().HasItem("Bloodstone")){
WaitConvRequest(sergius, anfilopo, -1);
RunConv("conv4asclepeion");
}
Sleep(2000);
}
Volver arriba Ir abajo
Gigoras
Veterano
Veterano
avatar

Cantidad de envíos : 357
Edad : 47
Location : Salmantica.
Reputación : 127
Fecha de inscripción : 28/11/2010

MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Dom Mayo 03, 2015 8:30 pm

Pues sea usted bienvenido y aunque yo lo hubiera intentado solucionar con las conversaciones (es a lo que me estoy dedicando últimamente en el editor ,me parece un mundo) , bien esta lo que bien acaba .... y por cierto ... estaría muy bien jugar tu aventura cuando la termines , naturalmente es tuya y tienes derecho ha hacer lo que te parezca , pero yo tengo curiosidad!
hasta otra ,ya sabes en donde puedes preguntar aunque no tengamos tu respuesta ....
¡Y paga ahora la cuota del foro ! que después de las elecciones le suben el IVA ...je,je ,je  pirat
Volver arriba Ir abajo
Hareld
Pretoriano
Pretoriano


Cantidad de envíos : 63
Reputación : 14
Fecha de inscripción : 21/04/2015

MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   Dom Mayo 03, 2015 9:07 pm

Seguramente la voy a subir, pero aun no está preparada.

Tengo 3 aventuras a medio hacer, esta es la que en teoría me tenía que servir para ir probando cosas y aprender un poco. Está basada en el mapa predefinido "La Ribera". De pequeño jugaba a ese mapa, era mi favorito, y ahora que he visto que un usuario lo había adaptado a imperium 3, quería darle una pequeña historia y hacerlo más entretenido.
Volver arriba Ir abajo
Contenido patrocinado




MensajeTema: Re: Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.   

Volver arriba Ir abajo
 
Hacer que las opciones de una conversación desaparezcan en el transcurso de la partida.
Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.
 Temas similares
-
» La razón de porque no hay que hacer tronar los dedos
» se va a hacer gpt madrid?
» Conversación codec curiosa...
» como hacer rotar el letrero de fuera?
» Hacer dinero

Permisos de este foro:No puedes responder a temas en este foro.
JVLIVS CAESAR MODS FORUM :: Modding en General :: Modding en General :: Editor-
Cambiar a: