Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Condition:Objets
Condition:Objets
Par Stritis le 30/10/2002 à 20:12:47 (#2443643)
Mon script:
#include "nw_i0_tool"
int StartingConditional()
{
// Vérifier que le PJ qui parle possède ces objets dans son inventaire
if(!CheckPartyForItem(GetPCSpeaker(), "Osdegobelin"))
return FALSE;
return TRUE;
}
Par TyKeM le 30/10/2002 à 20:50:39 (#2443916)
ds ce k la tu as plus que un seul item a controler ...
Par eMRaistlin le 30/10/2002 à 21:01:07 (#2443974)
int StartingConditional()
{
// Vérifier que le PJ qui parle possède ces objets dans son inventaire
object oPC = GetLastPCSpeaker();
object oItem = GetFirstObjectInAccesory; //thanx procto ^^
int nCount = 0;
object oItemInventorie=GetFirstItemInInventory(oPCSpeaker);
while (GetIsObjectValid(oItemInventorie))
{
if (GetTag(oItem)=="os_de_gob")
{nCount = nCount+1;}
oItem=GetNextItemInInventory(oPCSpeaker);
}
if (nCount >= 10)
return TRUE;
return FALSE;
}
Par Symphonik le 30/10/2002 à 21:14:23 (#2444062)
int GetNumItems(object oTarget, string sItem);
donc ca doit donner a peu près ca : (pas testé)
#include "nw_i0_plot"
int StartingConditional()
{
object oPC = GetLastPCSpeaker();
int nCount=GetNumItems(oPC,"os_de_gob")
if (nCount >= 10)
return TRUE;
return FALSE;
}
Par eMRaistlin le 30/10/2002 à 21:21:53 (#2444109)
les gems, ca va marcher, et verifier que tu as un tas de 10, mais pas les moyens et gros items...
Par LeProctophantasmiste le 30/10/2002 à 21:35:33 (#2444179)
object oItem = GetFirstObjectInAcces;
Quesaquo? :D
ma version de GetNumItems, qui en plus compte les flêches ;), elle fait rien de plus pour les os de goblins remarque.
int GetItemQuantityOnObject(string sTag, object oPossessor = OBJECT_SELF)
{
int i;
object oItem;
int nTotal = 0;
oItem = GetFirstItemInInventory(oPossessor);
while(GetIsObjectValid(oItem))
{
if(GetTag(oItem) == sTag)
nTotal += GetNumStackedItems(oItem);
oItem = GetNextItemInInventory(oPossessor);
}
if(GetObjectType(oPossessor) == OBJECT_TYPE_CREATURE)
{
for(i = 0; i<14; i++)
{
oItem = GetItemInSlot(i, oPossessor);
if(GetTag(oItem) == sTag)
nTotal += GetNumStackedItems(oItem);// a priori que les slots 11,12,13 mais bon...
}
}
return nTotal;
}
dans le main:
int StartingConditional()
{
object oPC = GetPCSpeaker();
if(GetItemQuantityOnObject("Tag de l'objet à compter", oPC) < "ce que tu veux")
return FALSE;
return TRUE;
}
Tu ne pourras pas dire que l'on ne t'a pas donné de choix Stratis.
Par Stritis le 30/10/2002 à 21:47:35 (#2444258)
Provient du message de LeProctophantasmiste
Tu ne pourras pas dire que l'on ne t'a pas donné de choix Stratis.
C'est Stritis!! mais merci pour c'est reponses
Par Stritis le 31/10/2002 à 0:01:03 (#2445150)
object oPC = GetLastPCSpeaker();
Par LeProctophantasmiste le 31/10/2002 à 0:18:53 (#2445249)
Par Stritis le 31/10/2002 à 1:00:28 (#2445425)
if (nCount >= 10)
J'utilise le modele de Symphonik
Par eMRaistlin le 31/10/2002 à 2:02:01 (#2445670)
#include "nw_i0_plot"
int StartingConditional()
{
object oPC = GetPCSpeaker();
int nCount=GetNumItems(oPC,"os_de_gob");
if (nCount >= 10)
return TRUE;
return FALSE;
}
Par Tyn' le 31/10/2002 à 3:26:40 (#2445899)
#include "nw_i0_plot"
Make it simple !
int StartingConditional()
{
return GetNumItems(GetPCSpeaker(),"os_de_gob") >= 10;
}object oItem = GetFirstObjectInAccesory;
:doute: Fonction 1.26 ?
JOL Archives 1.0.1
@ JOL / JeuxOnLine