Bienvenue sur JeuxOnLine - MMO, MMORPG et MOBA !
Les sites de JeuxOnLine...
 

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

[script] Hache de Hurlement

Par Jaha Effect le 21/12/2002 à 17:26:41 (#2848334)

J'attaque les scriptes des armes spéciales pour le jeu de carte merveilleux .
Là je travaille sur une hache à une main qui reviens dans la main de son possesseur quand on l'appel. Le seul prob c'est que je trouve le réarmement trop long. J'explique en gros comment ça marche, on créer un objet identifié avec comme sort pouvoir unique sur soi illimité (un anneau pour moi). On créer une hache de jet avec les pouvoirs qu'on veux dessus et on met se scripte sur le OnActivateItem du module.

void main()
{
object oItem = GetItemActivated();
object oPC = GetItemActivator();
object oAnneau = GetObjectByTag ("Anneaudecontrole");
object otest = GetItemPossessedBy(oPC,"Hache_retour");

if( oItem == oAnneau )
{
if(GetIsObjectValid(otest))
{
}
else
{
AssignCommand(oPC, SpeakString ("Reviens dans ma main"));
CreateItemOnObject( "hachederetour" , oPC);
AssignCommand(oPC, ActionEquipItem(GetObjectByTag ("Hache_retour"), INVENTORY_SLOT_RIGHTHAND));
}
}
}

Et dans le OnAquiereItem
void main()
{
object oItem = GetModuleItemAcquired();
string sItemTag = GetTag(oItem);
object oPC = GetItemPossessor(oItem);
object otest = GetItemPossessedBy(oPC,"Anneaudecontrole");

if (GetIsPC(oPC))
{

if (sItemTag == "Hache_retour")
{
if(GetIsObjectValid(otest))
{
}
else
{
CreateItemOnObject ("anneaudecontrole", oPC);
}
}
}
}


ça marche mais je trouve le temps de rechargement trop long :(
Vous avez une idée?

Jaha Effect :D

Par coolstar le 21/12/2002 à 18:15:38 (#2848657)

Dis-moi Jaha... je ne crois pas que ceci fera la différence, mais ça me semble tout de même moins lourd?? :p



/* Scritp 'anneaudecontrole' : A mettre nul part ! */

void main()
{
object oItem = CreateItemOnObject("hachederetour");
int nInventorySlot = INVENTORY_SLOT_RIGHTHAND;

SpeakString ("Reviens dans ma main");
ActionEquipItem(oItem, nInventorySlot);
}



Avec cela dans le OnActivateItem pour que ça le fasse (au cas où!)... :D

void main()
{
object oItem = GetItemActivated();
object oPlayer = GetItemActivator();

if (GetTag(oItem) == "Anneaudecontrole")
ExecuteScript("anneaudecontrole", oPlayer);
}

Par Jaha Effect le 21/12/2002 à 18:31:14 (#2848749)

Tu pense bien que j'ai déjà essayé, cette version telle qu'elle est là crash la zone quand on tente d'invoquer une deuxième arme alors qu'on à déjà la première dans l'inventaire. De plus avoir plusieurs fois le même item dans l'inventaire n'est pas ce qui est voulu d'où la condition.
Ce qui me dérange c'est le fait d'attendre la fin du tour pour ré équiper et l'animation du pj qui va chercher l'arme dans son sac.

Jaha Effect :D

Par coolstar le 21/12/2002 à 18:35:02 (#2848775)

:D

Par Jaha Effect le 21/12/2002 à 18:57:28 (#2848899)

A noter que ce petit script peut très bien servir aux MJ qui veulent intégrer dans leur campagne des armes qui reviennent toujours à leur propriétaire.
Exemple: les épées de Pile ou Face dans les Chroniques de la lune noir (j'adore :D)
C'est pas mal non plus pour les combat contre des mobs qui ont la capacité de désarmement :D

Jaha Effect :D

Par Jaha Effect le 21/12/2002 à 23:00:49 (#2850189)

Alors personne n'a d'idée pour virer l'animation liée au ActionEquipItem, l'idéal serait bien sur de pouvoir créer l'item directement dans le slot mais droite mais ça je sais pas faire :(

Jaha Effect :D

Par sounéva le 22/12/2002 à 0:00:13 (#2850422)

arf il me semble qu'il ont parler de la hache qui revient dans la main il y pas longtemps chez bio.
j'ai vu une new qui en parlait ca c'est sur
et je ne peut pas t'aider plus que ca.

Par coolstar le 22/12/2002 à 0:26:31 (#2850549)

Provient du message de Jaha Effect
Alors personne n'a d'idée pour virer l'animation liée au ActionEquipItem, l'idéal serait bien sur de pouvoir créer l'item directement dans le slot mais droite mais ça je sais pas faire :(

Jaha Effect :D


C bien là la source du prob en fait... l'Objet doit (et ne peut autrement!) être créé auparavant dans l'inventaire du PC... et je ne vois pas comment ça pourrait se résoudre d'ailleurs... :confus:

...

Par Jedaï le 22/12/2002 à 12:11:26 (#2852526)

Je connais pas bien tous les sorts de NWN, donc je me demande si y en a pas un qui pourrait ressembler à un lancer de hache (à peu près hein, on est pas exigeant !:D). Je suppose que lancer un sort en instantané (l'un des paramètres de CastSpellOnObject() ) supprime l'anim d'incantation mais pas l'anim du projectile ? Ensuite le perso dis "Reviens à moi, Hache !" et l'ennemi fais un CastFakeSpellOnObject() en instantané pour simuler le retour de la hache. Comme la hache n'as pas quitté la main du joueur pas d'anim de réarmement, plus de problème ! :)

PS : Moi je n'ai jamais touché au .2da mais je suppose que si nécessaire il doit être possible de faire un nouveau sort qui a comme anim de projectile l'anim du lancement de hache, non ?:confus:

PPS : Hé Jaha, t'as oublié le hurlement, une Hache de Hurlement qui hurle pas c'est pas drôle...;)

Par Jaha Effect le 22/12/2002 à 12:52:49 (#2852774)

Provient du message de Jedaï

PPS : Hé Jaha, t'as oublié le hurlement, une Hache de Hurlement qui hurle pas c'est pas drôle...;)


Arf ouais, mais ce que je me demande, c'est ou je vais le coller ce fameux hurlement ??? ( et je veux pas entendre un DTC :D )

Jaha Effect :D

JOL Archives 1.0.1
@ JOL / JeuxOnLine