Aller au contenu


Position à Certaine Heures


  • Veuillez vous connecter pour répondre
2 réponses à ce sujet

#1 chef

chef

Posté 24 septembre 2006 - 20:17

Bonjour !

Ce script ne fonctionne pas, et je n'ai aucune idée du pourquoi. Le personnage qui est sensé changé de cell reste sur place et ne bouge pas d'un pouce. Il y a peut etre un probleme dans les conditions...

begin B_B_st_cap_ouvrier_alchool

short done

if ( done == 0 )
if ( gamehour >= 23 ); entre 23 heures et 1 heure du matin
if ( gamehour <= 1 )


position 157854 253696 184 0 "Plage du chantier de l'avant post" 19,31
set done to 1

endif
endif
endif


if ( done == 1 )
if ( getdistance, player >= 256 )
if ( getdetected == 0 )

journal B_B_chantier 10

endif
endif
endif

if ( done == 1 )
if ( gamehour >= 1 ); entre une heure du mat et 11 heure du soir
if ( gamehour <= 23 )

position 160846 259165 618 0 "Chantier de l'avant post" 19,31

set done to 0

endif
endif
endif

end

Quelqu'un a une idée ?

Merci

PS : J'ai essaié la ligne position vers la plage... Et sa marche, c'est donc dans la condition que il y a un probleme... C'est peut etre parce que le done se met a jour trop vite et que il a pas le temps de téléporter le perso...

Modifié par chef, 24 septembre 2006 - 20:23.

Team Stargate



"Si vous traversez l'enfer, ne vous y arrêtez pas." - Wiston Churchill


#2 Nenfëa

Nenfëa

    Le poisson bavard de Kalendaar


Posté 24 septembre 2006 - 21:20

Salut ! :grin:

Previsualisation du code
if ( gamehour >= 23 ) ; Entre 23 heures et 1 heure du matin
if ( gamehour <= 1 )
Ce morceau de code équivaut en français à "Si il est plus de vingt-trois heures et moins d'une heure à la fois", ce qui n'arrivera jamais.
Tu peux le remplacer par l'équivalent d'un "ou" :
Previsualisation du code
Short test

...

Set test to 0
if ( gamehour >= 23 )
Set test to 1
elseif ( gamehour <= 1 )
Set test to 1
endif
if ( test == 1 )
Position 157854 253696 184 0 "Plage du chantier de l'avant post" 19,31
Set done to 1
endif

De plus, Position ne prend pas de nom de cellule en paramètre, pour celà il faut que tu utilises PositionCell ! :P

Edit : un second petit problème, il me semble que GetDetected prend obligatoirement en paramètre la personne dont on doit vérifier si elle détecte l'acteur. Par exemple, dans :
if ( ID1->GetDetected ID2
...on vérifie si le PNJ ID2 détecte le PNJ ID2 ou non. :)
Nenfëa

- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!

Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!

Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !

#3 chef

chef

Posté 29 septembre 2006 - 15:23

Merci Nenfëa ! Je vais tester ça...

Team Stargate



"Si vous traversez l'enfer, ne vous y arrêtez pas." - Wiston Churchill





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)