Aller au contenu


[Colle]Détection Et Crime Lorsque L'On Utilise Un Certain Sort


  • Veuillez vous connecter pour répondre
Aucune réponse à ce sujet

#1 beeratwork

beeratwork

Posté 12 février 2010 - 11:20

J'aimerais faire un sort permettant au joueur de se "nourrir" sur sa proie.
Il faut vérifier si la cible est morte ou vivante.
Si la cible est vivante lorsque le joueur lui lance le sort, elle combat si elle est plus forte et elle fuit si elle est plus faible.
Si la cible est morte, on ajoute de la chair de mort au joueur. Comme le joueur s'est nourri, le corps doit disparaître et le joueur prend tout l'équipement (pour ne pas avoir de problème avec les quêtes).

Jusque là, rien de compliqué :
scn AARFSLSpellRaceNecrentis00EatPlayerOnlyScript<BR><BR>ref Target<BR><BR>Begin ScriptEffectStart<BR>if (GetPCIsRace AARFSLRaceNecrentis00 == 0)<BR>  player.RemoveSpell AARFSLSpellRaceNecrentis00EatPlayerOnly<BR>else<BR>  set Target to GetSelf<BR>  if (Target.GetDeath == 0)<BR>   MessageBox "Vous tentez d'arracher un morceau de chair vive à votre proie."<BR>   if (Target.GetLevel > player.GetLevel)<BR>	Target.StartCombat player<BR>   else<BR>	Target.StopCombat<BR>	Target.ForceTakeCover player 10<BR>   endif<BR>  else<BR>   Target.RemoveAllItems player<BR>   player.AddItem DeadFlesh 1<BR>   player.EquipItem DeadFlesh<BR>   Target.Disable<BR>  endif<BR>endif<BR>End

Ca c'est pour le comportement général. Mais j'aimerais bien que si le joueur utilise son sort il soit considéré comme un criminel. C'est-à-dire que si le joueur est en pleine nature et qu'il tue un bandit devant un garde, ce n'est pas un crime. Mais si il mange le bandit devant le garde, c'est un crime. Comment détecter qu'il y a une bonne personne à distance ?
Faut-il faire un effet de zone au moment où le joueur lance le sort ? Donc lorsque le sort touche un PNJ dans les alentours il vérifie s'il est dans une bonne faction et si oui et si le joueur est détecté par ces PNJ, il initialise une variable ?
scn AARFSLSpellRaceNecrentis00EatPlayerOnlyZoneScript<BR><BR>ref Target<BR><BR>Begin ScriptEffectStart<BR>set Target to GetSelf<BR>if (Target.GetIsCreature == 0 && Target.IsActorEvil == 0 && Target.GetDetectionLevel player >= 2)<BR>  set AARFSLQuestRaceNecrentisCTRL00.Detected to 1<BR>endif<BR>End
Il sera possible alors de mettre une prime sur le joueur ?
Ca suffira pour qu'il soit poursuivit ?
Si le joueur fait trop de bêtise, il pourrait passer dans la faction des nécrentis, appréciée des nécromancien et mort-vivant mais comme il s'agirait d'une faction de type "evil" mais sans ennemi en particulier. J'aimerais savoir si ça poserait problème par rapport aux autres factions.

Modifié par beeratwork, 23 mars 2010 - 12:18.





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)