JeuxOnLineForumsPlusConnectés : 169 (sites) | 359 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Comment faire pour que le PJ démarre à poil ? RSS
   
Répondre
Partager Outils Rechercher
Avatar de Blam
Blam
Roi
 
Avatar de Blam
 
Code PHP:
void main()
{
object oPC=GetEnteringObject();
object oitem=GetFirstItemInInventory(oPC);

while(
GetIsObjectValid(oitem))
{
DestroyObject(oitem);
oitem=GetNextItemInInventory(oPC);
}

int nSlot 17;
while (
nSlot >=0)
    {
DestroyObject(GetItemInSlot(nSlot,oPC)); nSlot--;}
int igold=GetGold(oPC);
TakeGoldFromCreature(igoldoPC,TRUE);


ne marche pas pour l'or, !!!!
Lien direct vers le message - Vieux
Avatar de Jaha Effect
Jaha Effect
Alpha & Oméga
 
Avatar de Jaha Effect
 
Re: excellent
Citation:
Provient du message de Blam
j'explique dans une piece ou il y a deux joueurs comment intervertir leur equipement (pssst pas de commentaires sur le maitre de jeu, hein ? )

enfin si c'est possible
Hum, je me demande ou il va chercher tout ça
Là c'est plus du MD sadique, c'est un cas clinique

Jaha Effect
Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
alors là je comprend plus ... est ce que quelqu'un pourrait m'expliquer où est la différence avec la fonction "vider un inventaire"
parce qu'en plus elle copie l'inventaire en même tps qu'elle le détruit (peut p-e servir pour l'autre fou là )

pour l'or, pourquoi tu le met dans la boucle ?
Code PHP:

//Vide l'inventaire de la cible et la met dans le contenant
//Si pas de contenant specifier, detruit tout simplement 

void viderInventaire(object cibleobject contenant=OBJECT_INVALID)
{
    
int i;
    
object item;
    
object copiItem;
    
int igold=GetGold(cible);
    
TakeGoldFromCreature(igoldcible,TRUE);

    while((
item GetNextItemInInventory(cible)) != OBJECT_INVALID){
        if(
contenant != OBJECT_INVALID){
            
copiItem CreateItemOnObject(GetTag(item), contenant);
            
SetPlotFlag(copiItemGetPlotFlag(item));
            
SetIdentified(copiItemGetIdentified(item));
        }
        
DestroyObject(item);
    }
    for(
<= NUM_INVENTORY_SLOTS i++){
        
item GetItemInSlot(i,cible);
        if(
contenant != OBJECT_INVALID){
            
copiItem CreateItemOnObject(GetTag(item), contenant);
            
SetPlotFlag(copiItemGetPlotFlag(item));
            
SetIdentified(copiItemGetIdentified(item));
        }
        
DestroyObject(item);
    }

ca marche pas ca ?
Lien direct vers le message - Vieux
Avatar de Mel Ethybem
Mel Ethybem
Roi
 
Avatar de Mel Ethybem
 
Je suis vraiment une grosse quiche !
Je vous remercie de vous débattre sur sujet, ça me touche ... Et en effet, si je pose la question directement, c'est bien parce que certains scripts des PERSISTANTS sont louches.

J'en viens à ma question (une grosse quiche, que je vous dit) :
Tout ces scripts... je les tapes où ? Et sinon, quel est le bon script dans tout ça (si possible sans or) ??

Merci,
Mel
Lien direct vers le message - Vieux
Avatar de Blam
Blam
Roi
 
Avatar de Blam
 
non ca ne marche pas
si tu avais essayé tu aurais vu !!!




Mel dans le OnEnter d'une zone, tu met ce script.
lequel ?

Code PHP:
void main() 

object oPC=GetEnteringObject(); 
object oitem=GetFirstItemInInventory(oPC); 

while(
GetIsObjectValid(oitem)) 

DestroyObject(oitem); 
oitem=GetNextItemInInventory(oPC); 


int nSlot 17
while (
nSlot >=0
{
DestroyObject(GetItemInSlot(nSlot,oPC)); nSlot--;} 

celui ci de RAT/eM fonctionne, sauf pour l'or

celui que j'avais mis (1km de texte) ne fonctionne que pour enlever les items dont le perso est aquipé

je cherche toujours deux trucs
1 enlever tout l'or aussi
2 tout envoyer dans un contenant (comme dans le mien)
__________________
Congnois toy toy mesme. Nulle gloire dans le sang inutile
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
Re: Je suis vraiment une grosse quiche !
Citation:
Provient du message de Mel Ethybem
Je vous remercie de vous débattre sur sujet, ça me touche ... Et en effet, si je pose la question directement, c'est bien parce que certains scripts des PERSISTANTS sont louches.

J'en viens à ma question (une grosse quiche, que je vous dit) :
Tout ces scripts... je les tapes où ? Et sinon, quel est le bon script dans tout ça (si possible sans or) ??

Merci,
Mel

Ba de rien, on est là pour aider Mel.
Pour mettre les scripts, dans ton éditeur aurora tu clikes sur outils et sur editeur de scripts et tu colles le script directement la dedans

il faudrait que tu lises des tutoriaux pour t'aider .

Ba en fait tous les scripts sont bons plus ou moins long mais ils sont bon, celui de eM est le plus court et ne compte pas l'or dans son script.

Donc voilà en gros .



Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
Re: non ca ne marche pas
Citation:
si tu avais essayé tu aurais vu !!!



...

2 tout envoyer dans un contenant (comme dans le mien)
mais, macarel, personne ne lit ce que je dis où quoi ? c'est si pas interessant
parce que le "viderinventaire" il envoi dans un contenant ...
allez, tester :

dans le onEnter de la zone
Code PHP:
void main()
{
 
object oPC GetEnteringObject();
 
//le PC quand il entre
 
object oContenant GetObjectByTag("CONTENANT");
 
//on recupre le gars qui va recevoir l'inventaire
 
if(GetIsPC(oPC))
 {
SetLocalObject(GetObjectByTag("CONTENANT"), "CIBLE"oPC);
//on lance le vidage et on met le joueur en cible
ExecuteScript("tm_vider"oContenant);
}


le script "tm_vider" à enregstrer à coté

Code PHP:
//la on dfinit une fonction tres pratique
//Vide l'inventaire de la cible et la met dans le contenant
//Si pas de contenant specifier, detruit tout simplement
//enleve l'or aussi

void viderInventaire(object cibleobject contenant=OBJECT_INVALID)
{
    
int i;
    
object item;
    
object copiItem;
    
int igold GetGold(cible);
    
TakeGoldFromCreature(igoldcible);

    while((
item GetNextItemInInventory(cible)) != OBJECT_INVALID){
        if(
contenant != OBJECT_INVALID){
            
copiItem CreateItemOnObject(GetTag(item), contenant);
            
SetPlotFlag(copiItemGetPlotFlag(item));
            
SetIdentified(copiItemGetIdentified(item));
        }
        
DestroyObject(item);
    }
    for(
<= NUM_INVENTORY_SLOTS i++){
        
item GetItemInSlot(i,cible);
        if(
contenant != OBJECT_INVALID){
            
copiItem CreateItemOnObject(GetTag(item), contenant);
            
SetPlotFlag(copiItemGetPlotFlag(item));
            
SetIdentified(copiItemGetIdentified(item));
        }
        
DestroyObject(item);
    }
}



void main()
{
   
object oPC GetLocalObject(OBJECT_SELF"CIBLE");
  
//on recupre la cible
   
if (GetIsPC(oPC))
   
viderInventaire(oPCOBJECT_SELF);
   
//on vide

alors, il faut créer un gars avec le TAG "CONTENANT" et c'est tout bon.
ca vide l'or, et tt. mais ca équipe pas ... si faut que ca équipe, je pense que c'est possible, mais ch*** compliqué
Lien direct vers le message - Vieux
Avatar de Blam
Blam
Roi
 
Avatar de Blam
 
Mouhahahahahahah
Ben dis donc, tout ces post pur en arriver la

ça c'est la réponse exacte et complète a la question posée des le début.

Scripts complets avec l'option récupération des affaires.
excellent pour le début d'un module, d'une action spéciale ou d'un piège.


Maerci Reyan, c'est exactement cela.
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
mauvaise langue :

Citation:
Je me demandais : Comment faire pour que le PJ démarre le module/le serveur à poil ; c'est à dire sans rien, sans armes, sans armure, sans vêtements ?
C'est ca, la question du debut
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
oui lool c'est comme dire que des scripts qui ne se compilent pas alors qu'ils se compilent très bien
Lien direct vers le message - Vieux
Avatar de Blam
Blam
Roi
 
Avatar de Blam
 
exact !
par contre 2eme tentative, ca compilais pas Manque tout le merdier du void main et tutti quanti !!!!!!
m'enfin ce que j'en dis, moi, c'est que vous oubliez a qui vous parlez, qui vous pose les questions


Menfin, vous le savez bien, que je suis le plus vieux newbie de ce forum !!!
__________________
Congnois toy toy mesme. Nulle gloire dans le sang inutile
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Comment faire pour que le PJ démarre à poil ?
   

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 04h58.
   

© 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