JeuxOnLineForumsPlusConnectés : 631 (sites) | 1092 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > respawn d'objet dans un coffre RSS
   
Répondre
Partager Outils Rechercher
Avatar de xelone
xelone
Dauphin
 
Avatar de xelone
 

respawn d'objet dans un coffre

Voila, j'ai utilisé un script de respawn d'objet. j'ai suivi les instructions et ca fonctionne pas. j'ai mis ceci dans le OnOpen du coffre

Code PHP:
//::///////////////////////////////////////////////

//:: OnOpenCoffre

//:: Copyright (c) 2001 Bioware Corp.

//:://////////////////////////////////////////////

/*

Ce script permet de faire respawn les items d'un

coffre avec une probabilite.

Pour l'utiliser :

Le coffre doit avoir un tag de la forme "X_ce que vous voulez"

avec pour X l'intervalle de temps en seconde entre

2 respawns. Puis il faut placer dedans

les items qui doivent respawn, avec un tag de la forme

"n_resref" ou "n" est le pourcentage de chance que l'item

apparaisse et "resref" le resref de l'item en question.

*/

//:://////////////////////////////////////////////

//:: Created By: Tahlion, beta et modifs par Mercius

//:: Created On: 12/05/2003 18:36

//:://////////////////////////////////////////////

void main()

{

    
int iNbItem GetLocalInt(OBJECT_SELF,"1");


    if(
iNbItem == 0)

    {

        
object oItem GetFirstItemInInventory(OBJECT_SELF);

        
int i 0;

        while(
GetIsObjectValid(oItem))//boucle...

        
{

            
i++;

            
string sTagProba GetTag(oItem);

            
//on prend la partie droite de l'item, donc le resref

            
SetLocalString(OBJECT_SELF,"anneauhafgan" IntToString(i), GetStringRight(sTagProbaGetStringLength(sTagProba) - FindSubString(sTagProba,"_")));

            
//on prend la partie gauche, donc le pourcentage de chance d'apparition de l'item

            
SetLocalInt(OBJECT_SELF,"100" +IntToString(i), StringToInt(GetStringLeft(sTagProbaFindSubString(sTagProba,"_"))));


            
//on detruit l'item

            
DestroyObject(oItem);

            
oItem GetNextItemInInventory(OBJECT_SELF);

        }

        
SetLocalInt(OBJECT_SELF,"1",i);

        
SetLocalInt(OBJECT_SELF,"okgenere",1);//on peut generer les items maintenant

        
iNbItem i;

    }


    if(
iNbItem && GetLocalInt(OBJECT_SELF,"okgenere") == 1)//si la boucle ci-dessus a ete faite

    
{

        
int i;

        for(
1<= iNbItemi++)

        {

            
//si l'item n'existe pas deja dans le coffre

            
if(!GetIsObjectValid(GetItemPossessedBy(OBJECT_SELFGetLocalString(OBJECT_SELF"anneauhafgan" IntToString(i)))))

            {

                
//on calcul avec le pourcentage, pour savoir si l'item doit apparaitre ou pas

                
if(d100() <= GetLocalInt(OBJECT_SELF,"100" IntToString(i)))

                {

                    
//on cree l'item

                    
CreateItemOnObject(GetLocalString(OBJECT_SELF,"anneauhafgan" IntToString(i)));

                }

            }

        }

        
SetLocalInt(OBJECT_SELF"okgenere"0);

        
string sTagSelf GetTag(OBJECT_SELF);

        
DelayCommand(StringToFloat(GetStringLeft(sTagSelfFindSubString(sTagSelf,"_"))), SetLocalInt(OBJECT_SELF"okgenere"1));

    }


mon coffre a comme tag 5_coffre

alors, voyez vous ou est l'erreur?

merci d'avance
Lien direct vers le message - Vieux
Avatar de Damonya
Damonya
Dauphin
 
Avatar de Damonya
 
Ce qui est important dans ce script c'est de bien mettre les tags de tes items sous la bonne forme

regarde bien ce que tu met dans ton Resref des items

Exemple tu as mis : itemduboss01 comme Resref de ton item

ton Tag doit utiliser le resref donc il sera par exemple pour 100 % de chance qu'il apparaisse = 100_itemduboss01

Tu te sert bien du resref comme tag ?

Donc pas de Majuscule dans le Tag c'est proscris ici, puisque dans un resref on peux pas en mettre

Voila j'espere que ça t'as aidé




EDIT : ah aussi. Faut rien changer dans le script tu le laisse comme ça. c'est un script généraliste, que tu peux réutiliser à chaque fois
Lien direct vers le message - Vieux
Nonolevil
Roi
 
j'ajouterais également qu'il faut modifié le tag dans le coffre et pas dans la palette.
Lien direct vers le message - Vieux
Avatar de xelone
xelone
Dauphin
 
Avatar de xelone
 
merci ça fonctionne. je ne sais pas exactement ce qui n'allait pas mais j'ai recréer un nouvel anneau et ca fonctionne.

Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > respawn d'objet dans un coffre
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 23h05.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite