La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 23/11/2024 22:19:33
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Voir le sujet précédent ¤ Voir le sujet suivant | |
---|---|
Auteur | Message |
BenGorre Légende vivante Messages: 301 |
Posté le : 29/06/2005 08:54:05 Sujet du message : Comment empecher un PJ de prendre un objet au sol?
Je voudrais savoir comment faire pour qu'un PJ ne puisse pas ramasser une arme qui est au sol, et qui est pourtant a sa porté.
_________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
Elandil2 Chevalier Messages: 97 Localisation: sur mon ordi loir-et-cher |
J'ai deja eut ce problème, et c'est très simple :
Au lieu de mettre un "objet" simple, il faut mettre un "objet placable" avec l'apparence de ce que tu veux mettre et cocher "utilisable" ... Pas plus compliqué que ça ^^ _________________ Rejoignez nous sur notre forum Aelor, module en construction Vive Gimli |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
|
Revenir en haut | |
Ailesnoires Grand Chevalier Messages: 110 Localisation: Vendée |
Tu poses l'arme à terre et tu coches la case pour la transformer en placeable
|
Revenir en haut | |
Elandil2 Chevalier Messages: 97 Localisation: sur mon ordi loir-et-cher |
Héhé, pas assez rapide ^^
voila, il a tout dis, j'ai pas l'editeur ouvert sous les yeux mais bon, tu devrais trouver rapidemment logiquement ^^ [mode aide ON] Suivant ! [mode aide OFF] Mdr _________________ Rejoignez nous sur notre forum Aelor, module en construction Vive Gimli |
Revenir en haut | |
finipe Grand Sage du Conseil Messages: 519 Localisation: Nantes |
Je ne crois pas qu'il y ait une telle case, et j'ai pourtant bien vérifié dans l'éditeur, après avoir bien fait la dernière mise à jour... Serait-il possible d'avoir des screenshots de la case en question, ou des détails sur son emplacement exact ?
_________________ » Le Tref & l'Aucube : Histoire, misanthropie & zoologie léonine » 1626, le Gant & l'Epée : intrigues & duels sous le règne de Louis XIII |
Revenir en haut | |
Ailesnoires Grand Chevalier Messages: 110 Localisation: Vendée |
Je te fais ça dès que possible si je ne suis pas owné
|
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
Serai t'il possible de le faire par script? de transformer une arme en placable par script. Parce que mon arme est pas la au debut, elle apparai grace a un script qui copie une arme...
_________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Une solution envisageable, mais pas parfaite, serait d'utiliser le OnAcquireItem, détecter si qq'un met cet objet dans son inventaire... le détruit alors et en recrée un au même endroit... Autre solution.. un petit déclencheur autour de l'arme... dès que le joueur le franchit.. Il n'est plus contrôlable et et est rejeté hors de portée de l'objet de sa convoitise. Voila, bon courage. _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Seth de Sombrelune Seigneur Messages: 156 |
juste une idée en passant : Tu ajoute a ta copie l'option "ne peut être lâché" et tu place cette copie dans un coffre, ta copie ne poura pas etre récupérée par ton PJ....
|
Revenir en haut | |
Ailesnoires Grand Chevalier Messages: 110 Localisation: Vendée |
FAUX
Dernière édition par Ailesnoires le 30/06/2005 11:56:07; édité 1 fois
|
Revenir en haut | |
Ailesnoires Grand Chevalier Messages: 110 Localisation: Vendée |
Après contrôle sur l'éditeur il est évident qu'il n'est pas possible de mettre une arme en placeable et cela est bien dommage.
|
Revenir en haut | |
finipe Grand Sage du Conseil Messages: 519 Localisation: Nantes |
Je me disais aussi
_________________ » Le Tref & l'Aucube : Histoire, misanthropie & zoologie léonine » 1626, le Gant & l'Epée : intrigues & duels sous le règne de Louis XIII |
Revenir en haut | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
Au début de SoU, apres la cinématique ou le maitre se fait attaquer,
on ne peut pas prendre le baton au sol, avec une petite décharge électrique en représaille en plus ^,^ C'est dans le OnAquireItem, j'en ai tiré les éléments qui t'intéresses : NWScript : //:: Name chap1_onaquire //:: Created By: Keith Warner, Copyright (c) 2001 Bioware Corp. //:: Modified by: Kiky //A mettre dans le OnAquireItem void DoStick(object oItem) { object oWayPoint = GetWaypointByTag("wp_q1a1_staff"); DestroyObject(oItem); CreateObject(OBJECT_TYPE_ITEM, "walkingstick", GetLocation(oWayPoint)); } void main() { object oItem = GetModuleItemAcquired(); //Check to see if the item is a plot item if (GetPlotFlag(oItem) == TRUE) { object oPC = GetModuleItemAcquiredBy(); string szItemTag = GetTag(oItem); //else if the item is Drogan's walkingstick if (szItemTag == "walkingstick") { //Quarterstaff will damage PC and cause him to drop it effect eDamage = EffectDamage(1); effect eVis = EffectVisualEffect(VFX_COM_HIT_ELECTRICAL); effect eLink = EffectLinkEffects(eDamage, eVis); ApplyEffectToObject(DURATION_TYPE_INSTANT, eLink, oPC); DelayCommand(0.2, DoStick(oItem)); FloatingTextStrRefOnCreature(40422, oPC); } } } _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
J'ai mis can ca detruit bien l'objet quand il a été pris mais ca le recrée pas, pourquoi?
NWScript : void DoStick(object oItem) { object oPC; object oInvisib = GetNearestObjectByTag("visu_arme" ,oPC); CreateObject(OBJECT_TYPE_ITEM, GetResRef(oItem), GetLocation(oInvisib), FALSE, "creation"); DestroyObject(oItem); } void main() { object oItem = GetModuleItemAcquired(); //Check to see if the item is a plot item object oPC = GetModuleItemAcquiredBy(); string szItemTag = GetTag(oItem); FloatingTextStringOnCreature("ca marche ici", oPC); //else if the item is Drogan's walkingstick if (szItemTag == "creation") { //Quarterstaff will damage PC and cause him to drop it effect eDamage = EffectDamage(1); effect eVis = EffectVisualEffect(VFX_COM_HIT_ELECTRICAL); effect eLink = EffectLinkEffects(eDamage, eVis); ApplyEffectToObject(DURATION_TYPE_INSTANT, eLink, oPC); DelayCommand(0.2, DoStick(oItem)); FloatingTextStringOnCreature("Tu reve!", oPC); } /* warning: 1 unclosed block {} */ _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
Petite erreur en collant
Voici le vrai: NWScript : void DoStick(object oItem) { object oPC; object oInvisib = GetNearestObjectByTag("visu_arme" ,oPC); CreateObject(OBJECT_TYPE_ITEM, GetResRef(oItem), GetLocation(oInvisib), FALSE, "creation"); DestroyObject(oItem); } void main() { object oItem = GetModuleItemAcquired(); //Check to see if the item is a plot item object oPC = GetModuleItemAcquiredBy(); string szItemTag = GetTag(oItem); //else if the item is Drogan's walkingstick if (szItemTag == "creation") { //Quarterstaff will damage PC and cause him to drop it effect eDamage = EffectDamage(1); effect eVis = EffectVisualEffect(VFX_COM_HIT_ELECTRICAL); effect eLink = EffectLinkEffects(eDamage, eVis); ApplyEffectToObject(DURATION_TYPE_INSTANT, eLink, oPC); DelayCommand(0.2, DoStick(oItem)); FloatingTextStringOnCreature("Tu reve!", oPC); } } _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
A mon avis, ça ne marche pas à cause de ça :
CreateObject(blablabla); DestroyObject(oItem); Ce ne sont pas des actions, mais des fonctions. Par conséquent, il ne va pas attendre que la premiere soit finit pour effectuer le seconde. Or comme tu le sais, il est toujours plus facile de détruire que de créer! lol! Donc il va détruire l'object avant de le créer. Or pour le créer, tu utilise le tag de l'objet... Qui est déjà détruit! Il n'arrive donc pas à le créer. Il y a donc plusieurs solutions : - soit tu fais comme dans le script d'origine, avec un CreateObject utilisant le Resref d'un objet dans la palette. - soit tu transformes ces fonctions en action à coup de ActionDoCommand - soit tu temporises ta destruction pour être sûr qu'elle arrive apres la création. En théorie, un bête DelayCommand suffit. En pratique, il me semble que ça ne marche pas pour le DestroyObject, et qu'il faut faire ta propre fonction de destruction (prototypage)... _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
Je suis pas sur que le probleme soit la car j'ai enlever la ligne du DestroyObject(); pour voir qi il créait ey bah non.
Ca créait pas non plus. Et je suis ne peus pas prendre un resref dans la palette car l'objet n'est pas toujours le même, son Tag est le meme masi pas son Resref. Je vais reessayer sans le destroy(); _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
|
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Page 1 sur 1 ¤
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum