Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Faction Drows
Faction Drows
Par Miragul le 26/9/2002 à 15:03:34 (#2236411)
Mon module est composé essentillement de Drows, je voudrais faire en sorte que les gardes attaquent à vue les non drows (PJ) dans certaine zone.
Je sais qu'il est possible de faire réagir les PNJ face aux alignements mais y a t-il un script similaire pour les races ?
Par Tyn' le 26/9/2002 à 15:05:57 (#2236428)
Par Mastokk le 26/9/2002 à 15:08:58 (#2236443)
- Faction Garde : Amie avec Faction Drows habituelle ; Ennemie avec Faction PJ.
- Faction Drows : Amie avec Faction Gardes et Faction PJ (ou neutre)
Par Miragul le 26/9/2002 à 15:17:02 (#2236496)
Tyn, les PNJ Gardes ont tous Drow dans la race, tu as le script à mettre dans OnPerception ?
Par Mastokk le 26/9/2002 à 15:24:20 (#2236552)
Par Mastokk le 26/9/2002 à 15:29:51 (#2236605)
Dans advanced, en selectionnant toutes les faction, tu peux voir leur état les unes par rapport aux autres :). Amuse toi bien :D
Par Miragul le 26/9/2002 à 15:30:17 (#2236607)
Par Mastokk le 26/9/2002 à 15:31:34 (#2236616)
Par Miragul le 26/9/2002 à 15:40:42 (#2236679)
C'est gentil de m'aider :D
je pense que Tyn' était sur la bonne voie, mais il ne repond pas :sanglote:
Par Mastokk le 26/9/2002 à 15:46:14 (#2236729)
Par Delis le 26/9/2002 à 16:14:12 (#2236910)
Il y a par defaut les factions : PJ, Hostile, Commoner, et Defender (de tete pour la derniere :) )
Par Miragul le 26/9/2002 à 16:31:10 (#2237015)
Par Tyn' le 26/9/2002 à 16:32:55 (#2237029)
Donc ! A mettre dans OnPerception ://::///////////////////////////////////////////////
Le PNJ attaquera ainsi tous les joueurs qui ne sont pas de la même race que lui :)
//:: Default On Percieve
//:: NW_C2_DEFAULT2
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Checks to see if the perceived target is an
enemy and if so fires the Determine Combat
Round function
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Oct 16, 2001
//:: Updated By: Tynril
//:: Updated On: Sep 26, 2002
//:://////////////////////////////////////////////
#include "NW_I0_GENERIC"
void main()
{
//This is the equivalent of a force conversation bubble, should only be used if you want an NPC
//to say something while he is already engaged in combat.
if(GetSpawnInCondition(NW_FLAG_SPECIAL_COMBAT_CONVERSATION) && GetIsPC(GetLastPerceived()) && GetLastPerceptionSeen())
{
SpeakOneLinerConversation();
}
//If the last perception event was hearing based or if someone vanished then go to search mode
if ((GetLastPerceptionVanished()) && GetIsEnemy(GetLastPerceived()))
{
object oGone = GetLastPerceived();
if((GetAttemptedAttackTarget() == GetLastPerceived() ||
GetAttemptedSpellTarget() == GetLastPerceived() ||
GetAttackTarget() == GetLastPerceived()) && GetArea(GetLastPerceived()) != GetArea(OBJECT_SELF))
{
ClearAllActions();
DetermineCombatRound();
}
}
//Do not bother checking the last target seen if already fighting
else if(!GetIsObjectValid(GetAttemptedAttackTarget()) && !GetIsObjectValid(GetAttemptedSpellTarget()))
{
//Check if the last percieved creature was actually seen
if(GetLastPerceptionSeen())
{
if(GetBehaviorState(NW_FLAG_BEHAVIOR_SPECIAL))
{
DetermineSpecialBehavior();
}
else if(GetIsEnemy(GetLastPerceived()))
{
if(!GetHasEffect(EFFECT_TYPE_SLEEP))
{
SetFacingPoint(GetPosition(GetLastPerceived()));
SpeakString("NW_I_WAS_ATTACKED", TALKVOLUME_SILENT_TALK);
DetermineCombatRound();
}
}
//Linked up to the special conversation check to initiate a special one-off conversation
//to get the PCs attention
else if(GetSpawnInCondition(NW_FLAG_SPECIAL_CONVERSATION) && GetIsPC(GetLastPerceived()))
{
ActionStartConversation(OBJECT_SELF);
}
}
}
if(GetSpawnInCondition(NW_FLAG_PERCIEVE_EVENT) && GetLastPerceptionSeen())
{
SignalEvent(OBJECT_SELF, EventUserDefined(1002));
}
//:://// Debut de la modification "PNJ raciste"
string sMySubRace = GetSubRace(OBJECT_SELF);
object oLastPerceived = GetLastPerceived();
if(GetIsPC(oLastPerceived) && GetSubRace(oLastPerceived) != sMySubRace)
ActionAttack(oLastPerceived);
}
Par Tyn' le 26/9/2002 à 16:41:27 (#2237067)
Par Miragul le 26/9/2002 à 16:49:47 (#2237134)
Merci Tyn' ! :D
Par Tyn' le 26/9/2002 à 16:50:51 (#2237144)
JOL Archives 1.0.1
@ JOL / JeuxOnLine