La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 23/11/2024 22:34:39
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 |
Djezebel Héros Messages: 252 |
Salutations,
Bon, comme j'ai reussi à résoudre le problème moi-même, autant vous passer la solution. Merci Viduc au passage d'avoir pris le temps de réfléchir à la question. ^^ Pour réussir un petit jeu distrayant, vous avez besoin : - 1 levier de sol - 3 waypoints nommés "light_1", "light_2" et "light_3" Sur le onUsed du levier de sol vous mettez ceci : NWScript :
void main() { PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE); object oPC = GetLastUsedBy(); object oWP1 = GetWaypointByTag("light_1"); object oWP2 = GetWaypointByTag("light_2"); object oWP3 = GetWaypointByTag("light_3"); if (GetGold(oPC)> 4) { int nJet1 = d3(); switch(nJet1) { case 1: { object oLight1 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solblue", GetLocation(oWP1)); DestroyObject(oLight1, 3.0); } break; case 2: { object oLight1 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solcyan", GetLocation(oWP1)); DestroyObject(oLight1, 3.0); } break; case 3: { object oLight1 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solwhite", GetLocation(oWP1)); DestroyObject(oLight1, 3.0); } break; } int nJet2 = d3(); switch(nJet2) { case 1: { object oLight2 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solblue", GetLocation(oWP2)); DestroyObject(oLight2, 3.0); } break; case 2: { object oLight2 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solcyan", GetLocation(oWP2)); DestroyObject(oLight2, 3.0); } break; case 3: { object oLight2 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solwhite", GetLocation(oWP2)); DestroyObject(oLight2, 3.0); } break; } int nJet3 = d3(); switch(nJet3) { case 1: { object oLight3 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solblue", GetLocation(oWP3)); DestroyObject(oLight3, 3.0); } break; case 2: { object oLight3 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solcyan", GetLocation(oWP3)); DestroyObject(oLight3, 3.0); } break; case 3: { object oLight3 = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_solwhite", GetLocation(oWP3)); DestroyObject(oLight3, 3.0); } break; } if (nJet1 == nJet2 && nJet2 == nJet3) { SpeakString(""); GiveGoldToCreature(oPC, 20); } else if (nJet1 + nJet2 == 6 || nJet2 + nJet3 == 6 || nJet3 + nJet1 == 6) { SpeakString(""); GiveGoldToCreature(oPC, 4); } else if ((nJet1 == 2 && nJet2 == 2) || (nJet2 == 2 && nJet3 == 2) || (nJet3 == 2 && nJet1 == 2)) { SpeakString("Vous ne gagnez rien, mais vous ne perdez rien..."); } else if (nJet1 + nJet2 == 2 || nJet2 + nJet3 == 2 || nJet3 + nJet1 == 2) { SpeakString(""); TakeGoldFromCreature(1, oPC); } else if (nJet1 != nJet2 && nJet2 != nJet3) { SpeakString("Dommage ! Vous avez perdu."); TakeGoldFromCreature(5, oPC); } } else { SpeakString("Vous n'avez pas assez de sous pour jouer"); } DelayCommand(3.0, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE)); } PS : *a fait au moins 12 edit entre le message suivant et l'original* Dernière édition par Djezebel le 24/06/2006 14:02:11; édité 4 fois
|
Revenir en haut | |
Viduc de Papironda Grand Chevalier Messages: 119 |
Perso moi je serais toi je décomposerais pour tester...
NWScript :
if ((nJet1 == nJet2) && (nJet1== nJet3)) { SpeakString(""); } else if ((nJet1 + nJet2 == 6) || (nJet2 + nJet3 == 6) || (nJet3 + nJet1 == 6)) { SpeakString("Vous remportez votre mise."); } else if ((nJet1 == nJet2 == 2) || (nJet2 == nJet3 == 2) || (nJet3 == nJet1 == 2)) { SpeakString("Vous remportez votre mise."); } else if ((nJet1 + nJet2 == 2) || (nJet2 + nJet3 == 2) || (nJet3 + nJet1 == 2)) { SpeakString("Vous remportez votre mise."); } else if ((nJet1 != nJet2) && (nJet1 != nJet3) && (nJet2 != nJet3)) { SpeakString("Dommage ! Vous avez perdu."); } Je sais pas si ça marchera mieu mais ça me parait plus clair... Viduc _________________ |
Revenir en haut | |
Djezebel Héros Messages: 252 |
Merci Viduc, ça marche à présent.
Effectivement, j'avais oublié de décomposé, et surtout j'avais mis à un moment : if (nJet1 + nJet2 == 4) etc... or le 4 peut être fait soit par 2 + 2 ... mais aussi par 3 + 1 ce qui causait pas mal de problèmes. En tout cas, c'est résolu à présent. Amusez-vous bien ! |
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
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