Problème de mannequin

Répondre
Partager Rechercher
Bonsoir
J'ai créée un script (comme beaucoup d'autres) pour qu'un joueur gagne de l'xp en tapant sur un mannequin jusqu'à un certain niveau .
Le problème c'est que si le joueur passe par exemple au niveau 2 et que le script est censé le bloquer au delà de cette limite si le joueur ne fait pas son niveau et continue de taper le mannequin continue de lui donner de l'xp .

Pour être plus clair imaginons que je bloque un script d'xp sur un mannequin au niveau 2 . Le joueur tape sur le mannequin en obtenant assez d'xp pour passer le niveau mais ne clique pas pour obtenir ce dernier et continue de taper dessus . Le mannequin continue de lui donner de l'xp .

Comment puis je simplement éviter cet état de fait ? merci d'avance
Qu'as-tu fais comme script et où l'as-tu placé ?
En le plaçant dans le onDamage ou le onPhysicallyAttacked du mannequin, il devrait être possible de vérifier les XP de l'attaquant à chaque coup et donc de ne donner des XP que si le PJ a moins de 1000, 2000 et combien sais-je XP.
Je l'ai mis dans le onPhysicallyAttacked . Le script est un script basique et il marche plutot bien . Mais le hic c'est que verifier les xp c'est pas une solution que je trouve géniale car toutes les classes n'ont pas besoin du même nombre d'xp pour monter de niveau .
Par contre la solution du onlevelup du module me plait un peu plus et je vais explorer cette piste .
Un autre problème au passage, je souhaitais créer une potion x qui avait des effets secondaire sur le joueur une fois les effets dissipe . Seulement pas de script dans les objets . Comment dois je m'y prendre ?
Pour ton soucis de potions avec effets secondaires, fait le dans les scripts liés au module, le -OnUseItem- de mémoire. je t'utilise sur aldacaran et ça marche très bien. je vérifie ce midi et te posterais un exemple si tu veux.

Pour le mannequin il me semble que le script -OnLevelUp- n'est lancé que quand tu passe ton lvl.. donc je pense comme Aliken que l'option de vérification du nombre d'xp est la bonne solution.
De plus je sais pas si je me trompe, mais dans les règles AD&D utilisées sur nwn les xps sont tous les meme quelque soit la classe non?, Ta seule modif est au cas ou tu es multicalssé dans une classe non innée a la race, par ex un nain mage/voleur.

A++^^.
Je ne comprends pas cette histoire de XP différents. Comme l'écrit Chico, les XP sont les mêmes quelle que soit la classe. Si maintenant tu veux vérifier le niveau dans une classe et non pas la quantité totale de XP (un guerrier 2 mage 2 ayant le même nombre d'XP qu'un guerrier 4), tu peux passer par les instructions de type GetClassByPosition, GetLevelByPosition, GetLevelByClass, etc.
Merci aliken, je pensais bien qu'effectivement il n'y avait plus de differences depuis la AD&D V2 je crois...

sinon pour la potion,

il faut mettre le script dans l'onglet "evenement" des "proprietés du module"

le nom de l'evenement est pas "OnUseItem" mais "On Activate item"

je te poste un exemple de script dès que je peux

A++ ^^
Pas faux Aliken ^^

c'est vrai que je fais un système de plantes sur aldacaran, qui été repris par certains serveur depuis, et dont l'idée originale provient de mon ami Asmoria, or mes scripts sont declanchés en effet par des objets non par des potions.

a verifier en effet si l'utilisation de potions lancent les onactivateitem, ou au pire tu utilises des objets en forme de potions... mais la tu perds l'empilement des potions

je jeterais un oeil a l'occaz^^
Si les potions ne lancent pas d'OnActivateItem, elles lancent tout de même le script du sort de la potion (soin, force de taureau, etc.).

Avec un spellhook on peut intervenir au lancement du sort, vérifier s'il provient d'un objet, lui-même de type Potion (je sais plus trop comment mais j'ai ça à la maison) et rajouter le petit bout de code kivabien.

On peut jouer de cette façon avec tous les objets qui lancent un sort, d'ailleurs.
Citation :
Publié par kermo
Si les potions ne lancent pas d'OnActivateItem, elles lancent tout de même le script du sort de la potion (soin, force de taureau, etc.).

Avec un spellhook on peut intervenir au lancement du sort, vérifier s'il provient d'un objet, lui-même de type Potion (je sais plus trop comment mais j'ai ça à la maison) et rajouter le petit bout de code kivabien.

On peut jouer de cette façon avec tous les objets qui lancent un sort, d'ailleurs.
Oui, tout à fait.
En ce qui me concerne, je modifie directement le sort plutôt que de passer par le spellhook.
Pour ton soucis de Lvl Up, si tu ne trouves pas de solution, essaye simplement de remplacer le fait de gagner des xp par un gain direct de 1 lvl au bout de X temps de combat sur le mannequin avec une LocalInt qui augmente de 1 au bout de ce temps X et qui, une fois arrivée à 2 ou 3 en fonction du lvl maximum que tu veux obtenir, ne produit plus l'effet.

Du coup, tu obtiens ton impression d'avoir eu le lvl en t'entrainant sur le mannequin et tu résouds le soucis de ceux qui parte travailler en laissant leur personnage taper sur le mannequin toute la journée.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés