|
| Questions de SALEM | |
|
+4Alex the graphist Asraroth Shai-la Salem 8 participants | |
Auteur | Message |
---|
Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Lun 2 Avr 2007 - 18:29 | |
| Merci pour votre aide. Je commence à me débrouiller. Mon premier jeu reprendra les themes de Day of the tentacle, je garantis pas un bon resultat mais bon. Le début est toujours petit. |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Lun 2 Avr 2007 - 19:34 | |
| Faut bien commencer par quelque chose ! Même si mon premier jeu est loin d'être parfait (Hook's Hook pour ne pas le nommer ), j'en suis fière ! :albino: |
| | | Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Questions de SALEM Lun 2 Avr 2007 - 20:32 | |
| Et c'est toujours mieux de mener un petit projet à terme que d'abandonner un projet trop ambitieux en cours de route. Bon courrage |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Mar 3 Avr 2007 - 15:50 | |
| Comment afficher le nom d'un objet ou Hotspot au passage de la souris ? |
| | | Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Questions de SALEM Mar 3 Avr 2007 - 16:52 | |
| |
| | | Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Questions de SALEM Mar 3 Avr 2007 - 19:20 | |
| Si c'est pour un GUI à la LucasArt, le nom de l'objet/hotspot doit aparaitre dans le GUI sur une ligne Label. Dans ce cas, il faut mettre dans le label la valeur "@overhotspot@" (ou quelque chose comme çà.. c'est de mémoire) Pour debutter, çà aide pas mal, mais par contre, pour un vrai GUI à la LucasArt, cette variable est inutile, et il faut beaucoup plus approfondir le script. |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Mer 4 Avr 2007 - 6:51 | |
| |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Jeu 5 Avr 2007 - 14:52 | |
| Comment donner de l'animation à un perso quant il est sur place et ne parle pas ?
Aussi, on peut intégrer des gifs, mais comment faire pour qu'ils s'animent à l'écran (les gifs animés) ? |
| | | Alex the graphist Cliqueur Amateur
Nombre de messages : 352
Age : 30
Date d'inscription : 29/03/2007
| Sujet: Re: Questions de SALEM Jeu 5 Avr 2007 - 16:15 | |
| ben moi je sais pas mais quasiment aucun logiciel de crétion de jeu vidéo ne sais lire les linges du code d'animation, donc le GIF aisse tomber :| |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Jeu 5 Avr 2007 - 18:30 | |
| Si tu veux que ton personnage soit animé quand il est immobile, c'est tout simple : tu fais les animations dans une autre view que la view de marche, puis tu entres le code "character.SetIdleView(x, 0);" où x est le numéro de cette nouvelle view. Pour reprendre un gif, tu dois d'abord séparer chaque frame avec un logiciel, par exemple Animget. |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Ven 6 Avr 2007 - 7:17 | |
| - Shai-la a écrit:
- Si tu veux que ton personnage soit animé quand il est immobile, c'est tout simple : tu fais les animations dans une autre view que la view de marche, puis tu entres le code "character.SetIdleView(x, 0);" où x est le numéro de cette nouvelle view.
Pour reprendre un gif, tu dois d'abord séparer chaque frame avec un logiciel, par exemple Animget. Ok, merci beucoup. C'est dommage de pas pouvoir intégrer un gif animé et de devoir passer par le view quand il s'agit d'une animation sans dialogues. |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Ven 6 Avr 2007 - 9:02 | |
| Peut-on faire disparaitre un perso et le faire apparaître ailleurs dans la "même room" ? |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Ven 6 Avr 2007 - 10:22 | |
| Bien sûr : - Code:
-
character.ChangeRoom(R, x, y); où R est le numéro de la room (donc la même que celle où il se trouve actuellement), x et y les nouvelles coordonnées Si tu n'es pas dans une room en particulier à ce moment, tu peux remplacer R par - Code:
-
character.Room . |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Sam 7 Avr 2007 - 12:47 | |
| Options de dialogues :
Peut-on actionner une action suite à un dialogue ? Je m'explique. Je sais qu'on peut activer ou désactiver une option de dialogue après une certaine parole.
Mais, suite à une parole ou une option, peut-on activer par exemple une "Region" ou un "script hotspots". Peut-on également activer un nouveau bouton ou autre sur un GUI (pour l'exemple d'une carte avec différents lieux). |
| | | Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Questions de SALEM Sam 7 Avr 2007 - 15:30 | |
| |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Jeu 12 Avr 2007 - 15:47 | |
| Bonjour,
Alors, quelques demandes :
Peut-on...
- Créer une banque à Intelligence artificielle pour y déposer de l'argent ou objets, etc...
- Limitter le nombre d'objets dans l'inventaire pour obliger le joueur à déposer ses biens dans un coffre
- Créer des combats RPG
- Créer un jeu de carte en parallele dans un jeu AGS
- Créer un système de gestion ( par exemple, gagner de l'argent pour tant de temps, perdre ou gagner de la popularité...)
Voilà, beaucoup de questions farfelues. |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Jeu 12 Avr 2007 - 19:42 | |
| - Créer une banque : oui, bien sûr,il suffit de créer un nouveau personnage qui aura donc son propre inventaire, qui correspondra à ce que lui donnera le personnage. Mais qu'appelles-tu "à intelligence artificielle ?"
- Limiter les objets dans l'inventaire : ça doit être possible avec la commande ItemCount, mais je ne l'ai jamais utilisée donc je ne sais pas trop... :|
- Créer des combats RPG : oui, en jouant sur les variables et la commande Random pour générer des chiffres aléatoires comme des jets de dés. Si tu veux je peux t'envoyer le code que j'ai utilisé pour le combat dans Katura RPG, mais ça utilise mes propres règles.
- Créer un jeu de cartes en parallèle : tu veux dire dans une room à part ? Enfin sinon oui je pense qu'avec un peu de programmation ça doit être possible.
- Créer un système de gestion : pas de problème, en utilisant plusieurs variables. |
| | | Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Questions de SALEM Jeu 12 Avr 2007 - 20:14 | |
| - Shai-la a écrit:
- Mais qu'appelles-tu "à intelligence artificielle ?"
C'est quand l'ordinateur provoque une guerre thermonuclaire globale parcequ'il se croit plus malin que les humains ! T'as pas vu WarGame ? :lol!: |
| | | MilesMando Cliqueur Amateur
Nombre de messages : 310
Age : 43
Localisation : Paris
Date d'inscription : 08/08/2006
| Sujet: Re: Questions de SALEM Jeu 12 Avr 2007 - 20:24 | |
| - Asraroth a écrit:
- Shai-la a écrit:
- Mais qu'appelles-tu "à intelligence artificielle ?"
C'est quand l'ordinateur provoque une guerre thermonuclaire globale parcequ'il se croit plus malin que les humains ! T'as pas vu WarGame ? :lol!: lol! surout que là c'est un banque. :P |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 9:56 | |
| - Citation :
- - Créer des combats RPG : oui, en jouant sur les variables et la commande Random pour générer des chiffres aléatoires comme des jets de dés. Si tu veux je peux t'envoyer le code que j'ai utilisé pour le combat dans Katura RPG, mais ça utilise mes propres règles.
Je veux bien. Des choses aléatoires sont donc possibles ? Par exemple, arrivé à un tel évenement, le joueur reçoit un objet, de l'argent ou autre de manière aléatoire ? - Citation :
- - Créer un jeu de cartes en parallèle : tu veux dire dans une room à part ? Enfin sinon oui je pense qu'avec un peu de programmation ça doit être possible.
Oui, par exemple un black jack dans un casino (jeu dans un jeu). - Créer un système de gestion : pas de problème, en utilisant plusieurs variables |
| | | neutrinos Cliqueur Amateur
Nombre de messages : 219
Localisation : Nébuleuse du Crabe
Date d'inscription : 30/08/2006
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 12:02 | |
| Moi je pense que c'est possible, j'ai réccupéré un jeu de toucher couler(avec un mode aléatoire car tu joue avec l'ordinateur très bien fait), un jeu de plateforme et une démo de jeux en 3D, fait avec AGS oui avec AGS
Il se sont gaver à faire ça, mais là il faut vraiment si en connaître en programation, en n'a un spécialiste qui te le dira aussi Asraroth. _________________ |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 12:12 | |
| - Salem a écrit:
Je veux bien.
Des choses aléatoires sont donc possibles ? Par exemple, arrivé à un tel évenement, le joueur reçoit un objet, de l'argent ou autre de manière aléatoire ?
Oui, avec la commande Random : ça génère un nombre aléatoire, et après tu peux décider des événements en fonction du chiffre généré. Par exemple : - Code:
-
int argent = Random(500); //génère un nombre entre 0 et 500 SetGlobalInt(10, (GetGlobalInt(10) + argent)); //ici la variable 10 correpond à la richesse du joueur, on y ajoute la valeur générée aléatoirement dans la ligne précédente
int objet = Random (5); if(objet == 1){ character.AddInventory(iépée); //si le chiffre généré aléatoirement est 1, le joueur reçoit une épée } if(objet == 2){ character.AddInventory(ipotion); //si le chiffre est 2, le joueur reçoit une potion, etc... }
|
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 12:21 | |
| Voici le code que j'utilise pour les combats. Quand on arrive dans la room Combats, le jeu lance un dialog, le joueur choisit son type d'attaque (distance, corps à corps, etc). Les calculs se font dans le global script : - Code:
-
#sectionstart dialog_request // DO NOT EDIT OR REMOVE THIS LINE function dialog_request(int parameter) {
///COMBATS
if (parameter == 1){//COMBAT DISTANCE
att1 = Random(20)+GetGlobalInt(38)-GetGlobalInt(5);//LANCER PERSO : jet de dé aléatoire entre 0 et 20 auquel on ajoute un malus représenté par la protection de l'ennemi et la balance du faër att2 = Random(20)+GetGlobalInt(41);//LANCER ENNEMI : jet de dé aléatoire entre 0 et 20 auquel on ajoute le malus représenté par la protection du joueur
if(GetGlobalInt(31)==53){ //SI COMBAT CONTRE LOUP-GAROU Display("Votre arme de jet n'est pas en argent ![Vous ne pouvez blesser un loup-garou avec une arme normale !"); att1=10; att2=1; }
if(att1<=GetGlobalInt(24)){//SI PERSO REUSSIT SON LANCER (1)
if(att2<=GetGlobalInt(44)){// SI ENNEMI REUSSIT SON LANCER (1a) if(att1<=att2){//SI SCORE PERSO MEILLEUR (1aa) int deg = Random(20) * GetGlobalInt(320); int deg2 = GetGlobalInt(39) - deg; if(deg2<0){ deg2=0; } SetGlobalInt(39, deg2); Display("Votre score : %d / Compétence Combat à Distance : %d.[Score de votre ennemi : %d / Compétence Agilité : %d.", att1, GetGlobalInt(24), att2, GetGlobalInt(44)); Display("Vous touchez votre adversaire et lui ôtez %d points de vie !", deg); Display("Il lui en reste %d.",deg2); SetDialogOption(9, 1, eOptionOff); }//fin 1aa
if(att1>att2){//SI SCORE ENNEMI MEILLEUR (1ab) Display("Votre score : %d / Compétence Combat à Distance : %d.[Score de votre ennemi : %d / Compétence Agilité : %d.", att1, GetGlobalInt(24), att2, GetGlobalInt(44)); Display("Vous ne parvenez pas à toucher votre adversaire."); SetDialogOption(9, 1, eOptionOff); }//fin 1ab
}//fin 1a
if (att2>GetGlobalInt(44)){//SI ENNEMI RATE SON LANCER(1b) int deg = Random(20) * GetGlobalInt(320); int deg2 = GetGlobalInt(39) - deg; if(deg2<0){ deg2=0; } SetGlobalInt(39, deg2); Display("Votre score : %d / Compétence Combat à Distance : %d.[Score de votre ennemi : %d / Compétence Agilité : %d.", att1, GetGlobalInt(24), att2, GetGlobalInt(44)); Display ("Vous touchez votre adversaire et lui ôtez %d points de vie !", deg); Display("Il lui en reste %d.",deg2); SetDialogOption(9, 1, eOptionOff); }//fin 1b }//fin 1
if(att1>GetGlobalInt(24)){//SI PERSO RATE SON LANCER (2) Display("Votre score: %d / Compétence Combat à Distance : %d.[Vous ne parvenez pas à toucher votre adversaire.", att1, GetGlobalInt(24)); SetDialogOption(9, 1, eOptionOff); }//fin 2
}//fin combat distance
if (parameter == 2){//COMBAT CORPS A CORPS
att1 = Random(20)+GetGlobalInt(38)-GetGlobalInt(5);//LANCER PERSO att2 = Random(20)+GetGlobalInt(340)+GetGlobalInt(350)+GetGlobalInt(360)-GetGlobalInt(41);//LANCER ENNEMI
if((GetGlobalInt(31)==53)&&(cEgo.InventoryQuantity[74]==0)){ Display("Votre arme n'est pas en argent ![Vous ne pouvez blesser un loup-garou avec une arme normale !"); att1=10; att2=1; }
//SI PERSO REUSSIT SON LANCER (1) if(att1<=GetGlobalInt(21)){ //SI ENNEMI REUSSIT SON LANCER (1a) if(att2<=GetGlobalInt(40)){ //SI PERSO MEILLEUR if(att1<=att2){ int deg = Random(20) * (GetGlobalInt(330)+GetGlobalInt(75)); if((GetGlobalInt(31)==53)&&(cEgo.InventoryQuantity[74]>=1)){ Display("Vous utilisez votre épée en argent."); deg=Random(20)*4; } int deg2 = GetGlobalInt(39) - deg; if(deg2<0){ deg2=0; } SetGlobalInt(39, deg2); Display("Votre score : %d / Compétence Combat Armé : %d.[Score de votre ennemi : %d / Compétence Combat : %d.",att1, GetGlobalInt(21),att2,GetGlobalInt(40)); Display("Vous touchez votre adversaire et lui ôtez %d points de vie !", deg); Display("Il lui en reste %d.",deg2); SetDialogOption(9, 1, eOptionOff); } //SI ENNEMI MEILLEUR if(att1>att2){ int deg = Random(20) * GetGlobalInt(37); int deg2 = GetGlobalInt(3) - deg; SetGlobalInt(3, deg2); Display("Votre score : %d / Compétence Combat Armé : %d.[Score de votre ennemi : %d / Compétence Combat : %d.",att1, GetGlobalInt(21),att2,GetGlobalInt(40)); Display("Votre adversaire vous touche et vous perdez %d points de vie !", deg); SetDialogOption(9, 1, eOptionOff); if((GetGlobalInt(31)==53)&&(GetGlobalInt(80)==0)){//LYCANTHROPIE int lycan = Random(20)+GetGlobalInt(5)+6; Display("Votre score : %d / Compétence Résistance : %d.", lycan, GetGlobalInt(9)); if(lycan<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous n'attrapez pas la lycanthropie."); } if(lycan>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous attrapez la lycanthropie !![Votre balance du Faër se décale d'un cran vers Thneskos."); Display("Vous deviendrez un loup-garou dans 10 jours si vous ne trouvez pas un remède d'ici là !"); SetGlobalInt(80, 1); SetGlobalInt(5, (GetGlobalInt(5)+1)); } }//FIN LYCANTHROPIE if(GetGlobalInt(31)==63){//ZOMBIE int zombi = Random(3); if(zombi<=1){ Display("Le zombie vous mord !"); int zomb = Random(20)+GetGlobalInt(5); Display("Votre score : %d / Compétence Résistance : %d.", zomb, GetGlobalInt(9)); if(zomb<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous ne subissez pas la Zombification."); } if(zomb>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous subissez la Zombification !"); Display("Au contact de la morsure du zombie, vous devenez zombie à votre tour."); Display("Vous n'êtes plus à présent qu'un corps sans vie, affamé de chair humanoïde..."); SetGlobalInt(3,0); } }//FIN ZOMBIE if(GetGlobalInt(31)==101){//PYTHON int pyth = Random(3); if(pyth<=1){ Display("Le python s'enroule autour de vous et vous étrangle !"); Display("Vous perdez 20 points de vie supplémentaires."); SetGlobalInt(3, (GetGlobalInt(3)-20)); } }//PYHTON if(GetGlobalInt(31)==91){//IRAIGNOR int irai2 = Random(20)+GetGlobalInt(5); Display("Votre score : %d / Compétence Force : %d.", irai2, GetGlobalInt(20)); if(irai2<=GetGlobalInt(20)){ Display("Jet en Résistance réussi.[Vous n'êtes pas paralysé."); } if(irai2>GetGlobalInt(20)){ Display("Jet en Résistance échoué.[Vous êtes paralysé !"); Display("L'iraignor vous enroule dans un cocon de soie sans que vous puissiez esquisser un geste."); Display("Elle vous amène dans son terrier, et vous lui servez de repas..."); SetGlobalInt(3,0); } }//FIN IRAIGNOR }//ennemi meilleur }//ennemi réussi lancer }//fin 1a //SI ENNEMI RATE SON LANCER (1b) if(att2>GetGlobalInt(40)){ int deg = Random(20) * (GetGlobalInt(330)+GetGlobalInt(75)); if((GetGlobalInt(31)==53)&&(cEgo.InventoryQuantity[74]>=1)){ Display("Vous utilisez votre épée en argent."); deg=Random(20)*4; } int deg2 = GetGlobalInt(39) - deg; if(deg2<0){ deg2=0; } SetGlobalInt(39, deg2); Display("Votre score : %d / Compétence Combat Armé : %d.[Score de votre ennemi : %d / Compétence Combat : %d.",att1, GetGlobalInt(21),att2,GetGlobalInt(40)); Display("Vous touchez votre adversaire et lui ôtez %d points de vie !", deg); Display("Il lui en reste %d.",deg2); SetDialogOption(9, 1, eOptionOff); }//fin 1b }//fin 1
// SI PERSO RATE SON LANCER (2) if (att1>GetGlobalInt(21)){ // SI ENNEMI REUSSIT SON LANCER if(att2<=GetGlobalInt(40)){ int deg = Random(20) * GetGlobalInt(37); int deg2 = GetGlobalInt(3) - deg; SetGlobalInt(3, deg2); Display("Votre score : %d / Compétence Combat Armé : %d.[Score de votre ennemi : %d / Compétence Combat : %d.",att1, GetGlobalInt(21),att2,GetGlobalInt(40)); Display("Votre adversaire vous touche et vous perdez %d points de vie !", deg); SetDialogOption(9, 1, eOptionOff); if(GetGlobalInt(31)==63){ int zombi = Random(3); if(zombi<=1){ Display("Le zombie vous mord !"); int zomb = Random(20)+GetGlobalInt(5); if(zomb<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous ne subissez pas la Zombification."); } if(zomb>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous subissez la Zombification !"); Display("Au contact de la morsure du zombie, vous devenez zombie à votre tour."); Display("Vous n'êtes plus à présent qu'un corps sans vie, affamé de chair humanoïde..."); SetGlobalInt(3,0); } } } if(GetGlobalInt(31)==91){//IRAIGNOR int irai2 = Random(20)+GetGlobalInt(5); Display("Votre score : %d / Compétence Force : %d.", irai2, GetGlobalInt(20)); if(irai2<=GetGlobalInt(20)){ Display("Jet en Résistance réussi.[Vous n'êtes pas paralysé."); } if(irai2>GetGlobalInt(20)){ Display("Jet en Résistance échoué.[Vous êtes paralysé !"); Display("L'iraignor vous enroule dans un cocon de soie sans que vous puissiez esquisser un geste."); Display("Elle vous amène dans son terrier, et vous lui servez de repas..."); SetGlobalInt(3,0); } }//FIN IRAIGNOR if(GetGlobalInt(31)==101){//PYTHON int pyth = Random(3); if(pyth<=1){ Display("Le python s'enroule autour de vous et vous étrangle !"); Display("Vous perdez 20 points de vie supplémentaires."); SetGlobalInt(3, (GetGlobalInt(3)-20)); } }//PYHTON if((GetGlobalInt(31)==53)&&(GetGlobalInt(80)==0)){ int lycan = Random(20)+GetGlobalInt(5)+6; Display("Votre score : %d / Compétence Résistance : %d.", lycan, GetGlobalInt(9)); if(lycan<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous n'attrapez pas la lycanthropie."); } if(lycan>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous attrapez la lycanthropie !!"); Display("Vous deviendrez un loup-garou dans 10 jours si vous ne trouvez pas un remède d'ici là !"); SetGlobalInt(80, 1); SetGlobalInt(5, (GetGlobalInt(5)+1));
} } } // SI ENNEMI RATE SON LANCER if(att2>GetGlobalInt(40)){ Display("Votre score : %d / Compétence Combat Armé : %d.[Score de votre ennemi : %d / Compétence Combat : %d.", att1, GetGlobalInt(21), att2, GetGlobalInt(40)); Display("Personne ne parvient à toucher son adversaire."); } }//fin 2 }//fin combat corps à corps
Dernière édition par le Ven 13 Avr 2007 - 12:24, édité 2 fois |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 12:21 | |
| - Code:
-
if (parameter == 3){//COMBAT MAINS NUES att1 = Random(20)+GetGlobalInt(38)-GetGlobalInt(5);//LANCER PERSO att2 = Random(20)+GetGlobalInt(340)+GetGlobalInt(350)+GetGlobalInt(360)-GetGlobalInt(41);//LANCER ENNEMI
if(GetGlobalInt(31)==53){ Display("Seules les armes en argent peuvent blesser un lycanthrope !"); att1=10; att2=1; }
//SI PERSO REUSSIT SON LANCER (1) if(att1<=GetGlobalInt(22)){ //SI ENNEMI REUSSIT SON LANCER (1a) if(att2<=GetGlobalInt(40)){ //SI PERSO MEILLEUR if(att1<=att2){ int deg = GetGlobalInt(20); int deg2 = GetGlobalInt(39) - deg; if(deg2<0){ deg2=0; } SetGlobalInt(39, deg2); Display("Votre score : %d / Compétence Combat Mains Nues : %d.[Score de votre ennemi : %d / Compétence Combat : %d.", att1, GetGlobalInt(22), att2, GetGlobalInt(40)); Display("Vous touchez votre adversaire et lui ôtez %d points de vie !", deg); Display("Il lui en reste %d.",deg2); SetDialogOption(9, 1, eOptionOff); } //SI ENNEMI MEILLEUR if(att1>att2){ int deg = Random(20) * GetGlobalInt(37); int deg2 = GetGlobalInt(3) - deg; SetGlobalInt(3, deg2); Display("Votre score : %d / Compétence Combat Mains Nues : %d.[Score de votre ennemi : %d / Compétence Combat : %d.", att1, GetGlobalInt(22), att2, GetGlobalInt(40)); Display("Votre adversaire vous touche et vous perdez %d points de vie !", deg); SetDialogOption(9, 1, eOptionOff); if(GetGlobalInt(31)==63){ int zombi = Random(3); if(zombi<=1){ Display("Le zombie vous mord !"); int zomb = Random(20)+GetGlobalInt(5); if(zomb<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous ne subissez pas la Zombification."); } if(zomb>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous subissez la Zombification !"); Display("Au contact de la morsure du zombie, vous devenez zombie à votre tour."); Display("Vous n'êtes plus à présent qu'un corps sans vie, affamé de chair humanoïde..."); SetGlobalInt(3,0); } } } if(GetGlobalInt(31)==91){//IRAIGNOR int irai2 = Random(20)+GetGlobalInt(5); Display("Votre score : %d / Compétence Force : %d.", irai2, GetGlobalInt(20)); if(irai2<=GetGlobalInt(20)){ Display("Jet en Résistance réussi.[Vous n'êtes pas paralysé."); } if(irai2>GetGlobalInt(20)){ Display("Jet en Résistance échoué.[Vous êtes paralysé !"); Display("L'iraignor vous enroule dans un cocon de soie sans que vous puissiez esquisser un geste."); Display("Elle vous amène dans son terrier, et vous lui servez de repas..."); SetGlobalInt(3,0); } }//FIN IRAIGNOR if(GetGlobalInt(31)==101){//PYTHON int pyth = Random(3); if(pyth<=1){ Display("Le python s'enroule autour de vous et vous étrangle !"); Display("Vous perdez 20 points de vie supplémentaires."); SetGlobalInt(3, (GetGlobalInt(3)-20)); } }//PYHTON if((GetGlobalInt(31)==53)&&(GetGlobalInt(80)==0)){ int lycan = Random(20)+GetGlobalInt(5)+6; Display("Votre score : %d / Compétence Résistance : %d.", lycan, GetGlobalInt(9)); if(lycan<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous n'attrapez pas la lycanthropie."); } if(lycan>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous attrapez la lycanthropie !!"); Display("Vous deviendrez un loup-garou dans 10 jours si vous ne trouvez pas un remède d'ici là !"); SetGlobalInt(80, 1); SetGlobalInt(5, (GetGlobalInt(5)+1));
} } }
}//fin 1a //SI ENNEMI RATE SON LANCER (1b) if(att2>GetGlobalInt(40)){ int deg = GetGlobalInt(20); int deg2 = GetGlobalInt(39) - deg; if(deg2<0){ deg2=0; } SetGlobalInt(39, deg2); Display("Votre score : %d / Compétence Combat Mains Nues : %d.[Score de votre ennemi : %d / Compétence Combat : %d.", att1, GetGlobalInt(22), att2, GetGlobalInt(40)); Display("Vous touchez votre adversaire et lui ôtez %d points de vie !", deg); Display("Il lui en reste %d.",deg2); SetDialogOption(9, 1, eOptionOff); }//fin 1b }//fin 1
// SI PERSO RATE SON LANCER (2) if (att1>GetGlobalInt(22)){ // SI ENNEMI REUSSIT SON LANCER if(att2<=GetGlobalInt(40)){ int deg = Random(20) * GetGlobalInt(37); int deg2 = GetGlobalInt(3) - deg; SetGlobalInt(3, deg2); Display("Votre score : %d / Compétence Combat Mains Nues : %d.[Score de votre ennemi : %d / Compétence Combat : %d.", att1, GetGlobalInt(22), att2, GetGlobalInt(40)); Display("Votre adversaire vous touche et vous perdez %d points de vie !", deg); SetDialogOption(9, 1, eOptionOff); if(GetGlobalInt(31)==63){ int zombi = Random(3); if(zombi<=1){ Display("Le zombie vous mord !"); int zomb = Random(20)+GetGlobalInt(5); if(zomb<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous ne subissez pas la Zombification."); } if(zomb>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous subissez la Zombification !"); Display("Au contact de la morsure du zombie, vous devenez zombie à votre tour."); Display("Vous n'êtes plus à présent qu'un corps sans vie, affamé de chair humanoïde..."); SetGlobalInt(3,0); } } } if(GetGlobalInt(31)==91){//IRAIGNOR int irai2 = Random(20)+GetGlobalInt(5); Display("Votre score : %d / Compétence Force : %d.", irai2, GetGlobalInt(20)); if(irai2<=GetGlobalInt(20)){ Display("Jet en Résistance réussi.[Vous n'êtes pas paralysé."); } if(irai2>GetGlobalInt(20)){ Display("Jet en Résistance échoué.[Vous êtes paralysé !"); Display("L'iraignor vous enroule dans un cocon de soie sans que vous puissiez esquisser un geste."); Display("Elle vous amène dans son terrier, et vous lui servez de repas..."); SetGlobalInt(3,0); } }//FIN IRAIGNOR if(GetGlobalInt(31)==101){//PYTHON int pyth = Random(3); if(pyth<=1){ Display("Le python s'enroule autour de vous et vous étrangle !"); Display("Vous perdez 20 points de vie supplémentaires."); SetGlobalInt(3, (GetGlobalInt(3)-20)); } }//PYHTON if((GetGlobalInt(31)==53)&&(GetGlobalInt(80)==0)){ int lycan = Random(20)+GetGlobalInt(5)+6; Display("Votre score : %d / Compétence Résistance : %d.", lycan, GetGlobalInt(9)); if(lycan<=GetGlobalInt(9)){ Display("Jet en Résistance réussi.[Vous n'attrapez pas la lycanthropie."); } if(lycan>GetGlobalInt(9)){ Display("Jet en Résistance échoué.[Vous attrapez la lycanthropie !!"); Display("Vous deviendrez un loup-garou dans 10 jours si vous ne trouvez pas un remède d'ici là !"); SetGlobalInt(80, 1); SetGlobalInt(5, (GetGlobalInt(5)+1));
} } } // SI ENNEMI RATE SON LANCER if(att2>GetGlobalInt(40)){ Display("Votre score : %d / Compétence Combat Mains Nues : %d.[Score de votre ennemi : %d / Compétence Combat : %d.", att1, GetGlobalInt(22), att2, GetGlobalInt(40)); Display("Personne ne parvient à toucher son adversaire."); } }//fin 2 }// fin combat mains nues
if (parameter == 5){//CHARISME att1 = Random(20)-GetGlobalInt(5);//LANCER PERSO att2 = Random(20)-GetGlobalInt(41);//LANCER ENNEMI
//SI PERSO REUSSIT SON LANCER (1) if (att1<=GetGlobalInt(28)){ //SI ENNEMI REUSSIT SON LANCER (1a) if(att2<=GetGlobalInt(42)){ //SI SCORE PERSO MEILLEUR if (att1<=att2){ Display("Votre score : %d / Compétence Charisme : %d.[Score de votre adversaire : %d / Compétence Charisme : %d.", att1, GetGlobalInt(28), att2, GetGlobalInt(42)); Display("Vous avez réussi à impressionner votre adversaire !"); if(GetGlobalInt(31)!=31){ Display("Il s'enfuit sans demander son reste."); } SetGlobalInt(42, 25); } // SI SCORE ENNEMI MEILLEUR if(att1>att2){ Display("Votre score : %d / Compétence Charisme : %d.[Score de votre adversaire : %d / Compétence Charisme : %d.", att1, GetGlobalInt(28), att2, GetGlobalInt(42)); Display("Vous n'avez pas réussi à impressionner votre adversaire."); SetDialogOption(9, 5, eOptionOff); } }//Fin 1a //SI ENNEMI RATE SON LANCER (1b) if (att2>GetGlobalInt(42)){ Display("Votre score : %d / Compétence Charisme : %d.[Score de votre adversaire : %d / Compétence Charisme : %d.", att1, GetGlobalInt(28), att2, GetGlobalInt(42)); Display("Vous avez réussi à impressionner votre adversaire !"); if(GetGlobalInt(31)!=31){ Display("Il s'enfuit sans demander son reste."); } SetGlobalInt(42, 25); }//fin 1b
}//Fin 1
//SI PERSO RATE SON LANCER (2) if (att1>GetGlobalInt(28)){ Display("Votre score : %d / Compétence Charisme : %d.[Score de votre adversaire : %d / Compétence Charisme : %d.", att1, GetGlobalInt(28), att2, GetGlobalInt(42)); Display("Vous n'avez pas réussi à impressionner votre adversaire."); SetDialogOption(9, 5, eOptionOff); }//Fin 2
}//fin Charisme
if (parameter==6){//ANIMAUX
att1=Random(20)+GetGlobalInt(5)+GetGlobalInt(43);
if(att1<=GetGlobalInt(12)){ Display("Férocité de l'animal : %d.[Votre score : %d / Compétence Animaux : %d.", GetGlobalInt(43), att1, GetGlobalInt(12)); Display("Vous parvenez à charmer l'animal ![Il s'éloigne sans vous faire de mal."); SetGlobalInt(42, 25); }
if(att1>GetGlobalInt(12)){ Display("Férocité de l'animal : %d.[Votre score : %d / Compétence Animaux : %d.", GetGlobalInt(43), att1, GetGlobalInt(12)); Display("Vous ne parvenez pas à charmer l'animal ![Il vous attaque !"); int deg = Random(20) * GetGlobalInt(37); int deg2 = GetGlobalInt(3) - deg; SetGlobalInt(3, deg2); Display("Il vous enlève %d points de vie.", deg); SetDialogOption(9, 6, eOptionOff); }
}//Fin Animaux |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 14:11 | |
| Whoua ! ça c'est de la programmation |
| | | Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 15:44 | |
| J'en ai bavé pour programmer ça Surtout qu'à chaque nouvel ennemi je devais vérifier que tout correspondait bien ! J'ai eu des bugs incompréhensibles, ça m'a pris un temps fou avant de tout bien configurer ! :study: |
| | | Salem Adepte de la Grande Tasse Bleue
Nombre de messages : 111
Date d'inscription : 28/03/2007
| Sujet: Re: Questions de SALEM Ven 13 Avr 2007 - 18:34 | |
| - Shai-la a écrit:
- J'en ai bavé pour programmer ça
Surtout qu'à chaque nouvel ennemi je devais vérifier que tout correspondait bien ! J'ai eu des bugs incompréhensibles, ça m'a pris un temps fou avant de tout bien configurer ! :study: Alors là je te crois sur parole ! On voit que tu es devenue experte en la matière, y'a pas de doute. |
| | | Contenu sponsorisé
| Sujet: Re: Questions de SALEM | |
| |
| | | | Questions de SALEM | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |