Pulse Control+D para no olvidar este enlace.
 
Pagina principal­Índice­Portal­FAQ­Buscar­Registrarse­Conectarse­Pagina principal
Publicar nuevo tema   Responder al temaCompartir | 
 

 Restrinciones

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
legendario2009
Aprendiz
Aprendiz


Masculino
Edad: 22
Puntos de Actividad: 1238

Cantidad de envíos: 71
Fecha de inscripción: 21/02/2009

Nº. de Miembro: 49
Respeto por el Foro:
90 / 10090 / 100


MensajeTema: Restrinciones   Miér 10 Jun 2009, 2:21 pm

Buenas busco un tipo de script de restricción, pero que se use de dos formas, me explico:

Caso 1:

Llegas a una puerta y solo se abrirá si cumples lo siguiente:

- que eres un elfo o semielfo
- alineamiento cualquiera neutral (neutral bueno, neutral autentico o neutral maligno)
- si detecta que cumples eso, salga un mensaje diciendo puedes pasar, en caso que tu heroe no cumpla las cosas que diga que no perteneces a esta ciudad, casa o lo que sea.

Caso 2:

Un mercader que solo te venda su mercancía si cumples con:

- eres un elfo o semielfo
- alineamiento cualquiera neutral (neutral bueno, neutral autentico o neutral maligno)
- si cumples los requisitos, te abre el almacen para comprar, sino te dice que no puedes comprar nada aquí.

Creo que los dos son identicos, salvo, por la opción de que uno es para una puerta que imagino que irá en el OnHeartBeat y el otro es en un Pnj que supongo que también irá en el OnHeartBeat, a diferencia que el pnj tiene que abrir el almacén.

Se agradece la ayuda.
Volver arriba Ir abajo
Xiulito
Administrador/a
Administrador/a


Masculino
Edad: 30
Localización: Vivo aqui
Puntos de Actividad: 1620

Cantidad de envíos: 100
Fecha de inscripción: 22/03/2008

Nº. de Miembro: 1
Respeto por el Foro:
100 / 100100 / 100


MensajeTema: Re: Restrinciones   Miér 10 Jun 2009, 5:08 pm

En la puerta, en el evento OnAreaTransitionClick pones el siguiente script:
Código:
void main()
{
object oPC = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);

int iRaza    = GetRacialType(oPC);
int iSemiElf  = RACIAL_TYPE_HALFELF;
int iElf      = RACIAL_TYPE_ELF;

int iNEUTRAL  = ALIGNMENT_NEUTRAL;
int iGoodEvil = GetAlignmentGoodEvil(oPC);
int iLawChaos = GetAlignmentLawChaos(oPC);

if (iRaza==iSemiElf || iRaza==iElf)
    {
    if (iGoodEvil==iNEUTRAL || iLawChaos==iNEUTRAL)
        {
        SetAreaTransitionBMP(AREA_TRANSITION_RANDOM);
        AssignCommand(oPC,JumpToObject(oTarget));
        }
    else
        {FloatingTextStringOnCreature("Tu Alineamiento no te permite entrar aqui", oPC, FALSE);
        return;}
    }
else
    {FloatingTextStringOnCreature("Tu Raza no te permite entrar aqui", oPC, FALSE);
    return;}
}



Y en el mercader en el evento OnConversation, pones el siguiente:
Código:
void main()
{
object oPC = GetLastSpeaker();
object oPNJ = OBJECT_SELF;

int iRaza    = GetRacialType(oPC);
int iSemiElf  = RACIAL_TYPE_HALFELF;
int iElf      = RACIAL_TYPE_ELF;

int iNEUTRAL  = ALIGNMENT_NEUTRAL;
int iGoodEvil = GetAlignmentGoodEvil(oPC);
int iLawChaos = GetAlignmentLawChaos(oPC);

if (IsInConversation(oPNJ)) return;

if (iRaza==iSemiElf || iRaza==iElf)
    {
    if (iGoodEvil==iNEUTRAL || iLawChaos==iNEUTRAL)
        {PlayVoiceChat(VOICE_CHAT_HELLO);
        ActionStartConversation(oPC, "", TRUE);}
    else
        {SpeakString("Saludos");
        return;}
    }
else
    {SpeakString("Saludos");
    return;}
}




