Soyez le premier à donner votre avis sur cette source.
Snippet vu 13 361 fois - Téléchargée 56 fois
'Directions possible (8) Const Nord = 0 Const NE = 1 Const Est = 2 Const SE = 3 Const Sud = 4 Const SO = 5 Const Ouest = 6 Const NO = 7 Public Enum Direction Nord NE Est SE Sud SO Ouest NO End Enum 'Période maximale possible Const MaxPeriode = 511 Public Type Meteo Wind_Speed As Integer Wind_Direction As Direction Light As Boolean Rain As Boolean End Type Private Periode_DayNight As Integer Private Periode_Rain As Integer Public MapMeteo As Meteo Public Sub InitializeMeteo(Alea As Boolean, Optional WindSpeed As Integer, Optional WindDirection As Direction, Optional Light As Boolean, Optional Rain As Boolean, Optional PeriodeDayNight As Integer, Optional PeriodeRain As Integer) 'alea permet de générer des conditions climatiques aléatoires If Alea = True Then 'initialise le générateur de nombres aléatoires. Randomize MapMeteo.Wind_Speed = Int(Rnd * 11) MapMeteo.Wind_Direction = Int(Rnd * 8) If Int(Rnd * 2) = 1 Then MapMeteo.Light = True Else MapMeteo.Light = False If Int(Rnd * 2) = 1 Then MapMeteo.Rain = True Else MapMeteo.Rain = False Periode_DayNight = Int(Rnd * MaxPeriode + 1) Periode_Rain = Int(Rnd * MaxPeriode + 1) Else 'dans le cas contraire, on utilise les paramètres optionnels MapMeteo.Wind_Speed = WindSpeed MapMeteo.Wind_Direction = WindDirection MapMeteo.Light = Light MapMeteo.Rain = Rain Periode_DayNight = PeriodeDayNight Periode_Rain = PeriodeRain End If End Sub Public Sub CycleMeteo() Dim sens As Byte 'initialise le générateur de nombres aléatoires. Randomize 'tirage d'un nombre aléatoire parmi {-1, 0, 1} sens = Int(Rnd * 3) - 1 'changement de la direction du vent 'le modulo 8 permet de passer de 7 à 0 (8 Mod 8 = 0) MapMeteo.Wind_Direction = (MapMeteo.Wind_Direction + sens) Mod 8 If MapMeteo.Wind_Speed = 0 Then 'tirage d'un nombre aléatoire parmi {0, 1} sens = Int(Rnd * 2) MapMeteo.Wind_Speed = MapMeteo.Wind_Speed + sens ElseIf MapMeteo.Wind_Speed = 10 Then 'tirage d'un nombre aléatoire parmi {-1, 0} sens = -Int(Rnd * 2) MapMeteo.Wind_Speed = MapMeteo.Wind_Speed + sens Else 'tirage d'un nombre aléatoire parmi {-1, 0, 1} sens = Int(Rnd) * 2 - 1 MapMeteo.Wind_Speed = MapMeteo.Wind_Speed + sens End If 'Cette partie génère des périodes de nuit et de pluie 'Le temps restant est décrémenté à chaque cycle. lorsqu'il 'arrive à zéro, on génère une nouvelle période aléatoirement. Periode_DayNight = Periode_DayNight - 1 'si la période est écoulée, alors on tire un moment (jour/nuit) If Periode_DayNight <= 0 Then Periode_DayNight = Int(Rnd * MaxPeriode + 1) If Int(Rnd) = 1 Then Light = True Else Light = False End If Periode_Rain = Periode_Rain - 1 'si le temps est écoulé, alors on tire un temps (pluie ou pas) If Periode_Rain <= 0 Then Periode_Rain = Int(Rnd * MaxPeriode + 1) If Int(Rnd) = 1 Then Rain = True Else Rain = False End If End Sub 'Retourne la vitesse du vent ( 0-10 ) Public Function GetWindSpeed() As Integer GetWindSpeed = MapMeteo.Wind_Speed End Function 'Retourne la direction du vent ( type direction ) Public Function GetWindDirection() As Direction GetWindDirection = MapMeteo.Wind_Direction End Function 'Retourne TRUE si il fait nuit, retourne FALSE si il fait jour. Public Function IsNight() As Boolean IsNight = Not (MapMeteo.Light) End Function 'Retourne TRUE si il pleut. Public Function IsRaining() As Boolean IsRaining = EnvMeteo.Rain End Function
OUIN........ouin.......
par contre pour les autres modules, je sais pas trop comment aider donc...
de tte façon t'inquiète pô, il pleut ici aussi module météo ou pas...
a++
ceyquem
Car je vois ts les tps,c 'est bon, mais le soleil? Avec bien sûr les variations de t°!
Sinon, c'est cool, continue comme ça!... ;-P
Ah oui, p'tite info: chez moi il pleut en ce moment donc pô rigolo du tout pour l'ambiance au boulot, trop top morose!!!!!!! 8-(
lol
Allez bone prog'!!!!
Gogogogogogooooooo
P.S: je dis aussi bravo pr ton module bouffe... Mais bon, j'ai la flemme de retaper à peu près le même comment' 1 seconde fois, alors, tu m'en voudras pô?... ;-D
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.