JeuxOnLineForumsPlusConnectés : 663 (sites) | 1182 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Script Avec Des Variables RSS
   
Répondre
Partager Outils Rechercher
Avatar de Damonya
Damonya
Dauphin
 
Avatar de Damonya
 

Script Avec Des Variables

2 fois que je réécris ce topic, pour cause de site qui répond pas Pô grave

Bon voila je recommence donc. J'ai un petit problème avec des variables dans un script. Sur le On used d'un siege. Voila l' bestiau : J'ai mis que la partie des variables du script
Code PHP:
void main()
{
     
object oPC GetLastUsedBy ();
      {
       
// Inspecter variables locales
    
if(!(GetLocalInt(oPC"PhraseTroneApprentieVoleur") <= 2))
        {
         
SetLocalInt(oPC"PhraseTroneApprentieVoleur"3);
        }
     if(!(
GetLocalInt(oPC"PhraseTroneApprentieVoleur") ==3))
        {
       
SetLocalInt(oPC"PhraseTroneApprentieVoleur"3);
         }
      if(!(
GetLocalInt(oPC"PhraseTroneApprentieVoleur") ==4))
        {
       
SetLocalInt(oPC"PhraseTroneApprentieVoleur"4);
        }
       else
        {
       
SetLocalInt(oPC"PhraseTroneApprentieVoleurChemA"1);
        }

     }

Bon tout es dis la dedans je crois, mais je reéxplique quand même car je fais sûrement une erreur quelque part
Quand la variable 1, 2 ou 3 est détecté, assigné au PJ la variable 3. Sinon mettre la variable Chem A pour les autres à 1. Mais je veux que si la variable 4 et 56 soient détectées , quels restent comme ça. Pas de Chem A.
Je sais pas si je suis clair.
Mais une petite vérification de mon script serait le bienvenus
Merci d'avoir tout lut
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
- Pour info, si tu utilise IE, il te suffit de recliquer sur Rafraichir pour retenter d'inscrire ton texte : pas besoin de tout retaper, normalement. ^^


- Pour ton script, le pb vient de tes !Get

en gros, il gere trop de cas ou c'est different, et ne sait plus quoi gerer.

Je te conseille ca :

Code PHP:
void main ()
{
object oPC GetLastUsedBy ();
int nTest GetLocalInt(oPC"PhraseTroneApprentieVoleur") ;

if (
nTest 3) {return;}

if (
nTest <= 3){SetLocalInt(oPC"PhraseTroneApprentieVoleurChemA"1);
SetLocalInt(oPC"PhraseTroneApprentieVoleur"3);}

La, normalement, il ne fait rien si nTest est 4,5 ou 6, et sinon, il met ChemA a 1 et nTest a 3

C'est ca ?
Lien direct vers le message - Vieux
Vendiria
Dauphine
 
La structure:

Code PHP:
switch (maVariable) {
  case 
valeur1:
    
actions;
    break;
  case 
valeur2:
    ...
  default:
    
action;
    break;

n'est-elle pas aussi utilisable?
Je ne dis pas qu'elle est mieux mais (au contraire dans ce cas elle est pas top), c'est une question que je me pose
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
la structure switch sera interessante dans le cas ou tu maitrise les valeur susceptible d'etre presente pour nTest.

L'interet du if, ici, reside dans le >= ou le <

Mais switch aura put fonctionner avec un
case 1 : Set...; return;
case 2 : Set...; return;
case 3 : Set...; return;

et rien pour le reste, dans ton cas precis.
Lien direct vers le message - Vieux
Avatar de Damonya
Damonya
Dauphin
 
Avatar de Damonya
 
Bon voila, sous ta lanterne eMRaistlin, j'ai donc SIMPLFIER mon script (Ouah ah quel doux mot à entendre ). Ca m'a fait réviser mes cours du lycée et ça f'sait un pt'it moment.
Faut dire j'débute dans les scripts!!!!
Alors Voila, après revérification de mes dialogues, c'est un peu différents que ma première version.

Code PHP:
  {

    
int nTest GetLocalInt(oPC"PhraseTroneApprentieVoleur") ;

    if (
nTest 4)
        {
        return;
        }
    if (
nTest 5)
        {
        return;
        }
    if (
nTest <= 3)
        {
        
SetLocalInt(oPC"PhraseTroneApprentieVoleur"3);
        }
    else
     
SetLocalInt(oPC"PhraseTroneApprentieVoleurChemA"1);
    } 
Voila. Donc explication plus simple. Faut faire simple.
Si PJ est 3, 4 ou 5, alors pas de changement
Si PJ 1 ou 2 alors 3.
Sinon le reste (tout ce qui n'est pas 1, 2, 3,4 et 5) on donne Chem A à 1

Me serais-je encore trompé

Vé voir dans mes vieux grimoires mathématiques tout poussiéreux

Merci bien en tout cas

EDIT : Ah oui j'oubliais, le object oPC = GetLastUsedBy est plus haut dans une autre branche de PC
Lien direct vers le message - Vieux
Avatar de Damonya
Damonya
Dauphin
 
Avatar de Damonya
 
Mmmmmh j'crois qu'c'est mieux là :

Code PHP:

object oPC 
GetLastUsedBy (); 
int nTest GetLocalInt(oPC"PhraseTroneApprentieVoleur") ; 
     if (
nTest 4
            { 
            return; 
            } 
     if (
nTest 5
            { 
            return; 
            } 
     else if (
nTest <= 3
            { 
            
SetLocalInt(oPC"PhraseTroneApprentieVoleur"3); 
            } 
     else 
            { 
            
SetLocalInt(oPC"PhraseTroneApprentieVoleurChemA"1); 
Mais j'suis pas sûr
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
tes comparaison dans les ifs doivent se faire avec == et non =.

Sinon, oui, je pense que ca devrait marcher
Lien direct vers le message - Vieux
Avatar de Damonya
Damonya
Dauphin
 
Avatar de Damonya
 
génial alors je viens de comprendre aujourd'hui le jeux des else if, if et else. Ca simplifie bien la vie^^. Merci eMRaistlin pour la confirmation j'en avais besoin. Et pour le cours de simplification
Bien pratique ma fois
Je suis encore débutant mais le deviens de moins en moins grâce à la comunauté NWN.

Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
a your serv'...
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Script Avec Des Variables
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 20h55.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite