La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/09/2024 00:28:53


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Nicetios
Seigneur
Inscrit le: 20 Juin 2004
Messages: 217
Répondre en citant
Posté le : 29/01/2005 10:27:24 Sujet du message : script anti-duplication

je suis confronté a un petit problème ;

j'ai sur un module un script anti-duplication, bien utile , mais il necessite d'enlever le script des cartes de morts necessaires pour eviter les deco-reco pour revivre .... ( bouchon lyonnais remanié )

petite suggestion ?
_________________
Luttons contre le language SMS !
Nicetios : Le monde d'Yhgdrazil serveur nwn 1 up, serveur nwn 2 en developpement. Venez nous voir ! Venez decouvrir un autre monde !
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 29/01/2005 10:51:09 Sujet du message :

Ben tu peux pas fusionner tes deux scripts?

Tu peux nous les mettre ici qu'on voit?
_________________
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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Nicetios
Seigneur
Inscrit le: 20 Juin 2004
Messages: 217
Répondre en citant
Posté le : 30/01/2005 12:32:49 Sujet du message :

Voici le premier qui sert a empècher de deco reco pour revivre:


//le paillasson du bouchon

#include "ats_inc_cl_enter"

void main()
{
object oPC = GetEnteringObject();

if (!GetIsDM (oPC) && GetIsPC(oPC))
{
string PCName = GetName(oPC);
string PCKey = "(CDkey:"+GetPCPublicCDKey(oPC)+") ";
string VarName = PCName+GetPCPublicCDKey(oPC)+"Damages";
int MaxHP = GetMaxHitPoints(oPC);
int Damage = GetLocalInt(GetModule(),VarName);
int HasMort = GetItemPossessedBy(oPC,"mortNODROP")!=OBJECT_INVALID;

if(GetItemPossessedBy(oPC,"mortNODROP")!=OBJECT_INVALID) // possede la carte de mort
{
effect eDeath = EffectDeath(FALSE, FALSE);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, oPC);
DestroyObject( GetItemPossessedBy(oPC,"mortNODROP"));
WriteTimestampedLogEntry("[ClientEnter]"+PCName+PCKey+"se logue avec carte de mort -> "+IntToString(GetCurrentHitPoints(oPC))+"/"+IntToString(MaxHP)+"hp");
}
else
{
if (MaxHP<Damage) // Normalement, aurait du arriver avec carte de mort: probablement un tricheur => punition exemplaire !
{
int nXP = GetXP(oPC);
int nPenalty = 100 * GetHitDice(oPC);
int nHD = GetHitDice(oPC);
// * You can not lose a level with this respawning
int nMin = ((nHD * (nHD - 1)) / 2) * 1000;

int nNewXP = nXP - nPenalty;
if (nNewXP < nMin)
nNewXP = nMin;
SetXP(oPC, nNewXP);
int nGoldToTake = FloatToInt(0.20 * GetGold(oPC));
AssignCommand(oPC, TakeGoldFromCreature(nGoldToTake, oPC, TRUE));
SendMessageToAllDMs(PCName+" a ete puni pour avoir essaye de tricher avec la mort !");
WriteTimestampedLogEntry("[ClientEnter]"+PCName+PCKey+"a ete puni pour avoir essaye de tricher avec la mort !");
FloatingTextStringOnCreature(PCName+" regrette amerement d'avoir essaye de tricher avec la mort !", oPC, TRUE);
}
if (Damage>0)
{
effect eDamage = EffectDamage(Damage, DAMAGE_TYPE_MAGICAL, DAMAGE_POWER_PLUS_FIVE);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDamage, oPC);
string OutStr = "[ClientEnter]"+PCName +" subit " + IntToString(Damage) + "/" + IntToString(MaxHP) + "hp =>> Sante=" + IntToString(GetCurrentHitPoints(oPC));
WriteTimestampedLogEntry(OutStr);
SendMessageToAllDMs(OutStr);
}
SetLocalInt(GetModule(),VarName,0); // reinitialisation des degats
}
}

ATS_InitializePlayer(oPC);

//Activate Player Loop (verification des groupes)
ExecuteScript("", oPC);

}




Voici celui qui sert contre les dupliks Very Happy Wink :




#include "nw_i0_plot"

void DestroyItems(object oPC, string sItem)
{
if(HasItem(oPC, sItem) == TRUE)
{
DestroyObject(GetItemPossessedBy(oPC, sItem));
SendMessageToPC(oPC, "Um dos seus itens foi destruido pois era fruto de trapaca");
}

}

void main()
{
object oPC = GetEnteringObject();

if (GetCampaignInt("Hermes", "WAS_CRAFTING", oPC) == TRUE)
{
string sCraftedItem = GetCampaignString("Hermes", "CRAFT_OBJECT", oPC);
DestroyItems(oPC, sCraftedItem);
string sName = GetName(oPC);
string sCDKEY = GetPCPublicCDKey(oPC);
SendMessageToAllDMs("Atention!!! O jogador "+sName+" CDKEY "+sCDKEY+" esta tentando duplicar um item!!");
WriteTimestampedLogEntry("ATENCAO!!! O jogador "+sName+" CDKEY "+sCDKEY+" esta tentando duplicar um item!!");
DeleteCampaignVariable("Hermes", "WAS_CRAFTING", oPC);
DeleteCampaignVariable("Hermes", "CRAFT_OBJECT", oPC);
}
}

