
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.







La date/heure actuelle est 19/04/2025 21:22:28
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 |
Nicetios Seigneur ![]() Messages: 217 |
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 | ![]() ![]() ![]() |
kiky.le.magnifique Homme très gay ![]() Messages: 907 Localisation: Camping de la nation martienne... |
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 | ![]() ![]() ![]() ![]() |
Nicetios Seigneur ![]() Messages: 217 |
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 ![]() #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 | ![]() ![]() ![]() |
kiky.le.magnifique Homme très gay ![]() Messages: 907 Localisation: Camping de la nation martienne... |
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 -> "+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); } _________________ 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 | ![]() ![]() ![]() ![]() |
Nicetios Seigneur ![]() Messages: 217 |
merci , je voit d'ou vient mon erreur ^^
bye bye , et encore MeRci !!!! ![]() _________________ 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 | ![]() ![]() ![]() |


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