Saludos.

_________________
¿Saben cual es la diferencia entre un hombre inteligente y uno sabio?
Que el inteligente sabe lo que dice y el sabio sabe cuando decirlo.


Fdo.: El Administrador del Foro.
Volver arriba Ir abajo
http://www.nwnforo.com
legendario2009
Aprendiz
Aprendiz


Masculino
Edad: 22
Puntos de Actividad: 1238

Cantidad de envíos: 71
Fecha de inscripción: 21/02/2009

Nº. de Miembro: 49
Respeto por el Foro:
90 / 10090 / 100


MensajeTema: Re: Restrinciones   Miér 10 Jun 2009, 8:31 pm

Creo que hay algo que no entiendo ....

Código:

 else
        {FloatingTextStringOnCreature("Tu Alineamiento no te permite entrar aqui", oPC, FALSE);
        return;}
    }
else
    {FloatingTextStringOnCreature("Tu Raza no te permite entrar aqui", oPC, FALSE);
    return;}
}


El texto deberia decir que te deja entrar en el caso que cumpla las condiciones y sino las cumple una negacion.
Volver arriba Ir abajo
Xiulito
Administrador/a
Administrador/a


Masculino
Edad: 30
Localización: Vivo aqui
Puntos de Actividad: 1620

Cantidad de envíos: 100
Fecha de inscripción: 22/03/2008

Nº. de Miembro: 1
Respeto por el Foro:
100 / 100100 / 100


MensajeTema: Re: Restrinciones   Jue 11 Jun 2009, 4:06 pm

El mensaje saltara cuando el PJ NO cumpla cualquiera de los requisitos, primero se chequea la raza y luego el alineamiento, es decir, si el PJ cumple con la raza pero no con el alineamiento pues suelta la frase de negación del alineamiento, si no cumple con la raza pues corta el script antes de chequear el segundo control y suelta la negación de raza, en caso contrario pues realizara el efecto, saludos.

_________________
¿Saben cual es la diferencia entre un hombre inteligente y uno sabio?
Que el inteligente sabe lo que dice y el sabio sabe cuando decirlo.


Fdo.: El Administrador del Foro.
Volver arriba Ir abajo
http://www.nwnforo.com
Jastro
Aprendiz
Aprendiz


Masculino
Edad: 24
Localización: Islas Canarias
¿Que me Gusta?: Todo y Nada
Puntos de Actividad: 1183

Cantidad de envíos: 40
Fecha de inscripción: 11/08/2008

Nº. de Miembro: 11
Respeto por el Foro:
100 / 100100 / 100


MensajeTema: Re: Restrinciones   Vie 12 Jun 2009, 2:34 am

Perdonad si no me paso mucho por aqui, pero ultimamente no paro de hacer cosillas, pero viendo que ya te lo ha soluucionado xiulito...


A ver si me paso por aqui y os pongo un par de scripts :D


Un saludo

_________________
Volver arriba Ir abajo
legendario2009
Aprendiz
Aprendiz


Masculino
Edad: 22
Puntos de Actividad: 1238

Cantidad de envíos: 71
Fecha de inscripción: 21/02/2009

Nº. de Miembro: 49
Respeto por el Foro:
90 / 10090 / 100


MensajeTema: Re: Restrinciones   Vie 12 Jun 2009, 2:31 pm

el script va de lujo :D
Volver arriba Ir abajo
 

Restrinciones

Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.

Permiso de este foro:No puedes responder a temas en este foro.
Neverwinter Nights, modding - scripts - manuales, todo sobre el NWN :: NWToolSet (Aurora) :: Scripting NWN :: Dudas y Preguntas (Scripting)-
Publicar nuevo tema   Responder al tema