les dialogues sont encore en version originale, cad en espagnol, mais je ne pense pas que ca puisse intervenir !

merci d'avance

nicetios
_________________
Luttons contre le language SMS !
Nicetios : Le monde d'Yhgdrazil serveur nwn 1 up, serveur nwn 2 en developpement. Venez nous voir ! Venez decouvrir un autre monde !
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 30/01/2005 12:54:05 Sujet du message :

NWScript :
//le paillasson du bouchon + anti dupli

#include "ats_inc_cl_enter"
#include "nw_i0_plot"

void DestroyItems(object oPC, string sItem)
{
if(HasItem(oPC, sItem) == TRUE)
{
DestroyObject(GetItemPossessedBy(oPC, sItem));
SendMessageToPC(oPC, "Um dos seus itens foi destruido pois era fruto de trapaca");
}
}

void main()
{
object oPC = GetEnteringObject();

if (GetCampaignInt("Hermes", "WAS_CRAFTING", oPC) == TRUE)
{
string sCraftedItem = GetCampaignString("Hermes", "CRAFT_OBJECT", oPC);
DestroyItems(oPC, sCraftedItem);
string sName = GetName(oPC);
string sCDKEY = GetPCPublicCDKey(oPC);
SendMessageToAllDMs("Atention!!! O jogador "+sName+" CDKEY "+sCDKEY+" esta tentando duplicar um item!!");
WriteTimestampedLogEntry("ATENCAO!!! O jogador "+sName+" CDKEY "+sCDKEY+" esta tentando duplicar um item!!");
DeleteCampaignVariable("Hermes", "WAS_CRAFTING", oPC);
DeleteCampaignVariable("Hermes", "CRAFT_OBJECT", oPC);
}

if (!GetIsDM (oPC) && GetIsPC(oPC))
{
string PCName = GetName(oPC);
string PCKey = "(CDkey:"+GetPCPublicCDKey(oPC)+") ";
string VarName = PCName+GetPCPublicCDKey(oPC)+"Damages";
int MaxHP = GetMaxHitPoints(oPC);
int Damage = GetLocalInt(GetModule(),VarName);
int HasMort = GetItemPossessedBy(oPC,"mortNODROP")!=OBJECT_INVALID;

if(GetItemPossessedBy(oPC,"mortNODROP")!=OBJECT_INVALID) // possede la carte de mort
{
effect eDeath = EffectDeath(FALSE, FALSE);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, oPC);
DestroyObject( GetItemPossessedBy(oPC,"mortNODROP"));
WriteTimestampedLogEntry("[ClientEnter]"+PCName+PCKey+"se logue avec carte de mort -&gt; "+IntToString(GetCurrentHitPoints(oPC))+"/"+IntToString(MaxHP)+"hp");
}
else
{
if (MaxHP<Damage) // Normalement, aurait du arriver avec carte de mort: probablement un tricheur =&gt; punition exemplaire !
{
int nXP = GetXP(oPC);
int nPenalty = 100 * GetHitDice(oPC);
int nHD = GetHitDice(oPC);
// * You can not lose a level with this respawning
int nMin = ((nHD * (nHD - 1)) / 2) * 1000;

int nNewXP = nXP - nPenalty;
if (nNewXP < nMin)
nNewXP = nMin;
SetXP(oPC, nNewXP);
int nGoldToTake = FloatToInt(0.20 * GetGold(oPC));
AssignCommand(oPC, TakeGoldFromCreature(nGoldToTake, oPC, TRUE));
SendMessageToAllDMs(PCName+" a ete puni pour avoir essaye de tricher avec la mort !");
WriteTimestampedLogEntry("[ClientEnter]"+PCName+PCKey+"a ete puni pour avoir essaye de tricher avec la mort !");
FloatingTextStringOnCreature(PCName+" regrette amerement d'avoir essaye de tricher avec la mort !", oPC, TRUE);
}
if (Damage>0)
{
effect eDamage = EffectDamage(Damage, DAMAGE_TYPE_MAGICAL, DAMAGE_POWER_PLUS_FIVE);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDamage, oPC);
string OutStr = "[ClientEnter]"+PCName +" subit " + IntToString(Damage) + "/" + IntToString(MaxHP) + "hp =&gt;&gt; Sante=" + IntToString(GetCurrentHitPoints(oPC));
WriteTimestampedLogEntry(OutStr);
SendMessageToAllDMs(OutStr);
}
SetLocalInt(GetModule(),VarName,0); // reinitialisation des degats
}
}

ATS_InitializePlayer(oPC);

//Activate Player Loop (verification des groupes)
ExecuteScript("", oPC);
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.

_________________
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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Nicetios
Seigneur
Inscrit le: 20 Juin 2004
Messages: 217
Répondre en citant
Posté le : 30/01/2005 14:47:05 Sujet du message :

merci , je voit d'ou vient mon erreur ^^
bye bye , et encore MeRci !!!!

Cool
_________________
Luttons contre le language SMS !
Nicetios : Le monde d'Yhgdrazil serveur nwn 1 up, serveur nwn 2 en developpement. Venez nous voir ! Venez decouvrir un autre monde !
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Montrer les messages depuis :
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


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 48.133ms